diff --git a/.github/workflows/auto_changelog.yml b/.github/workflows/auto_changelog.yml index 37dc7d2e054efd..a2a438ee0098b7 100644 --- a/.github/workflows/auto_changelog.yml +++ b/.github/workflows/auto_changelog.yml @@ -10,11 +10,11 @@ permissions: contents: write jobs: auto_changelog: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 if: github.event.pull_request.merged == true steps: - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Generate App Token id: app-token-generation diff --git a/.github/workflows/autowiki.yml b/.github/workflows/autowiki.yml index 2f6cadbbf922df..d6e8c5890972a5 100644 --- a/.github/workflows/autowiki.yml +++ b/.github/workflows/autowiki.yml @@ -8,7 +8,7 @@ permissions: jobs: autowiki: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - name: "Check for AUTOWIKI_USERNAME" id: secrets_set @@ -20,7 +20,7 @@ jobs: echo "SECRETS_ENABLED=$SECRET_EXISTS" >> $GITHUB_OUTPUT - name: Checkout if: steps.secrets_set.outputs.SECRETS_ENABLED - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Install BYOND if: steps.secrets_set.outputs.SECRETS_ENABLED uses: ./.github/actions/restore_or_install_byond diff --git a/.github/workflows/ci_suite.yml b/.github/workflows/ci_suite.yml index 184fd52bd82990..e4201249185514 100644 --- a/.github/workflows/ci_suite.yml +++ b/.github/workflows/ci_suite.yml @@ -17,7 +17,7 @@ jobs: start_gate: if: ( !contains(github.event.head_commit.message, '[ci skip]') ) name: Start Gate - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - name: Mandatory Empty Step run: exit 0 @@ -80,7 +80,7 @@ jobs: run_alternate_tests, run_linters, ] - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - name: Decide whether the needed jobs succeeded or failed uses: re-actors/alls-green@release/v1 diff --git a/.github/workflows/codeowner_reviews.yml b/.github/workflows/codeowner_reviews.yml index cc5d8e8a20e034..f1cb174de37b4a 100644 --- a/.github/workflows/codeowner_reviews.yml +++ b/.github/workflows/codeowner_reviews.yml @@ -7,12 +7,12 @@ on: jobs: assign-users: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 timeout-minutes: 5 steps: # Checks-out your repository under $GITHUB_WORKSPACE, so the job can access it - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 #Parse the Codeowner file on non draft PRs - name: CodeOwnersParser diff --git a/.github/workflows/collect_data.yml b/.github/workflows/collect_data.yml index b82575bfd873c6..60cf249dfca01c 100644 --- a/.github/workflows/collect_data.yml +++ b/.github/workflows/collect_data.yml @@ -18,7 +18,7 @@ on: jobs: collect_data: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 timeout-minutes: 5 outputs: maps: ${{ steps.map_finder.outputs.maps }} @@ -27,7 +27,7 @@ jobs: required_build_versions: ${{ steps.setup_required_build_versions.outputs.required_build_versions }} steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - name: Find Maps id: map_finder run: | diff --git a/.github/workflows/compare_screenshots.yml b/.github/workflows/compare_screenshots.yml index 87c9b96a6d9847..b814905b9b8e2d 100644 --- a/.github/workflows/compare_screenshots.yml +++ b/.github/workflows/compare_screenshots.yml @@ -6,14 +6,14 @@ on: jobs: compare_screenshots: timeout-minutes: 15 - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - name: Setup directory run: mkdir -p artifacts # If we ever add more artifacts, this is going to break, but it'll be obvious. - name: Download screenshot tests - uses: actions/download-artifact@v6 + uses: actions/download-artifact@v7 with: path: artifacts - name: ls -R @@ -34,7 +34,7 @@ jobs: echo ${{ github.event.pull_request.number }} > artifacts/screenshot_comparisons/pull_request_number.txt - name: Upload bad screenshots if: failure() - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v6 with: name: bad-screenshots path: artifacts/screenshot_comparisons diff --git a/.github/workflows/compile_all_maps.yml b/.github/workflows/compile_all_maps.yml index 2512d5fa97964d..c80c0f4ae052d7 100644 --- a/.github/workflows/compile_all_maps.yml +++ b/.github/workflows/compile_all_maps.yml @@ -10,11 +10,11 @@ on: jobs: compile_all_stations: name: Compile All Station Maps - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 timeout-minutes: 5 steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - name: Setup Bun uses: ./.github/actions/setup_bun - name: Restore BYOND from Cache @@ -31,11 +31,11 @@ jobs: compile_all_templates: name: Compile All Templates - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 timeout-minutes: 5 steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - name: Setup Bun uses: ./.github/actions/setup_bun - name: Restore BYOND from Cache diff --git a/.github/workflows/compile_changelogs.yml b/.github/workflows/compile_changelogs.yml index fd4214890f9ef8..d23589260fb72a 100644 --- a/.github/workflows/compile_changelogs.yml +++ b/.github/workflows/compile_changelogs.yml @@ -8,7 +8,7 @@ on: jobs: compile: name: "Compile changelogs" - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 permissions: contents: write steps: @@ -35,7 +35,7 @@ jobs: - name: "Checkout" if: steps.value_holder.outputs.ACTIONS_ENABLED - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: fetch-depth: 25 persist-credentials: false diff --git a/.github/workflows/discord_discussions.yml b/.github/workflows/discord_discussions.yml index 68876aed185355..da1b2b223876e4 100644 --- a/.github/workflows/discord_discussions.yml +++ b/.github/workflows/discord_discussions.yml @@ -18,7 +18,7 @@ concurrency: jobs: manage-discord-discussion: name: Manage Discord Discussion - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 if: contains(github.event.pull_request.labels.*.name, 'Discord Discussion') steps: - name: Fail if vars.DISCORD_DISCUSSIONS_CHANNEL_ID is unset @@ -34,7 +34,7 @@ jobs: dotnet-quality: ga - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Build Tgstation.DiscordDiscussions run: dotnet publish -c Release -o discord_discussions_bins tools/Tgstation.DiscordDiscussions/Tgstation.DiscordDiscussions.csproj diff --git a/.github/workflows/discord_pr_announce.yml b/.github/workflows/discord_pr_announce.yml index d6150e76fb3f35..6ceb3546399808 100644 --- a/.github/workflows/discord_pr_announce.yml +++ b/.github/workflows/discord_pr_announce.yml @@ -5,7 +5,7 @@ on: jobs: notify: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 if: ${{ github.event.action != 'labeled' || github.event.label.name == 'Stale' }} steps: - name: "Check for DISCORD_WEBHOOK" diff --git a/.github/workflows/gbp.yml b/.github/workflows/gbp.yml index 00e763e4b97d43..7f751e7de1928f 100644 --- a/.github/workflows/gbp.yml +++ b/.github/workflows/gbp.yml @@ -5,14 +5,14 @@ on: jobs: # labeler must run before gbp because gbp calculates itself based on labels labeler: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 if: github.event.action == 'opened' || github.event.action == 'synchronize' permissions: pull-requests: write # to apply labels issues: write # to apply labels steps: - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Run Auto Labeler uses: actions/github-script@v7 with: @@ -26,9 +26,10 @@ jobs: labels: new_labels, }); console.log(`Labels updated: ${new_labels}`); + # DOPPLER SHIFT REMOVAL BEGIN - GBP is unused # gbp: -# runs-on: ubuntu-latest +# runs-on: ubuntu-24.04 # if: github.event.action == 'opened' || github.event.action == 'closed' # steps: # - name: "Check for ACTION_ENABLER secret and pass true to output if it exists to be checked by later steps" @@ -41,7 +42,7 @@ jobs: # echo "ACTIONS_ENABLED=$SECRET_EXISTS" >> $GITHUB_OUTPUT # - name: Checkout # if: steps.value_holder.outputs.ACTIONS_ENABLED -# uses: actions/checkout@v5 +# uses: actions/checkout@v6 # - name: Setup git # if: steps.value_holder.outputs.ACTIONS_ENABLED # run: | @@ -49,12 +50,12 @@ jobs: # git config --global user.email "<>" # - name: Checkout alternate branch # if: steps.value_holder.outputs.ACTIONS_ENABLED -# uses: actions/checkout@v5 +# uses: actions/checkout@v6 # with: # ref: "gbp-balances" # The branch name # path: gbp-balances - # This is to ensure we keep the gbp.toml from master - # without having to update our separate branch. +# This is to ensure we keep the gbp.toml from master +# without having to update our separate branch. # - name: Copy configuration # if: steps.value_holder.outputs.ACTIONS_ENABLED # run: cp ./.github/gbp.toml ./gbp-balances/.github/gbp.toml diff --git a/.github/workflows/gbp_collect.yml b/.github/workflows/gbp_collect.yml index 0bea51a49693c4..f9cc7d8034e7a2 100644 --- a/.github/workflows/gbp_collect.yml +++ b/.github/workflows/gbp_collect.yml @@ -1,13 +1,14 @@ # DOPPLER SHIFT REMOVAL BEGIN - GBP is unused #name: GBP Collection # Every hour at the :20 minute mark. GitHub tells us to pick odd hours, instead of just using the start. +# DOPPLER SHIFT REMOVAL BEGIN - GBP is unused #on: # schedule: # - cron: "20 * * * *" # workflow_dispatch: #jobs: # gbp_collection: -# runs-on: ubuntu-latest +# runs-on: ubuntu-24.04 # steps: # - name: "Check for ACTION_ENABLER secret and pass true to output if it exists to be checked by later steps" # id: value_holder @@ -19,7 +20,7 @@ # echo "ACTIONS_ENABLED=$SECRET_EXISTS" >> $GITHUB_OUTPUT # - name: Checkout # if: steps.value_holder.outputs.ACTIONS_ENABLED -# uses: actions/checkout@v5 +# uses: actions/checkout@v6 # - name: Setup git # if: steps.value_holder.outputs.ACTIONS_ENABLED # run: | @@ -27,12 +28,12 @@ # git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com" # - name: Checkout alternate branch # if: steps.value_holder.outputs.ACTIONS_ENABLED -# uses: actions/checkout@v5 +# uses: actions/checkout@v6 # with: # ref: "gbp-balances" # The branch name # path: gbp-balances - # This is to ensure we keep the gbp.toml from master - # without having to update our separate branch. +# This is to ensure we keep the gbp.toml from master +# without having to update our separate branch. # - name: Copy configuration # if: steps.value_holder.outputs.ACTIONS_ENABLED # run: cp ./.github/gbp.toml ./gbp-balances/.github/gbp.toml diff --git a/.github/workflows/generate_client_storage.yml b/.github/workflows/generate_client_storage.yml new file mode 100644 index 00000000000000..f601288b14b3a8 --- /dev/null +++ b/.github/workflows/generate_client_storage.yml @@ -0,0 +1,33 @@ +name: "Generate Client Storage" +on: + push: + branches: + - master + paths: + - tgui/public/* + +jobs: + dispatch_repo: + if: ( !contains(github.event.head_commit.message, '[ci skip]') ) + name: Repository Dispatch + runs-on: ubuntu-24.04 + steps: + - name: Generate App Token + id: app-token-generation + uses: actions/create-github-app-token@v2 + if: env.APP_PRIVATE_KEY != '' && env.APP_ID != '' + with: + app-id: ${{ secrets.APP_ID }} + private-key: ${{ secrets.APP_PRIVATE_KEY }} + owner: tgstation + env: + APP_PRIVATE_KEY: ${{ secrets.APP_PRIVATE_KEY }} + APP_ID: ${{ secrets.APP_ID }} + + - name: Send Repository Dispatch + if: success() + uses: peter-evans/repository-dispatch@v4 + with: + token: ${{ steps.app-token-generation.outputs.token }} + repository: tgstation/byond-client-storage + event-type: on_master_push diff --git a/.github/workflows/generate_documentation.yml b/.github/workflows/generate_documentation.yml index 79dc2593681da9..3949732751c597 100644 --- a/.github/workflows/generate_documentation.yml +++ b/.github/workflows/generate_documentation.yml @@ -10,12 +10,12 @@ jobs: permissions: contents: write # for JamesIves/github-pages-deploy-action to push changes in repo if: ( !contains(github.event.head_commit.message, '[ci skip]') ) - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 concurrency: gen-docs steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - name: Setup cache - uses: actions/cache@v4 + uses: actions/cache@v5 with: path: ~/SpacemanDMM key: ${{ runner.os }}-spacemandmm-${{ secrets.CACHE_PURGE_KEY }} @@ -27,7 +27,7 @@ jobs: touch dmdoc/.nojekyll echo codedocs.tgstation13.org > dmdoc/CNAME - name: Deploy - uses: JamesIves/github-pages-deploy-action@v4.7.3 + uses: JamesIves/github-pages-deploy-action@v4.7.6 with: branch: gh-pages clean: true diff --git a/.github/workflows/remove_guide_comments.yml b/.github/workflows/remove_guide_comments.yml index 4bbc0c6025152c..e5e168df7f5809 100644 --- a/.github/workflows/remove_guide_comments.yml +++ b/.github/workflows/remove_guide_comments.yml @@ -6,10 +6,10 @@ on: types: [opened] jobs: remove_guide_comments: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Remove guide comments uses: actions/github-script@v7 with: diff --git a/.github/workflows/rerun_flaky_tests.yml b/.github/workflows/rerun_flaky_tests.yml index fc9238bcf02516..62f12dc4772ab1 100644 --- a/.github/workflows/rerun_flaky_tests.yml +++ b/.github/workflows/rerun_flaky_tests.yml @@ -6,11 +6,11 @@ on: - completed jobs: rerun_flaky_tests: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 if: ${{ github.event.workflow_run.conclusion == 'failure' && github.event.workflow_run.run_attempt == 1 }} steps: - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Rerun flaky tests uses: actions/github-script@v7 with: @@ -18,11 +18,11 @@ jobs: const { rerunFlakyTests } = await import('${{ github.workspace }}/tools/pull_request_hooks/rerunFlakyTests.js') await rerunFlakyTests({ github, context }) report_flaky_tests: - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 if: ${{ github.event.workflow_run.conclusion == 'success' && github.event.workflow_run.run_attempt == 2 }} steps: - name: Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Report flaky tests uses: actions/github-script@v7 with: diff --git a/.github/workflows/round_id_linker.yml b/.github/workflows/round_id_linker.yml index 7fb0ee8c4f3231..9b3ddfe2d36ba3 100644 --- a/.github/workflows/round_id_linker.yml +++ b/.github/workflows/round_id_linker.yml @@ -5,7 +5,7 @@ on: jobs: link_rounds: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - uses: tgstation/round_linker@master with: diff --git a/.github/workflows/run_integration_tests.yml b/.github/workflows/run_integration_tests.yml index d8be51d69ca57c..22401f63f289fc 100644 --- a/.github/workflows/run_integration_tests.yml +++ b/.github/workflows/run_integration_tests.yml @@ -26,17 +26,17 @@ jobs: # Otherwise, it will output `Run Tests (map; max)`. # For example, `Run Tests (runtimestation; 515)`. name: Run Tests (${{ inputs.major && format('{0}.{1}; ', inputs.major, inputs.minor) || '' }}${{ inputs.map }}; ${{ inputs.max_required_byond_client }}) - runs-on: ubuntu-latest - timeout-minutes: 25 # DOPPLER EDIT CHANGE - Original: timeout-minutes: 15 + runs-on: ubuntu-24.04 + timeout-minutes: 15 steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - name: Restore BYOND from Cache uses: ./.github/actions/restore_or_install_byond with: major: ${{ inputs.major }} minor: ${{ inputs.minor }} - name: Download build outputs - uses: actions/download-artifact@v6 + uses: actions/download-artifact@v7 with: name: build-artifact-${{ inputs.major || env.BYOND_MAJOR }}-${{ inputs.minor || env.BYOND_MINOR}} path: ./ @@ -63,7 +63,7 @@ jobs: bash tools/ci/run_server.sh ${{ inputs.map }} - name: Upload screenshot tests if: always() - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v6 with: name: test_artifacts_${{ inputs.map }}_${{ inputs.major }}_${{ inputs.minor }} path: data/screenshots_new/ diff --git a/.github/workflows/run_linters.yml b/.github/workflows/run_linters.yml index cf8e56da583331..bf294d5f517d0a 100644 --- a/.github/workflows/run_linters.yml +++ b/.github/workflows/run_linters.yml @@ -5,13 +5,13 @@ on: jobs: linters: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 timeout-minutes: 5 steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - name: Restore SpacemanDMM cache - uses: actions/cache@v4 + uses: actions/cache@v5 with: path: ~/SpacemanDMM key: ${{ runner.os }}-spacemandmm-${{ hashFiles('dependencies.sh') }} @@ -20,21 +20,21 @@ jobs: - name: Setup Bun uses: ./.github/actions/setup_bun - name: Restore Bootstrap cache - uses: actions/cache@v4 + uses: actions/cache@v5 with: path: tools/bootstrap/.cache - key: ${{ runner.os }}-bootstrap-${{ hashFiles('tools/requirements.txt') }} + key: ${{ runner.os }}-bootstrap-${{ hashFiles('/tools/requirements.txt') }} restore-keys: | ${{ runner.os }}-bootstrap- - name: Restore Rust cache - uses: actions/cache@v4 + uses: actions/cache@v5 with: path: ~/.cargo - key: ${{ runner.os }}-rust-${{ hashFiles('tools/ci/ci_dependencies.sh')}} + key: ${{ runner.os }}-rust-${{ hashFiles('/tools/ci/ci_dependencies.sh')}} restore-keys: | ${{ runner.os }}-rust- - name: Restore Cutter cache - uses: actions/cache@v4 + uses: actions/cache@v5 with: path: tools/icon_cutter/cache key: ${{ runner.os }}-cutter-${{ hashFiles('dependencies.sh') }} diff --git a/.github/workflows/setup_build_artifact.yml b/.github/workflows/setup_build_artifact.yml index 3cbfd8f39d9d8c..57e3a7715f5597 100644 --- a/.github/workflows/setup_build_artifact.yml +++ b/.github/workflows/setup_build_artifact.yml @@ -11,10 +11,10 @@ on: jobs: setup_build_artifact: name: Setup build artifact (${{ format('{0}.{1}', inputs.major, inputs.minor) }}) - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 timeout-minutes: 5 steps: - - uses: actions/checkout@v5 + - uses: actions/checkout@v6 - name: Setup Bun uses: ./.github/actions/setup_bun - name: Restore BYOND from Cache @@ -35,7 +35,7 @@ jobs: bash tools/ci/copy_build_output.sh $OUTPUT_DIR - name: Upload artifact if: success() - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v6 with: name: build-artifact-${{ inputs.major }}-${{ inputs.minor }} path: ${{ env.OUTPUT_DIR }} diff --git a/.github/workflows/show_screenshot_test_results.yml b/.github/workflows/show_screenshot_test_results.yml index 6901e1d1d1762f..2cfd4f2fd4a824 100644 --- a/.github/workflows/show_screenshot_test_results.yml +++ b/.github/workflows/show_screenshot_test_results.yml @@ -13,7 +13,7 @@ jobs: show_screenshot_test_results: if: ( !contains(github.event.head_commit.message, '[ci skip]') && github.event.workflow_run.run_attempt == 1 ) name: Show Screenshot Test Results - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - name: "Check for ARTIFACTS_FILE_HOUSE_KEY" id: secrets_set @@ -25,7 +25,7 @@ jobs: echo "SECRETS_ENABLED=$SECRET_EXISTS" >> $GITHUB_OUTPUT - name: Checkout if: steps.secrets_set.outputs.SECRETS_ENABLED - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Prepare module if: steps.secrets_set.outputs.SECRETS_ENABLED run: | diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index f60a1c486d026d..55d9eef7e01f85 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -12,18 +12,22 @@ jobs: permissions: issues: write # for actions/stale to close stale issues pull-requests: write # for actions/stale to close stale PRs - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - uses: actions/stale@v10 with: repo-token: ${{ secrets.GITHUB_TOKEN }} stale-pr-message: "This PR has been inactive for long enough to be automatically marked as stale. This means it is at risk of being auto closed in ~ 7 days, please address any outstanding review items and ensure your PR is finished, if these are all true and you are auto-staled anyway, you need to actively ask maintainers if your PR will be merged. Once you have done any of the previous actions then you should request a maintainer remove the stale label on your PR, to reset the stale timer. If you feel no maintainer will respond in that time, you may wish to close this PR youself, while you seek maintainer comment, as you will then be able to reopen the PR yourself" + stale-issue-message: "This issue has been marked for cleanup and will be automatically closed in ~ 14 days. If there is evidence that the issue still occurs, leave a comment with it attached and contact a maintainer to have the label removed." days-before-stale: 7 days-before-close: 7 + days-before-issue-stale: 14 + days-before-issue-close: 14 stale-pr-label: "Stale" - days-before-issue-stale: -1 - stale-issue-label: "Cleanup Flagged" + stale-issue-label: "Stale" + any-of-issue-labels: "Cleanup Flagged,🤖 Flaky Test Report" remove-issue-stale-when-updated: false - exempt-pr-labels: "RED LABEL,Good First PR,No Stale" + exempt-issue-labels: "RED LABEL" + exempt-pr-labels: "RED LABEL,Good First PR,No Stale" # DOPPER EDIT - ORIGINAL: exempt-pr-labels: "RED LABEL,Good First PR" operations-per-run: 300 diff --git a/.github/workflows/test_merge_bot.yml b/.github/workflows/test_merge_bot.yml index 101c3ad2b322ce..ee5d01e15f56f4 100644 --- a/.github/workflows/test_merge_bot.yml +++ b/.github/workflows/test_merge_bot.yml @@ -11,7 +11,7 @@ on: jobs: test_merge_bot: name: Test Merge Detector - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - name: Check for GET_TEST_MERGES_URL id: secrets_set @@ -23,7 +23,7 @@ jobs: echo "GET_TEST_MERGES_URL=$SECRET_EXISTS" >> $GITHUB_OUTPUT - name: Checkout if: steps.secrets_set.outputs.GET_TEST_MERGES_URL - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Prepare module if: steps.secrets_set.outputs.GET_TEST_MERGES_URL run: | diff --git a/.github/workflows/tgs_test.yml b/.github/workflows/tgs_test.yml index feb89bac9c05ae..fefe765bb753f0 100644 --- a/.github/workflows/tgs_test.yml +++ b/.github/workflows/tgs_test.yml @@ -42,7 +42,7 @@ jobs: test_tgs_docker: if: ( !contains(github.event.head_commit.message, '[ci skip]') ) name: Test TGS Docker - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 concurrency: group: test_tgs_docker-${{ github.head_ref || github.run_id }} cancel-in-progress: true @@ -64,7 +64,7 @@ jobs: dotnet-version: 8.0.x - name: Checkout Repository - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Test TGS Integration run: dotnet run -c Release --project tools/tgs_test ${{ github.repository }} /tgs_instances/tgstation ${{ env.TGS_API_PORT }} ${{ github.event.pull_request.head.sha || github.sha }} ${{ secrets.GITHUB_TOKEN }} ${{ env.PR_NUMBER }} diff --git a/.github/workflows/update_tgs_dmapi.yml b/.github/workflows/update_tgs_dmapi.yml index 885ac26c8391d8..6335f9047f5024 100644 --- a/.github/workflows/update_tgs_dmapi.yml +++ b/.github/workflows/update_tgs_dmapi.yml @@ -7,14 +7,14 @@ on: jobs: update-dmapi: - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 name: Update the TGS DMAPI permissions: contents: write pull-requests: write steps: - name: Clone - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Branch run: | diff --git a/.vscode/launch.json b/.vscode/launch.json index fd029c2874ee7b..e137e741ef40c2 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -59,6 +59,14 @@ "dmb": "${workspaceFolder}/${command:CurrentDMB}", "dreamDaemon": true }, + { + "type": "byond", + "request": "launch", + "name": "Launch DreamDaemon (absolute minimum)", + "preLaunchTask": "Build All (absolute minimum)", + "dmb": "${workspaceFolder}/${command:CurrentDMB}", + "dreamDaemon": true + }, { "type": "byond", "request": "launch", diff --git a/SQL/tgstation_schema.sql b/SQL/tgstation_schema.sql index 0ed001a8cc10dd..570fb85ee81106 100644 --- a/SQL/tgstation_schema.sql +++ b/SQL/tgstation_schema.sql @@ -647,7 +647,7 @@ CREATE TABLE `ticket` ( KEY `idx_ticket_act_time_rid` (`action`, `timestamp`, `round_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -DELIMITER $$ +DELIMITER // CREATE PROCEDURE `set_poll_deleted`( IN `poll_id` INT ) @@ -658,16 +658,16 @@ UPDATE `poll_option` SET deleted = 1 WHERE pollid = poll_id; UPDATE `poll_vote` SET deleted = 1 WHERE pollid = poll_id; UPDATE `poll_textreply` SET deleted = 1 WHERE pollid = poll_id; END -$$ +// CREATE TRIGGER `role_timeTlogupdate` AFTER UPDATE ON `role_time` FOR EACH ROW BEGIN INSERT into role_time_log (ckey, job, delta) VALUES (NEW.CKEY, NEW.job, NEW.minutes-OLD.minutes); END -$$ +// CREATE TRIGGER `role_timeTloginsert` AFTER INSERT ON `role_time` FOR EACH ROW BEGIN INSERT into role_time_log (ckey, job, delta) VALUES (NEW.ckey, NEW.job, NEW.minutes); END -$$ +// CREATE TRIGGER `role_timeTlogdelete` AFTER DELETE ON `role_time` FOR EACH ROW BEGIN INSERT into role_time_log (ckey, job, delta) VALUES (OLD.ckey, OLD.job, 0-OLD.minutes); END -$$ +// DELIMITER ; -- diff --git a/SQL/tgstation_schema_prefixed.sql b/SQL/tgstation_schema_prefixed.sql index 7b73d443b442cb..28d9fd9a7e54a9 100644 --- a/SQL/tgstation_schema_prefixed.sql +++ b/SQL/tgstation_schema_prefixed.sql @@ -646,7 +646,7 @@ CREATE TABLE `SS13_ticket` ( KEY `idx_ticket_act_time_rid` (`action`, `timestamp`, `round_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -DELIMITER $$ +DELIMITER // CREATE PROCEDURE `set_poll_deleted`( IN `poll_id` INT ) @@ -657,16 +657,16 @@ UPDATE `SS13_poll_option` SET deleted = 1 WHERE pollid = poll_id; UPDATE `SS13_poll_vote` SET deleted = 1 WHERE pollid = poll_id; UPDATE `SS13_poll_textreply` SET deleted = 1 WHERE pollid = poll_id; END -$$ +// CREATE TRIGGER `SS13_role_timeTlogupdate` AFTER UPDATE ON `SS13_role_time` FOR EACH ROW BEGIN INSERT into SS13_role_time_log (ckey, job, delta) VALUES (NEW.CKEY, NEW.job, NEW.minutes-OLD.minutes); END -$$ +// CREATE TRIGGER `SS13_role_timeTloginsert` AFTER INSERT ON `SS13_role_time` FOR EACH ROW BEGIN INSERT into SS13_role_time_log (ckey, job, delta) VALUES (NEW.ckey, NEW.job, NEW.minutes); END -$$ +// CREATE TRIGGER `SS13_role_timeTlogdelete` AFTER DELETE ON `SS13_role_time` FOR EACH ROW BEGIN INSERT into SS13_role_time_log (ckey, job, delta) VALUES (OLD.ckey, OLD.job, 0-OLD.minutes); END -$$ +// DELIMITER ; -- diff --git a/_maps/RandomRuins/IceRuins/icemoon_surface_mining_site.dmm b/_maps/RandomRuins/IceRuins/icemoon_surface_mining_site.dmm index 79126e4fdd2e3b..4107abfea5533b 100644 --- a/_maps/RandomRuins/IceRuins/icemoon_surface_mining_site.dmm +++ b/_maps/RandomRuins/IceRuins/icemoon_surface_mining_site.dmm @@ -123,10 +123,8 @@ /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/surface/outdoors/nospawn) "op" = ( -/obj/structure/fence{ - dir = 4 - }, -/obj/structure/sign/warning/secure_area, +/obj/structure/flora/tree/pine, +/obj/structure/sign/warning/secure_area/directional/south, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/surface/outdoors/nospawn) "tW" = ( @@ -134,7 +132,6 @@ dir = 4 }, /obj/structure/flora/rock/pile/icy/style_2, -/obj/structure/sign/warning/secure_area, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/surface/outdoors/nospawn) "uy" = ( @@ -201,6 +198,11 @@ }, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/icemoon/surface/outdoors/nospawn) +"Fj" = ( +/obj/structure/flora/grass/brown/style_random, +/obj/structure/sign/warning/secure_area/directional/north, +/turf/open/misc/asteroid/snow/icemoon, +/area/icemoon/surface/outdoors/nospawn) "Fn" = ( /obj/structure/railing{ dir = 6 @@ -304,11 +306,8 @@ /turf/open/floor/plating/snowed/smoothed/icemoon, /area/icemoon/surface/outdoors/nospawn) "Wr" = ( -/obj/structure/fence{ - dir = 4 - }, -/obj/structure/sign/nanotrasen, -/turf/open/misc/asteroid/snow/icemoon, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/plating/snowed/smoothed/icemoon, /area/icemoon/surface/outdoors/nospawn) "Wt" = ( /obj/effect/turf_decal/stripes/line, @@ -439,9 +438,9 @@ fl (5,1,1) = {" fl kd +Sc Wr vJ -vJ kd kd mP @@ -868,8 +867,8 @@ mP mP mP bE -nT op +Sc "} (20,1,1) = {" cO @@ -902,7 +901,7 @@ wg "} (21,1,1) = {" tW -kd +Fj lH Wt mP diff --git a/_maps/RandomRuins/IceRuins/icemoon_surface_pizza.dmm b/_maps/RandomRuins/IceRuins/icemoon_surface_pizza.dmm index c9b3d35aa72648..fe11d7a8b6c2a1 100644 --- a/_maps/RandomRuins/IceRuins/icemoon_surface_pizza.dmm +++ b/_maps/RandomRuins/IceRuins/icemoon_surface_pizza.dmm @@ -805,14 +805,12 @@ /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 }, -/obj/machinery/airalarm/directional/south{ - pixel_y = 35 - }, +/obj/machinery/airalarm/directional/north, /turf/open/floor/iron/cafeteria, /area/ruin/pizzeria/kitchen) "IW" = ( /obj/effect/spawner/random/entertainment/cigarette, -/obj/machinery/light/small/built/directional/south, +/obj/machinery/light/small/empty/directional/south, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/icemoon/surface/outdoors/nospawn) "IY" = ( diff --git a/_maps/RandomRuins/IceRuins/icemoon_underground_abandoned_plasma_facility.dmm b/_maps/RandomRuins/IceRuins/icemoon_underground_abandoned_plasma_facility.dmm index b44fbe0b1b55e9..fad279c0710e89 100644 --- a/_maps/RandomRuins/IceRuins/icemoon_underground_abandoned_plasma_facility.dmm +++ b/_maps/RandomRuins/IceRuins/icemoon_underground_abandoned_plasma_facility.dmm @@ -199,7 +199,7 @@ dir = 1 }, /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/effect/turf_decal/tile/brown/opposingcorners, /turf/open/floor/iron, /area/ruin/plasma_facility/operations) @@ -325,7 +325,7 @@ /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/underground/explored) "fx" = ( -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /turf/open/lava/plasma/ice_moon, /area/ruin/plasma_facility/operations) "fJ" = ( @@ -399,7 +399,7 @@ dir = 4 }, /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /turf/open/floor/iron/grimy, /area/ruin/plasma_facility/commons) "gH" = ( @@ -748,18 +748,10 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood/large, /area/ruin/plasma_facility/commons) -"lW" = ( -/obj/structure/cable, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron, -/area/ruin/plasma_facility/commons) "lX" = ( /obj/structure/table/reinforced, /obj/item/flashlight/lantern, -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /turf/open/floor/iron/smooth{ initial_gas_mix = "ICEMOON_ATMOS" }, @@ -853,7 +845,6 @@ }, /area/ruin/plasma_facility/commons) "nu" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/brown/half, /obj/effect/turf_decal/tile/neutral/half/contrasted{ @@ -978,7 +969,7 @@ /area/ruin/plasma_facility/commons) "pl" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 + dir = 4 }, /obj/effect/turf_decal/tile/brown/half, /obj/effect/turf_decal/tile/neutral/half/contrasted{ @@ -1028,13 +1019,19 @@ /turf/open/floor/plating/icemoon, /area/ruin/plasma_facility/operations) "pX" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, /turf/open/floor/plating/icemoon, /area/ruin/plasma_facility/operations) "qk" = ( /obj/structure/flora/grass/green/style_random, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/underground/explored) +"qr" = ( +/obj/structure/sign/warning/directional/north, +/turf/open/misc/asteroid/snow/icemoon, +/area/icemoon/underground/explored) "qv" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/window/reinforced/spawner/directional/east, @@ -1181,8 +1178,11 @@ /obj/item/stock_parts/capacitor, /turf/open/floor/plating/icemoon, /area/ruin/plasma_facility/commons) +"sN" = ( +/turf/closed/wall, +/area/icemoon/underground/explored) "sP" = ( -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/ruin/plasma_facility/operations) "sX" = ( @@ -1310,6 +1310,11 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating/snowed/icemoon, /area/icemoon/underground/explored) +"vh" = ( +/obj/structure/flora/grass/brown/style_random, +/obj/structure/sign/warning/directional/west, +/turf/open/misc/asteroid/snow/icemoon, +/area/icemoon/underground/explored) "vt" = ( /turf/closed/wall, /area/ruin/plasma_facility/operations) @@ -1583,11 +1588,9 @@ /obj/structure/fence{ dir = 4 }, -/obj/structure/sign/warning, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/icemoon/underground/explored) "BZ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/door/airlock/mining{ name = "Processing Control" @@ -1859,7 +1862,6 @@ /turf/open/floor/plating/icemoon, /area/ruin/plasma_facility/operations) "Ib" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/smooth_half{ @@ -1928,7 +1930,7 @@ /area/icemoon/underground/explored) "Jn" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /turf/open/floor/iron/smooth{ initial_gas_mix = "ICEMOON_ATMOS" }, @@ -2015,6 +2017,11 @@ /obj/machinery/light/small/blacklight/directional/south, /turf/open/floor/iron/grimy, /area/ruin/plasma_facility/commons) +"Kj" = ( +/obj/structure/flora/rock/icy/style_random, +/obj/structure/sign/warning/directional/north, +/turf/open/misc/asteroid/snow/icemoon, +/area/icemoon/underground/explored) "Km" = ( /obj/structure/girder, /turf/open/floor/plating/icemoon, @@ -2077,7 +2084,7 @@ /turf/open/floor/plating/snowed/icemoon, /area/icemoon/underground/explored) "KY" = ( -/obj/machinery/light/small/built/directional/south, +/obj/machinery/light/small/empty/directional/south, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/ruin/plasma_facility/commons) "Lh" = ( @@ -2126,7 +2133,7 @@ /turf/open/floor/wood/large, /area/ruin/plasma_facility/commons) "LY" = ( -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /turf/open/floor/plating, /area/ruin/plasma_facility/commons) "LZ" = ( @@ -2227,7 +2234,9 @@ /turf/open/floor/iron/white/textured_half, /area/ruin/plasma_facility/commons) "Nm" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, /obj/effect/turf_decal/tile/brown/half{ dir = 1 }, @@ -2564,6 +2573,17 @@ }, /turf/open/floor/stone, /area/ruin/plasma_facility/commons) +"SI" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/brown/half{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/edge{ + dir = 1 + }, +/area/ruin/plasma_facility/commons) "SR" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/decal/cleanable/dirt, @@ -2582,6 +2602,7 @@ dir = 1 }, /obj/effect/turf_decal/tile/neutral/half/contrasted, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/edge{ dir = 1 }, @@ -2661,6 +2682,7 @@ /obj/effect/turf_decal/tile/neutral/half/contrasted{ dir = 1 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/edge, /area/ruin/plasma_facility/commons) "VS" = ( @@ -2720,7 +2742,6 @@ /turf/open/floor/iron/corner, /area/ruin/plasma_facility/commons) "WU" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/decal/cleanable/dirt, /obj/machinery/light_switch/directional/east, @@ -2912,7 +2933,7 @@ /area/ruin/plasma_facility/commons) "ZC" = ( /obj/effect/decal/cleanable/glass, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /turf/open/floor/plating/snowed/icemoon, /area/icemoon/underground/explored) "ZH" = ( @@ -3168,7 +3189,7 @@ Yw Yw Yw BY -LZ +Kj rs fP rs @@ -3187,7 +3208,7 @@ AG AG LZ BY -ms +qr hJ Py Yw @@ -3301,7 +3322,7 @@ zX XI XI Nm -lW +DN pl Mc af @@ -3335,8 +3356,8 @@ ri ri qW XW -PB -bM +SI +DN VD gj ac @@ -4085,8 +4106,8 @@ rk dr dr dr -NC -ms +sN +qr AG AG AG @@ -4241,7 +4262,7 @@ AG AG AG AG -NC +sN dr II vt @@ -4276,7 +4297,7 @@ AG AG AG AG -zF +vh rs rs oi diff --git a/_maps/RandomRuins/IceRuins/icemoon_underground_abandoned_village.dmm b/_maps/RandomRuins/IceRuins/icemoon_underground_abandoned_village.dmm index 6ef2066b191566..3a55529f5fab87 100644 --- a/_maps/RandomRuins/IceRuins/icemoon_underground_abandoned_village.dmm +++ b/_maps/RandomRuins/IceRuins/icemoon_underground_abandoned_village.dmm @@ -439,7 +439,7 @@ /area/ruin/powered) "PQ" = ( /obj/effect/decal/cleanable/blood/splatter, -/mob/living/simple_animal/hostile/illusion{ +/mob/living/basic/illusion{ death_message = "disperses into the air in a cloud of red mist, you feel slightly more at ease."; desc = "You can't quite make out what you're seeing."; faction = list("cult"); diff --git a/_maps/RandomRuins/IceRuins/icemoon_underground_comms_agent/commsoffice_cheap.dmm b/_maps/RandomRuins/IceRuins/icemoon_underground_comms_agent/commsoffice_cheap.dmm index 462f5b486aad3b..ee2ab997b2d804 100644 --- a/_maps/RandomRuins/IceRuins/icemoon_underground_comms_agent/commsoffice_cheap.dmm +++ b/_maps/RandomRuins/IceRuins/icemoon_underground_comms_agent/commsoffice_cheap.dmm @@ -8,7 +8,11 @@ pixel_x = -2 }, /obj/item/paper/monitorkey, -/obj/item/paperwork, +/obj/item/radio/intercom/syndicate/freerange{ + dir = 1; + pixel_y = 32 + }, +/obj/item/folder/syndicate/mining, /turf/open/floor/plating, /area/ruin/comms_agent) "b" = ( @@ -39,9 +43,6 @@ /turf/open/floor/plating, /area/ruin/comms_agent) "q" = ( -/obj/item/radio/intercom/syndicate/freerange{ - pixel_x = -31 - }, /obj/machinery/modular_computer/preset{ dir = 4 }, diff --git a/_maps/RandomRuins/IceRuins/icemoon_underground_comms_agent/commsoffice_luxury.dmm b/_maps/RandomRuins/IceRuins/icemoon_underground_comms_agent/commsoffice_luxury.dmm index a7b2d4dea8be1d..ce78df7db2689a 100644 --- a/_maps/RandomRuins/IceRuins/icemoon_underground_comms_agent/commsoffice_luxury.dmm +++ b/_maps/RandomRuins/IceRuins/icemoon_underground_comms_agent/commsoffice_luxury.dmm @@ -144,11 +144,11 @@ /area/ruin/comms_agent) "M" = ( /obj/structure/filingcabinet, -/obj/item/paperwork, /obj/item/paper/monitorkey, /obj/item/paper/fluff/ruins/listeningstation/briefing{ pixel_x = -2 }, +/obj/item/folder/syndicate/mining, /turf/open/floor/wood/tile, /area/ruin/comms_agent) "N" = ( diff --git a/_maps/RandomRuins/IceRuins/icemoon_underground_comms_agent/commsoffice_standard.dmm b/_maps/RandomRuins/IceRuins/icemoon_underground_comms_agent/commsoffice_standard.dmm index b1edb418dfb347..9d77d3535fec33 100644 --- a/_maps/RandomRuins/IceRuins/icemoon_underground_comms_agent/commsoffice_standard.dmm +++ b/_maps/RandomRuins/IceRuins/icemoon_underground_comms_agent/commsoffice_standard.dmm @@ -49,11 +49,11 @@ /area/ruin/comms_agent) "u" = ( /obj/structure/filingcabinet, -/obj/item/paperwork, /obj/item/paper/monitorkey, /obj/item/paper/fluff/ruins/listeningstation/briefing{ pixel_x = -2 }, +/obj/item/folder/syndicate/mining, /turf/open/floor/wood/tile, /area/ruin/comms_agent) "v" = ( diff --git a/_maps/RandomRuins/IceRuins/icemoon_underground_frozen_comms.dmm b/_maps/RandomRuins/IceRuins/icemoon_underground_frozen_comms.dmm index 54b33b5e8111d6..6749491b68b64a 100644 --- a/_maps/RandomRuins/IceRuins/icemoon_underground_frozen_comms.dmm +++ b/_maps/RandomRuins/IceRuins/icemoon_underground_frozen_comms.dmm @@ -195,6 +195,14 @@ pixel_x = -3; pixel_y = 7 }, +/obj/machinery/button/door/directional/north{ + id = "ice_comms_car"; + name = "Garage Door Button"; + pixel_x = -23; + pixel_y = 0; + req_access = list("research"); + dir = 8 + }, /turf/open/floor/plating/icemoon, /area/ruin/powered/shuttle) "zz" = ( @@ -239,13 +247,6 @@ dir = 4 }, /obj/machinery/light/small/directional/south, -/obj/machinery/button/door/directional/north{ - id = "ice_comms_car"; - name = "Garage Door Button"; - pixel_x = -23; - pixel_y = 22; - req_access = list("research") - }, /turf/open/floor/plating/icemoon, /area/ruin/powered/shuttle) "FK" = ( @@ -312,7 +313,7 @@ /obj/structure/rack, /obj/item/wrench, /obj/item/crowbar/large/twenty_force, -/obj/machinery/light/small/built/directional/south, +/obj/machinery/light/small/empty/directional/south, /turf/open/floor/plating/icemoon, /area/ruin/powered/shuttle) "Kr" = ( diff --git a/_maps/RandomRuins/IceRuins/icemoon_underground_mailroom.dmm b/_maps/RandomRuins/IceRuins/icemoon_underground_mailroom.dmm index c62c9f09e4eb83..45defb797ed423 100644 --- a/_maps/RandomRuins/IceRuins/icemoon_underground_mailroom.dmm +++ b/_maps/RandomRuins/IceRuins/icemoon_underground_mailroom.dmm @@ -202,10 +202,6 @@ /obj/machinery/light/small/red/directional/north, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/ruin/powered/mailroom) -"vU" = ( -/obj/structure/sign/departments/cargo, -/turf/closed/indestructible/reinforced, -/area/ruin/powered/mailroom) "vV" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/iron/smooth_large, @@ -470,6 +466,7 @@ pixel_x = 4; pixel_y = 3 }, +/obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/iron/white, /area/ruin/powered/mailroom) "Wr" = ( @@ -485,16 +482,13 @@ "WE" = ( /turf/closed/wall/r_wall, /area/ruin/powered/mailroom) -"Xa" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/indestructible/reinforced, -/area/ruin/powered/mailroom) "Xi" = ( /obj/effect/turf_decal/loading_area{ dir = 4 }, /obj/effect/decal/remains/human, /obj/item/clothing/suit/hooded/wintercoat, +/obj/structure/sign/departments/cargo/directional/south, /turf/open/floor/iron/textured, /area/ruin/powered/mailroom) "XO" = ( @@ -693,7 +687,7 @@ SY iO MC Wr -Xa +ms Wj ch Mi @@ -767,7 +761,7 @@ MT ba ba Xi -vU +ms iV zr iV diff --git a/_maps/RandomRuins/IceRuins/icemoon_underground_outpost31.dmm b/_maps/RandomRuins/IceRuins/icemoon_underground_outpost31.dmm index 24b4221ebf2724..b6531a22008262 100644 --- a/_maps/RandomRuins/IceRuins/icemoon_underground_outpost31.dmm +++ b/_maps/RandomRuins/IceRuins/icemoon_underground_outpost31.dmm @@ -555,7 +555,6 @@ /turf/open/floor/wood, /area/ruin/outpost31/kennel) "kP" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/structure/cable, /turf/open/floor/pod/dark, @@ -626,6 +625,7 @@ /obj/machinery/power/apc/auto_name/directional/north, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer2, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/iron/white/smooth_half, /area/ruin/outpost31/medical) "lW" = ( @@ -834,7 +834,6 @@ /area/ruin/outpost31/recroom) "qt" = ( /obj/machinery/door/airlock/external/glass/ruin, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "o31a" @@ -1046,7 +1045,6 @@ /turf/open/floor/catwalk_floor/iron, /area/ruin/outpost31) "uj" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/structure/cable, /obj/effect/decal/cleanable/dirt/dust, @@ -1211,7 +1209,6 @@ /area/ruin/outpost31/lootroom) "xP" = ( /obj/machinery/door/airlock/external/glass/ruin, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "o31B" @@ -1241,11 +1238,6 @@ initial_gas_mix = "o2=14;n2=30;TEMP=293.15" }, /area/ruin/outpost31/lab) -"yQ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/turf/open/floor/pod/dark, -/area/ruin/outpost31) "yW" = ( /obj/structure/sign/warning/biohazard, /turf/closed/indestructible/reinforced, @@ -1259,7 +1251,6 @@ /area/ruin/outpost31/lab) "zd" = ( /obj/machinery/door/airlock/grunge, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/autoname, @@ -1380,12 +1371,6 @@ /obj/item/ammo_box/c9mm, /turf/open/floor/carpet/green, /area/ruin/outpost31/commander_room) -"AE" = ( -/obj/machinery/door/airlock/grunge, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/autoname, -/turf/open/floor/carpet/green, -/area/ruin/outpost31/commander_room) "AG" = ( /obj/machinery/door/airlock/grunge, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer2, @@ -1399,6 +1384,14 @@ /obj/item/paper_bin, /turf/open/floor/iron, /area/ruin/outpost31/radiomap) +"AX" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/iron, +/area/ruin/outpost31) "Bb" = ( /obj/machinery/light/warm/directional/south, /obj/effect/turf_decal/tile/neutral, @@ -1594,6 +1587,14 @@ /obj/effect/turf_decal/tile/neutral, /turf/open/floor/iron, /area/ruin/outpost31) +"EM" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/structure/cable, +/turf/open/floor/iron, +/area/ruin/outpost31) "ES" = ( /obj/item/kirbyplants/random/dead, /obj/effect/turf_decal/siding/white{ @@ -1633,6 +1634,12 @@ /obj/structure/table, /turf/open/floor/iron/cafeteria, /area/ruin/outpost31/kitchendiningroom) +"Fy" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, +/obj/structure/cable, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/catwalk_floor/iron, +/area/ruin/outpost31) "FH" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/turf_decal/tile/neutral{ @@ -1767,7 +1774,6 @@ /area/ruin/outpost31/medical) "Ie" = ( /obj/machinery/door/airlock/external/glass/ruin, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "o31d" @@ -1859,6 +1865,11 @@ dir = 4 }, /area/ruin/outpost31/medical) +"JU" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/catwalk_floor/iron, +/area/ruin/outpost31) "Kh" = ( /obj/structure/thing_boss_phase_depleter, /turf/open/floor/circuit/red/off{ @@ -2035,7 +2046,6 @@ /turf/open/floor/iron/freezer, /area/ruin/outpost31/crewquarters) "NP" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/effect/turf_decal/tile/neutral, /turf/open/floor/iron, @@ -2122,7 +2132,6 @@ /turf/open/floor/iron/kitchen/small, /area/ruin/outpost31/kitchendiningroom) "PR" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/structure/cable, /obj/effect/turf_decal/tile/neutral{ @@ -2587,6 +2596,12 @@ "Yo" = ( /turf/open/misc/asteroid/snow/icemoon/do_not_chasm, /area/icemoon/underground/explored) +"YC" = ( +/obj/machinery/door/airlock/grunge, +/obj/effect/mapping_helpers/airlock/autoname, +/obj/structure/cable, +/turf/open/floor/carpet/green, +/area/ruin/outpost31/commander_room) "YG" = ( /obj/machinery/power/apc/auto_name/directional/east, /obj/structure/cable, @@ -3016,7 +3031,7 @@ uB uB Sg Lf -yQ +lM qI Sg SN @@ -3100,7 +3115,7 @@ yp ES aq Ht -QU +AX lO aV Wu @@ -3142,7 +3157,7 @@ kh UH Ml vX -ge +Fy oN rO gu @@ -3875,10 +3890,10 @@ Ly Ly Ly Ly -uA -AE -vX -YK +Ly +iA +cp +JU Uy xc xc @@ -3918,9 +3933,9 @@ fM Ly Ly uA -iA -Ht -qK +YC +EM +JU Uy xc uB diff --git a/_maps/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm b/_maps/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm index b4d563d8fed059..2e6a25bdab3d40 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm @@ -146,10 +146,6 @@ /obj/structure/fluff/beach_umbrella/engine, /turf/open/misc/beach/sand, /area/ruin/powered/beach) -"ct" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/turf/open/floor/wood, -/area/ruin/powered/beach) "cE" = ( /obj/effect/turf_decal/sand, /obj/effect/turf_decal/stripes/asteroid/line{ @@ -263,7 +259,7 @@ /turf/open/floor/wood, /area/ruin/powered/beach) "gX" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/layer4, +/obj/machinery/atmospherics/components/unary/passive_vent/layer4, /turf/open/misc/asteroid/basalt/lava_land_surface, /area/lavaland/surface/outdoors/explored) "hj" = ( @@ -304,7 +300,9 @@ /area/ruin/powered/beach) "hC" = ( /obj/machinery/light/directional/east, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 4 + }, /obj/structure/chair/stool/bar/directional/south, /turf/open/floor/wood, /area/ruin/powered/beach) @@ -330,7 +328,6 @@ dir = 1 }, /obj/structure/table/wood, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/wood, /area/ruin/powered/beach) "hX" = ( @@ -359,12 +356,6 @@ /obj/item/reagent_containers/cup/glass/colocup, /turf/open/floor/wood, /area/ruin/powered/beach) -"kg" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4{ - dir = 4 - }, -/turf/open/floor/pod/light, -/area/ruin/powered/beach) "kh" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ dir = 8 @@ -441,6 +432,15 @@ /obj/item/reagent_containers/condiment/flour, /turf/open/floor/wood, /area/ruin/powered/beach) +"oe" = ( +/obj/effect/spawner/random/bedsheet{ + dir = 4 + }, +/obj/structure/bed{ + dir = 4 + }, +/turf/open/floor/wood, +/area/ruin/powered/beach) "og" = ( /obj/structure/weightmachine/weightlifter, /turf/open/floor/pod/dark, @@ -460,9 +460,6 @@ /area/ruin/powered/beach) "oU" = ( /obj/machinery/seed_extractor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4{ - dir = 4 - }, /turf/open/floor/pod/light, /area/ruin/powered/beach) "pz" = ( @@ -552,6 +549,15 @@ /obj/item/toy/beach_ball, /turf/open/misc/beach/sand, /area/ruin/powered/beach) +"rO" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ + dir = 4 + }, +/turf/open/floor/pod/light, +/area/ruin/powered/beach) "rU" = ( /obj/item/reagent_containers/condiment/enzyme, /obj/item/reagent_containers/cup/beaker{ @@ -605,7 +611,6 @@ /turf/open/floor/light/colour_cycle/dancefloor_a, /area/ruin/powered/beach) "vf" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/structure/table/wood/poker, /obj/item/storage/dice, /obj/item/stack/spacecash/c1000, @@ -631,10 +636,9 @@ /turf/open/floor/pod/light, /area/ruin/powered/beach) "xa" = ( -/obj/structure/sign/warning/secure_area, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/turf/closed/wall/mineral/sandstone, +/obj/effect/mapping_helpers/broken_floor, +/obj/structure/sign/warning/secure_area/directional/west, +/turf/open/floor/plating, /area/ruin/powered/beach) "xe" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4{ @@ -822,33 +826,16 @@ }, /turf/closed/wall/mineral/sandstone, /area/ruin/powered/beach) -"CZ" = ( -/obj/machinery/hydroponics/constructable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4{ - dir = 4 - }, -/turf/open/floor/iron/grimy, -/area/ruin/powered/beach) "Df" = ( /obj/structure/table, /obj/machinery/reagentgrinder, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/wood, /area/ruin/powered/beach) -"Dg" = ( -/obj/machinery/hydroponics/constructable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ - dir = 4 - }, -/turf/open/floor/iron/grimy, -/area/ruin/powered/beach) "Ds" = ( /obj/structure/closet/secure_closet/freezer/kitchen/all_access, /turf/open/floor/wood, /area/ruin/powered/beach) -"Eq" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, -/turf/open/floor/wood, -/area/ruin/powered/beach) "Eu" = ( /obj/structure/flora/bush/sparsegrass/style_random, /turf/open/water/beach, @@ -959,7 +946,7 @@ /area/ruin/powered/beach) "Iq" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 4 + dir = 8 }, /turf/open/floor/pod/light, /area/ruin/powered/beach) @@ -1014,7 +1001,7 @@ /area/ruin/powered/beach) "JP" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ - dir = 4 + dir = 8 }, /turf/open/floor/pod/light, /area/ruin/powered/beach) @@ -1109,9 +1096,7 @@ /turf/open/floor/wood, /area/ruin/powered/beach) "OP" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ - dir = 8 - }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, /obj/machinery/light/directional/south, /turf/open/floor/wood, /area/ruin/powered/beach) @@ -1506,7 +1491,7 @@ Cs Cs aj Zi -xa +BE BE Mf FO @@ -1518,8 +1503,8 @@ aj HW aC aC -Eq -ct +kh +aC hS cd Bp @@ -1538,7 +1523,7 @@ Wa as pE mh -Wa +xa gs VI VI @@ -1660,7 +1645,7 @@ Ti Ti hC vf -ct +aC BN Lm Lm @@ -2157,9 +2142,9 @@ Lm hX VO og -wY -wY -wY +gC +gC +rO Fr yc Bp @@ -2179,7 +2164,7 @@ kh aj de TC -hq +oe MZ hj mw @@ -2221,9 +2206,9 @@ dc hX VO og -gC +wY EN -kg +wY wY Pr MZ @@ -2253,7 +2238,7 @@ CL wY wY wY -gC +wY oF oU wY @@ -2285,9 +2270,9 @@ qF BE yc FD -gC wY -kg +wY +wY wY AY MZ @@ -2317,9 +2302,9 @@ UZ IL MZ sV -Dg +sV jh -CZ +sV sV Zi Mf diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_biodome_winter.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_biodome_winter.dmm index bbf0c14f8f3232..cc9f5e7a2958aa 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_biodome_winter.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_biodome_winter.dmm @@ -266,7 +266,7 @@ /turf/open/floor/wood, /area/ruin/powered/snow_biodome) "hA" = ( -/obj/machinery/light/built/directional/north, +/obj/machinery/light/empty/directional/north, /obj/effect/mapping_helpers/no_lava, /turf/open/floor/pod/dark{ initial_gas_mix = "LAVALAND_ATMOS" diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_crashsite.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_crashsite.dmm index 6150ca807272cf..4a162ed4e76e6e 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_crashsite.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_crashsite.dmm @@ -1,7 +1,7 @@ //MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE "a" = ( /turf/open/misc/asteroid/basalt/lava_land_surface, -/area/lavaland/surface) +/area/lavaland/surface/outdoors) "b" = ( /obj/machinery/door/airlock/titanium{ name = "Escape Pod Airlock" @@ -45,11 +45,11 @@ "h" = ( /obj/effect/decal/cleanable/rubble, /turf/open/misc/asteroid/basalt/lava_land_surface, -/area/lavaland/surface) +/area/lavaland/surface/outdoors) "i" = ( /obj/effect/mob_spawn/corpse/goliath, /turf/open/misc/asteroid/basalt/lava_land_surface, -/area/lavaland/surface) +/area/lavaland/surface/outdoors) "j" = ( /obj/structure/chair/comfy/shuttle{ dir = 4 @@ -63,7 +63,7 @@ /area/ruin/unpowered) "l" = ( /turf/open/water/hot_spring/lavaland_atmos, -/area/lavaland/surface) +/area/lavaland/surface/outdoors) "m" = ( /obj/machinery/door/airlock/survival_pod/glass, /turf/open/floor/pod/dark, @@ -75,7 +75,7 @@ /area/ruin/unpowered) "o" = ( /turf/closed/mineral/volcanic/lava_land_surface, -/area/lavaland/surface) +/area/lavaland/surface/outdoors) "p" = ( /obj/structure/rack, /obj/item/storage/toolbox/emergency, @@ -97,17 +97,17 @@ "t" = ( /obj/structure/flora/tree/stump, /turf/open/misc/asteroid/basalt/lava_land_surface, -/area/lavaland/surface) +/area/lavaland/surface/outdoors) "u" = ( /obj/structure/bonfire/prelit, /turf/open/misc/asteroid/basalt/lava_land_surface, -/area/lavaland/surface) +/area/lavaland/surface/outdoors) "v" = ( /obj/effect/decal/cleanable/rubble, /obj/item/stack/sheet/mineral/titanium, /obj/item/stack/sheet/mineral/titanium, /turf/open/misc/asteroid/basalt/lava_land_surface, -/area/lavaland/surface) +/area/lavaland/surface/outdoors) "w" = ( /obj/effect/decal/cleanable/glass/titanium, /obj/item/stack/sheet/mineral/titanium, @@ -119,7 +119,7 @@ dir = 8 }, /turf/open/misc/ashplanet/wateryrock/lavaland_atmos, -/area/lavaland/surface) +/area/lavaland/surface/outdoors) "y" = ( /obj/structure/chair/comfy/shuttle{ dir = 1 @@ -130,22 +130,22 @@ "z" = ( /obj/item/book/manual/fish_catalog, /turf/open/misc/ashplanet/wateryrock/lavaland_atmos, -/area/lavaland/surface) +/area/lavaland/surface/outdoors) "B" = ( /mob/living/basic/mining/goliath, /turf/open/misc/asteroid/basalt/lava_land_surface, -/area/lavaland/surface) +/area/lavaland/surface/outdoors) "D" = ( /obj/item/gun/energy/recharge/kinetic_accelerator, /turf/open/misc/asteroid/basalt/lava_land_surface, -/area/lavaland/surface) +/area/lavaland/surface/outdoors) "E" = ( /turf/open/misc/ashplanet/wateryrock/lavaland_atmos, -/area/lavaland/surface) +/area/lavaland/surface/outdoors) "F" = ( /obj/effect/mob_spawn/corpse/human/cargo_tech, /turf/open/misc/asteroid/basalt/lava_land_surface, -/area/lavaland/surface) +/area/lavaland/surface/outdoors) "G" = ( /turf/template_noop, /area/template_noop) @@ -176,7 +176,7 @@ "L" = ( /obj/item/storage/toolbox/fishing, /turf/open/misc/ashplanet/wateryrock/lavaland_atmos, -/area/lavaland/surface) +/area/lavaland/surface/outdoors) "M" = ( /obj/structure/rack, /obj/item/pickaxe/emergency, @@ -194,14 +194,14 @@ "P" = ( /obj/effect/mob_spawn/corpse/human/miner, /turf/open/misc/asteroid/basalt/lava_land_surface, -/area/lavaland/surface) +/area/lavaland/surface/outdoors) "Q" = ( /turf/closed/wall/mineral/titanium/nodiagonal, /area/ruin/unpowered) "R" = ( /mob/living/basic/mining/goliath/ancient, /turf/open/misc/asteroid/basalt/lava_land_surface, -/area/lavaland/surface) +/area/lavaland/surface/outdoors) "S" = ( /obj/structure/bed/pod, /obj/item/bedsheet/black, @@ -214,7 +214,7 @@ "U" = ( /obj/item/bait_can/worm/premium, /turf/open/misc/ashplanet/wateryrock/lavaland_atmos, -/area/lavaland/surface) +/area/lavaland/surface/outdoors) "V" = ( /obj/structure/table/survival_pod, /obj/item/food/meat/steak/goliath, diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_elephant_graveyard.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_elephant_graveyard.dmm index f61188c3a46053..2b4b18d6c680c9 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_elephant_graveyard.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_elephant_graveyard.dmm @@ -40,6 +40,7 @@ "bh" = ( /obj/effect/decal/cleanable/blood/oil, /obj/structure/chair/office/light, +/obj/structure/sign/warning/secure_area/directional/west, /turf/open/floor/mineral/titanium/white, /area/ruin/powered/graveyard_shuttle) "bi" = ( @@ -298,6 +299,7 @@ "vP" = ( /obj/item/light/bulb/broken, /obj/effect/decal/cleanable/dirt, +/obj/structure/sign/warning/secure_area/directional/west, /turf/open/floor/mineral/titanium/white, /area/ruin/powered/graveyard_shuttle) "vS" = ( @@ -623,10 +625,6 @@ /obj/effect/spawner/structure/window/reinforced/shuttle, /turf/open/misc/asteroid/basalt/lava_land_surface, /area/ruin/powered/graveyard_shuttle) -"ZC" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/mineral/titanium, -/area/ruin/powered/graveyard_shuttle) "ZH" = ( /obj/structure/stone_tile/surrounding_tile, /turf/open/misc/asteroid/basalt/wasteland{ @@ -1499,9 +1497,9 @@ AB bf aH aH -ZC +aH IR -ZC +aH aH aH aH diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_gas.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_gas.dmm index d03c2800eea7e7..790879899dbecc 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_gas.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_gas.dmm @@ -585,6 +585,7 @@ pixel_y = -1 }, /obj/structure/closet/crate/freezer, +/obj/machinery/atmospherics/pipe/smart/manifold4w/general/hidden/layer2, /turf/open/floor/iron/freezer{ baseturfs = /turf/open/misc/asteroid/basalt/lava_land_surface }, @@ -714,7 +715,7 @@ }, /area/ruin/thelizardsgas_lavaland) "Eh" = ( -/obj/machinery/atmospherics/components/tank/oxygen{ +/obj/machinery/atmospherics/components/tank/air/layer2{ dir = 8 }, /turf/open/floor/iron/smooth{ @@ -730,7 +731,6 @@ /area/ruin/thelizardsgas_lavaland) "Es" = ( /obj/machinery/door/airlock/external/ruin, -/obj/machinery/atmospherics/pipe/smart/manifold4w/general/hidden, /obj/machinery/atmospherics/pipe/smart/manifold4w/general/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/general/hidden/layer4, /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ @@ -850,6 +850,12 @@ baseturfs = /turf/open/misc/asteroid/basalt/lava_land_surface }, /area/ruin/thelizardsgas_lavaland) +"Im" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/turf/open/floor/iron{ + baseturfs = /turf/open/misc/asteroid/basalt/lava_land_surface + }, +/area/ruin/thelizardsgas_lavaland) "IC" = ( /obj/structure/cable, /obj/structure/railing, @@ -1038,7 +1044,6 @@ pixel_y = 2; pixel_x = 6 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/general/hidden/layer4, /turf/open/floor/iron{ baseturfs = /turf/open/misc/asteroid/basalt/lava_land_surface }, @@ -1530,7 +1535,7 @@ IU HL xW rM -IU +Im pp FA dC diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_mookvillage.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_mookvillage.dmm index 70ebd3ce428605..241b2b608f25cd 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_mookvillage.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_mookvillage.dmm @@ -106,6 +106,7 @@ "x" = ( /obj/structure/table/wood/shuttle_bar, /obj/item/clothing/head/costume/garland/poppy, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/wood/lavaland, /area/lavaland/surface/outdoors) "y" = ( @@ -119,10 +120,6 @@ /obj/structure/chair/pew/right, /turf/open/misc/asteroid/basalt/lava_land_surface, /area/lavaland/surface/outdoors) -"C" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/wood, -/area/lavaland/surface/outdoors) "E" = ( /obj/structure/flora/grass/jungle/b, /turf/open/misc/grass/jungle/lavaland, @@ -588,7 +585,7 @@ a a a a -C +h x c c diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm index fa4bec4dbc7d42..b79b365023888c 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1.dmm @@ -383,9 +383,12 @@ /turf/open/floor/engine, /area/ruin/syndicate_lava_base/engineering) "dQ" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/ruin/syndicate_lava_base/testlab) +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/warning/secure_area/directional/west, +/turf/open/floor/iron/white/side{ + dir = 1 + }, +/area/ruin/syndicate_lava_base/main) "dV" = ( /obj/machinery/atmospherics/miner/plasma, /turf/open/floor/engine/plasma, @@ -680,7 +683,6 @@ /turf/open/floor/iron, /area/ruin/syndicate_lava_base/chemistry) "fx" = ( -/obj/structure/sign/warning/secure_area, /obj/machinery/porta_turret/syndicate{ dir = 9 }, @@ -788,6 +790,8 @@ "gg" = ( /obj/structure/sign/warning/fire/directional/north, /obj/structure/sign/warning/xeno_mining/directional/south, +/obj/structure/sign/warning/secure_area/directional/northeast, +/obj/structure/sign/warning/secure_area/directional/southeast, /turf/open/floor/plating, /area/ruin/syndicate_lava_base/cargo) "gh" = ( @@ -814,10 +818,6 @@ /obj/structure/sink/kitchen/directional/west, /turf/open/floor/iron/dark, /area/ruin/syndicate_lava_base/bar) -"gO" = ( -/obj/structure/sign/departments/cargo, -/turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/ruin/syndicate_lava_base/cargo) "gP" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/brown{ @@ -1105,10 +1105,6 @@ }, /turf/open/floor/iron, /area/ruin/syndicate_lava_base/main) -"iq" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/ruin/syndicate_lava_base/main) "iF" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -1707,6 +1703,9 @@ /area/ruin/syndicate_lava_base/engineering) "nA" = ( /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/duct, /turf/open/floor/iron/white/corner, /area/ruin/syndicate_lava_base/medbay) "nB" = ( @@ -1763,9 +1762,9 @@ /turf/open/floor/iron, /area/ruin/syndicate_lava_base/bar) "nM" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/duct, /turf/open/floor/iron, /area/ruin/syndicate_lava_base/medbay) @@ -1869,10 +1868,11 @@ "oD" = ( /obj/structure/sign/warning/xeno_mining/directional/west, /obj/structure/sign/warning/fire/directional/east, +/obj/structure/sign/warning/secure_area/directional/southwest, +/obj/structure/sign/warning/secure_area/directional/southeast, /turf/open/floor/plating, /area/ruin/syndicate_lava_base/arrivals) "oF" = ( -/obj/structure/sign/warning/secure_area, /obj/machinery/porta_turret/syndicate{ dir = 9 }, @@ -1904,6 +1904,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/mapping_helpers/airalarm/syndicate_access, /obj/machinery/airalarm/directional/south, +/obj/structure/sign/warning/secure_area/directional/west, /turf/open/floor/iron/dark, /area/ruin/syndicate_lava_base/main) "pk" = ( @@ -1927,9 +1928,9 @@ /area/ruin/syndicate_lava_base/engineering) "pp" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/duct, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/ruin/syndicate_lava_base/medbay) "pu" = ( @@ -2174,10 +2175,6 @@ /obj/machinery/light/small/directional/east, /turf/open/floor/iron/dark, /area/ruin/syndicate_lava_base/cargo) -"sB" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/ruin/syndicate_lava_base/cargo) "sH" = ( /obj/machinery/door/airlock/virology/glass{ name = "Monkey Pen" @@ -2401,7 +2398,6 @@ ailock = 1; control_area = "/area/ruin/syndicate_lava_base/main"; dir = 1; - icon_state = "control_kill"; lethal = 1; name = "Base turret controls"; pixel_y = 30; @@ -2589,13 +2585,6 @@ /obj/item/reagent_containers/spray/cleaner, /turf/open/floor/plating, /area/ruin/syndicate_lava_base/main) -"zq" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/duct, -/turf/open/floor/iron, -/area/ruin/syndicate_lava_base/medbay) "zt" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -3321,6 +3310,7 @@ }, /obj/machinery/duct, /obj/machinery/light/small/directional/north, +/obj/structure/sign/departments/cargo/directional/east, /turf/open/floor/iron, /area/ruin/syndicate_lava_base/main) "Iv" = ( @@ -3694,10 +3684,6 @@ }, /turf/open/floor/iron, /area/ruin/syndicate_lava_base/engineering) -"Oj" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/ruin/syndicate_lava_base/arrivals) "Oq" = ( /obj/effect/spawner/random/vending/colavend{ hacked = 1 @@ -4286,6 +4272,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/structure/sign/warning/secure_area/directional/west, /turf/open/floor/iron/dark, /area/ruin/syndicate_lava_base/main) "WA" = ( @@ -5354,7 +5341,7 @@ Vb mT mT mT -Oj +mT ab ab ab @@ -5678,7 +5665,7 @@ pa pa pa ae -dQ +ae TD hd hy @@ -5728,7 +5715,7 @@ ae ae ae oP -fH +dQ IX yA hz @@ -6098,7 +6085,7 @@ qA lJ pW lI -zq +lJ nM ob al @@ -6279,14 +6266,14 @@ SQ Iw dy dy -gO +dy Tb hC dy ha -iq +ha eZ -iq +ha ha ha yG @@ -6677,7 +6664,7 @@ ab ab ab ab -sB +dy gh fx si diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/commswilding_1.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/commswilding_1.dmm index 8ca5c0cd2b50ed..0a4fce58b4659e 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/commswilding_1.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/commswilding_1.dmm @@ -133,6 +133,7 @@ }, /obj/effect/mapping_helpers/airlock/access/all/syndicate/general, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/iron/dark, /area/ruin/syndicate_lava_base/telecomms) "R" = ( @@ -147,10 +148,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/ruin/syndicate_lava_base/telecomms) -"V" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/ruin/syndicate_lava_base/telecomms) "W" = ( /turf/open/floor/iron/dark, /area/ruin/syndicate_lava_base/telecomms) @@ -200,7 +197,7 @@ a (4,1,1) = {" f f -V +f O f f diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/commswilding_2.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/commswilding_2.dmm index fd703febfb1652..6f294481474f20 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/commswilding_2.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/commswilding_2.dmm @@ -3,9 +3,7 @@ /turf/template_noop, /area/template_noop) "b" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/wood, /area/ruin/syndicate_lava_base/telecomms) "h" = ( @@ -93,7 +91,6 @@ "F" = ( /obj/machinery/light/small/directional/east, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/siding/wood/corner, /turf/open/floor/wood, /area/ruin/syndicate_lava_base/telecomms) @@ -229,7 +226,7 @@ a K y b -y +S T K a @@ -238,8 +235,8 @@ a a K y -S y +S T K a diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/commswilding_3.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/commswilding_3.dmm index cd6670dfb21f17..8d8bba7502d192 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/commswilding_3.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/commswilding_3.dmm @@ -227,7 +227,6 @@ "W" = ( /obj/machinery/light/small/directional/east, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/noticeboard/directional/east, /turf/open/floor/iron, /area/ruin/syndicate_lava_base/telecomms) @@ -315,7 +314,7 @@ a G O s -p +s j k G diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/mistake_feasible.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/mistake_feasible.dmm index 9dfb448cffecb3..a636d9d65efb3d 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/mistake_feasible.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/mistake_feasible.dmm @@ -17,14 +17,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/ruin/syndicate_lava_base/testlab) -"ad" = ( -/obj/structure/table/reinforced, -/obj/item/restraints/handcuffs, -/obj/item/taperecorder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/ruin/syndicate_lava_base/testlab) "ae" = ( /obj/machinery/firealarm/directional/south, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -33,19 +25,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/ruin/syndicate_lava_base/testlab) -"af" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/ruin/syndicate_lava_base/testlab) "ag" = ( /obj/structure/table/reinforced, /obj/item/restraints/handcuffs, @@ -67,12 +46,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/ruin/syndicate_lava_base/testlab) -"aj" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ - dir = 4 - }, -/turf/open/floor/engine, -/area/ruin/syndicate_lava_base/testlab) "ak" = ( /obj/structure/table/reinforced, /obj/effect/decal/cleanable/dirt, @@ -83,14 +56,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/ruin/syndicate_lava_base/testlab) -"al" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/obj/structure/extinguisher_cabinet/directional/east, -/obj/structure/cable, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/ruin/syndicate_lava_base/testlab) "am" = ( /obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, /obj/machinery/door/firedoor, @@ -106,7 +71,7 @@ /area/ruin/syndicate_lava_base/testlab) "ao" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 + dir = 1 }, /turf/open/floor/engine, /area/ruin/syndicate_lava_base/testlab) @@ -122,33 +87,8 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/ruin/syndicate_lava_base/testlab) -"aq" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4{ - dir = 10 - }, -/turf/open/floor/engine, -/area/ruin/syndicate_lava_base/testlab) "ar" = ( -/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/preopen{ - id = "lavalandsyndi"; - name = "Syndicate Research Experimentation Shutters" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/turf/open/floor/plating, -/area/ruin/syndicate_lava_base/testlab) -"as" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4{ - dir = 4 - }, +/obj/structure/sign/warning/secure_area/directional/south, /turf/open/floor/engine, /area/ruin/syndicate_lava_base/testlab) "at" = ( @@ -174,43 +114,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/ruin/syndicate_lava_base/testlab) -"aw" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/obj/effect/mapping_helpers/airalarm/syndicate_access, -/obj/machinery/airalarm/directional/south, -/turf/open/floor/iron/dark, -/area/ruin/syndicate_lava_base/testlab) -"ax" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ - dir = 4 - }, -/turf/open/floor/engine, -/area/ruin/syndicate_lava_base/testlab) -"ay" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/ruin/syndicate_lava_base/testlab) -"az" = ( -/obj/machinery/firealarm/directional/south, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/ruin/syndicate_lava_base/testlab) "aA" = ( /obj/structure/bed/medical/emergency, /obj/machinery/iv_drip, @@ -240,12 +143,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/ruin/syndicate_lava_base/testlab) -"aC" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4{ - dir = 4 - }, -/turf/open/floor/engine, -/area/ruin/syndicate_lava_base/testlab) "aD" = ( /turf/closed/wall/mineral/plastitanium/nodiagonal, /area/ruin/syndicate_lava_base/testlab) @@ -262,35 +159,10 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/ruin/syndicate_lava_base/testlab) -"aF" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/obj/machinery/door/airlock/hatch{ - name = "Experimentation Lab" - }, -/obj/effect/mapping_helpers/airlock/access/all/syndicate/general, -/obj/structure/cable, -/obj/modular_map_connector, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/ruin/syndicate_lava_base/testlab) -"aG" = ( -/obj/machinery/light/small/directional/south, -/obj/structure/table/reinforced, -/obj/item/storage/box/monkeycubes/syndicate, -/obj/item/storage/box/monkeycubes/syndicate, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/ruin/syndicate_lava_base/testlab) "aH" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/engine, /area/ruin/syndicate_lava_base/testlab) -"aI" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/ruin/syndicate_lava_base/testlab) "aJ" = ( /obj/structure/chair{ dir = 1 @@ -300,11 +172,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/ruin/syndicate_lava_base/testlab) -"aK" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/turf/open/floor/engine, -/area/ruin/syndicate_lava_base/testlab) "aL" = ( /obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, /turf/open/floor/plating, @@ -313,7 +180,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/engine, /area/ruin/syndicate_lava_base/testlab) "aN" = ( @@ -340,16 +206,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/engine, /area/ruin/syndicate_lava_base/testlab) -"aR" = ( -/obj/structure/table/reinforced, -/obj/effect/decal/cleanable/dirt, -/obj/item/paper_bin, -/obj/item/pen, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/ruin/syndicate_lava_base/testlab) "aS" = ( /obj/machinery/light/small/directional/east, /turf/open/floor/engine, @@ -365,20 +221,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/ruin/syndicate_lava_base/testlab) -"aU" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, -/turf/open/floor/engine, -/area/ruin/syndicate_lava_base/testlab) -"aV" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 4 - }, -/turf/open/floor/engine, -/area/ruin/syndicate_lava_base/testlab) "aW" = ( /obj/machinery/light/small/directional/north, /turf/open/floor/engine, @@ -411,16 +253,17 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/engine, /area/ruin/syndicate_lava_base/testlab) +"GB" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/turf/open/floor/engine, +/area/ruin/syndicate_lava_base/testlab) "IP" = ( /obj/effect/mapping_helpers/airalarm/syndicate_access, /obj/machinery/airalarm/directional/north, /turf/open/floor/engine, /area/ruin/syndicate_lava_base/testlab) -"Zh" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, +"Kf" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/engine, /area/ruin/syndicate_lava_base/testlab) @@ -459,8 +302,8 @@ ah ah an aY -ah -aI +ar +aD aL au aa @@ -470,8 +313,8 @@ aa aD aW ah -ao -ah +GB +aH ao ah ac @@ -484,10 +327,10 @@ aa aD IP ah -aH ah aH ah +ah aD aB aO @@ -498,8 +341,8 @@ aa aD ah ah -Zh -ah +aM +aH aM ah am @@ -512,7 +355,7 @@ aa aD aW ah -aQ +Kf gS gS aQ diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/mistake_unlikely.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/mistake_unlikely.dmm index c84eec64e9ad9e..27d1bd0f3b36e1 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/mistake_unlikely.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_syndicate_base1/mistake_unlikely.dmm @@ -33,12 +33,9 @@ "i" = ( /turf/open/floor/iron/dark, /area/ruin/syndicate_lava_base/testlab) -"n" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/ruin/syndicate_lava_base/testlab) "w" = ( /obj/structure/closet/emcloset, +/obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/iron/dark, /area/ruin/syndicate_lava_base/testlab) "A" = ( @@ -128,7 +125,7 @@ N "} (4,1,1) = {" d -n +B w A a diff --git a/_maps/RandomRuins/SpaceRuins/DJstation/kitchen_1.dmm b/_maps/RandomRuins/SpaceRuins/DJstation/kitchen_1.dmm index 4f032c8ac053bb..b0fe3041c9b71d 100644 --- a/_maps/RandomRuins/SpaceRuins/DJstation/kitchen_1.dmm +++ b/_maps/RandomRuins/SpaceRuins/DJstation/kitchen_1.dmm @@ -63,7 +63,7 @@ }, /obj/modular_map_connector, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "L" = ( /turf/closed/wall, /area/ruin/space/djstation) @@ -76,7 +76,7 @@ name = "Kitchen" }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "P" = ( /obj/effect/turf_decal/tile/bar/opposingcorners, /turf/open/floor/iron, diff --git a/_maps/RandomRuins/SpaceRuins/DJstation/kitchen_2.dmm b/_maps/RandomRuins/SpaceRuins/DJstation/kitchen_2.dmm index c7cdd09fbdd744..41e0fa8eb705be 100644 --- a/_maps/RandomRuins/SpaceRuins/DJstation/kitchen_2.dmm +++ b/_maps/RandomRuins/SpaceRuins/DJstation/kitchen_2.dmm @@ -49,7 +49,7 @@ /obj/effect/mapping_helpers/airlock/locked, /obj/structure/barricade/wooden, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "L" = ( /turf/closed/wall, /area/ruin/space/djstation) @@ -60,7 +60,7 @@ /obj/effect/mapping_helpers/airlock/locked, /obj/structure/barricade/wooden, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "S" = ( /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating/airless, diff --git a/_maps/RandomRuins/SpaceRuins/DJstation/kitchen_4.dmm b/_maps/RandomRuins/SpaceRuins/DJstation/kitchen_4.dmm index 9b6e108bf6ec0c..fa6fdf97f40917 100644 --- a/_maps/RandomRuins/SpaceRuins/DJstation/kitchen_4.dmm +++ b/_maps/RandomRuins/SpaceRuins/DJstation/kitchen_4.dmm @@ -116,7 +116,7 @@ name = "Kitchen" }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "V" = ( /obj/structure/table, /obj/item/reagent_containers/spray/cleaner{ @@ -140,7 +140,7 @@ }, /obj/modular_map_connector, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) (1,1,1) = {" e diff --git a/_maps/RandomRuins/SpaceRuins/DJstation/quarters_1.dmm b/_maps/RandomRuins/SpaceRuins/DJstation/quarters_1.dmm index efdb18e781a65e..3d8b5681d58b60 100644 --- a/_maps/RandomRuins/SpaceRuins/DJstation/quarters_1.dmm +++ b/_maps/RandomRuins/SpaceRuins/DJstation/quarters_1.dmm @@ -24,7 +24,7 @@ name = "Rest Room" }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "u" = ( /obj/machinery/duct, /turf/open/floor/iron/grimy, @@ -51,7 +51,7 @@ }, /obj/modular_map_connector, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "F" = ( /obj/structure/curtain, /obj/machinery/shower/directional/south, diff --git a/_maps/RandomRuins/SpaceRuins/DJstation/quarters_2.dmm b/_maps/RandomRuins/SpaceRuins/DJstation/quarters_2.dmm index ef304f1d9303ad..ed849a2aa621e0 100644 --- a/_maps/RandomRuins/SpaceRuins/DJstation/quarters_2.dmm +++ b/_maps/RandomRuins/SpaceRuins/DJstation/quarters_2.dmm @@ -21,7 +21,7 @@ name = "Rest Room" }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "v" = ( /obj/structure/bed/maint, /turf/open/floor/iron/dark/textured, @@ -32,7 +32,7 @@ }, /obj/modular_map_connector, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "J" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, diff --git a/_maps/RandomRuins/SpaceRuins/DJstation/quarters_3.dmm b/_maps/RandomRuins/SpaceRuins/DJstation/quarters_3.dmm index 9102b5e7acc6c3..c85247898122e3 100644 --- a/_maps/RandomRuins/SpaceRuins/DJstation/quarters_3.dmm +++ b/_maps/RandomRuins/SpaceRuins/DJstation/quarters_3.dmm @@ -56,7 +56,7 @@ name = "Rest Room" }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "s" = ( /obj/machinery/shower/directional/east, /turf/open/floor/iron/freezer, @@ -91,7 +91,7 @@ }, /obj/modular_map_connector, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "C" = ( /obj/machinery/duct, /obj/machinery/light/directional/south, diff --git a/_maps/RandomRuins/SpaceRuins/DJstation/quarters_4.dmm b/_maps/RandomRuins/SpaceRuins/DJstation/quarters_4.dmm index 52ec466ae86234..0a3ef02eab4213 100644 --- a/_maps/RandomRuins/SpaceRuins/DJstation/quarters_4.dmm +++ b/_maps/RandomRuins/SpaceRuins/DJstation/quarters_4.dmm @@ -29,7 +29,7 @@ /obj/effect/mapping_helpers/airlock/locked, /obj/structure/barricade/wooden, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "q" = ( /obj/structure/girder, /obj/effect/mapping_helpers/burnt_floor, @@ -50,7 +50,7 @@ "C" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "E" = ( /obj/machinery/light/small/directional/south, /turf/open/floor/plating/airless, @@ -72,10 +72,6 @@ /obj/effect/mapping_helpers/airlock/locked, /obj/structure/barricade/wooden, /turf/template_noop, -/area/template_noop) -"U" = ( -/obj/structure/lattice, -/turf/template_noop, /area/space/nearstation) "W" = ( /obj/structure/lattice, @@ -85,7 +81,7 @@ pixel_y = -1 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Y" = ( /obj/structure/lattice, /obj/effect/spawner/random/structure/grille, @@ -126,9 +122,9 @@ a "} (3,1,1) = {" a -U -U -U +C +C +C J x g @@ -139,12 +135,12 @@ W (4,1,1) = {" a a -U +C a -U +C a -U -U +C +C q a "} @@ -153,10 +149,10 @@ a a a a -U +C a a -U +C J a "} @@ -165,7 +161,7 @@ a a a a -U +C a a M diff --git a/_maps/RandomRuins/SpaceRuins/abandonedteleporter.dmm b/_maps/RandomRuins/SpaceRuins/abandonedteleporter.dmm index ebe9895b5dd22b..e3f1697c0427ee 100644 --- a/_maps/RandomRuins/SpaceRuins/abandonedteleporter.dmm +++ b/_maps/RandomRuins/SpaceRuins/abandonedteleporter.dmm @@ -8,7 +8,7 @@ "c" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "d" = ( /obj/structure/frame/computer, /turf/open/floor/plating/airless, diff --git a/_maps/RandomRuins/SpaceRuins/abandonedzoo.dmm b/_maps/RandomRuins/SpaceRuins/abandonedzoo.dmm index 136697eacc118e..00dec1bb707a11 100644 --- a/_maps/RandomRuins/SpaceRuins/abandonedzoo.dmm +++ b/_maps/RandomRuins/SpaceRuins/abandonedzoo.dmm @@ -66,7 +66,7 @@ "aK" = ( /obj/structure/window/reinforced/spawner/directional/east, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "aL" = ( /obj/structure/cable, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -81,7 +81,7 @@ "aQ" = ( /obj/structure/window/reinforced/spawner/directional/west, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "aT" = ( /obj/structure/rack, /obj/item/clothing/suit/space/eva, @@ -211,7 +211,7 @@ "bK" = ( /obj/structure/disposalpipe/segment, /turf/open/floor/plating/airless, -/area/template_noop) +/area/space/nearstation) "bN" = ( /obj/structure/grille/broken, /obj/item/stack/cable_coil/cut, @@ -227,14 +227,14 @@ "bP" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bR" = ( /obj/structure/disposalpipe/trunk{ dir = 1 }, /obj/structure/disposaloutlet, /turf/open/floor/plating/airless, -/area/template_noop) +/area/space/nearstation) "bT" = ( /obj/structure/grille, /obj/item/shard{ @@ -249,7 +249,7 @@ "bW" = ( /obj/item/shard, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bX" = ( /turf/open/floor/plating/airless, /area/ruin/space/has_grav/abandonedzoo) @@ -319,7 +319,7 @@ "ly" = ( /obj/machinery/power/shieldwallgen/unlocked, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "nI" = ( /obj/structure/alien/resin/wall, /obj/machinery/light/floor/broken, diff --git a/_maps/RandomRuins/SpaceRuins/allamericandiner.dmm b/_maps/RandomRuins/SpaceRuins/allamericandiner.dmm index 4108db225969c0..f877e7c8ae37d8 100644 --- a/_maps/RandomRuins/SpaceRuins/allamericandiner.dmm +++ b/_maps/RandomRuins/SpaceRuins/allamericandiner.dmm @@ -756,7 +756,7 @@ pixel_x = -6; pixel_y = 4 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 7; pixel_y = 9 }, @@ -767,9 +767,7 @@ /turf/open/floor/iron/grimy, /area/ruin/space/has_grav/allamericandiner) "HF" = ( -/obj/structure/noticeboard/directional/north{ - dir = 2 - }, +/obj/structure/noticeboard/directional/north, /obj/machinery/deepfryer, /obj/effect/decal/cleanable/dirt, /obj/item/paper/fluff/ruins/allamericandiner, diff --git a/_maps/RandomRuins/SpaceRuins/anomaly_research.dmm b/_maps/RandomRuins/SpaceRuins/anomaly_research.dmm index 171775eca42e9b..17fe1864a16c97 100644 --- a/_maps/RandomRuins/SpaceRuins/anomaly_research.dmm +++ b/_maps/RandomRuins/SpaceRuins/anomaly_research.dmm @@ -545,7 +545,7 @@ /obj/effect/turf_decal/tile/neutral{ dir = 4 }, -/obj/machinery/computer/rdconsole{ +/obj/machinery/computer/rdconsole/unlocked{ dir = 4 }, /obj/effect/decal/cleanable/dirt, @@ -682,7 +682,7 @@ /turf/open/floor/iron/white, /area/misc/anomaly_research) "sX" = ( -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /obj/effect/spawner/random/environmentally_safe_anomaly/bioscramblerless, /obj/item/reagent_containers/cup/bottle/wittel, /obj/effect/spawner/random/trash/grime, @@ -1807,7 +1807,7 @@ /turf/closed/mineral/snowmountain/cavern, /area/misc/anomaly_research) "Yo" = ( -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/effect/spawner/random/trash/garbage, /obj/effect/spawner/random/trash/mopbucket, /obj/effect/decal/cleanable/dirt, diff --git a/_maps/RandomRuins/SpaceRuins/bigderelict1.dmm b/_maps/RandomRuins/SpaceRuins/bigderelict1.dmm index 03a29e782d1403..38437408106fb7 100644 --- a/_maps/RandomRuins/SpaceRuins/bigderelict1.dmm +++ b/_maps/RandomRuins/SpaceRuins/bigderelict1.dmm @@ -218,7 +218,7 @@ "aY" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "aZ" = ( /turf/closed/wall, /area/ruin/space/has_grav/derelictoutpost) diff --git a/_maps/RandomRuins/SpaceRuins/bus.dmm b/_maps/RandomRuins/SpaceRuins/bus.dmm index 4a77be7c7d5450..177654f63add75 100644 --- a/_maps/RandomRuins/SpaceRuins/bus.dmm +++ b/_maps/RandomRuins/SpaceRuins/bus.dmm @@ -8,7 +8,7 @@ "ac" = ( /obj/item/trash/sosjerky, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "am" = ( /obj/structure/fluff/bus/passable/seat, /obj/effect/decal/cleanable/dirt, diff --git a/_maps/RandomRuins/SpaceRuins/caravanambush.dmm b/_maps/RandomRuins/SpaceRuins/caravanambush.dmm index 9912d559703c40..12b94e1b65b801 100644 --- a/_maps/RandomRuins/SpaceRuins/caravanambush.dmm +++ b/_maps/RandomRuins/SpaceRuins/caravanambush.dmm @@ -5,32 +5,32 @@ "ab" = ( /obj/structure/girder/displaced, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ac" = ( /obj/item/stack/sheet/mineral/plastitanium, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ad" = ( /obj/item/wallframe/camera, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "af" = ( /obj/structure/lattice/catwalk, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ag" = ( /obj/structure/lattice/catwalk, /obj/structure/closet/crate/secure/weapon, /obj/item/gun/energy/e_gun/mini, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ah" = ( /obj/structure/lattice/catwalk, /mob/living/basic/trooper/pirate/ranged/space{ environment_smash = 0 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "aj" = ( /obj/docking_port/stationary{ dir = 2; @@ -42,15 +42,15 @@ width = 22 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ao" = ( /obj/item/stack/sheet/mineral/titanium, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "aD" = ( /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bl" = ( /mob/living/basic/carp, /turf/template_noop, @@ -58,11 +58,11 @@ "br" = ( /obj/item/stack/sheet/iron, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bs" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bv" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /obj/effect/decal/cleanable/dirt, @@ -115,7 +115,7 @@ "dc" = ( /obj/item/shard, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "dr" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, @@ -228,7 +228,7 @@ /obj/structure/lattice, /obj/structure/broken_flooring/plating/directional/south, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "fG" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/frame/computer, @@ -248,11 +248,6 @@ }, /turf/open/floor/plating/airless, /area/shuttle/ruin/caravan/freighter2) -"hj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, -/turf/open/floor/iron/airless, -/area/shuttle/ruin/caravan/freighter2) "iR" = ( /obj/effect/turf_decal/bot_white, /obj/effect/decal/cleanable/dirt, @@ -275,7 +270,7 @@ width = 15 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "kG" = ( /obj/docking_port/stationary{ dir = 4; @@ -287,7 +282,7 @@ width = 9 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "kU" = ( /obj/docking_port/stationary{ dir = 2; @@ -299,7 +294,7 @@ width = 27 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "kX" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ dir = 4 @@ -311,7 +306,7 @@ /obj/structure/lattice, /obj/structure/broken_flooring/pile/directional/west, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "lC" = ( /turf/closed/mineral/random/high_chance, /area/ruin/space/has_grav) @@ -414,7 +409,6 @@ /turf/open/floor/plating/airless, /area/shuttle/ruin/caravan/freighter2) "oI" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/airless, /area/shuttle/ruin/caravan/freighter2) @@ -471,7 +465,7 @@ "re" = ( /obj/structure/broken_flooring/singular/directional/east, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "rj" = ( /obj/effect/turf_decal/bot_white/right, /obj/machinery/power/apc/auto_name/directional/west, @@ -656,7 +650,7 @@ "As" = ( /obj/structure/broken_flooring/singular/directional/south, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "AA" = ( /obj/effect/turf_decal/box/white/corners{ dir = 8 @@ -680,7 +674,7 @@ "Bq" = ( /obj/structure/broken_flooring/pile/directional/east, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Bv" = ( /obj/structure/chair{ dir = 4 @@ -873,7 +867,7 @@ "Ku" = ( /obj/structure/broken_flooring/plating/directional/east, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "KC" = ( /obj/item/stack/cable_coil{ amount = 1 @@ -885,7 +879,7 @@ /obj/structure/lattice, /obj/structure/broken_flooring/plating/directional/east, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Lx" = ( /obj/structure/rack, /obj/item/tank/jetpack/carbondioxide, @@ -939,7 +933,9 @@ /turf/open/floor/iron/dark/airless, /area/shuttle/ruin/caravan/freighter3) "Nm" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 4 + }, /obj/effect/decal/cleanable/dirt, /mob/living/basic/trooper/pirate/ranged/space{ environment_smash = 0 @@ -1094,6 +1090,7 @@ /area/shuttle/ruin/caravan/freighter2) "Wb" = ( /obj/effect/mapping_helpers/broken_floor, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /turf/open/floor/iron/airless, /area/shuttle/ruin/caravan/freighter2) "WC" = ( @@ -3473,7 +3470,7 @@ aa bN iR Nm -hj +oI oI IZ Bz diff --git a/_maps/RandomRuins/SpaceRuins/cloning_facility.dmm b/_maps/RandomRuins/SpaceRuins/cloning_facility.dmm index b2d0e00768582d..8f27318f82325f 100644 --- a/_maps/RandomRuins/SpaceRuins/cloning_facility.dmm +++ b/_maps/RandomRuins/SpaceRuins/cloning_facility.dmm @@ -122,12 +122,9 @@ dir = 8 }, /obj/machinery/light/small/directional/north, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron/white, /area/ruin/space/has_grav/powered/ancient_shuttle) -"n" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/ruin/space/has_grav/powered/ancient_shuttle) "o" = ( /obj/machinery/vending/snack/teal, /obj/effect/decal/cleanable/dirt, @@ -521,7 +518,7 @@ a (18,1,1) = {" a d -n +T A K T diff --git a/_maps/RandomRuins/SpaceRuins/clownplanet.dmm b/_maps/RandomRuins/SpaceRuins/clownplanet.dmm index fa0b50cc44359c..67b7b1f74e89a2 100644 --- a/_maps/RandomRuins/SpaceRuins/clownplanet.dmm +++ b/_maps/RandomRuins/SpaceRuins/clownplanet.dmm @@ -30,8 +30,8 @@ /turf/open/floor/engine, /area/ruin/space/has_grav/powered/clownplanet) "ai" = ( -/obj/structure/sign/warning, -/turf/closed/wall/mineral/sandstone, +/obj/structure/sign/warning/directional/south, +/turf/open/floor/bronze, /area/ruin/space/has_grav/powered/clownplanet) "aj" = ( /turf/open/floor/grass{ @@ -118,7 +118,9 @@ /turf/open/floor/iron/bluespace, /area/ruin/space/has_grav/powered/clownplanet) "az" = ( -/obj/structure/signpost, +/obj/structure/signpost{ + teleports = 1 + }, /turf/open/floor/grass{ color = "#1eff00" }, @@ -613,8 +615,8 @@ aa (10,1,1) = {" ae ae -ac ai +af aM aE ak @@ -743,8 +745,8 @@ ae (15,1,1) = {" ae ae -ac ai +af aO aP aj diff --git a/_maps/RandomRuins/SpaceRuins/commsbuoy_nt.dmm b/_maps/RandomRuins/SpaceRuins/commsbuoy_nt.dmm index 43c2ff9632645e..956e8813e93934 100644 --- a/_maps/RandomRuins/SpaceRuins/commsbuoy_nt.dmm +++ b/_maps/RandomRuins/SpaceRuins/commsbuoy_nt.dmm @@ -54,9 +54,7 @@ /turf/template_noop, /area/template_noop) "gw" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/mineral/titanium, /area/ruin/space/nt_commsbuoy) "hb" = ( @@ -141,17 +139,13 @@ /turf/open/floor/plating, /area/ruin/space/nt_commsbuoy) "jy" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, /obj/machinery/light/small/directional/south, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/mineral/titanium, /area/ruin/space/nt_commsbuoy) "jz" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/machinery/light/small/directional/north, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/mineral/titanium, /area/ruin/space/nt_commsbuoy) "kZ" = ( @@ -386,9 +380,6 @@ /turf/closed/wall/mineral/iron, /area/ruin/space/nt_commsbuoy) "FH" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/structure/rack, /obj/item/clothing/suit/space/syndicate/orange{ pixel_x = 6; @@ -398,6 +389,7 @@ pixel_x = 9; pixel_y = -5 }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/mineral/titanium, /area/ruin/space/nt_commsbuoy) "FK" = ( @@ -406,9 +398,7 @@ /area/space/nearstation) "Gd" = ( /obj/structure/fluff/commsbuoy_processor, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/mineral/titanium/blue, /area/ruin/space/nt_commsbuoy) "Gq" = ( @@ -527,7 +517,7 @@ dir = 8 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Ws" = ( /obj/structure/marker_beacon/cerulean, /turf/open/floor/plating/reinforced/airless, diff --git a/_maps/RandomRuins/SpaceRuins/crashedship.dmm b/_maps/RandomRuins/SpaceRuins/crashedship.dmm index 60e8714e865ae6..13428e3432f370 100644 --- a/_maps/RandomRuins/SpaceRuins/crashedship.dmm +++ b/_maps/RandomRuins/SpaceRuins/crashedship.dmm @@ -256,7 +256,7 @@ "mb" = ( /obj/item/stack/ore/glass, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "mu" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible/layer2, @@ -633,7 +633,7 @@ "zg" = ( /obj/item/stack/tile/wood, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "zm" = ( /obj/structure/table/wood, /obj/effect/spawner/random/decoration, @@ -955,7 +955,7 @@ "ID" = ( /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "IG" = ( /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/wood/parquet, @@ -1028,11 +1028,11 @@ "KF" = ( /obj/item/stack/cable_coil/cut, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "KO" = ( /obj/item/light/tube/broken, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Ln" = ( /obj/effect/turf_decal/trimline/brown/filled/warning, /obj/effect/turf_decal/trimline/brown/line{ @@ -1094,7 +1094,7 @@ "MC" = ( /obj/effect/mob_spawn/corpse/human/laborer, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Nc" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -1309,7 +1309,7 @@ /obj/item/shard, /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Xy" = ( /obj/effect/turf_decal/trimline/yellow/filled/line, /obj/effect/turf_decal/trimline/yellow/filled/line{ diff --git a/_maps/RandomRuins/SpaceRuins/dangerous_research.dmm b/_maps/RandomRuins/SpaceRuins/dangerous_research.dmm index a2baaa8dc20699..8900f33d7f8eca 100644 --- a/_maps/RandomRuins/SpaceRuins/dangerous_research.dmm +++ b/_maps/RandomRuins/SpaceRuins/dangerous_research.dmm @@ -112,6 +112,7 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/floor/iron/dark/diagonal, /area/ruin/space/has_grav/dangerous_research/dorms) "bu" = ( @@ -1654,7 +1655,7 @@ /obj/structure/lattice/catwalk, /obj/structure/marker_beacon/purple, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "uP" = ( /obj/effect/turf_decal/trimline/purple/line{ dir = 1 @@ -1843,7 +1844,6 @@ /area/ruin/space/has_grav/dangerous_research) "xD" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/purple/half/contrasted{ dir = 8 }, @@ -1872,7 +1872,7 @@ "xZ" = ( /obj/structure/sign/poster/official/random/directional/east, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 + dir = 1 }, /obj/effect/turf_decal/tile/neutral/opposingcorners, /turf/open/floor/iron/dark, @@ -1996,7 +1996,7 @@ dir = 4 }, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 + dir = 4 }, /obj/effect/turf_decal/tile/neutral/half{ dir = 8 @@ -2018,7 +2018,7 @@ "zY" = ( /obj/structure/lattice/catwalk, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "zZ" = ( /obj/effect/decal/cleanable/blood/tracks{ dir = 4 @@ -2100,6 +2100,7 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, /turf/open/floor/iron/dark/diagonal, /area/ruin/space/has_grav/dangerous_research/dorms) "AQ" = ( @@ -2147,6 +2148,12 @@ /obj/effect/turf_decal/tile/neutral/opposingcorners, /turf/open/floor/iron/dark, /area/ruin/space/has_grav/dangerous_research/dorms) +"Bp" = ( +/obj/effect/turf_decal/tile/neutral/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/ruin/space/has_grav/dangerous_research/dorms) "Bq" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -2226,11 +2233,6 @@ /obj/effect/turf_decal/tile/neutral/opposingcorners, /turf/open/floor/iron/dark, /area/ruin/space/has_grav/dangerous_research/dorms) -"Cf" = ( -/obj/effect/turf_decal/tile/purple/diagonal_edge, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/diagonal, -/area/ruin/space/has_grav/dangerous_research) "Cl" = ( /turf/closed/wall, /area/ruin/space/has_grav/dangerous_research/maint) @@ -2411,7 +2413,7 @@ "Ey" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "EA" = ( /turf/open/floor/plating/rust, /area/ruin/space/has_grav/dangerous_research/lab) @@ -2452,7 +2454,6 @@ /area/ruin/space/has_grav/dangerous_research/dorms) "Fi" = ( /obj/structure/table/glass, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/opposingcorners, /turf/open/floor/iron/dark, /area/ruin/space/has_grav/dangerous_research/dorms) @@ -2578,6 +2579,7 @@ }, /obj/item/pen/red, /obj/effect/turf_decal/tile/neutral/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/ruin/space/has_grav/dangerous_research/dorms) "Go" = ( @@ -2793,6 +2795,7 @@ name = "Alternate Sciences Research Center" }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/diagonal, /area/ruin/space/has_grav/dangerous_research) "KS" = ( @@ -2965,7 +2968,6 @@ }, /obj/machinery/door/firedoor, /obj/effect/turf_decal/tile/purple/diagonal_edge, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/diagonal, /area/ruin/space/has_grav/dangerous_research) "Ni" = ( @@ -3100,7 +3102,6 @@ /obj/effect/decal/cleanable/dirt, /obj/structure/chair/office/light, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/opposingcorners, /turf/open/floor/iron/dark, /area/ruin/space/has_grav/dangerous_research/dorms) @@ -3117,6 +3118,7 @@ /obj/effect/turf_decal/tile/neutral/diagonal_edge, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, /turf/open/floor/iron/dark/diagonal, /area/ruin/space/has_grav/dangerous_research/dorms) "OM" = ( @@ -3189,6 +3191,7 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, /turf/open/floor/iron/dark/diagonal, /area/ruin/space/has_grav/dangerous_research/dorms) "PL" = ( @@ -3216,20 +3219,9 @@ /obj/structure/chair/office{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/opposingcorners, /turf/open/floor/iron/dark, /area/ruin/space/has_grav/dangerous_research/dorms) -"Qa" = ( -/obj/effect/turf_decal/siding/dark{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/tile/neutral/half{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/ruin/space/has_grav/dangerous_research/lab) "Qe" = ( /turf/closed/wall/r_wall/rust, /area/ruin/space/has_grav/dangerous_research/dorms) @@ -3353,12 +3345,6 @@ }, /turf/open/floor/iron/dark, /area/ruin/space/has_grav/dangerous_research) -"Rt" = ( -/obj/effect/turf_decal/tile/neutral/diagonal_edge, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/turf/open/floor/iron/dark/diagonal, -/area/ruin/space/has_grav/dangerous_research/dorms) "Rx" = ( /obj/structure/closet{ name = "Greyham's Locker" @@ -3503,6 +3489,7 @@ "Te" = ( /obj/effect/turf_decal/tile/purple/diagonal_edge, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/diagonal, /area/ruin/space/has_grav/dangerous_research) "TD" = ( @@ -3535,11 +3522,6 @@ /obj/effect/turf_decal/tile/neutral/half, /turf/open/floor/iron/dark, /area/ruin/space/has_grav/dangerous_research/lab) -"Uc" = ( -/obj/effect/turf_decal/tile/neutral/diagonal_edge, -/obj/structure/cable, -/turf/open/floor/iron/dark/diagonal, -/area/ruin/space/has_grav/dangerous_research/dorms) "Uk" = ( /obj/effect/mapping_helpers/broken_floor, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -3729,12 +3711,6 @@ /obj/structure/cable, /turf/open/floor/plating/rust, /area/ruin/space/has_grav/dangerous_research/lab) -"Xi" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/neutral/diagonal_edge, -/obj/structure/cable, -/turf/open/floor/iron/dark/diagonal, -/area/ruin/space/has_grav/dangerous_research/dorms) "Xk" = ( /obj/machinery/door/airlock/external, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -4248,7 +4224,7 @@ BN fg BN AK -Qa +BN zO rq jp @@ -4341,7 +4317,7 @@ ts ts qf OL -Rt +OW wb ts ts @@ -4383,7 +4359,7 @@ he tD hL bl -Uc +aD AT ts KS @@ -4425,7 +4401,7 @@ Rx ts xA AO -Rt +OW HF ts DX @@ -4467,10 +4443,10 @@ ts ts Zg PJ -Rt +OW Mb ts -Bm +Ny OC Fi PP @@ -4509,11 +4485,11 @@ Cs HQ OW nz -Xi +Lk nv ts Bm -Ny +Bp Gn xZ eQ @@ -4725,8 +4701,8 @@ Hq Hq RD Nc -tv -Cf +lp +wJ fO Bq Bq diff --git a/_maps/RandomRuins/SpaceRuins/deepstorage.dmm b/_maps/RandomRuins/SpaceRuins/deepstorage.dmm index 9f560335da0666..ced8c535a3fd29 100644 --- a/_maps/RandomRuins/SpaceRuins/deepstorage.dmm +++ b/_maps/RandomRuins/SpaceRuins/deepstorage.dmm @@ -766,15 +766,9 @@ "eq" = ( /turf/closed/wall/mineral/iron, /area/ruin/space/has_grav/deepstorage/airlock) -"ev" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4{ - dir = 5 - }, -/turf/open/floor/iron/dark, -/area/ruin/space/has_grav/deepstorage/armory) "ew" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 + dir = 1 }, /turf/open/floor/iron/dark, /area/ruin/space/has_grav/deepstorage/armory) @@ -1530,6 +1524,14 @@ /obj/effect/baseturf_helper/asteroid/airless, /turf/open/floor/iron, /area/ruin/space/has_grav/deepstorage) +"nh" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/iron, +/area/ruin/space/has_grav/deepstorage/hydroponics) "oo" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -2389,6 +2391,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/floor/iron, /area/ruin/space/has_grav/deepstorage/hydroponics) "MV" = ( @@ -4381,7 +4384,7 @@ db dt dt pq -ev +dt xY fb fo @@ -4425,8 +4428,8 @@ ag aQ vG bC -zf -sL +nh +bC Lg aQ wK diff --git a/_maps/RandomRuins/SpaceRuins/derelict2.dmm b/_maps/RandomRuins/SpaceRuins/derelict2.dmm index b6e80272c26ed7..0fbccff35d0a5f 100644 --- a/_maps/RandomRuins/SpaceRuins/derelict2.dmm +++ b/_maps/RandomRuins/SpaceRuins/derelict2.dmm @@ -5,7 +5,7 @@ "b" = ( /obj/structure/window/reinforced/spawner/directional/east, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "c" = ( /obj/machinery/door/airlock/external/ruin, /turf/open/floor/plating, @@ -13,7 +13,7 @@ "d" = ( /obj/structure/window/reinforced/spawner/directional/west, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "e" = ( /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/window/reinforced/spawner/directional/west, @@ -40,7 +40,7 @@ "k" = ( /obj/structure/window/reinforced/spawner/directional/south, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "l" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/window/reinforced/spawner/directional/north, @@ -76,7 +76,7 @@ "p" = ( /obj/structure/window/reinforced/spawner/directional/north, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "q" = ( /obj/machinery/light/small/directional/west, /turf/open/floor/iron, diff --git a/_maps/RandomRuins/SpaceRuins/derelict3.dmm b/_maps/RandomRuins/SpaceRuins/derelict3.dmm index cf362dc206aa49..e0b8bcd95defb2 100644 --- a/_maps/RandomRuins/SpaceRuins/derelict3.dmm +++ b/_maps/RandomRuins/SpaceRuins/derelict3.dmm @@ -11,7 +11,7 @@ "d" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) (1,1,1) = {" a diff --git a/_maps/RandomRuins/SpaceRuins/derelict6.dmm b/_maps/RandomRuins/SpaceRuins/derelict6.dmm index 5126f8ebac961a..93c890866304b9 100644 --- a/_maps/RandomRuins/SpaceRuins/derelict6.dmm +++ b/_maps/RandomRuins/SpaceRuins/derelict6.dmm @@ -6,20 +6,20 @@ /obj/structure/lattice, /obj/structure/broken_flooring/singular/directional/north, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ac" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ae" = ( /obj/item/stack/sheet/iron, /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "af" = ( /obj/structure/broken_flooring/pile/directional/west, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ag" = ( /turf/open/floor/iron/airless, /area/ruin/space/has_grav) @@ -33,7 +33,7 @@ "aj" = ( /obj/structure/broken_flooring/pile/directional/east, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ak" = ( /obj/item/stack/rods, /obj/effect/mapping_helpers/broken_floor, @@ -43,7 +43,7 @@ /obj/structure/broken_flooring/singular/directional/east, /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "am" = ( /obj/item/stack/rods, /turf/open/floor/plating/airless, @@ -87,7 +87,7 @@ "aA" = ( /obj/structure/broken_flooring/pile/directional/north, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "aB" = ( /obj/item/stack/tile/iron/base, /obj/effect/mapping_helpers/broken_floor, @@ -203,12 +203,12 @@ /obj/structure/lattice, /obj/item/stack/sheet/iron, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "aZ" = ( /obj/structure/lattice, /obj/item/shard, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ba" = ( /mob/living/basic/ghost, /turf/open/floor/iron/cafeteria/airless, @@ -266,7 +266,7 @@ "bo" = ( /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bp" = ( /obj/item/stack/sheet/iron, /obj/structure/girder, @@ -291,7 +291,7 @@ "bv" = ( /obj/structure/broken_flooring/pile/directional/south, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bw" = ( /obj/structure/lattice, /obj/structure/broken_flooring/plating/directional/north{ @@ -320,7 +320,7 @@ "bA" = ( /obj/structure/broken_flooring/singular/directional/south, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bC" = ( /obj/structure/lattice, /obj/structure/broken_flooring/corner/directional/north, @@ -343,7 +343,7 @@ "bG" = ( /obj/structure/broken_flooring/singular/directional/east, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bH" = ( /obj/structure/broken_flooring/plating/directional/south{ name = "broken plating" diff --git a/_maps/RandomRuins/SpaceRuins/derelict7.dmm b/_maps/RandomRuins/SpaceRuins/derelict7.dmm index e55afd60f98257..49cd1a71613fc7 100644 --- a/_maps/RandomRuins/SpaceRuins/derelict7.dmm +++ b/_maps/RandomRuins/SpaceRuins/derelict7.dmm @@ -69,7 +69,7 @@ /obj/item/stack/tile/iron/base, /obj/structure/disposalpipe/broken, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "gK" = ( /obj/structure/closet/cabinet, /obj/item/storage/pill_bottle/happy, @@ -79,12 +79,12 @@ "gX" = ( /obj/structure/girder/displaced, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "hf" = ( /obj/structure/lattice, /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "iB" = ( /obj/item/shard, /obj/effect/turf_decal/tile/yellow{ @@ -108,7 +108,7 @@ /obj/structure/lattice, /obj/item/stack/tile/iron/base, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "lU" = ( /obj/item/stack/tile/iron/base, /obj/effect/mapping_helpers/broken_floor, @@ -120,7 +120,7 @@ "or" = ( /obj/item/stack/tile/iron/base, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "oy" = ( /obj/structure/table_frame, /obj/effect/turf_decal/tile/yellow/opposingcorners{ @@ -132,7 +132,7 @@ /obj/structure/lattice, /obj/item/stack/sheet/iron, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "oX" = ( /obj/structure/door_assembly/door_assembly_med, /turf/open/floor/plating/airless, @@ -146,7 +146,7 @@ /obj/structure/lattice, /obj/structure/girder/displaced, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "pr" = ( /obj/effect/mapping_helpers/burnt_floor, /turf/open/floor/plating/airless, @@ -156,11 +156,8 @@ /turf/open/floor/plating/airless, /area/ruin/space/has_grav) "qi" = ( -/obj/structure/sign/directions/medical{ - dir = 4; - pixel_y = 26 - }, -/turf/open/floor/iron/airless, +/obj/structure/sign/directions/medical/directional/east, +/turf/closed/wall, /area/ruin/space/has_grav) "rt" = ( /obj/item/stack/rods, @@ -173,12 +170,12 @@ "tj" = ( /obj/item/shard, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "tk" = ( /obj/structure/lattice, /obj/machinery/light/broken/directional/north, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "tF" = ( /obj/structure/grille/broken, /obj/effect/decal/cleanable/glass, @@ -190,7 +187,7 @@ /obj/item/stack/tile/iron/base, /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "uB" = ( /obj/structure/disposalpipe/broken{ dir = 1 @@ -208,12 +205,12 @@ /obj/item/stack/tile/iron/base, /obj/item/stack/sheet/iron, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "wJ" = ( /obj/structure/lattice, /obj/item/shard, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "wT" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating/airless, @@ -277,11 +274,11 @@ /obj/structure/lattice, /obj/effect/spawner/random/structure/crate_abandoned, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "CT" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Di" = ( /obj/structure/frame/machine, /obj/item/circuitboard/machine/vendor, @@ -296,7 +293,7 @@ /obj/structure/lattice, /obj/item/vending_refill/assist, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "EE" = ( /obj/effect/spawner/random/trash/botanical_waste, /obj/effect/mapping_helpers/broken_floor, @@ -305,7 +302,7 @@ "Fv" = ( /obj/item/stack/sheet/iron, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "FQ" = ( /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/iron/airless, @@ -324,11 +321,11 @@ /obj/structure/lattice, /obj/item/wallframe/apc, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "HO" = ( /obj/item/stack/tile/wood, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Il" = ( /obj/structure/disposalpipe/segment, /obj/machinery/door/airlock/public/glass, @@ -404,7 +401,7 @@ "NM" = ( /obj/effect/spawner/random/medical/surgery_tool, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "NN" = ( /obj/effect/turf_decal/trimline/neutral/warning{ dir = 1 @@ -418,7 +415,7 @@ "Pi" = ( /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Pn" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk{ @@ -430,17 +427,17 @@ /obj/structure/girder/displaced, /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Qk" = ( /obj/structure/lattice, /obj/item/stack/tile/wood, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Qw" = ( /obj/structure/lattice, /obj/structure/table_frame, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Qy" = ( /obj/item/wallframe/airalarm, /obj/structure/disposalpipe/segment{ @@ -499,7 +496,7 @@ /obj/structure/lattice, /obj/item/light/tube/broken, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Wr" = ( /obj/structure/door_assembly/door_assembly_mai, /obj/effect/mapping_helpers/broken_floor, @@ -519,7 +516,7 @@ /obj/item/wallframe/intercom, /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) (1,1,1) = {" DY @@ -614,7 +611,7 @@ dV (7,1,1) = {" rN eP -eP +qi AY JI IE @@ -630,7 +627,7 @@ IR eP ea eP -qi +nf fc Nw eP diff --git a/_maps/RandomRuins/SpaceRuins/derelict8.dmm b/_maps/RandomRuins/SpaceRuins/derelict8.dmm index 41b53c9b816689..f91b7aafb310ea 100644 --- a/_maps/RandomRuins/SpaceRuins/derelict8.dmm +++ b/_maps/RandomRuins/SpaceRuins/derelict8.dmm @@ -3,7 +3,7 @@ /obj/item/stack/tile/iron/base, /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ck" = ( /obj/effect/spawner/random/structure/girder{ spawn_loot_chance = 80 @@ -22,7 +22,7 @@ /obj/structure/lattice, /obj/item/stack/tile/iron/base, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "dS" = ( /obj/effect/turf_decal/stripes/line, /obj/machinery/light/broken/directional/south, @@ -32,12 +32,12 @@ "es" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "eu" = ( /obj/structure/lattice, /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "hs" = ( /obj/effect/spawner/random/trash/bin, /obj/effect/decal/cleanable/dirt, @@ -119,7 +119,7 @@ /obj/structure/lattice, /obj/effect/spawner/random/trash/food_packaging, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "yf" = ( /obj/structure/table, /obj/item/food/deadmouse{ @@ -136,11 +136,11 @@ /obj/item/stack/tile/iron/base, /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "zh" = ( /obj/item/stack/tile/iron/base, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "zt" = ( /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating/airless, @@ -155,7 +155,7 @@ "zK" = ( /obj/item/shard, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "BD" = ( /obj/structure/table, /obj/item/gps/spaceruin{ @@ -176,7 +176,7 @@ /obj/structure/lattice, /obj/structure/girder/displaced, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "DQ" = ( /obj/effect/decal/cleanable/glass, /obj/structure/grille, @@ -242,12 +242,12 @@ "Of" = ( /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "OD" = ( /obj/structure/lattice, /obj/item/stack/cable_coil/cut, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "OM" = ( /obj/effect/spawner/random/bureaucracy/paper, /obj/structure/table, diff --git a/_maps/RandomRuins/SpaceRuins/derelict_construction.dmm b/_maps/RandomRuins/SpaceRuins/derelict_construction.dmm index c6825c841427b3..bc3c45fd2d9f23 100644 --- a/_maps/RandomRuins/SpaceRuins/derelict_construction.dmm +++ b/_maps/RandomRuins/SpaceRuins/derelict_construction.dmm @@ -261,12 +261,12 @@ "DU" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "DY" = ( /obj/structure/lattice/catwalk, /obj/structure/marker_beacon/burgundy, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "DZ" = ( /obj/structure/frame, /turf/open/misc/asteroid, @@ -346,10 +346,6 @@ /obj/structure/door_assembly/door_assembly_sec, /turf/open/floor/plating/airless, /area/ruin/space/has_grav/derelictconstruction) -"LL" = ( -/obj/structure/lattice, -/turf/template_noop, -/area/space/nearstation) "Md" = ( /turf/open/floor/plating/foam, /area/ruin/space/has_grav/derelictconstruction) @@ -545,9 +541,9 @@ qM qM qM uw -LL +DU qM -LL +DU qM eu qM @@ -574,10 +570,10 @@ qM qM qM uw -LL -LL +DU +DU fa -LL +DU uw Ik bY @@ -603,9 +599,9 @@ qM qM qM Ax -LL +DU qM -LL +DU qM Ax Vq @@ -634,8 +630,8 @@ qM Wj Sw Sw -LL -LL +DU +DU Ax Md ao @@ -663,7 +659,7 @@ qM uw eu qM -LL +DU Sw Ax gi @@ -985,10 +981,10 @@ qR Za qR qR -LL -LL -LL -LL +DU +DU +DU +DU Ax bY bY diff --git a/_maps/RandomRuins/SpaceRuins/derelict_sulaco.dmm b/_maps/RandomRuins/SpaceRuins/derelict_sulaco.dmm index d62b5885ef629c..b3cd97c716b963 100644 --- a/_maps/RandomRuins/SpaceRuins/derelict_sulaco.dmm +++ b/_maps/RandomRuins/SpaceRuins/derelict_sulaco.dmm @@ -95,7 +95,7 @@ dir = 8 }, /obj/machinery/atmospherics/components/unary/vent_pump/layer4{ - dir = 4 + dir = 1 }, /obj/structure/cable, /turf/open/floor/pod/light, @@ -283,7 +283,6 @@ /obj/effect/decal/cleanable/blood/footprints{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/tgmcemblem{ @@ -410,7 +409,7 @@ "mC" = ( /obj/item/stack/tile/iron/smooth_corner, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "na" = ( /obj/structure/window/reinforced/spawner/directional/north, /obj/machinery/computer/terminal/sulaco/map, @@ -427,7 +426,7 @@ /obj/structure/lattice, /obj/item/stack/tile/iron/smooth_half, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "nG" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/tracks/xeno{ @@ -606,7 +605,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/layer4{ dir = 4 }, -/obj/structure/cable, /turf/open/floor/carpet, /area/ruin/space/has_grav/derelictsulaco) "uk" = ( @@ -968,6 +966,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/light/floor/broken, +/obj/structure/cable, /turf/open/floor/carpet, /area/ruin/space/has_grav/derelictsulaco) "GL" = ( @@ -1127,7 +1126,7 @@ "KI" = ( /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "KS" = ( /obj/machinery/door/window/brigdoor/left/directional/east, /obj/machinery/keycard_auth/wall_mounted/directional/north, @@ -1234,7 +1233,7 @@ "Ne" = ( /obj/item/stack/tile/iron/smooth_half, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Ng" = ( /obj/machinery/camera/directional/south{ network = list() @@ -1311,7 +1310,7 @@ /obj/structure/lattice, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "PZ" = ( /obj/structure/table/reinforced, /obj/item/storage/box/ids{ @@ -1375,7 +1374,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Sj" = ( /obj/structure/alien/weeds, /obj/structure/bed/nest, @@ -1516,7 +1515,7 @@ /obj/item/stack/tile/iron/smooth_half, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "VO" = ( /obj/structure/alien/weeds, /obj/structure/barricade/sandbags, @@ -1565,7 +1564,7 @@ anchored = 1 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "WQ" = ( /obj/structure/table/reinforced, /obj/effect/turf_decal/tile/red/fourcorners, @@ -1583,7 +1582,7 @@ /obj/structure/lattice, /obj/item/stack/tile/iron/smooth_corner, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "XC" = ( /obj/structure/alien/weeds, /obj/machinery/atmospherics/components/unary/vent_pump/layer4{ @@ -1671,7 +1670,7 @@ "ZZ" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) (1,1,1) = {" hi @@ -2537,7 +2536,7 @@ VO Op OQ Ng -sr +VT lf hi hi diff --git a/_maps/RandomRuins/SpaceRuins/dj_station.dmm b/_maps/RandomRuins/SpaceRuins/dj_station.dmm index 89aa0534e1bb04..a3ef3d4d654546 100644 --- a/_maps/RandomRuins/SpaceRuins/dj_station.dmm +++ b/_maps/RandomRuins/SpaceRuins/dj_station.dmm @@ -50,7 +50,7 @@ key = "radioroom" }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "u" = ( /obj/machinery/telecomms/relay/preset/telecomms, /turf/open/floor/plating, @@ -143,7 +143,7 @@ key = "solars" }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "V" = ( /obj/structure/sign/warning/vacuum/external/directional/south, /obj/effect/spawner/random/maintenance, diff --git a/_maps/RandomRuins/SpaceRuins/doppler/beacon_1.dmm b/_maps/RandomRuins/SpaceRuins/doppler/beacon_1.dmm index b093decb8df03c..39d68738238f42 100644 --- a/_maps/RandomRuins/SpaceRuins/doppler/beacon_1.dmm +++ b/_maps/RandomRuins/SpaceRuins/doppler/beacon_1.dmm @@ -2,8 +2,8 @@ "a" = ( /obj/structure/lattice/catwalk, /obj/structure/marker_beacon/teal, -/turf/template_noop, -/area/template_noop) +/turf/open/space/basic, +/area/space) "p" = ( /obj/machinery/spaceship_navigation_beacon{ pixel_y = 23; @@ -39,11 +39,11 @@ gpstag = "NAV_BEACON_4CA" }, /turf/open/floor/plating/airless, -/area/template_noop) +/area/space) "Z" = ( /obj/structure/lattice, -/turf/template_noop, -/area/template_noop) +/turf/open/space/basic, +/area/space) (1,1,1) = {" Z diff --git a/_maps/RandomRuins/SpaceRuins/emptyshell.dmm b/_maps/RandomRuins/SpaceRuins/emptyshell.dmm index b0c5d4cf260163..5950409a498fcd 100644 --- a/_maps/RandomRuins/SpaceRuins/emptyshell.dmm +++ b/_maps/RandomRuins/SpaceRuins/emptyshell.dmm @@ -5,7 +5,7 @@ "b" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "c" = ( /turf/closed/wall/r_wall, /area/ruin/space/has_grav) diff --git a/_maps/RandomRuins/SpaceRuins/fasttravel.dmm b/_maps/RandomRuins/SpaceRuins/fasttravel.dmm index ca51f7525f5aae..8e50bd9f805683 100644 --- a/_maps/RandomRuins/SpaceRuins/fasttravel.dmm +++ b/_maps/RandomRuins/SpaceRuins/fasttravel.dmm @@ -55,7 +55,7 @@ amount = 10 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "lq" = ( /obj/machinery/conveyor{ dir = 8; @@ -187,7 +187,7 @@ "CX" = ( /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "DZ" = ( /obj/machinery/power/rtg/advanced, /obj/structure/cable, diff --git a/_maps/RandomRuins/SpaceRuins/film_studio.dmm b/_maps/RandomRuins/SpaceRuins/film_studio.dmm index 595583e814053f..c426b7d2bb020e 100644 --- a/_maps/RandomRuins/SpaceRuins/film_studio.dmm +++ b/_maps/RandomRuins/SpaceRuins/film_studio.dmm @@ -31,7 +31,7 @@ "aG" = ( /obj/structure/lattice, /turf/open/space/basic, -/area/template_noop) +/area/space/nearstation) "aI" = ( /obj/effect/turf_decal/siding/wood, /obj/structure/curtain/cloth/fancy, @@ -182,7 +182,7 @@ /area/ruin/space/has_grav/film_studio/director) "dd" = ( /turf/open/space/basic, -/area/template_noop) +/area/space/nearstation) "dg" = ( /turf/closed/wall, /area/ruin/space/has_grav/film_studio/starboard) @@ -348,6 +348,7 @@ name = "Cabin 3" }, /obj/effect/mapping_helpers/airlock/access/all/away, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood, /area/ruin/space/has_grav/film_studio/dorms) "gl" = ( @@ -2263,7 +2264,6 @@ /obj/structure/chair/comfy/black{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood, /area/ruin/space/has_grav/film_studio/director) "Np" = ( @@ -3577,13 +3577,13 @@ dd XK bA NB -NB +Zd xd NB -NB +Zd On pY -NB +Zd gW NB aO @@ -5202,7 +5202,7 @@ WC KP dg DP -Wy +zL zL ST Ym diff --git a/_maps/RandomRuins/SpaceRuins/forgottenship.dmm b/_maps/RandomRuins/SpaceRuins/forgottenship.dmm index 581c5b320611c6..1544232c33d286 100644 --- a/_maps/RandomRuins/SpaceRuins/forgottenship.dmm +++ b/_maps/RandomRuins/SpaceRuins/forgottenship.dmm @@ -54,8 +54,8 @@ /turf/open/floor/plastic, /area/ruin/space/has_grav/syndicate_forgotten_ship) "an" = ( -/obj/structure/sign/warning/vacuum/external, -/turf/closed/wall/r_wall/plastitanium/syndicate, +/obj/structure/sign/warning/vacuum/external/directional/south, +/turf/open/floor/mineral/plastitanium, /area/ruin/space/has_grav/syndicate_forgotten_ship) "ao" = ( /turf/open/floor/carpet/royalblack, @@ -243,7 +243,7 @@ amount = 10 }, /obj/item/stack/cable_coil, -/obj/item/circuitboard/computer/rdconsole, +/obj/item/circuitboard/computer/rdconsole/unlocked, /obj/item/storage/box/stockparts/deluxe, /obj/item/storage/box/stockparts/deluxe, /obj/item/storage/box/beakers, @@ -442,7 +442,7 @@ /obj/structure/lattice/catwalk, /obj/structure/cable, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bO" = ( /obj/structure/bodycontainer/crematorium{ id = "fscremate" @@ -568,10 +568,6 @@ /obj/machinery/stasis, /turf/open/floor/plastic, /area/ruin/space/has_grav/syndicate_forgotten_ship) -"ck" = ( -/obj/structure/sign/departments/cargo, -/turf/closed/wall/r_wall/plastitanium/syndicate, -/area/ruin/space/has_grav/syndicate_forgotten_cargopod) "cm" = ( /obj/machinery/door/airlock/grunge{ name = "Syndicate Ship Airlock" @@ -815,12 +811,6 @@ }, /turf/open/floor/mineral/plastitanium/red, /area/ruin/space/has_grav/syndicate_forgotten_ship) -"cU" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ - dir = 5 - }, -/turf/open/floor/mineral/plastitanium/red, -/area/ruin/space/has_grav/syndicate_forgotten_ship) "cW" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ @@ -922,7 +912,7 @@ /area/ruin/space/has_grav/powered/syndicate_forgotten_vault) "dj" = ( /turf/closed/mineral/random/high_chance, -/area/template_noop) +/area/space/nearstation) "dl" = ( /obj/machinery/door/password/voice/sfc{ password = null @@ -1050,11 +1040,11 @@ /obj/machinery/turretid{ control_area = "/area/ruin/space/has_grav/syndicate_forgotten_ship"; enabled = 0; - icon_state = "control_kill"; lethal = 1; name = "Ship turret control panel"; pixel_y = 32; - req_access = list("syndicate") + req_access = list("syndicate"); + dir = 1 }, /turf/open/floor/mineral/plastitanium/red, /area/ruin/space/has_grav/syndicate_forgotten_ship) @@ -1107,6 +1097,7 @@ /obj/structure/closet/crate/secure/engineering{ req_access = list("syndicate") }, +/obj/structure/sign/departments/cargo/directional/north, /turf/open/floor/mineral/plastitanium, /area/ruin/space/has_grav/syndicate_forgotten_cargopod) "Cy" = ( @@ -1182,6 +1173,10 @@ /obj/machinery/light/small/directional/north, /turf/open/floor/mineral/plastitanium/red, /area/ruin/space/has_grav/syndicate_forgotten_ship) +"OW" = ( +/obj/structure/sign/warning/vacuum/external/directional/north, +/turf/open/floor/mineral/plastitanium, +/area/ruin/space/has_grav/syndicate_forgotten_ship) "VF" = ( /obj/structure/table/reinforced, /obj/machinery/button/door{ @@ -1921,7 +1916,7 @@ ao bx aH cD -cU +aw by al al @@ -1968,7 +1963,7 @@ ao bx aS cx -aS +aw by al al @@ -2015,7 +2010,7 @@ bn bZ tv cE -aS +aw bZ bY bE @@ -2479,8 +2474,8 @@ aa bZ al al -an -al +bZ +OW at ah cA @@ -2488,8 +2483,8 @@ cP ah ah aL -al an +bZ al bJ bZ @@ -2500,7 +2495,7 @@ aa aa aY aY -ck +bb yv bj bj diff --git a/_maps/RandomRuins/SpaceRuins/garbagetruck1.dmm b/_maps/RandomRuins/SpaceRuins/garbagetruck1.dmm index 09fcc995760205..20bd5e3613c97d 100644 --- a/_maps/RandomRuins/SpaceRuins/garbagetruck1.dmm +++ b/_maps/RandomRuins/SpaceRuins/garbagetruck1.dmm @@ -36,6 +36,7 @@ /obj/item/paper/crumpled, /obj/item/restraints/handcuffs/cable/zipties/used, /obj/effect/decal/cleanable/blood/gibs/old, +/obj/structure/sign/warning/directional/south, /turf/open/floor/plating/dumpsterair, /area/ruin/space/has_grav/garbagetruck/foodwaste) "bx" = ( @@ -537,10 +538,6 @@ /mob/living/basic/mouse, /turf/open/floor/plating/dumpsterair, /area/ruin/space/has_grav/garbagetruck/foodwaste) -"yi" = ( -/obj/structure/sign/warning, -/turf/closed/wall/r_wall, -/area/ruin/space/has_grav/garbagetruck/foodwaste) "yv" = ( /obj/item/trash/can{ pixel_x = -8; @@ -844,10 +841,8 @@ /turf/open/floor/plating/dumpsterair, /area/ruin/space/has_grav/garbagetruck/foodwaste) "Ie" = ( -/obj/machinery/airalarm{ - pixel_y = 25 - }, /obj/structure/cable, +/obj/machinery/airalarm/directional/north, /turf/open/floor/catwalk_floor/iron, /area/ruin/space/has_grav/garbagetruck/foodwaste) "II" = ( @@ -883,6 +878,7 @@ /obj/item/fish/ratfish, /obj/structure/closet/crate/freezer, /obj/effect/spawner/random/medical/surgery_tool, +/obj/structure/sign/warning/directional/south, /turf/open/floor/plating/dumpsterair, /area/ruin/space/has_grav/garbagetruck/foodwaste) "KD" = ( @@ -1162,7 +1158,7 @@ "VL" = ( /obj/machinery/power/shuttle_engine/propulsion, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Xi" = ( /obj/item/food/badrecipe/moldy/bacteria, /obj/effect/decal/cleanable/food/egg_smudge, @@ -1295,7 +1291,7 @@ nS fV Vb bs -yi +Sa "} (4,1,1) = {" og @@ -1449,7 +1445,7 @@ uJ FL Nm JH -yi +Sa "} (11,1,1) = {" qM diff --git a/_maps/RandomRuins/SpaceRuins/garbagetruck2.dmm b/_maps/RandomRuins/SpaceRuins/garbagetruck2.dmm index 4ac2217e945e2a..1abd0beb6d1c28 100644 --- a/_maps/RandomRuins/SpaceRuins/garbagetruck2.dmm +++ b/_maps/RandomRuins/SpaceRuins/garbagetruck2.dmm @@ -134,10 +134,8 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/garbagetruck/medicalwaste) "mZ" = ( -/obj/machinery/airalarm{ - pixel_y = 25 - }, /obj/structure/cable, +/obj/machinery/airalarm/directional/north, /turf/open/floor/catwalk_floor/iron, /area/ruin/space/has_grav/garbagetruck/medicalwaste) "nW" = ( @@ -192,6 +190,7 @@ /obj/item/poster/random_contraband, /obj/item/organ/tongue/zombie, /obj/structure/closet/crate/trashcart, +/obj/structure/sign/warning/directional/south, /turf/open/floor/plating, /area/ruin/space/has_grav/garbagetruck/medicalwaste) "rB" = ( @@ -616,6 +615,7 @@ brute_damage = 200; mob_type = /mob/living/carbon/human/species/lizard }, +/obj/structure/sign/warning/directional/south, /turf/open/floor/plating, /area/ruin/space/has_grav/garbagetruck/medicalwaste) "Ua" = ( @@ -651,7 +651,7 @@ "VL" = ( /obj/machinery/power/shuttle_engine/propulsion, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "VV" = ( /obj/effect/decal/cleanable/blood/gibs/robot_debris/up, /obj/structure/frame/computer, @@ -665,10 +665,6 @@ /obj/structure/cable, /turf/open/floor/catwalk_floor/iron, /area/ruin/space/has_grav/garbagetruck/medicalwaste) -"XC" = ( -/obj/structure/sign/warning, -/turf/closed/wall/r_wall, -/area/ruin/space/has_grav/garbagetruck/medicalwaste) "XD" = ( /obj/structure/sinkframe, /obj/structure/broken_flooring/pile, @@ -760,7 +756,7 @@ AB py io TM -XC +MC "} (4,1,1) = {" iw @@ -914,7 +910,7 @@ Tp zH AU qX -XC +MC "} (11,1,1) = {" gh diff --git a/_maps/RandomRuins/SpaceRuins/garbagetruck3.dmm b/_maps/RandomRuins/SpaceRuins/garbagetruck3.dmm index 568f2e9194ff63..21136cc1089d25 100644 --- a/_maps/RandomRuins/SpaceRuins/garbagetruck3.dmm +++ b/_maps/RandomRuins/SpaceRuins/garbagetruck3.dmm @@ -98,6 +98,7 @@ /obj/item/trash/syndi_cakes, /obj/effect/decal/cleanable/plastic, /obj/item/t_scanner, +/obj/structure/sign/warning/directional/south, /turf/open/floor/plating/dumpsterair, /area/ruin/space/has_grav/garbagetruck/squat) "gq" = ( @@ -237,10 +238,8 @@ /turf/open/floor/plating/dumpsterair, /area/ruin/space/has_grav/garbagetruck/squat) "lE" = ( -/obj/machinery/airalarm{ - pixel_y = 25 - }, /obj/structure/cable, +/obj/machinery/airalarm/directional/north, /turf/open/floor/catwalk_floor/iron, /area/ruin/space/has_grav/garbagetruck/squat) "lY" = ( @@ -786,10 +785,6 @@ /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/plating/dumpsterair, /area/ruin/space/has_grav/garbagetruck/squat) -"Pz" = ( -/obj/structure/sign/warning, -/turf/closed/wall/r_wall, -/area/ruin/space/has_grav/garbagetruck/squat) "PE" = ( /obj/machinery/door/airlock/shuttle, /turf/open/floor/plating, @@ -886,7 +881,7 @@ "VL" = ( /obj/machinery/power/shuttle_engine/propulsion, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "WK" = ( /obj/effect/decal/cleanable/fuel_pool, /obj/item/clothing/shoes/workboots{ @@ -908,6 +903,7 @@ /obj/item/cigarette/carp, /obj/item/extinguisher/mini, /obj/effect/decal/cleanable/fuel_pool, +/obj/structure/sign/warning/directional/south, /turf/open/floor/plating/dumpsterair, /area/ruin/space/has_grav/garbagetruck/squat) "XS" = ( @@ -997,7 +993,7 @@ tu hm pC fF -Pz +mV "} (4,1,1) = {" Ye @@ -1151,7 +1147,7 @@ yF Nd Er Xv -Pz +mV "} (11,1,1) = {" JX diff --git a/_maps/RandomRuins/SpaceRuins/garbagetruck4.dmm b/_maps/RandomRuins/SpaceRuins/garbagetruck4.dmm index 00f49ef1cf19bf..10c1a56fa260d7 100644 --- a/_maps/RandomRuins/SpaceRuins/garbagetruck4.dmm +++ b/_maps/RandomRuins/SpaceRuins/garbagetruck4.dmm @@ -75,6 +75,7 @@ /obj/item/clothing/shoes/kindle_kicks{ pixel_y = -10 }, +/obj/structure/sign/warning/directional/south, /turf/open/floor/plating, /area/ruin/space/has_grav/garbagetruck/toystore) "hH" = ( @@ -196,10 +197,6 @@ /obj/item/food/spidereggs, /turf/open/floor/plating, /area/ruin/space/has_grav/garbagetruck/toystore) -"rb" = ( -/obj/structure/sign/warning, -/turf/closed/wall/r_wall, -/area/ruin/space/has_grav/garbagetruck/toystore) "rc" = ( /obj/effect/decal/cleanable/blood/oil, /obj/item/flashlight/flare/torch, @@ -314,10 +311,8 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/garbagetruck/toystore) "wu" = ( -/obj/machinery/airalarm{ - pixel_y = 25 - }, /obj/structure/cable, +/obj/machinery/airalarm/directional/north, /turf/open/floor/catwalk_floor/iron, /area/ruin/space/has_grav/garbagetruck/toystore) "ww" = ( @@ -746,7 +741,7 @@ /obj/item/coin/plastic, /obj/structure/safe, /obj/structure/spider/stickyweb, -/obj/item/tank/jetpack/oxygen{ +/obj/item/tank/jetpack{ desc = "A tank of compressed oxygen for use as propulsion in zero-gravity areas. It's blue, and has a triangle chiselled into the paint." }, /obj/item/switchblade, @@ -798,6 +793,7 @@ }, /obj/structure/mop_bucket, /obj/item/broken_bottle, +/obj/structure/sign/warning/directional/south, /turf/open/floor/plating, /area/ruin/space/has_grav/garbagetruck/toystore) "UD" = ( @@ -811,7 +807,7 @@ "VL" = ( /obj/machinery/power/shuttle_engine/propulsion, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Wl" = ( /obj/structure/plasticflaps/opaque, /turf/open/floor/plating, @@ -953,7 +949,7 @@ xC Ix dq TO -rb +Yr "} (4,1,1) = {" yP @@ -1107,7 +1103,7 @@ ld Hy Rl hD -rb +Yr "} (11,1,1) = {" Zi diff --git a/_maps/RandomRuins/SpaceRuins/hauntedtradingpost.dmm b/_maps/RandomRuins/SpaceRuins/hauntedtradingpost.dmm index 3b3445795bea32..07526058562564 100644 --- a/_maps/RandomRuins/SpaceRuins/hauntedtradingpost.dmm +++ b/_maps/RandomRuins/SpaceRuins/hauntedtradingpost.dmm @@ -25,7 +25,8 @@ /obj/machinery/button/door/invisible_tripwire{ id = "donk_vault_lasertrap"; suicide_pact = 1; - suicide_pact_id = "donk_vault_lasertrap" + suicide_pact_id = "donk_vault_lasertrap"; + dir = 1 }, /turf/open/floor/wood, /area/ruin/space/has_grav/hauntedtradingpost/office) @@ -78,7 +79,7 @@ /obj/structure/grille, /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bd" = ( /obj/structure/table/wood, /obj/structure/cable/layer1, @@ -357,7 +358,8 @@ suicide_pact = 1; suicide_pact_id = "donk_office_trap_shutters"; id = "donk_office_trap_shutters"; - sync_doors = 0 + sync_doors = 0; + dir = 4 }, /turf/open/floor/wood/large, /area/ruin/space/has_grav/hauntedtradingpost/office) @@ -514,7 +516,8 @@ suicide_pact = 1; suicide_pact_id = "donk_office_trap_shutters"; id = "donk_office_trap_shutters"; - sync_doors = 0 + sync_doors = 0; + dir = 4 }, /turf/open/floor/wood/large, /area/ruin/space/has_grav/hauntedtradingpost/office) @@ -581,11 +584,9 @@ }, /obj/effect/decal/cleanable/dirt/dust, /obj/structure/sink/directional/south, -/obj/machinery/button/door{ - pixel_y = 22; - pixel_x = -12; - id = "donk_market"; - name = "shutter button" +/obj/machinery/button/door/directional/north{ + pixel_x = 10; + id = "donk_market" }, /turf/open/floor/carpet/orange, /area/ruin/space/has_grav/hauntedtradingpost/public) @@ -837,6 +838,9 @@ /obj/structure/curtain/cloth/fancy, /turf/open/floor/carpet/donk, /area/ruin/space/has_grav/hauntedtradingpost/public) +"ht" = ( +/turf/closed/wall/mineral/plastitanium, +/area/ruin/space/has_grav/hauntedtradingpost/aicore) "hw" = ( /obj/effect/mapping_helpers/airalarm/syndicate_access, /obj/machinery/airalarm/directional/south, @@ -914,21 +918,21 @@ /turf/open/floor/carpet/orange/airless, /area/ruin/space/has_grav/hauntedtradingpost/public/corridor) "ia" = ( -/obj/structure/safe/floor, -/obj/item/fishing_hook/shiny{ - desc = "A fancy fishing hook made out of gold."; - name = "fancy gold fishing hook" - }, -/obj/item/food/bait/natural, /obj/structure/cable/layer1, /obj/effect/decal/cleanable/dirt, -/obj/item/stack/spacecash/c1000, -/obj/item/stack/spacecash/c1000, /obj/machinery/button/door/invisible_tripwire{ id = "donk_vault_lasertrap"; suicide_pact = 1; suicide_pact_id = "donk_vault_lasertrap" }, +/obj/item/food/bait/natural, +/obj/item/stack/spacecash/c1000, +/obj/item/stack/spacecash/c1000, +/obj/item/fishing_hook/shiny{ + desc = "A fancy fishing hook made out of gold."; + name = "fancy gold fishing hook" + }, +/obj/structure/safe/floor, /turf/open/floor/catwalk_floor/iron_dark, /area/ruin/space/has_grav/hauntedtradingpost/office) "ic" = ( @@ -1019,7 +1023,8 @@ id = "donk_office_entrance_trap_gamma"; donk_ai_slave = 1; multiuse = 1; - resets_self = 1 + resets_self = 1; + dir = 1 }, /turf/open/floor/carpet/orange, /area/ruin/space/has_grav/hauntedtradingpost/office) @@ -1151,7 +1156,8 @@ suicide_pact = 1; suicide_pact_id = "donk_office_trap_shutters"; id = "donk_office_trap_shutters"; - sync_doors = 0 + sync_doors = 0; + dir = 4 }, /turf/open/floor/wood/large, /area/ruin/space/has_grav/hauntedtradingpost/office) @@ -1240,7 +1246,7 @@ /obj/structure/lattice, /obj/structure/grille, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "kx" = ( /mob/living/basic/bot/dedbot{ bot_mode_flags = 29 @@ -1800,9 +1806,7 @@ /area/ruin/space/has_grav/hauntedtradingpost/office) "pG" = ( /obj/structure/lattice/catwalk, -/obj/effect/spawner/structure/electrified_grille{ - spawn_list = list(/obj/structure/grille,/obj/structure/cable/layer1) - }, +/obj/effect/spawner/structure/electrified_grille/layer1, /turf/template_noop, /area/ruin/space/has_grav/hauntedtradingpost/office) "pN" = ( @@ -1936,7 +1940,7 @@ /turf/template_noop, /area/template_noop) "qY" = ( -/obj/item/tank/jetpack/oxygen/security{ +/obj/item/tank/jetpack/security{ name = "red jetpack (oxygen)" }, /obj/item/tank/internals/oxygen/red, @@ -2098,7 +2102,7 @@ /obj/structure/table/reinforced/plastitaniumglass, /obj/effect/spawner/random/exotic/technology, /obj/effect/mapping_helpers/apc/syndicate_access, -/obj/item/gun/energy/laser/carbine/cybersun, +/obj/item/gun/energy/laser/cybersun, /obj/effect/mapping_helpers/apc/full_charge, /obj/machinery/power/apc/auto_name/directional/south{ cable_layer = 1 @@ -2144,15 +2148,12 @@ /obj/structure/cable/layer1, /obj/structure/table/reinforced/plastitaniumglass, /obj/machinery/cell_charger, -/obj/machinery/button/door{ - pixel_y = 23; - pixel_x = 10; - id = "donk_office_peek"; - name = "shutter button" - }, /obj/item/stock_parts/power_store/cell/bluespace{ pixel_y = 2 }, +/obj/machinery/button/door/directional/north{ + id = "donk_office_peek" + }, /turf/open/floor/catwalk_floor/iron_dark, /area/ruin/space/has_grav/hauntedtradingpost/aicore) "sD" = ( @@ -2875,7 +2876,7 @@ /obj/effect/spawner/random/structure/grille, /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "yU" = ( /obj/item/rack_parts{ pixel_y = 8; @@ -2983,17 +2984,11 @@ "zQ" = ( /mob/living/basic/viscerator, /obj/effect/turf_decal/bot_red, -/obj/machinery/button/door{ - pixel_y = 23; - pixel_x = 8; - normaldoorcontrol = 1; - specialfunctions = 4; - id = "donk_aicore_door_bolts"; - name = "Door Bolt Button"; - skin = "-warning"; - silicon_access_disabled = 1 - }, /obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/button/door/directional/north{ + id = "donk_aicore_door_bolts" + }, +/obj/structure/sign/warning/directional/west, /turf/open/floor/circuit/red/off, /area/ruin/space/has_grav/hauntedtradingpost/aicore) "Ab" = ( @@ -3039,9 +3034,7 @@ /area/ruin/space/has_grav/hauntedtradingpost/employees/corridor) "At" = ( /obj/structure/lattice/catwalk, -/obj/effect/spawner/structure/electrified_grille{ - spawn_list = list(/obj/structure/grille,/obj/structure/cable/layer1) - }, +/obj/effect/spawner/structure/electrified_grille/layer1, /turf/template_noop, /area/ruin/space/has_grav/hauntedtradingpost/employees/corridor) "Au" = ( @@ -3135,7 +3128,7 @@ /obj/structure/lattice, /obj/effect/spawner/random/structure/grille, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Bj" = ( /obj/structure/rack, /obj/effect/spawner/random/medical/minor_healing, @@ -3276,7 +3269,8 @@ id = "donk_office_entrance_trap_alpha"; resets_self = 1; donk_ai_slave = 1; - multiuse = 1 + multiuse = 1; + dir = 1 }, /turf/open/floor/carpet/orange, /area/ruin/space/has_grav/hauntedtradingpost/office) @@ -3405,9 +3399,7 @@ id = "Donk_Trash_Chute" }, /obj/machinery/light/small/dim/directional/west, -/obj/machinery/button/door{ - pixel_y = 10; - pixel_x = -23; +/obj/machinery/button/door/directional/west{ id = "donk_waste" }, /turf/open/floor/plating, @@ -3453,9 +3445,7 @@ /area/ruin/space/has_grav/hauntedtradingpost/employees) "EC" = ( /obj/structure/lattice/catwalk, -/obj/effect/spawner/structure/electrified_grille{ - spawn_list = list(/obj/structure/grille,/obj/structure/cable/layer1) - }, +/obj/effect/spawner/structure/electrified_grille/layer1, /turf/template_noop, /area/ruin/space/has_grav/hauntedtradingpost/employees/workstation) "EK" = ( @@ -3638,7 +3628,6 @@ /turf/open/floor/carpet/donk, /area/ruin/space/has_grav/hauntedtradingpost/office) "Ga" = ( -/obj/effect/spawner/random/entertainment/arcade, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/machinery/duct, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ @@ -3647,8 +3636,10 @@ }, /obj/machinery/button/door/invisible_tripwire{ id = "donk_refuel_window"; - donk_ai_slave = 1 + donk_ai_slave = 1; + dir = 1 }, +/obj/effect/spawner/random/entertainment/arcade, /turf/open/floor/catwalk_floor/iron_smooth, /area/ruin/space/has_grav/hauntedtradingpost/public/corridor) "Ge" = ( @@ -3967,15 +3958,8 @@ /area/ruin/space/has_grav/hauntedtradingpost/aicore) "Im" = ( /obj/effect/turf_decal/stripes/red/line, -/obj/machinery/button/door{ - pixel_y = -23; - pixel_x = -8; - normaldoorcontrol = 1; - specialfunctions = 4; - id = "donk_aicore_door_bolts"; - name = "Door Bolt Button"; - skin = "-warning"; - silicon_access_disabled = 1 +/obj/machinery/button/door/directional/south{ + id = "donk_aicore_door_bolts" }, /turf/open/floor/circuit/red/off, /area/ruin/space/has_grav/hauntedtradingpost/aicore) @@ -4065,7 +4049,8 @@ suicide_pact = 1; suicide_pact_id = "donk_office_trap_shutters"; id = "donk_office_trap_shutters"; - sync_doors = 0 + sync_doors = 0; + dir = 4 }, /turf/open/floor/wood/large, /area/ruin/space/has_grav/hauntedtradingpost/office) @@ -4088,6 +4073,12 @@ }, /turf/open/floor/plating, /area/ruin/space/has_grav/hauntedtradingpost/maint) +"Ju" = ( +/mob/living/basic/viscerator, +/obj/effect/turf_decal/bot_red, +/obj/structure/sign/warning/directional/east, +/turf/open/floor/circuit/red/off, +/area/ruin/space/has_grav/hauntedtradingpost/aicore) "Jw" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/carpet/donk, @@ -4216,23 +4207,20 @@ /obj/machinery/light/small/directional/north, /obj/effect/mapping_helpers/airalarm/syndicate_access, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/obj/machinery/button/door{ - pixel_y = 25; - pixel_x = 12; - id = "donk_toilet" - }, -/obj/machinery/button/door{ - pixel_y = 25; - pixel_x = -12; - id = "donk_toilet_window"; - name = "window shutter button" - }, /obj/machinery/airalarm/directional/south, /obj/effect/decal/cleanable/dirt, /obj/structure/toilet/secret{ secret_type = /obj/item/toy/plush/nukeplushie; dir = 4 }, +/obj/machinery/button/door/directional/north{ + pixel_x = -12; + id = "donk_toilet" + }, +/obj/machinery/button/door/directional/north{ + pixel_x = 12; + id = "donk_toilet_window" + }, /turf/open/floor/plating, /area/ruin/space/has_grav/hauntedtradingpost/maint/disposals) "KZ" = ( @@ -4571,11 +4559,8 @@ /obj/item/stock_parts/capacitor/super{ pixel_y = 5 }, -/obj/machinery/button/door{ - pixel_y = 23; - pixel_x = -10; - id = "donk_corridor_peek"; - name = "shutter button" +/obj/machinery/button/door/directional/north{ + id = "donk_corridor_peek" }, /turf/open/floor/catwalk_floor/iron_dark, /area/ruin/space/has_grav/hauntedtradingpost/aicore) @@ -4599,7 +4584,7 @@ "NS" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "NY" = ( /obj/structure/cable/layer1, /obj/machinery/vending/coffee{ @@ -4787,7 +4772,8 @@ id = "donk_office_entrance_trap_beta"; resets_self = 1; donk_ai_slave = 1; - multiuse = 1 + multiuse = 1; + dir = 1 }, /turf/open/floor/carpet/orange, /area/ruin/space/has_grav/hauntedtradingpost/office) @@ -4873,8 +4859,7 @@ /turf/open/floor/catwalk_floor/iron_dark, /area/ruin/space/has_grav/hauntedtradingpost/maint) "QA" = ( -/obj/structure/sign/warning, -/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, +/obj/structure/window/reinforced/plasma/plastitanium, /turf/open/floor/plating, /area/ruin/space/has_grav/hauntedtradingpost/aicore) "QF" = ( @@ -5029,7 +5014,7 @@ width = 35 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "RI" = ( /obj/structure/chair/sofa/left/brown{ dir = 1 @@ -5168,13 +5153,6 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/hauntedtradingpost/maint/toystorage) "SX" = ( -/obj/machinery/button/door{ - pixel_y = 24; - pixel_x = 9; - id = "donk_office_trap_shutters"; - name = "shutter button"; - sync_doors = 0 - }, /obj/machinery/button/door/selfdestructs{ normaldoorcontrol = 1; id = "donk_door_bolts"; @@ -5184,6 +5162,10 @@ desc = "A button for unbolting doors throughout the facility."; name = "door bolt override" }, +/obj/machinery/button/door/directional/north{ + id = "donk_office_trap_shutters"; + pixel_x = 10 + }, /turf/open/floor/wood/large, /area/ruin/space/has_grav/hauntedtradingpost/office) "SY" = ( @@ -5296,7 +5278,7 @@ name = "external vent" }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "TU" = ( /obj/structure/cable/layer1, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, @@ -5555,9 +5537,7 @@ /area/ruin/space/has_grav/hauntedtradingpost/public/corridor) "Wf" = ( /obj/structure/lattice/catwalk, -/obj/effect/spawner/structure/electrified_grille{ - spawn_list = list(/obj/structure/grille,/obj/structure/cable/layer1) - }, +/obj/effect/spawner/structure/electrified_grille/layer1, /turf/template_noop, /area/ruin/space/has_grav/hauntedtradingpost/office/meetingroom) "Wg" = ( @@ -6004,7 +5984,7 @@ /obj/structure/lattice, /obj/structure/grille/broken, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ZI" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 @@ -6684,7 +6664,7 @@ jk je Nw Ii -ve +ht QA lA nE @@ -6820,7 +6800,7 @@ BE yb Im MR -kl +Ju Gk iv PX @@ -6864,7 +6844,7 @@ pX je Nw AB -ve +MR QA kl nE diff --git a/_maps/RandomRuins/SpaceRuins/hellfactory.dmm b/_maps/RandomRuins/SpaceRuins/hellfactory.dmm index 4d3ac05f1be2bd..7ddd26f84194f7 100644 --- a/_maps/RandomRuins/SpaceRuins/hellfactory.dmm +++ b/_maps/RandomRuins/SpaceRuins/hellfactory.dmm @@ -347,7 +347,7 @@ "bm" = ( /obj/structure/table, /obj/item/stamp/denied, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 6; pixel_y = 6 }, @@ -876,7 +876,7 @@ /turf/open/floor/iron, /area/ruin/space/has_grav/hellfactory) "ux" = ( -/obj/machinery/light/small/directional/west, +/obj/machinery/light/small/directional/east, /turf/open/floor/iron, /area/ruin/space/has_grav/hellfactory) "uL" = ( diff --git a/_maps/RandomRuins/SpaceRuins/infested_frigate.dmm b/_maps/RandomRuins/SpaceRuins/infested_frigate.dmm index 9565fa689c3411..96b778786af652 100644 --- a/_maps/RandomRuins/SpaceRuins/infested_frigate.dmm +++ b/_maps/RandomRuins/SpaceRuins/infested_frigate.dmm @@ -35,7 +35,7 @@ "aB" = ( /obj/item/shard, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "aV" = ( /obj/machinery/light/small/red/dim/directional/north, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -84,7 +84,7 @@ /obj/item/ammo_casing/spent, /obj/item/ammo_casing/spent, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bD" = ( /obj/effect/decal/cleanable/blood/gibs{ icon_state = "gib3-old"; @@ -450,7 +450,7 @@ "fM" = ( /obj/structure/door_assembly/door_assembly_ext, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "fX" = ( /obj/structure/toilet{ dir = 4 @@ -463,7 +463,7 @@ "gG" = ( /obj/effect/spawner/random/trash/food_packaging, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "gW" = ( /obj/effect/turf_decal{ dir = 4 @@ -945,7 +945,7 @@ pixel_x = 15 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "qb" = ( /obj/effect/turf_decal{ dir = 8 @@ -1014,14 +1014,14 @@ "qF" = ( /obj/item/ammo_casing/spent, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "qJ" = ( /obj/structure/closet/crate/trashcart, /obj/item/clothing/mask/facehugger/toy, /obj/item/storage/fancy/cigarettes/cigpack_cannabis, /obj/effect/mob_spawn/corpse/human/charredskeleton, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "qR" = ( /obj/effect/decal/cleanable/blood/gibs/old, /obj/effect/mob_spawn/corpse/human/syndicatecommando/lessenedgear, @@ -1103,7 +1103,7 @@ "rO" = ( /obj/structure/broken_flooring/pile/directional/south, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "so" = ( /obj/effect/mapping_helpers/broken_floor, /obj/item/broken_missile, @@ -1150,7 +1150,7 @@ "sT" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "sZ" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt, @@ -1365,7 +1365,7 @@ amount = 25 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "wt" = ( /obj/effect/turf_decal{ icon_state = "warningline_white"; @@ -1448,7 +1448,7 @@ /obj/effect/spawner/random/trash, /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/mineral/plastitanium/airless, -/area/template_noop) +/area/space/nearstation) "xo" = ( /obj/effect/decal/cleanable/glass, /obj/structure/cable, @@ -1651,11 +1651,11 @@ }, /obj/effect/decal/cleanable/glass, /turf/open/floor/plating/airless, -/area/template_noop) +/area/space/nearstation) "zU" = ( /obj/structure/broken_flooring/pile/directional/east, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "zV" = ( /obj/machinery/suit_storage_unit/open, /obj/effect/turf_decal{ @@ -1839,7 +1839,7 @@ "Eg" = ( /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Er" = ( /obj/effect/turf_decal{ icon_state = "arrows_red"; @@ -1879,7 +1879,7 @@ "EB" = ( /obj/structure/girder/displaced, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "EL" = ( /obj/effect/turf_decal{ icon_state = "warningline_white" @@ -2086,12 +2086,12 @@ "HD" = ( /obj/structure/broken_flooring/singular/directional/south, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "HP" = ( /obj/structure/broken_flooring/plating/directional/north, /obj/structure/broken_flooring/pile/directional/west, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Im" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /turf/open/floor/mineral/plastitanium, @@ -2325,7 +2325,7 @@ /obj/item/ammo_casing/spent, /obj/structure/alien/weeds, /turf/open/floor/mineral/plastitanium/airless, -/area/template_noop) +/area/space/nearstation) "Ln" = ( /obj/effect/decal/cleanable/glass, /obj/item/ammo_casing/spent, @@ -2518,7 +2518,7 @@ amount = 23 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Ou" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, @@ -2624,7 +2624,7 @@ /obj/item/ammo_casing/spent, /obj/item/ammo_casing/spent, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Qm" = ( /obj/effect/turf_decal/tile/red{ dir = 4 @@ -2649,7 +2649,7 @@ "QL" = ( /obj/structure/broken_flooring/singular/directional/east, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Ru" = ( /obj/effect/turf_decal/delivery, /obj/effect/decal/cleanable/dirt, @@ -2657,7 +2657,7 @@ /obj/item/storage/box/bodybags, /obj/item/storage/box/bodybags, /obj/item/storage/box/bodybags, -/obj/item/tank/jetpack/oxygen, +/obj/item/tank/jetpack, /obj/item/storage/box/coffeepack, /obj/item/storage/box/coffeepack, /obj/item/storage/box/emptysandbags, @@ -2728,7 +2728,7 @@ "RY" = ( /obj/effect/spawner/random/trash, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Sr" = ( /obj/effect/turf_decal{ icon_state = "warningline_white"; @@ -2937,7 +2937,7 @@ "VR" = ( /obj/item/tank/internals/oxygen/empty, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "VU" = ( /obj/structure/cable, /obj/effect/decal/cleanable/vomit/old, @@ -3004,7 +3004,7 @@ amount = 50 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Xc" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table/reinforced, diff --git a/_maps/RandomRuins/SpaceRuins/interdyne.dmm b/_maps/RandomRuins/SpaceRuins/interdyne.dmm index ae2a3578e2fc53..c053639750b625 100644 --- a/_maps/RandomRuins/SpaceRuins/interdyne.dmm +++ b/_maps/RandomRuins/SpaceRuins/interdyne.dmm @@ -8,12 +8,6 @@ /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/mineral/plastitanium, /area/ruin/space/has_grav/interdyne) -"aI" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/turf/open/floor/mineral/plastitanium, -/area/ruin/space/has_grav/interdyne) "aY" = ( /turf/open/floor/mineral/plastitanium/red, /area/ruin/space/has_grav/interdyne) @@ -54,6 +48,7 @@ /obj/effect/decal/cleanable/dirt, /obj/structure/cable, /obj/effect/gibspawner/generic, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/mineral/plastitanium, /area/ruin/space/has_grav/interdyne) "cJ" = ( @@ -670,11 +665,6 @@ /obj/machinery/light/blacklight/directional/north, /turf/open/floor/iron/smooth, /area/ruin/space/has_grav/interdyne) -"DA" = ( -/mob/living/basic/zombie, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/mineral/plastitanium, -/area/ruin/space/has_grav/interdyne) "DH" = ( /turf/open/floor/iron/showroomfloor, /area/ruin/space/has_grav/interdyne) @@ -995,6 +985,12 @@ /obj/structure/sink/directional/south, /turf/open/floor/iron/showroomfloor, /area/ruin/space/has_grav/interdyne) +"OU" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 + }, +/turf/open/floor/mineral/plastitanium, +/area/ruin/space/has_grav/interdyne) "OW" = ( /obj/machinery/power/smes/engineering{ input_available = 100000; @@ -1783,8 +1779,8 @@ fu eJ WU Zi -gV -vd +oO +OU xb Zi Rn @@ -1819,7 +1815,7 @@ Yi US NG In -SE +QD FF Zi Rn @@ -2161,7 +2157,7 @@ mp Zi fu Nb -DA +uy ga Zi Gk @@ -2196,7 +2192,7 @@ SC Zi ub cG -aI +OU QD Zi XS diff --git a/_maps/RandomRuins/SpaceRuins/listeningstation.dmm b/_maps/RandomRuins/SpaceRuins/listeningstation.dmm index c1188e9866360a..cb069a04b11d5c 100644 --- a/_maps/RandomRuins/SpaceRuins/listeningstation.dmm +++ b/_maps/RandomRuins/SpaceRuins/listeningstation.dmm @@ -24,7 +24,6 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/listeningstation) "aP" = ( -/obj/structure/cable, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/blue/anticorner/contrasted, /turf/open/floor/iron, @@ -53,7 +52,6 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/listeningstation) "by" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/item/multitool{ pixel_x = 8; pixel_y = 3 @@ -80,18 +78,10 @@ /turf/open/floor/iron/small, /area/ruin/space/has_grav/listeningstation) "ch" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/structure/lattice/catwalk, /obj/structure/marker_beacon/cerulean, /turf/template_noop, /area/ruin/space) -"cj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/small, -/area/ruin/space/has_grav/listeningstation) "cq" = ( /obj/effect/turf_decal/bot, /obj/item/weldingtool/largetank, @@ -123,7 +113,6 @@ /obj/structure/table, /obj/item/storage/medkit/regular, /obj/item/clothing/neck/stethoscope, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/light/small/directional/north, /obj/effect/turf_decal/tile/blue/half/contrasted{ dir = 4 @@ -131,20 +120,23 @@ /turf/open/floor/iron, /area/ruin/space/has_grav/listeningstation) "dv" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/plating, /area/ruin/space/has_grav/listeningstation) -"dW" = ( +"dM" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/spawner/random/trash/cigbutt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/small, /area/ruin/space/has_grav/listeningstation) -"eR" = ( +"dW" = ( +/obj/structure/cable, /obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/plating, +/turf/open/floor/iron/small, /area/ruin/space/has_grav/listeningstation) "eW" = ( /obj/structure/table, @@ -241,13 +233,9 @@ /turf/open/floor/circuit/red, /area/ruin/space/has_grav/listeningstation) "lO" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/structure/marker_beacon/cerulean, +/obj/structure/sign/nanotrasen/directional/north, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/plating/airless, /area/ruin/space) "nG" = ( @@ -322,12 +310,6 @@ /obj/effect/turf_decal/tile/red/opposingcorners, /turf/open/floor/iron/dark, /area/ruin/space/has_grav/listeningstation) -"tf" = ( -/obj/structure/cable, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/small, -/area/ruin/space/has_grav/listeningstation) "tl" = ( /obj/structure/marker_beacon/cerulean, /turf/open/floor/plating/airless, @@ -350,17 +332,16 @@ /area/ruin/space/has_grav/listeningstation) "vt" = ( /obj/structure/lattice/catwalk, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/structure/marker_beacon/cerulean, +/obj/structure/sign/nanotrasen/directional/west, /turf/template_noop, /area/ruin/space) "vC" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/spawner/random/trash/cigbutt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/small, /area/ruin/space/has_grav/listeningstation) "vI" = ( @@ -372,7 +353,6 @@ req_access = list("syndicate") }, /obj/item/paper/fluff/ruins/listeningstation/reports/september, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/blue/half/contrasted, /turf/open/floor/iron, /area/ruin/space/has_grav/listeningstation) @@ -421,6 +401,7 @@ "ym" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/ruin/space/has_grav/listeningstation) "yx" = ( @@ -453,7 +434,6 @@ /area/ruin/space/has_grav/listeningstation) "zo" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/blue/half/contrasted, /turf/open/floor/iron, /area/ruin/space/has_grav/listeningstation) @@ -471,10 +451,8 @@ /turf/open/floor/plating, /area/ruin/space/has_grav/listeningstation) "zV" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, /obj/structure/cable, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/plating/airless, /area/ruin/space) "zZ" = ( @@ -609,13 +587,9 @@ /turf/open/floor/iron/showroomfloor, /area/ruin/space/has_grav/listeningstation) "FU" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/structure/marker_beacon/cerulean, +/obj/structure/sign/nanotrasen/directional/south, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/plating/airless, /area/ruin/space) "FV" = ( @@ -684,7 +658,7 @@ width = 9 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "KG" = ( /obj/structure/curtain, /obj/effect/decal/cleanable/dirt, @@ -704,7 +678,6 @@ /obj/structure/chair/sofa/right/brown{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/ruin/space/has_grav/listeningstation) "LU" = ( @@ -751,7 +724,6 @@ "Ni" = ( /obj/machinery/computer/security/telescreen/entertainment/directional/south, /obj/structure/closet/secure_closet/freezer/empty/open, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/small, /area/ruin/space/has_grav/listeningstation) "NO" = ( @@ -786,7 +758,6 @@ "Or" = ( /obj/structure/closet/crate/bin, /obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/firealarm/directional/north, /turf/open/floor/iron/small, /area/ruin/space/has_grav/listeningstation) @@ -819,6 +790,7 @@ dir = 4 }, /obj/machinery/light/warm/directional/south, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron/grimy, /area/ruin/space/has_grav/listeningstation) "Sx" = ( @@ -863,6 +835,8 @@ /obj/structure/chair/sofa/left/brown{ dir = 4 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/ruin/space/has_grav/listeningstation) "Uh" = ( @@ -916,6 +890,9 @@ }, /turf/open/floor/iron, /area/ruin/space/has_grav/listeningstation) +"We" = ( +/turf/open/floor/plating, +/area/ruin/space/has_grav/listeningstation) "WD" = ( /obj/structure/table, /obj/machinery/cell_charger, @@ -930,10 +907,8 @@ /area/ruin/space/has_grav/listeningstation) "WG" = ( /obj/structure/lattice/catwalk, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, /obj/structure/marker_beacon/cerulean, +/obj/structure/sign/nanotrasen/directional/south, /turf/template_noop, /area/ruin/space) "WW" = ( @@ -945,7 +920,6 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/iv_drip, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/ruin/space/has_grav/listeningstation) "Yf" = ( @@ -1320,9 +1294,9 @@ MS It ad by -cj -db -Sz +wm +ym +wk JB vI vI @@ -1342,9 +1316,9 @@ JB JB JB eW -eR -eR -cj +FV +FV +wm dv TO LR @@ -1367,12 +1341,12 @@ Dv WD rG Or -SB +We FV ca BX dW -Sz +We JB vI vI @@ -1392,9 +1366,9 @@ LU Mt nX Sx -vC +dM ym -tf +dW ym ym Ni diff --git a/_maps/RandomRuins/SpaceRuins/meatderelict.dmm b/_maps/RandomRuins/SpaceRuins/meatderelict.dmm index 2933e4723eb1a6..48ea0933387c0d 100644 --- a/_maps/RandomRuins/SpaceRuins/meatderelict.dmm +++ b/_maps/RandomRuins/SpaceRuins/meatderelict.dmm @@ -87,6 +87,13 @@ /obj/structure/microscope, /turf/open/indestructible/white, /area/ruin/space/has_grav/powered/biooutpost) +"bV" = ( +/obj/structure/broken_flooring/corner/always_floorplane{ + dir = 4 + }, +/obj/structure/sign/warning/directional/west, +/turf/open/indestructible/meat, +/area/ruin/space/has_grav/powered/biooutpost) "ch" = ( /turf/open/indestructible/white{ icon_state = "showroomfloor" @@ -333,9 +340,11 @@ /turf/open/indestructible/meat, /area/ruin/space/has_grav/powered/biooutpost) "hR" = ( -/obj/structure/sign/warning, -/turf/closed/indestructible/reinforced, -/area/ruin/space/has_grav/powered/biooutpost/vault) +/obj/effect/turf_decal/tile/purple/opposingcorners, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/warning/directional/east, +/turf/open/indestructible/white, +/area/ruin/space/has_grav/powered/biooutpost) "hW" = ( /obj/effect/turf_decal/siding/purple, /obj/effect/decal/cleanable/blood/splatter, @@ -1314,6 +1323,7 @@ dir = 5 }, /obj/structure/sign/warning/chem_diamond/directional/west, +/obj/structure/sign/warning/directional/south, /turf/open/indestructible/dark, /area/ruin/space/has_grav/powered/biooutpost) "za" = ( @@ -1388,8 +1398,12 @@ /turf/open/indestructible/dark, /area/ruin/space/has_grav/powered/biooutpost) "AT" = ( -/obj/structure/sign/warning, -/turf/closed/indestructible/riveted/plastinum/nodiagonal, +/obj/structure/puzzle_blockade{ + id = "md_armory" + }, +/obj/effect/turf_decal/stripes/full, +/obj/structure/sign/warning/directional/north, +/turf/open/indestructible/white, /area/ruin/space/has_grav/powered/biooutpost) "AV" = ( /obj/effect/turf_decal/stripes/full, @@ -1704,6 +1718,12 @@ /obj/machinery/light/small/broken/directional/south, /turf/open/indestructible/dark, /area/ruin/space/has_grav/powered/biooutpost) +"Gq" = ( +/obj/structure/sign/directions/security/directional/south{ + pixel_y = 0 + }, +/turf/closed/indestructible/riveted/plastinum/nodiagonal, +/area/ruin/space/has_grav/powered/biooutpost/vault) "GA" = ( /obj/effect/turf_decal/siding/purple{ dir = 8 @@ -2528,9 +2548,6 @@ /turf/open/indestructible/plating, /area/ruin/space/has_grav/powered/biooutpost) "XO" = ( -/obj/structure/sign/directions/security/directional/south{ - pixel_x = 32 - }, /obj/effect/turf_decal/tile/purple/opposingcorners, /obj/structure/sign/poster/official/random/directional/east, /obj/effect/decal/cleanable/dirt, @@ -2984,7 +3001,7 @@ Jh AP DJ yU -AT +Jh vF ih hf @@ -3262,7 +3279,7 @@ Jh wX wM DJ -cp +hR XO Ju op @@ -3304,9 +3321,9 @@ UX UX EC xr -hR -UX +EC UX +Gq UX op Gd @@ -3560,8 +3577,8 @@ EN EN eP EC -hR -IK +EC +AT IK IK PQ @@ -3721,7 +3738,7 @@ Rb Sj EC Yc -hR +EC EC xr EC @@ -3763,7 +3780,7 @@ UD qV ij Nz -sJ +bV OM Vu NE diff --git a/_maps/RandomRuins/SpaceRuins/mechtransport.dmm b/_maps/RandomRuins/SpaceRuins/mechtransport.dmm index 2591d4991e5747..7ea38800f8e61d 100644 --- a/_maps/RandomRuins/SpaceRuins/mechtransport.dmm +++ b/_maps/RandomRuins/SpaceRuins/mechtransport.dmm @@ -33,12 +33,12 @@ "hR" = ( /obj/item/shard/titanium, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "if" = ( /obj/structure/lattice, /obj/structure/mecha_wreckage/gygax, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "is" = ( /turf/template_noop, /area/template_noop) @@ -98,12 +98,12 @@ pixel_x = 12 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "lc" = ( /obj/structure/lattice, /obj/item/stack/sheet/iron, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "lB" = ( /obj/effect/decal/remains/human, /obj/effect/decal/cleanable/blood, @@ -172,7 +172,7 @@ "wJ" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "xJ" = ( /obj/structure/chair/office{ dir = 1 @@ -268,7 +268,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible/layer2, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Lk" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/smooth_large/airless, @@ -298,7 +298,7 @@ "PG" = ( /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Qc" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/layer2{ dir = 8 @@ -322,7 +322,7 @@ dir = 8 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Vl" = ( /obj/machinery/power/shuttle_engine/heater, /turf/open/floor/plating/airless, diff --git a/_maps/RandomRuins/SpaceRuins/oldAIsat.dmm b/_maps/RandomRuins/SpaceRuins/oldAIsat.dmm index be9dfaaa1a7f7e..bac43576d133bd 100644 --- a/_maps/RandomRuins/SpaceRuins/oldAIsat.dmm +++ b/_maps/RandomRuins/SpaceRuins/oldAIsat.dmm @@ -5,7 +5,7 @@ "ab" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ac" = ( /turf/open/floor/plating/airless, /area/ruin/space/tcommsat_oldaisat) @@ -13,16 +13,16 @@ /obj/structure/lattice, /obj/structure/grille/broken, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ae" = ( /obj/structure/lattice, /obj/structure/grille, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "af" = ( /obj/structure/grille, /turf/open/floor/plating/airless, -/area/template_noop) +/area/space/nearstation) "ag" = ( /turf/closed/wall/r_wall, /area/ruin/space/tcommsat_oldaisat) @@ -33,7 +33,7 @@ "ai" = ( /obj/structure/window/reinforced/spawner/directional/east, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "aj" = ( /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/plating/airless, @@ -78,7 +78,7 @@ /obj/structure/lattice, /obj/structure/window/reinforced/spawner/directional/east, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "au" = ( /obj/structure/cable, /turf/open/floor/plating/airless, @@ -96,7 +96,7 @@ /obj/structure/lattice, /obj/structure/window/reinforced/spawner/directional/west, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ay" = ( /obj/effect/spawner/random/structure/crate_abandoned, /turf/open/floor/iron/airless, @@ -160,7 +160,7 @@ "aL" = ( /obj/structure/window/reinforced/spawner/directional/west, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "aM" = ( /obj/item/folder/yellow, /turf/open/floor/iron/airless, @@ -177,14 +177,14 @@ /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "aP" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "aQ" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/window/reinforced/spawner/directional/east, @@ -194,22 +194,19 @@ /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/window/reinforced/spawner/directional/west, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "aS" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/window/reinforced/spawner/directional/north, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "aT" = ( /obj/structure/window/reinforced/spawner/directional/south, /turf/template_noop, -/area/template_noop) -"aU" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, -/area/ruin/space/tcommsat_oldaisat) +/area/space/nearstation) "aV" = ( /obj/machinery/light/small/directional/west, +/obj/structure/sign/warning/secure_area/directional/west, /turf/open/floor/iron/airless, /area/ruin/space/tcommsat_oldaisat) "aW" = ( @@ -326,16 +323,16 @@ /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/window/reinforced/spawner/directional/north, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "br" = ( /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bs" = ( /obj/structure/window/reinforced/spawner/directional/north, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bt" = ( /obj/structure/table, /obj/item/gps/spaceruin, @@ -361,7 +358,7 @@ /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bz" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/item/shard{ @@ -400,7 +397,7 @@ /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bG" = ( /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/window/reinforced/spawner/directional/west, @@ -562,12 +559,12 @@ /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/window/reinforced/spawner/directional/south, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ck" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "cl" = ( /obj/effect/turf_decal/stripes/line{ dir = 9 @@ -596,7 +593,7 @@ /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/window/reinforced/spawner/directional/south, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "cq" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/window/reinforced/spawner/directional/west, @@ -649,7 +646,7 @@ icon_state = "medium" }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "cz" = ( /obj/structure/lattice, /obj/item/stack/rods, @@ -657,7 +654,7 @@ icon_state = "medium" }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "cB" = ( /obj/effect/spawner/structure/window/hollow/reinforced, /turf/open/floor/plating, @@ -665,7 +662,7 @@ "cC" = ( /obj/structure/grille/broken, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "cD" = ( /obj/machinery/door/airlock/hatch, /turf/open/floor/iron, @@ -2354,7 +2351,7 @@ ag ag ag ag -aU +ag bf ag ag diff --git a/_maps/RandomRuins/SpaceRuins/old_infiltrator.dmm b/_maps/RandomRuins/SpaceRuins/old_infiltrator.dmm index 3fef3d7f7fe714..082f1341908d56 100644 --- a/_maps/RandomRuins/SpaceRuins/old_infiltrator.dmm +++ b/_maps/RandomRuins/SpaceRuins/old_infiltrator.dmm @@ -206,7 +206,7 @@ "nv" = ( /obj/item/stack/sheet/mineral/plastitanium, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "nF" = ( /obj/item/radio/intercom/directional/south, /obj/effect/decal/cleanable/blood/old, @@ -268,7 +268,6 @@ "sL" = ( /obj/structure/table, /obj/effect/spawner/random/engineering/tool, -/obj/machinery/light/directional/north, /obj/item/stack/cable_coil, /turf/open/floor/mineral/plastitanium/red/airless, /area/ruin/space/unpowered) @@ -439,6 +438,7 @@ pixel_x = 8 }, /obj/machinery/status_display/evac/directional/north, +/obj/machinery/light/directional/north, /turf/open/floor/mineral/plastitanium/red/airless, /area/ruin/space/unpowered) "Da" = ( @@ -521,7 +521,7 @@ "Jd" = ( /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "JH" = ( /obj/structure/frame/machine, /turf/open/floor/circuit/red/airless, @@ -544,7 +544,7 @@ "KM" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Lz" = ( /obj/structure/table, /obj/item/tank/internals/emergency_oxygen/engi, @@ -562,11 +562,9 @@ /turf/open/floor/iron/dark/airless, /area/ruin/space/unpowered) "Mw" = ( -/obj/machinery/status_display/ai{ - pixel_x = 32 - }, /obj/machinery/light/directional/east, /obj/effect/decal/cleanable/blood/old, +/obj/machinery/status_display/ai/directional/east, /turf/open/floor/mineral/plastitanium/red, /area/ruin/space/unpowered) "MB" = ( @@ -646,7 +644,7 @@ "Tc" = ( /obj/item/stack/rods/two, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Tx" = ( /obj/machinery/door/window/brigdoor/right/directional/west{ req_access = list("syndicate"); @@ -732,7 +730,7 @@ "YT" = ( /obj/item/shard, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Zh" = ( /obj/structure/table, /obj/item/storage/medkit/ancient{ diff --git a/_maps/RandomRuins/SpaceRuins/oldstation.dmm b/_maps/RandomRuins/SpaceRuins/oldstation.dmm index 4fdde74a1c7b13..93141bbfef43c6 100644 --- a/_maps/RandomRuins/SpaceRuins/oldstation.dmm +++ b/_maps/RandomRuins/SpaceRuins/oldstation.dmm @@ -288,7 +288,9 @@ /turf/open/floor/iron, /area/ruin/space/ancientstation/charlie/bridge) "bA" = ( -/obj/structure/ai_core/deactivated, +/obj/structure/ai_core{ + state = 5 + }, /turf/open/floor/iron/dark, /area/ruin/space/ancientstation/delta/ai) "bC" = ( @@ -710,7 +712,7 @@ "dq" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/reagent_dispensers/watertank/high{ - desc = "A highly-pressurized water tank, this one seems almost empty.."; + desc = "A highly-pressurized water tank. This one seems almost empty.."; tank_volume = 1000 }, /obj/effect/decal/cleanable/dirt, @@ -1006,7 +1008,7 @@ /turf/open/floor/iron/diagonal, /area/ruin/space/ancientstation/beta/gravity) "eF" = ( -/obj/machinery/computer/rdconsole, +/obj/machinery/computer/rdconsole/unlocked, /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/white, /area/ruin/space/ancientstation/delta/rnd) @@ -2600,13 +2602,6 @@ /area/ruin/space/ancientstation/charlie/hydro) "lI" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/button/door/directional/west{ - id = "Beta Secure Storage"; - name = "Engineering Secure Storage"; - req_access = list("engine_equip"); - pixel_x = 25; - pixel_y = 23 - }, /obj/item/shard/plasma, /turf/open/floor/engine/airless, /area/ruin/space/ancientstation/beta/supermatter) @@ -2683,10 +2678,6 @@ "mc" = ( /turf/closed/mineral/plasma, /area/ruin/space/ancientstation/charlie/dorms) -"md" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, -/area/ruin/space/ancientstation/delta/biolab) "me" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4{ dir = 4 @@ -3006,7 +2997,7 @@ "nr" = ( /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ns" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light/small/directional/south, @@ -3361,6 +3352,7 @@ dir = 4 }, /obj/machinery/light_switch/directional/east, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible/layer2, /turf/open/floor/iron, /area/ruin/space/ancientstation/beta/atmos) "pB" = ( @@ -4125,7 +4117,6 @@ /area/ruin/space/ancientstation/delta/biolab) "vh" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible/layer2, /obj/effect/turf_decal/tile/yellow/half/contrasted{ dir = 8 }, @@ -4539,6 +4530,7 @@ /obj/machinery/door/window/right/directional/east{ req_access = list("away_general") }, +/obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/engine, /area/ruin/space/ancientstation/delta/biolab) "xT" = ( @@ -5551,7 +5543,6 @@ /turf/open/floor/plating/rust, /area/ruin/space/ancientstation/delta/hall) "Fm" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible/layer2, /obj/effect/turf_decal/tile/yellow/anticorner/contrasted{ dir = 1 }, @@ -7054,7 +7045,7 @@ /obj/effect/turf_decal/tile/purple/half/contrasted{ dir = 8 }, -/obj/machinery/light/built/directional/west, +/obj/machinery/light/empty/directional/west, /turf/open/floor/iron/white/textured_edge{ dir = 4 }, @@ -7821,6 +7812,9 @@ /obj/item/geiger_counter, /obj/item/geiger_counter, /obj/machinery/light/small/broken/directional/north, +/obj/machinery/button/door/directional/north{ + id = "Beta Secure Storage" + }, /turf/open/floor/engine/airless, /area/ruin/space/ancientstation/beta/supermatter) "TA" = ( @@ -8207,6 +8201,7 @@ /obj/effect/decal/cleanable/dirt, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/visible/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible/layer2, /turf/open/floor/iron, /area/ruin/space/ancientstation/beta/atmos) "WR" = ( @@ -15377,7 +15372,7 @@ uo GX NG Lo -md +rp xM Go Yl diff --git a/_maps/RandomRuins/SpaceRuins/oldteleporter.dmm b/_maps/RandomRuins/SpaceRuins/oldteleporter.dmm index cb2dbf4aca06da..a9f3a5da151c3e 100644 --- a/_maps/RandomRuins/SpaceRuins/oldteleporter.dmm +++ b/_maps/RandomRuins/SpaceRuins/oldteleporter.dmm @@ -5,7 +5,7 @@ "b" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "c" = ( /turf/open/floor/plating/airless, /area/ruin/space/oldteleporter) diff --git a/_maps/RandomRuins/SpaceRuins/onehalf.dmm b/_maps/RandomRuins/SpaceRuins/onehalf.dmm index 0048ccb3976ea6..8b1ef6e7cedf99 100644 --- a/_maps/RandomRuins/SpaceRuins/onehalf.dmm +++ b/_maps/RandomRuins/SpaceRuins/onehalf.dmm @@ -6,16 +6,16 @@ /obj/structure/lattice/catwalk, /obj/structure/cable, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ad" = ( /obj/structure/lattice/catwalk, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ae" = ( /obj/item/stack/cable_coil/cut, /obj/structure/lattice/catwalk, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ag" = ( /turf/closed/wall, /area/ruin/space/has_grav/onehalf/dorms_med) @@ -106,7 +106,7 @@ "aw" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ax" = ( /obj/structure/lattice, /turf/template_noop, @@ -227,7 +227,7 @@ /obj/structure/lattice, /obj/item/storage/toolbox/syndicate, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "aT" = ( /obj/structure/cable, /obj/effect/mapping_helpers/broken_floor, @@ -570,7 +570,7 @@ "bV" = ( /obj/item/stack/sheet/iron, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bW" = ( /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating/airless, @@ -651,7 +651,7 @@ icon_state = "small" }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ck" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/disposalpipe/segment{ @@ -705,14 +705,14 @@ "cr" = ( /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "cs" = ( /obj/item/stack/sheet/plasteel{ amount = 10 }, /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ct" = ( /obj/structure/lattice, /obj/item/shard{ @@ -747,7 +747,7 @@ "cA" = ( /obj/item/stack/tile/wood, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "cB" = ( /turf/template_noop, /area/ruin/space/has_grav/onehalf/hallway) @@ -813,7 +813,7 @@ "cN" = ( /obj/item/stack/sheet/plasteel, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "cQ" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -828,19 +828,15 @@ /obj/structure/cable, /turf/open/floor/iron, /area/ruin/space/has_grav/onehalf/bridge) -"cT" = ( +"cU" = ( +/obj/structure/table/reinforced, /obj/machinery/button/door{ id = "bridge_onehalf"; name = "Bridge Blast Door"; - pixel_x = 32; pixel_y = 5 }, /turf/open/floor/iron, /area/ruin/space/has_grav/onehalf/bridge) -"cU" = ( -/obj/structure/table/reinforced, -/turf/open/floor/iron, -/area/ruin/space/has_grav/onehalf/bridge) "cY" = ( /obj/structure/table/reinforced, /obj/item/gps/spaceruin, @@ -879,23 +875,23 @@ /obj/item/stack/sheet/plasteel, /obj/structure/lattice/catwalk, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "di" = ( /obj/item/shard{ icon_state = "medium" }, /obj/structure/lattice/catwalk, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "dj" = ( /obj/item/stack/rods, /obj/structure/lattice/catwalk, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "dl" = ( /obj/item/stack/cable_coil/cut, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ms" = ( /obj/item/stack/tile/iron/base, /obj/structure/cable, @@ -1411,7 +1407,7 @@ Vh Vh cJ cn -cT +cn cn cq ad diff --git a/_maps/RandomRuins/SpaceRuins/originalcontent.dmm b/_maps/RandomRuins/SpaceRuins/originalcontent.dmm index d2cf049c0a57c0..9a6e450321e8a6 100644 --- a/_maps/RandomRuins/SpaceRuins/originalcontent.dmm +++ b/_maps/RandomRuins/SpaceRuins/originalcontent.dmm @@ -5,23 +5,23 @@ "ab" = ( /obj/structure/fluff/paper/corner, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ac" = ( /obj/structure/fluff/paper, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ad" = ( /obj/structure/fluff/paper/corner{ dir = 8 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ae" = ( /obj/structure/fluff/paper{ dir = 4 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "af" = ( /turf/closed/indestructible/paper, /area/ruin/space/has_grav/powered) @@ -30,20 +30,20 @@ dir = 10 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ah" = ( /obj/structure/fluff/paper/corner, /obj/structure/fluff/paper/corner{ dir = 8 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ai" = ( /obj/structure/fluff/paper{ dir = 6 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "aj" = ( /obj/machinery/door/airlock/freezer{ name = "Airlock"; @@ -137,7 +137,7 @@ dir = 8 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ax" = ( /obj/structure/fluff/paper/corner{ dir = 1 @@ -375,19 +375,19 @@ dir = 9 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bd" = ( /obj/structure/fluff/paper{ dir = 1 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "be" = ( /obj/structure/fluff/paper/corner{ dir = 4 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bf" = ( /obj/structure/fluff/paper{ dir = 4 @@ -454,7 +454,7 @@ dir = 10 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bo" = ( /obj/structure/fluff/paper/corner{ dir = 4 @@ -463,7 +463,7 @@ dir = 8 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bp" = ( /obj/structure/fluff/paper{ dir = 8 @@ -518,13 +518,13 @@ dir = 1 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bx" = ( /obj/structure/fluff/paper{ dir = 5 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "by" = ( /obj/structure/fluff/paper/corner, /turf/open/indestructible/paper, diff --git a/_maps/RandomRuins/SpaceRuins/prison_shuttle.dmm b/_maps/RandomRuins/SpaceRuins/prison_shuttle.dmm index e44e1a8adcc8b1..4175d832b83c55 100644 --- a/_maps/RandomRuins/SpaceRuins/prison_shuttle.dmm +++ b/_maps/RandomRuins/SpaceRuins/prison_shuttle.dmm @@ -5,7 +5,7 @@ "b" = ( /obj/structure/girder/reinforced, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "c" = ( /obj/structure/girder/reinforced, /turf/open/misc/asteroid/airless, diff --git a/_maps/RandomRuins/SpaceRuins/russian_derelict.dmm b/_maps/RandomRuins/SpaceRuins/russian_derelict.dmm index 98831dd9d2be03..86727c3b383a13 100644 --- a/_maps/RandomRuins/SpaceRuins/russian_derelict.dmm +++ b/_maps/RandomRuins/SpaceRuins/russian_derelict.dmm @@ -113,6 +113,10 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating/airless, /area/ruin/space/ks13/hallway/central) +"aQ" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating/airless, +/area/ruin/space/ks13/hallway/aft) "aU" = ( /obj/item/shard, /obj/structure/lattice, @@ -1675,7 +1679,7 @@ "rd" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "re" = ( /obj/structure/girder, /turf/open/floor/plating/airless, @@ -1704,10 +1708,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating/airless, /area/ruin/space/ks13/engineering/atmos) -"rk" = ( -/obj/structure/lattice, -/turf/template_noop, -/area/space/nearstation) "rl" = ( /turf/closed/wall/r_wall, /area/ruin/space/ks13/command/bridge) @@ -6388,9 +6388,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark, /area/ruin/space/ks13/medical/morgue) -"PG" = ( -/turf/closed/wall/r_wall, -/area/template_noop) "PH" = ( /obj/effect/mapping_helpers/broken_floor, /obj/machinery/power/apc/auto_name/directional/north, @@ -6992,7 +6989,7 @@ /obj/structure/frame/computer{ dir = 1 }, -/obj/item/circuitboard/computer/rdconsole, +/obj/item/circuitboard/computer/rdconsole/unlocked, /obj/structure/cable, /obj/effect/mapping_helpers/burnt_floor, /turf/open/floor/plating/airless, @@ -8135,9 +8132,9 @@ /turf/open/floor/circuit/red/off, /area/ruin/space/ks13/ai/corridor) "YE" = ( -/obj/structure/plaque/static_plaque/golden/commission/ks13, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, +/obj/structure/plaque/static_plaque/golden/commission/ks13, /turf/open/floor/iron/airless, /area/ruin/space/ks13/hallway/central) "YF" = ( @@ -8510,17 +8507,17 @@ aa aa aa aa -rk +rd aa aa aa -rk +rd nW -rk +rd aa aa -rk -rk +rd +rd aa aa aa @@ -8620,10 +8617,10 @@ aa aa aa aa -rk -rk -rk -rk +rd +rd +rd +rd aa IQ IQ @@ -8633,9 +8630,9 @@ yW IQ IQ IF -rk -rk -rk +rd +rd +rd aa aa aa @@ -8748,8 +8745,8 @@ PA uf Kb Kb -rk -rk +rd +rd aa aa aa @@ -8957,7 +8954,7 @@ aa aa aa aa -rk +rd MB QU zF @@ -8973,7 +8970,7 @@ LE Qu uf Qe -rk +rd nd aa aa @@ -9070,7 +9067,7 @@ aa aa aa aa -rk +rd MB wt Eu @@ -9085,9 +9082,9 @@ Eq vl Lj uf -rk +rd qG -rk +rd aa qG aa @@ -9201,7 +9198,7 @@ uf No Bp Bp -rk +rd uF aa aa @@ -9313,8 +9310,8 @@ NO uf eG oD -rk -rk +rd +rd uF aa aa @@ -9428,7 +9425,7 @@ Nc uF uF uF -rk +rd aa aa aa @@ -9521,7 +9518,7 @@ aa aa aa aa -rk +rd aa aI EL @@ -9537,7 +9534,7 @@ GY CU Xj uf -rk +rd gn ZD aa @@ -9634,7 +9631,7 @@ aa aa aa aa -rk +rd aa MB Ky @@ -9650,8 +9647,8 @@ rw rw Tb uf -rk -rk +rd +rd UP aa aa @@ -9746,9 +9743,9 @@ aa aa aa aa -rk -rk -rk +rd +rd +rd MB MB MB @@ -9763,9 +9760,9 @@ ZR yq rm uf -rk +rd qG -rk +rd aa aa aa @@ -9862,7 +9859,7 @@ aa aa aa aa -rk +rd aa MB BO @@ -9975,7 +9972,7 @@ aa aa aa aa -rk +rd aa MB MB @@ -9997,10 +9994,10 @@ Jr aa aa aa -rk +rd aa aa -rk +rd aa aa aa @@ -10088,10 +10085,10 @@ aa aa aa aa -rk -rk -rk -rk +rd +rd +rd +rd yq DH sX @@ -10110,13 +10107,13 @@ Is aa aa aa -rk -rk -rk -rk -rk -rk -rk +rd +rd +rd +rd +rd +rd +rd aa aa aa @@ -10202,9 +10199,9 @@ aa aa aa aa -rk -rk -rk +rd +rd +rd yq SW SK @@ -10220,23 +10217,23 @@ Is ow MN Is -rk -rk +rd +rd aa -rk +rd uF uF IF uF -rk -rk -rk -rk -rk -rk +rd +rd +rd +rd +rd +rd IF -rk -rk +rd +rd aa aa aa @@ -10316,8 +10313,8 @@ aa aa aa aa -rk -rk +rd +rd yq PF TT @@ -10334,21 +10331,21 @@ MN Is MN MN -rk -rk -rk -rk -rk -rk +rd +rd +rd +rd +rd +rd IF -rk +rd IF IF -rk +rd uF uF IF -rk +rd aa aa aa @@ -10430,7 +10427,7 @@ aa aa aa aa -rk +rd yq yq yq @@ -10461,7 +10458,7 @@ Ii Ii uF aa -rk +rd aa aa aa @@ -10573,12 +10570,12 @@ cI qJ qv aa -rk -rk -rk -rk -rk -rk +rd +rd +rd +rd +rd +rd aa aa aa @@ -10673,7 +10670,7 @@ vb Jr Ut Ww -MW +Jr Wt Sp pK @@ -10685,12 +10682,12 @@ qv OX kG Me -rk -rk +rd +rd aa aa aa -rk +rd aa aa aa @@ -10761,9 +10758,9 @@ aa aa aa aa -rk -rk -rk +rd +rd +rd aa aa aa @@ -10779,7 +10776,7 @@ qO wC WE OR -MW +Jr JJ Hi vb @@ -10798,12 +10795,12 @@ VE vZ QZ Me -rk +rd aa aa aa aa -rk +rd aa aa aa @@ -10874,10 +10871,10 @@ aa aa aa aa -rk +rd aa -rk -rk +rd +rd aa aa aa @@ -10911,14 +10908,14 @@ Ag VE rR Iy -rk -rk +rd +rd aa -rk -rk -rk -rk -rk +rd +rd +rd +rd +rd aa aa aa @@ -10980,18 +10977,18 @@ aa aa aa aa -rk -rk -rk -rk -rk -rk -rk +rd +rd +rd +rd +rd +rd +rd QG QG QG -rk -rk +rd +rd aa aa aa @@ -11025,13 +11022,13 @@ VE rR Iy aa -rk -rk -rk +rd +rd +rd aa aa aa -rk +rd aa aa aa @@ -11092,12 +11089,12 @@ aa aa aa aa -rk -rk -rk -rk -rk -rk +rd +rd +rd +rd +rd +rd QG QG QG @@ -11105,7 +11102,7 @@ QG QG QG QG -rk +rd aa aa aa @@ -11137,14 +11134,14 @@ qv vZ zr Iy -rk -rk +rd +rd aa -rk -rk +rd +rd aa -rk -rk +rd +rd aa aa aa @@ -11204,13 +11201,13 @@ aa aa aa aa -rk -rk -rk -rk -rk -rk -rk +rd +rd +rd +rd +rd +rd +rd QG QG Xt @@ -11218,8 +11215,8 @@ Xb DT QG QG -rk -rk +rd +rd aa aa II @@ -11250,13 +11247,13 @@ qv Zj qv Me -rk -rk -rk +rd +rd +rd ZK -rk -rk -rk +rd +rd +rd aa aa aa @@ -11314,15 +11311,15 @@ aa aa aa aa -rk -rk -rk -rk -rk -rk -rk -rk -rk +rd +rd +rd +rd +rd +rd +rd +rd +rd sU QG PH @@ -11332,7 +11329,7 @@ Rq sL QG sU -rk +rd aa aU Ho @@ -11369,9 +11366,9 @@ bm ZK ke Ez -rk -rk -rk +rd +rd +rd aa aa aa @@ -11426,16 +11423,16 @@ aa aa aa aa -rk +rd nQ -rk +rd Kb sU sU -rk -rk -rk -rk +rd +rd +rd +rd sU Dy Us @@ -11482,9 +11479,9 @@ bm XO TK Fv -rk +rd IF -rk +rd aa aa aa @@ -11513,13 +11510,13 @@ aa aa aa aa -rk +rd aa aa aa -rk -rk -rk +rd +rd +rd aa aa aa @@ -11537,10 +11534,10 @@ aa aa aa aa -rk -rk -rk -rk +rd +rd +rd +rd Kb sU sU @@ -11597,8 +11594,8 @@ TK Ez jV NW -rk -rk +rd +rd aa aa aa @@ -11625,16 +11622,16 @@ aa aa aa aa -rk +rd aa -rk -rk -rk +rd +rd +rd aa aa aa -rk -rk +rd +rd aa aa aa @@ -11649,10 +11646,10 @@ aa aa aa aa -rk -rk -rk -rk +rd +rd +rd +rd Kb sU gd @@ -11738,7 +11735,7 @@ aa aa aa aa -rk +rd Yc Yc Yc @@ -11747,7 +11744,7 @@ Yc Yc Yc aa -rk +rd aa aa aa @@ -11763,9 +11760,9 @@ aa aa aa aa -rk +rd Kb -rk +rd Kb sU aj @@ -11818,7 +11815,7 @@ Fa iT TW BM -jV +aQ Uo gG jV @@ -11852,7 +11849,7 @@ aa aa aa aa -rk +rd Yc Pw fU @@ -11860,15 +11857,15 @@ zA fU Yc aa -rk -rk -rk -rk -rk -rk -rk -rk -rk +rd +rd +rd +rd +rd +rd +rd +rd +rd nQ aa aa @@ -11964,7 +11961,7 @@ aa aa aa aa -rk +rd Yc Yc eA @@ -11990,7 +11987,7 @@ aa aa aa aa -rk +rd Kb Wk MG @@ -12078,9 +12075,9 @@ aa aa aa aa -rk -rk -rk +rd +rd +rd Yc AW KO @@ -12103,7 +12100,7 @@ aa aa aa aa -rk +rd Kb sU UZ @@ -12193,7 +12190,7 @@ aa aa aa aa -rk +rd Yc Yc lk @@ -12206,7 +12203,7 @@ Jw Jw Jw Jw -rk +rd aa aa OY @@ -12307,7 +12304,7 @@ aa aa aa aa -rk +rd Yc fU fU @@ -12319,8 +12316,8 @@ fU fU YC Yc -rk -rk +rd +rd aa uu Pm @@ -12433,7 +12430,7 @@ st Yc Yc aa -rk +rd aa uu NJ @@ -12998,7 +12995,7 @@ qC Yc Yc Yc -rk +rd aa aa aa @@ -13007,7 +13004,7 @@ aa aa aa rd -rk +rd Kb sU fg @@ -13232,7 +13229,7 @@ aa aa aa aa -PG +Kb IF Kb Wk @@ -13347,7 +13344,7 @@ aa aa rd Kb -rk +rd BK Wk HO @@ -13459,8 +13456,8 @@ aa aa aa rd -rk -rk +rd +rd Kb sU HO @@ -13500,18 +13497,18 @@ xW BU Dn cB -rk -rk -rk +rd +rd +rd xW aa -rk +rd Sq aa -rk -rk +rd +rd aa -rk +rd aa ZK Pu @@ -13550,7 +13547,7 @@ aa aa aa aa -rk +rd Yc Yc Yc @@ -13573,8 +13570,8 @@ aa aa aa rd -rk -rk +rd +rd Kb sU sU @@ -13614,17 +13611,17 @@ vP AE Rx sK -rk -rk +rd +rd xW -rk -rk -rk +rd +rd +rd aa aa -rk +rd aa -rk +rd aa ZK Pu @@ -13646,8 +13643,8 @@ aa aa aa aa -rk -rk +rd +rd aa aa "} @@ -13663,7 +13660,7 @@ aa aa aa aa -rk +rd IF Yc yz @@ -13686,9 +13683,9 @@ aa aa aa rd -rk -rk -rk +rd +rd +rd Kb sU sU @@ -13725,21 +13722,21 @@ AQ xE AO BT -rk +rd sq xV -rk +rd xW aa -rk -rk -rk -rk -rk -rk -rk -aa -ZK +rd +rd +rd +rd +rd +rd +rd +aa +ZK HI Ze jV @@ -13759,10 +13756,10 @@ aa aa aa aa -rk +rd aa -rk -rk +rd +rd "} (48,1,1) = {" aa @@ -13776,7 +13773,7 @@ aa aa aa aa -rk +rd IF Yc yz @@ -13807,8 +13804,8 @@ aa aa aa aa -rk -rk +rd +rd sU rr up @@ -13839,14 +13836,14 @@ Ar Ai ML Cf -rk +rd XA -rk +rd Lq Uu Ar Ar -rk +rd ia LB LB @@ -13871,7 +13868,7 @@ NW NW NW NW -rk +rd NW NW NW @@ -13921,8 +13918,8 @@ aa aa aa aa -rk -rk +rd +rd rr rr ab @@ -13958,12 +13955,12 @@ hY XA AM xs -rk -rk +rd +rd uQ Xv aa -rk +rd Xv Lq Pe @@ -13974,9 +13971,9 @@ aa aa aa aa -rk -rk -rk +rd +rd +rd BK aa aa @@ -13985,7 +13982,7 @@ aa aa aa aa -rk +rd aa aa NW @@ -14002,7 +13999,7 @@ aa aa aa aa -rk +rd IF Yc yz @@ -14035,7 +14032,7 @@ aa aa aa aa -rk +rd rr rr rr @@ -14071,12 +14068,12 @@ vz Bf rg sY -rk +rd DF -rk +rd XA XA -rk +rd XA Lq xk @@ -14085,7 +14082,7 @@ ZK Kb Kb BK -rk +rd aa BZ aa @@ -14115,7 +14112,7 @@ aa aa aa aa -rk +rd IF Yc yz @@ -14148,9 +14145,9 @@ aa aa aa aa -rk +rd aa -rk +rd rr rr rr @@ -14184,10 +14181,10 @@ gm Lq Lq jk -rk +rd hY -rk -rk +rd +rd DO DO DO @@ -14197,12 +14194,12 @@ vN jV NW aa -rk -rk -rk -rk -rk -rk +rd +rd +rd +rd +rd +rd aa aa aa @@ -14228,7 +14225,7 @@ aa aa aa aa -rk +rd IF Yc yz @@ -14253,17 +14250,17 @@ aa aa aa aa -rk -rk +rd +rd aa aa aa aa aa aa -rk +rd aa -rk +rd wv AX KB @@ -14295,13 +14292,13 @@ RP Ib JF Lq -rk +rd ZJ Sv pB sH MA -rk +rd DF zY Lq @@ -14310,12 +14307,12 @@ vN jV NW aa -rk +rd aa -rk +rd aa -rk -rk +rd +rd mR aa aa @@ -14372,11 +14369,11 @@ aa aa aa aa -rk +rd aa -rk -rk -rk +rd +rd +rd Mj MT QR @@ -14403,10 +14400,10 @@ Ay Qr Qr Rv -rk -rk -rk -rk +rd +rd +rd +rd Lq Cf mS @@ -14424,7 +14421,7 @@ jV NW aa mR -rk +rd hK mR yt @@ -14454,7 +14451,7 @@ aa aa aa aa -rk +rd IF Yc yz @@ -14478,16 +14475,16 @@ aa aa aa aa -rk -rk +rd +rd aa aa aa aa aa GI -rk -rk +rd +rd aa aa Mj @@ -14509,7 +14506,7 @@ zX Uj Uj CP -rk +rd aw OK vi @@ -14517,8 +14514,8 @@ OK Lq xN Yf -rk -rk +rd +rd uG Lq Wy @@ -14594,14 +14591,14 @@ GI aa Nk GI -rk -rk +rd +rd aa aa -rk +rd aa -rk -rk +rd +rd aa Mj pT @@ -14623,15 +14620,15 @@ Mt Xy Su OK -rk -rk +rd +rd OK vi Lq xN om vI -rk +rd uG Qr zY @@ -14666,7 +14663,7 @@ aa vE aa aa -rk +rd "} (56,1,1) = {" aa @@ -14680,7 +14677,7 @@ aa aa aa aa -rk +rd IF Yc yz @@ -14705,13 +14702,13 @@ aa aa GI gQ -rk +rd aa aa -rk +rd aa aa -rk +rd aa aa aa @@ -14737,7 +14734,7 @@ Xm CP il Uj -rk +rd Ir Ir Lq @@ -14824,7 +14821,7 @@ aa aa aa aa -rk +rd aa aa aa @@ -14848,7 +14845,7 @@ NT Cy YZ Th -rk +rd Tt Ir Ir @@ -14906,7 +14903,7 @@ aa aa aa aa -rk +rd IF Yc yz @@ -14936,8 +14933,8 @@ aa aa aa aa -rk -rk +rd +rd aa aa aa @@ -14954,10 +14951,10 @@ tT yl yl TC -rk -rk -rk -rk +rd +rd +rd +rd NT vQ ZL @@ -14968,9 +14965,9 @@ vi aa oU IF -rk -rk -rk +rd +rd +rd ZK VO CV @@ -15005,7 +15002,7 @@ uz vE uz aa -rk +rd "} (59,1,1) = {" aa @@ -15019,7 +15016,7 @@ aa aa aa aa -rk +rd IF Yc yz @@ -15048,9 +15045,9 @@ De aa aa aa -rk -rk -rk +rd +rd +rd aa aa aa @@ -15067,10 +15064,10 @@ tT DM yl wv -rk -rk -rk -rk +rd +rd +rd +rd Cy tb Qi @@ -15080,10 +15077,10 @@ il vi aa aa -rk +rd Gf aa -rk +rd ZK ZK ZK @@ -15115,24 +15112,24 @@ aa aa aa aa -rk +rd aa aa -rk +rd "} (60,1,1) = {" aa aa aa -rk -rk +rd +rd aa aa -rk -rk +rd +rd aa aa -rk +rd Kb Yc yz @@ -15180,21 +15177,21 @@ wv pT xd TC -rk -rk -rk -rk +rd +rd +rd +rd IF tb TB tb IF IF -rk +rd aa aa aa -rk +rd aa aa Gf @@ -15225,24 +15222,24 @@ NW NW NW NW -rk +rd NW NW -rk -rk +rd +rd NW -rk +rd "} (61,1,1) = {" aa aa aa -rk +rd NW NW NW NW -rk +rd aa aa aa @@ -15293,21 +15290,21 @@ XV iF cf wv -rk -rk +rd +rd aa aa -rk +rd GA tK rM GA -rk +rd aa aa AC -rk -rk +rd +rd aa aa Gf @@ -15334,31 +15331,31 @@ sz AK AK AK -rk +rd aa aa aa aa aa aa -rk -rk -rk +rd +rd +rd aa "} (62,1,1) = {" -rk -rk +rd +rd aa aa -rk +rd aa aa NW aa aa aa -rk +rd IF Yc yz @@ -15410,7 +15407,7 @@ aa aa aa aa -rk +rd GA kt rM @@ -15419,11 +15416,11 @@ aa aa aa aa -rk +rd GI aa -rk -rk +rd +rd aa aa aa @@ -15447,7 +15444,7 @@ mR mR mR mR -rk +rd aa aa aa @@ -15460,18 +15457,18 @@ aa aa "} (63,1,1) = {" -rk +rd aa nD ri bP -rk -rk +rd +rd NW aa aa aa -rk +rd IF Yc yz @@ -15513,16 +15510,16 @@ yR xd wv wv -rk +rd XW cu th XW -rk -rk -rk -rk -rk +rd +rd +rd +rd +rd IF tb IX @@ -15532,10 +15529,10 @@ aa aa aa aa -rk -rk -rk -rk +rd +rd +rd +rd aa aa aa @@ -15560,7 +15557,7 @@ AK AK sz sz -rk +rd aa aa aa @@ -15584,7 +15581,7 @@ NW aa aa aa -rk +rd IF Yc yz @@ -15625,18 +15622,18 @@ xd UM AX wv -rk -rk +rd +rd Uv xT xY OO -rk +rd aa -rk +rd aa aa -rk +rd LV EV PO @@ -15646,8 +15643,8 @@ aa aa aa aa -rk -rk +rd +rd aa aa aa @@ -15673,8 +15670,8 @@ mR mR mR mR -rk -rk +rd +rd aa aa aa @@ -15694,10 +15691,10 @@ bP aa aa NW -rk -rk -rk -rk +rd +rd +rd +rd IF Yc yz @@ -15746,7 +15743,7 @@ IN Uv aa aa -rk +rd aa aa IF @@ -15759,8 +15756,8 @@ aa aa aa aa -rk -rk +rd +rd aa aa aa @@ -15779,15 +15776,15 @@ aa jV Ez yX -rk -rk +rd +rd aa -rk +rd aa -rk -rk +rd +rd aa -rk +rd aa aa aa @@ -15851,7 +15848,7 @@ VD VD wv wv -rk +rd aa OO QI @@ -15862,17 +15859,17 @@ aa GI aa aa -rk +rd aa GA PO GA -rk -rk -rk +rd +rd +rd aa aa -rk +rd aa aa aa @@ -15892,14 +15889,14 @@ aa jV ZT yX -rk +rd aa aa -rk +rd aa aa -rk -rk +rd +rd to aa aa @@ -15964,7 +15961,7 @@ iS Kb aa aa -rk +rd aa OO QI @@ -15975,7 +15972,7 @@ aa aa aa aa -rk +rd aa tb dS @@ -15984,9 +15981,9 @@ aa aa aa aa -rk -rk -rk +rd +rd +rd aa aa aa @@ -16003,14 +16000,14 @@ aa aa aa jV -rk +rd yX -rk +rd aa -rk -rk +rd +rd aa -rk +rd aa aa aa @@ -16073,9 +16070,9 @@ Pc Db IL Aw -rk +rd Dr -rk +rd aa XW XW @@ -16088,7 +16085,7 @@ XW aa aa aa -rk +rd aa tb zs @@ -16096,8 +16093,8 @@ tb aa aa aa -rk -rk +rd +rd aa aa aa @@ -16115,15 +16112,15 @@ aa aa aa yM -rk -rk -rk -rk +rd +rd +rd +rd aa -rk +rd aa aa -rk +rd aa aa aa @@ -16184,7 +16181,7 @@ Jz JC Zv Rs -rk +rd vY pt Dr @@ -16202,16 +16199,16 @@ aa aa aa IF -rk +rd GA BP GA aa aa -rk +rd BZ -rk -rk +rd +rd aa aa aa @@ -16230,13 +16227,13 @@ aa aa Fu aa -rk +rd aa aa -rk +rd aa aa -rk +rd aa aa aa @@ -16299,7 +16296,7 @@ FQ sa Hu IL -rk +rd Wx aa Lx @@ -16314,7 +16311,7 @@ XW TI XW aa -rk +rd aa tb TB @@ -16324,10 +16321,10 @@ aa aa BZ aa -rk -rk -rk -rk +rd +rd +rd +rd AC aa aa @@ -16341,16 +16338,16 @@ aa aa aa aa -rk +rd aa -rk +rd aa aa -rk -rk -rk -rk -rk +rd +rd +rd +rd +rd aa aa aa @@ -16412,7 +16409,7 @@ dx Bg Wm Ol -rk +rd An aa uF @@ -16427,16 +16424,16 @@ wD Xd XW aa -rk +rd aa tb za GA aa aa -rk -rk -rk +rd +rd +rd aa aa aa @@ -16454,15 +16451,15 @@ aa aa aa aa -rk -rk -rk +rd +rd +rd aa aa aa aa aa -rk +rd aa aa aa @@ -16477,7 +16474,7 @@ aa aa "} (72,1,1) = {" -rk +rd aa bP ri @@ -16547,8 +16544,8 @@ pd GA aa aa -rk -rk +rd +rd aa aa aa @@ -16567,15 +16564,15 @@ aa aa aa aa -rk +rd aa aa aa aa aa aa -rk -rk +rd +rd aa aa aa @@ -16590,7 +16587,7 @@ aa aa "} (73,1,1) = {" -rk +rd aa bP ri @@ -16635,7 +16632,7 @@ Qd SE rl IF -rk +rd aa aa aa @@ -16654,7 +16651,7 @@ dO Sw IF IF -rk +rd GA TB GA @@ -16671,23 +16668,23 @@ aa aa aa aa -rk +rd aa aa aa -rk +rd aa aa aa -rk -rk +rd +rd aa aa aa aa -rk -rk -rk +rd +rd +rd aa aa aa @@ -16784,23 +16781,23 @@ Dh aa aa aa -rk +rd aa aa aa -rk +rd aa aa -rk -rk +rd +rd aa -rk -rk -rk +rd +rd +rd aa aa aa -rk +rd aa aa aa @@ -16824,10 +16821,10 @@ bP aa aa NW -rk +rd NW NW -rk +rd NW NW NW @@ -16843,13 +16840,13 @@ dT IF IF IF -rk +rd aa aa aa aa aa -rk +rd Bw rl Ae @@ -16894,27 +16891,27 @@ or Be XM zm -rk -rk -rk -rk -rk -rk -rk -rk -rk -rk -rk -rk -rk -rk +rd +rd +rd +rd +rd +rd +rd +rd +rd +rd +rd +rd +rd +rd aa to -rk -rk -rk -rk -rk +rd +rd +rd +rd +rd to aa aa @@ -16940,7 +16937,7 @@ NW aa aa aa -rk +rd aa aa aa @@ -16949,21 +16946,21 @@ aa aa aa aa -rk +rd dT Ad dT aa aa -rk -rk +rd +rd aa aa aa aa aa aa -rk +rd rl GV GV @@ -16974,7 +16971,7 @@ GV GV rl Bw -rk +rd aa IF IF @@ -17010,13 +17007,13 @@ cb aa aa aa -rk +rd aa aa aa -rk -rk -rk +rd +rd +rd aa aa aa @@ -17024,7 +17021,7 @@ aa aa aa aa -rk +rd aa aa aa @@ -17047,8 +17044,8 @@ aa bP ri bP -rk -rk +rd +rd NW aa aa @@ -17062,11 +17059,11 @@ aa aa aa aa -rk +rd aa aa -rk -rk +rd +rd aa aa aa @@ -17077,17 +17074,17 @@ aa aa aa aa -rk -rk +rd +rd aa aa aa aa AC aa -rk +rd aa -rk +rd aa IF IF @@ -17123,13 +17120,13 @@ Gf aa aa aa -rk +rd aa aa aa -rk +rd aa -rk +rd aa aa aa @@ -17159,11 +17156,11 @@ NW aa aa aa -rk +rd aa aa -rk -rk +rd +rd aa aa aa @@ -17199,7 +17196,7 @@ aa aa aa aa -rk +rd aa aa Kb @@ -17242,7 +17239,7 @@ aa aa uq aa -rk +rd aa aa aa @@ -17272,11 +17269,11 @@ NW NW NW NW -rk +rd NW NW NW -rk +rd aa aa aa @@ -17355,7 +17352,7 @@ aa IF NW NW -rk +rd aa aa aa @@ -17381,14 +17378,14 @@ aa aa "} (80,1,1) = {" -rk +rd aa aa aa aa -rk -rk -rk +rd +rd +rd aa aa aa @@ -17468,7 +17465,7 @@ NW NW NW aa -rk +rd aa aa aa @@ -17580,8 +17577,8 @@ IF aa IF aa -rk -rk +rd +rd aa aa aa @@ -17653,7 +17650,7 @@ aa aa aa aa -rk +rd IF IF IF @@ -17661,7 +17658,7 @@ IF IF IF IF -rk +rd aa aa aa @@ -17693,8 +17690,8 @@ Kb Kb Kb Kb -rk -rk +rd +rd aa aa aa @@ -17766,15 +17763,15 @@ aa aa aa aa -rk -rk +rd +rd aa aa aa aa aa -rk -rk +rd +rd aa aa aa @@ -17807,7 +17804,7 @@ NW NW NW aa -rk +rd aa aa aa diff --git a/_maps/RandomRuins/SpaceRuins/space_ghost_restaurant.dmm b/_maps/RandomRuins/SpaceRuins/space_ghost_restaurant.dmm index ad0c72415948a1..fb9745de0ce2d7 100644 --- a/_maps/RandomRuins/SpaceRuins/space_ghost_restaurant.dmm +++ b/_maps/RandomRuins/SpaceRuins/space_ghost_restaurant.dmm @@ -29,7 +29,7 @@ "eb" = ( /obj/item/shard, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "en" = ( /obj/machinery/power/smes/magical{ desc = "A high-capacity superconducting magnetic energy storage (SMES) unit."; @@ -60,11 +60,11 @@ "hp" = ( /obj/item/stack/rods, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "iF" = ( /obj/item/stack/sheet/iron, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "jd" = ( /obj/item/stack/sheet/iron, /turf/open/floor/plating/airless, @@ -148,7 +148,7 @@ "Bv" = ( /obj/structure/broken_flooring/singular/directional/south, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "BA" = ( /obj/effect/decal/cleanable/blood/gibs/robot_debris, /obj/effect/decal/cleanable/glass, @@ -236,7 +236,7 @@ "Ng" = ( /obj/item/stack/tile/iron/showroomfloor, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Ns" = ( /obj/item/chair, /obj/item/clothing/head/utility/surgerycap, @@ -272,7 +272,7 @@ "Rm" = ( /obj/item/circuitboard/machine/restaurant_portal, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "RI" = ( /obj/effect/decal/cleanable/shreds, /turf/open/floor/iron/cafeteria/airless, diff --git a/_maps/RandomRuins/SpaceRuins/spacehotel.dmm b/_maps/RandomRuins/SpaceRuins/spacehotel.dmm index e18683a8334035..e8448c8a047195 100644 --- a/_maps/RandomRuins/SpaceRuins/spacehotel.dmm +++ b/_maps/RandomRuins/SpaceRuins/spacehotel.dmm @@ -137,14 +137,12 @@ /obj/effect/turf_decal/siding/wood{ dir = 8 }, -/obj/machinery/button/door/directional/south{ - id = "a5"; - name = "privacy button"; - pixel_y = 24 - }, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 }, +/obj/machinery/button/door/directional/north{ + id = "a5" + }, /turf/open/floor/carpet/purple, /area/ruin/space/has_grav/hotel/guestroom/room_5) "by" = ( @@ -356,7 +354,7 @@ pixel_y = 17 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "dK" = ( /obj/structure/frame/computer{ dir = 1 @@ -579,17 +577,14 @@ /turf/open/floor/iron/grimy, /area/ruin/space/has_grav/hotel/bar) "gv" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 1 - }, -/obj/structure/sign/warning/fire{ - desc = "A sign that states the labeled room's number."; - icon_state = "roomnum"; - name = "Room Number 1"; - pixel_y = -24 +/obj/machinery/light/small/directional/south, +/obj/machinery/button{ + id = "hcb2"; + name = "shutters control"; + pixel_y = -25 }, -/turf/open/floor/wood/tile, -/area/ruin/space/has_grav/hotel) +/turf/open/floor/catwalk_floor, +/area/ruin/space/has_grav/hotel/dock) "gB" = ( /obj/structure/sign/poster/contraband/random/directional/north, /turf/open/floor/carpet/black, @@ -634,16 +629,15 @@ /turf/open/floor/wood/tile, /area/ruin/space/has_grav/hotel) "hg" = ( -/obj/effect/turf_decal/siding/wood, /obj/structure/sign/warning/fire{ desc = "A sign that states the labeled room's number."; dir = 10; icon_state = "roomnum"; name = "Room Number 6"; - pixel_y = 24 + pixel_y = -5 }, -/turf/open/floor/wood/tile, -/area/ruin/space/has_grav/hotel) +/turf/closed/wall, +/area/ruin/space/has_grav/hotel/guestroom/room_6) "hh" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -1160,7 +1154,7 @@ pixel_y = 17 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "lf" = ( /obj/structure/window/spawner/directional/north, /obj/machinery/shower/directional/south, @@ -1197,7 +1191,7 @@ pixel_y = 17 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "lw" = ( /obj/item/storage/toolbox/mechanical, /turf/open/floor/plating, @@ -1205,7 +1199,7 @@ "lB" = ( /obj/structure/fluff/tram_rail, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "lE" = ( /obj/machinery/light/directional/east, /turf/open/floor/iron/grimy, @@ -1239,7 +1233,6 @@ /obj/effect/turf_decal/siding/white{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/sepia, /area/ruin/space/has_grav/hotel/pool) @@ -1281,7 +1274,7 @@ dir = 8 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "mj" = ( /obj/structure/chair/sofa/right/brown{ dir = 4 @@ -1543,7 +1536,7 @@ /obj/structure/fluff/tram_rail, /obj/structure/lattice/catwalk, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ot" = ( /obj/structure/table/wood/fancy/red, /obj/item/paper_bin, @@ -1573,7 +1566,7 @@ }, /obj/structure/fluff/tram_rail, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "po" = ( /obj/structure/fluff/beach_umbrella/syndi, /turf/open/misc/beach/sand, @@ -1666,7 +1659,7 @@ pixel_y = 17 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "qF" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -1686,7 +1679,7 @@ pixel_y = 17 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "qM" = ( /turf/open/floor/wood/parquet, /area/ruin/space/has_grav/hotel/guestroom/room_1) @@ -1897,7 +1890,6 @@ }, /obj/effect/turf_decal/siding/white, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/sepia, /area/ruin/space/has_grav/hotel/pool) "tj" = ( @@ -1929,16 +1921,13 @@ /turf/open/floor/carpet/blue, /area/ruin/space/has_grav/hotel) "tW" = ( -/obj/effect/turf_decal/siding/wood, -/obj/structure/sign/warning/fire{ - desc = "A sign that states the labeled room's number."; - dir = 8; - icon_state = "roomnum"; - name = "Room Number 4"; - pixel_y = 24 +/obj/machinery/button{ + id = "hcb2"; + name = "shutters control"; + pixel_y = 8 }, -/turf/open/floor/wood/tile, -/area/ruin/space/has_grav/hotel) +/turf/closed/wall, +/area/ruin/space/has_grav/hotel/dock) "ua" = ( /obj/effect/turf_decal/siding/wood, /obj/machinery/light/small/directional/south, @@ -2019,10 +2008,8 @@ /obj/effect/turf_decal/siding/wood{ dir = 4 }, -/obj/machinery/button/door/directional/south{ - id = "a3"; - name = "privacy button"; - pixel_y = 24 +/obj/machinery/button/door/directional/north{ + id = "a3" }, /turf/open/floor/carpet/red, /area/ruin/space/has_grav/hotel/guestroom/room_3) @@ -2102,7 +2089,8 @@ id = "hcb1"; name = "shutters control"; pixel_x = 26; - pixel_y = 8 + pixel_y = 8; + dir = 4 }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -2326,8 +2314,6 @@ /area/ruin/space/has_grav/hotel/pool) "xS" = ( /obj/item/beacon, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/ruin/space/has_grav/hotel/dock) "xZ" = ( @@ -2393,7 +2379,7 @@ "yB" = ( /obj/structure/lattice/catwalk, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "yD" = ( /obj/structure/sink/directional/west, /obj/machinery/firealarm/directional/north, @@ -2432,7 +2418,7 @@ "yV" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "yY" = ( /obj/effect/turf_decal/siding/wood, /turf/open/floor/wood/tile, @@ -2449,12 +2435,6 @@ /area/ruin/space/has_grav/hotel/power) "zr" = ( /obj/effect/turf_decal/loading_area, -/obj/machinery/button{ - id = "hcb2"; - name = "shutters control"; - pixel_x = -25; - pixel_y = 8 - }, /turf/open/floor/iron/dark, /area/ruin/space/has_grav/hotel/dock) "zy" = ( @@ -2588,6 +2568,13 @@ /obj/machinery/vending/coffee, /turf/open/floor/iron/dark, /area/ruin/space/has_grav/hotel) +"BP" = ( +/obj/machinery/button{ + id = "hcd1"; + name = "shutters control" + }, +/turf/closed/wall, +/area/ruin/space/has_grav/hotel/dock) "BU" = ( /obj/structure/cable, /turf/open/floor/circuit/green, @@ -2901,7 +2888,7 @@ /obj/structure/lattice, /obj/structure/grille, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "FT" = ( /turf/open/floor/iron/dark/side, /area/ruin/space/has_grav/hotel/dock) @@ -3123,7 +3110,7 @@ /obj/structure/lattice, /obj/structure/grille/broken, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Iq" = ( /obj/item/kirbyplants/organic/plant16, /obj/structure/sign/poster/random/directional/west, @@ -3176,7 +3163,7 @@ "IZ" = ( /obj/structure/fluff/tram_rail/end, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Je" = ( /obj/structure/cable, /obj/item/reagent_containers/cup/bucket, @@ -3397,18 +3384,14 @@ /turf/open/floor/iron/showroomfloor, /area/ruin/space/has_grav/hotel/guestroom/room_2) "MY" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 8 - }, -/obj/structure/table/wood/fancy/red, -/obj/structure/window/reinforced/tinted/frosted/spawner/directional/east, -/obj/machinery/button/door/directional/north{ - id = "a2"; - name = "privacy button"; - pixel_y = -24 +/obj/structure/sign/warning/fire{ + desc = "A sign that states the labeled room's number."; + icon_state = "roomnum"; + name = "Room Number 5"; + dir = 5 }, -/turf/open/floor/carpet/green, -/area/ruin/space/has_grav/hotel/guestroom/room_2) +/turf/closed/wall, +/area/ruin/space/has_grav/hotel/guestroom/room_5) "Ne" = ( /obj/effect/turf_decal/loading_area, /obj/machinery/light/small/directional/east, @@ -3429,23 +3412,22 @@ /turf/open/floor/carpet/blue, /area/ruin/space/has_grav/hotel) "ND" = ( -/obj/machinery/button{ - id = "hcd1"; - name = "shutters control"; - pixel_x = -25; - pixel_y = -25 +/obj/structure/sign/warning/fire{ + desc = "A sign that states the labeled room's number."; + dir = 8; + icon_state = "roomnum"; + name = "Room Number 4" }, -/turf/open/floor/iron/dark/side, -/area/ruin/space/has_grav/hotel/dock) +/turf/closed/wall, +/area/ruin/space/has_grav/hotel/guestroom/room_4) "NG" = ( -/obj/machinery/button{ - id = "hcb2"; - name = "shutters control"; - pixel_x = -25; - pixel_y = -25 +/obj/structure/sign/warning/fire{ + desc = "A sign that states the labeled room's number."; + icon_state = "roomnum"; + name = "Room Number 1" }, -/turf/open/floor/catwalk_floor, -/area/ruin/space/has_grav/hotel/dock) +/turf/closed/wall, +/area/ruin/space/has_grav/hotel/guestroom/room_1) "NJ" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -3626,7 +3608,6 @@ /obj/effect/turf_decal/siding/white{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/sepia, /area/ruin/space/has_grav/hotel/pool) @@ -3891,18 +3872,15 @@ /turf/open/floor/iron/cafeteria, /area/ruin/space/has_grav/hotel/bar) "Tq" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 1 - }, /obj/structure/sign/warning/fire{ desc = "A sign that states the labeled room's number."; - dir = 6; + dir = 1; icon_state = "roomnum"; - name = "Room Number 5"; - pixel_y = -24 + name = "Room Number 2"; + pixel_y = -10 }, -/turf/open/floor/wood/tile, -/area/ruin/space/has_grav/hotel) +/turf/closed/wall, +/area/ruin/space/has_grav/hotel/guestroom/room_2) "Ts" = ( /turf/open/floor/carpet/purple, /area/ruin/space/has_grav/hotel/guestroom/room_5) @@ -3918,18 +3896,15 @@ /turf/template_noop, /area/ruin/space/has_grav/hotel) "TG" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 1 - }, /obj/structure/sign/warning/fire{ desc = "A sign that states the labeled room's number."; dir = 4; icon_state = "roomnum"; name = "Room Number 3"; - pixel_y = -24 + pixel_y = 10 }, -/turf/open/floor/wood/tile, -/area/ruin/space/has_grav/hotel) +/turf/closed/wall, +/area/ruin/space/has_grav/hotel/guestroom/room_3) "TH" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -4072,7 +4047,8 @@ id = "hcb1"; name = "shutters control"; pixel_x = -25; - pixel_y = 8 + pixel_y = 8; + dir = 8 }, /turf/open/floor/catwalk_floor, /area/ruin/space/has_grav/hotel/dock) @@ -4092,7 +4068,7 @@ pixel_y = 17 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "VM" = ( /obj/structure/table/reinforced/plastitaniumglass, /obj/machinery/power/apc/auto_name/directional/south, @@ -4369,12 +4345,9 @@ /area/ruin/space/has_grav/hotel/bar) "Yf" = ( /obj/effect/turf_decal/siding/wood, -/obj/structure/sign/warning/fire{ - desc = "A sign that states the labeled room's number."; - dir = 1; - icon_state = "roomnum"; - name = "Room Number 2"; - pixel_y = 24 +/obj/machinery/button/door/directional/north{ + id = "a2"; + pixel_y = 32 }, /turf/open/floor/wood/tile, /area/ruin/space/has_grav/hotel) @@ -4466,7 +4439,6 @@ "Zg" = ( /obj/effect/turf_decal/siding/white, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/sepia, /area/ruin/space/has_grav/hotel/pool) "Zl" = ( @@ -4483,7 +4455,7 @@ }, /obj/structure/fluff/tram_rail/end, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Zo" = ( /obj/structure/sink/directional/west, /turf/open/floor/iron/showroomfloor, @@ -5557,13 +5529,13 @@ ez Ka Xg XS -xI hg +yY Lj PF wr -Tq -LD +QH +MY bu lZ hO @@ -6579,13 +6551,13 @@ Fy On eR Gg -Hm -tW +ND +yY cf PF cf +QH TG -vy vx Xx Rl @@ -7256,9 +7228,9 @@ VV aC lW sh -Ct -VV +gv VV +tW iP jf jy @@ -7329,7 +7301,7 @@ VV hZ hE xd -NG +hZ LB zr nw @@ -7381,14 +7353,14 @@ WD CL Ml OS -MY -Ff +OS +Tq Yf cf PF cf -gv -BK +QH +NG Xw Bb SN @@ -8211,7 +8183,7 @@ VV lI xS FT -VV +BP VV Cl Cl @@ -8283,7 +8255,7 @@ nX hU lI KZ -ND +FT hB Jj Cl diff --git a/_maps/RandomRuins/SpaceRuins/the_faceoff.dmm b/_maps/RandomRuins/SpaceRuins/the_faceoff.dmm index 48844fb46b2253..6464c4901fd90b 100644 --- a/_maps/RandomRuins/SpaceRuins/the_faceoff.dmm +++ b/_maps/RandomRuins/SpaceRuins/the_faceoff.dmm @@ -37,7 +37,7 @@ /area/ruin/space) "aC" = ( /obj/effect/turf_decal/stripes/red/full, -/obj/machinery/light/small/built, +/obj/machinery/light/small/empty, /obj/item/light/bulb/broken, /turf/open/floor/iron/dark/smooth_large/airless, /area/ruin/space) diff --git a/_maps/RandomRuins/SpaceRuins/the_outlet.dmm b/_maps/RandomRuins/SpaceRuins/the_outlet.dmm index 6965d1acea398d..e9091081636508 100644 --- a/_maps/RandomRuins/SpaceRuins/the_outlet.dmm +++ b/_maps/RandomRuins/SpaceRuins/the_outlet.dmm @@ -534,7 +534,7 @@ "nM" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "od" = ( /turf/closed/wall/rust, /area/ruin/space/has_grav/the_outlet/storefront) @@ -1566,7 +1566,7 @@ "LA" = ( /obj/item/stack/rods/two, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "LL" = ( /mob/living/basic/construct/proteon/hostile, /obj/effect/decal/cleanable/crayon/rune2, diff --git a/_maps/RandomRuins/SpaceRuins/thelizardsgas.dmm b/_maps/RandomRuins/SpaceRuins/thelizardsgas.dmm index 05d7ab995c54f7..b62a9b01b05db4 100644 --- a/_maps/RandomRuins/SpaceRuins/thelizardsgas.dmm +++ b/_maps/RandomRuins/SpaceRuins/thelizardsgas.dmm @@ -41,7 +41,6 @@ "cm" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment{ dir = 10 }, @@ -223,7 +222,6 @@ /area/ruin/space/has_grav/thelizardsgas) "xy" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment{ dir = 4 }, @@ -234,7 +232,7 @@ desc = "An incredibly bad idea." }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "zn" = ( /obj/structure/rack, /obj/effect/spawner/random/food_or_drink/snack, @@ -377,7 +375,7 @@ /area/ruin/space/has_grav/thelizardsgas) "Kw" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible/layer2{ - dir = 1 + dir = 4 }, /obj/machinery/portable_atmospherics/scrubber, /turf/open/floor/plating, diff --git a/_maps/RandomRuins/SpaceRuins/turretedoutpost.dmm b/_maps/RandomRuins/SpaceRuins/turretedoutpost.dmm index cfb0424aeeebcb..e2efec50286e82 100644 --- a/_maps/RandomRuins/SpaceRuins/turretedoutpost.dmm +++ b/_maps/RandomRuins/SpaceRuins/turretedoutpost.dmm @@ -195,7 +195,7 @@ /obj/structure/lattice, /obj/structure/girder, /turf/open/floor/plating/rust/airless, -/area/template_noop) +/area/space/nearstation) "my" = ( /obj/effect/turf_decal/trimline/red/line{ dir = 8 @@ -307,7 +307,7 @@ "rK" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "sb" = ( /turf/open/floor/wood/parquet, /area/ruin/space/has_grav/turretedoutpost) diff --git a/_maps/RandomRuins/SpaceRuins/vaporwave.dmm b/_maps/RandomRuins/SpaceRuins/vaporwave.dmm index c98f098693458b..830bd7508ec9b7 100644 --- a/_maps/RandomRuins/SpaceRuins/vaporwave.dmm +++ b/_maps/RandomRuins/SpaceRuins/vaporwave.dmm @@ -5,7 +5,7 @@ "b" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "c" = ( /obj/structure/lattice, /turf/open/misc/asteroid/airless, diff --git a/_maps/RandomRuins/SpaceRuins/waystation.dmm b/_maps/RandomRuins/SpaceRuins/waystation.dmm index 336c57b1dc8646..c950663a8266a3 100644 --- a/_maps/RandomRuins/SpaceRuins/waystation.dmm +++ b/_maps/RandomRuins/SpaceRuins/waystation.dmm @@ -111,7 +111,7 @@ "dd" = ( /obj/structure/broken_flooring/pile/directional/west, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "dl" = ( /obj/machinery/door/airlock/mining/glass, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -277,7 +277,7 @@ pixel_y = 24 }, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 + dir = 8 }, /turf/open/floor/iron, /area/ruin/space/has_grav/waystation/cargobay) @@ -285,6 +285,11 @@ /obj/machinery/power/shuttle_engine/propulsion, /turf/open/floor/plating/airless, /area/ruin/space/has_grav/powered/waystation/assaultpod) +"fk" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/ruin/space/has_grav/waystation/cargobay) "fm" = ( /obj/machinery/conveyor{ dir = 1; @@ -316,9 +321,7 @@ dir = 8 }, /obj/effect/decal/cleanable/dirt, -/obj/structure/noticeboard/directional/north{ - dir = 2 - }, +/obj/structure/noticeboard/directional/north, /obj/item/paper/fluff/ruins/waystation/menu, /obj/item/paper/fluff/ruins/waystation/toilet, /turf/open/floor/iron, @@ -563,7 +566,7 @@ "kn" = ( /obj/structure/broken_flooring/pile/directional/north, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "ko" = ( /obj/machinery/door/airlock{ name = "Freezer" @@ -713,7 +716,7 @@ pixel_x = -6; pixel_y = 4 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 7; pixel_y = 9 }, @@ -825,7 +828,7 @@ width = 35 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "nQ" = ( /obj/effect/turf_decal/loading_area{ dir = 1 @@ -864,7 +867,6 @@ pixel_x = 12; pixel_y = 7 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/ruin/space/has_grav/waystation/cargobay) "or" = ( @@ -1155,6 +1157,13 @@ /obj/structure/reagent_dispensers/water_cooler, /turf/open/floor/iron, /area/ruin/space/has_grav/waystation/cargobay) +"se" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/grille, +/turf/open/floor/plating, +/area/ruin/space/has_grav/waystation/power) "su" = ( /obj/effect/turf_decal/tile/bar{ dir = 1 @@ -1220,6 +1229,7 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/structure/crate_abandoned, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/ruin/space/has_grav/waystation/cargobay) "ux" = ( @@ -1257,7 +1267,7 @@ "vi" = ( /obj/structure/girder, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "vn" = ( /obj/effect/turf_decal/siding/red{ dir = 1 @@ -1325,7 +1335,7 @@ "wf" = ( /obj/item/stack/rods/two, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "wj" = ( /obj/machinery/vending/cigarette, /obj/effect/turf_decal/siding/green, @@ -1381,7 +1391,7 @@ "xi" = ( /obj/structure/broken_flooring/pile/directional/east, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "xq" = ( /obj/machinery/conveyor{ dir = 1; @@ -1499,6 +1509,7 @@ /obj/effect/turf_decal/bot, /obj/effect/decal/cleanable/dirt, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/ruin/space/has_grav/waystation/cargobay) "zd" = ( @@ -1564,6 +1575,14 @@ /obj/effect/spawner/random/structure/crate_abandoned, /turf/open/floor/iron, /area/ruin/space/has_grav/waystation/cargobay) +"AT" = ( +/obj/effect/turf_decal/tile/brown/half/contrasted{ + dir = 8 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/ruin/space/has_grav/waystation/cargobay) "AW" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -1580,9 +1599,7 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/noticeboard/directional/west{ - dir = 4 - }, +/obj/structure/noticeboard/directional/west, /obj/item/paper/fluff/ruins/waystation/sop, /obj/structure/cable, /turf/open/floor/iron, @@ -1669,7 +1686,6 @@ /obj/effect/turf_decal/tile/brown/half/contrasted{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/light/dim/directional/west, /turf/open/floor/iron, /area/ruin/space/has_grav/waystation/cargobay) @@ -1700,11 +1716,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/ruin/space/has_grav/waystation) -"Ee" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/ruin/space/has_grav/waystation/cargobay) "Eh" = ( /obj/effect/turf_decal/tile/brown/half/contrasted, /obj/structure/filingcabinet, @@ -1843,7 +1854,7 @@ }, /obj/effect/mapping_helpers/broken_floor, /obj/item/light/tube/broken, -/obj/machinery/light/built/directional/east, +/obj/machinery/light/empty/directional/east, /turf/open/floor/iron, /area/ruin/space/has_grav/waystation/cargooffice) "HH" = ( @@ -2398,7 +2409,7 @@ /area/ruin/space/has_grav/waystation/cargooffice) "Qx" = ( /obj/structure/table, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/item/stamp/denied{ pixel_x = 8 }, @@ -2525,7 +2536,7 @@ "Tl" = ( /obj/item/shell/airlock, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Tx" = ( /obj/effect/turf_decal/siding/brown{ dir = 8 @@ -2601,7 +2612,9 @@ /turf/closed/wall, /area/ruin/space/has_grav/waystation/cargooffice) "UH" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/ruin/space/has_grav/waystation/cargobay) @@ -4732,7 +4745,7 @@ pK pK Br yg -Mu +se Mu Mu yg @@ -4993,7 +5006,7 @@ Vb Vb Bq jH -Vb +AT Xr rn Vb @@ -5052,11 +5065,11 @@ Jf gu bW Jy -Xa +fk Ko -GI +bW hH -Xa +fk AJ bW kc @@ -5064,7 +5077,7 @@ bW Ko Xa ut -Ee +Xa CN Xa GN @@ -5114,11 +5127,11 @@ LW gu Xa Ko -Xa +fk Kn -GI +bW Kn -Xa +fk CN Xa vy @@ -5126,7 +5139,7 @@ bW Ko bW zc -Ee +Xa Kn Xa zI @@ -5177,8 +5190,8 @@ bW Xa Kn UH -KI -GI +Ko +bW oo fd ka diff --git a/_maps/RandomRuins/SpaceRuins/whiteshipdock.dmm b/_maps/RandomRuins/SpaceRuins/whiteshipdock.dmm index 963815016df09e..231a679be8646d 100644 --- a/_maps/RandomRuins/SpaceRuins/whiteshipdock.dmm +++ b/_maps/RandomRuins/SpaceRuins/whiteshipdock.dmm @@ -5,7 +5,7 @@ "b" = ( /obj/docking_port/stationary/picked/whiteship, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) (1,1,1) = {" a diff --git a/_maps/RandomRuins/SpaceRuins/whiteshipruin_box.dmm b/_maps/RandomRuins/SpaceRuins/whiteshipruin_box.dmm index 12bc608bda910e..3f430bc63d8def 100644 --- a/_maps/RandomRuins/SpaceRuins/whiteshipruin_box.dmm +++ b/_maps/RandomRuins/SpaceRuins/whiteshipruin_box.dmm @@ -5,7 +5,7 @@ pixel_x = 9 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "aw" = ( /obj/effect/decal/cleanable/glass/plastitanium, /turf/open/floor/mineral/titanium/white/airless, @@ -987,7 +987,7 @@ pixel_x = 8 }, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "FX" = ( /obj/effect/turf_decal/tile/blue/half/contrasted, /obj/machinery/sleeper{ diff --git a/_maps/RandomZLevels/SnowCabin.dmm b/_maps/RandomZLevels/SnowCabin.dmm index 95b96c5f4b340c..a190ac27e3e198 100644 --- a/_maps/RandomZLevels/SnowCabin.dmm +++ b/_maps/RandomZLevels/SnowCabin.dmm @@ -1530,9 +1530,9 @@ /turf/open/floor/carpet, /area/awaymission/cabin/caves/mountain) "hL" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/snow, -/area/awaymission/cabin/caves/mountain) +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/misc/ice/smooth, +/area/awaymission/cabin/caves) "hM" = ( /turf/closed/wall/mineral/snow, /area/awaymission/cabin/caves/mountain) @@ -1659,7 +1659,8 @@ /area/awaymission/cabin/caves) "iP" = ( /obj/structure/sign/picture_frame{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/wood, /area/awaymission/cabin/caves) @@ -2484,8 +2485,11 @@ /turf/closed/indestructible/syndicate, /area/awaymission/cabin/caves/sovietcave) "no" = ( -/obj/structure/sign/warning, -/turf/closed/indestructible/syndicate, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/warning/directional/south, +/turf/open/floor/mineral/plastitanium/red{ + name = "soviet floor" + }, /area/awaymission/cabin/caves/sovietcave) "np" = ( /turf/closed/indestructible/fakedoor{ @@ -2842,6 +2846,14 @@ }, /turf/open/misc/asteroid/snow/snow_cabin, /area/awaymission/cabin/caves) +"qx" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/spider/stickyweb, +/obj/structure/sign/warning/directional/south, +/turf/open/floor/mineral/plastitanium/red{ + name = "soviet floor" + }, +/area/awaymission/cabin/caves/sovietcave) "qz" = ( /obj/effect/light_emitter{ set_cap = 3; @@ -3587,10 +3599,8 @@ /turf/open/floor/plating/snowed/snow_cabin, /area/awaymission/cabin/snowforest/sovietsurface) "yJ" = ( -/obj/structure/sign/poster/contraband/free_drone{ - desc = "This poster seems to be meant for a bunch of machines that used to be deployed on space stations." - }, /obj/effect/turf_decal/tile/blue/fourcorners, +/obj/structure/sign/poster/contraband/free_drone/directional/west, /turf/open/indestructible, /area/awaymission/cabin/caves/mountain) "yP" = ( @@ -4042,6 +4052,13 @@ }, /turf/open/floor/plating/snowed, /area/awaymission/cabin/snowforest) +"EK" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/warning/directional/north, +/turf/open/floor/mineral/plastitanium/red{ + name = "soviet floor" + }, +/area/awaymission/cabin/caves/sovietcave) "EL" = ( /obj/machinery/light/directional/east, /obj/effect/decal/cleanable/dirt, @@ -4140,6 +4157,10 @@ /obj/structure/flora/tree/pine/style_random, /turf/open/misc/asteroid/snow/snow_cabin, /area/awaymission/cabin/caves) +"Gf" = ( +/obj/structure/sign/poster/official/soft_cap_pop_art/directional/north, +/turf/open/floor/wood, +/area/awaymission/cabin) "Gk" = ( /obj/structure/closet/crate/bin, /obj/machinery/light/small/directional/east, @@ -5525,16 +5546,12 @@ /turf/open/floor/plating/snowed/smoothed, /area/awaymission/cabin/caves) "Zb" = ( -/obj/structure/fence{ - dir = 4 - }, -/obj/structure/sign/nanotrasen, /obj/effect/light_emitter{ set_cap = 3; set_luminosity = 6; light_color = "#9bbbff" }, -/turf/open/misc/asteroid/snow/snow_cabin, +/turf/closed/wall, /area/awaymission/cabin/caves) "Zf" = ( /obj/structure/fence{ @@ -5575,6 +5592,16 @@ /obj/machinery/light/directional/south, /turf/open/floor/wood/freezing, /area/awaymission/cabin/lumbermill) +"ZZ" = ( +/obj/effect/light_emitter{ + name = "cave light"; + set_cap = 3; + set_luminosity = 6; + light_color = "#9bbbff" + }, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/misc/asteroid/snow/snow_cabin, +/area/awaymission/cabin/caves) (1,1,1) = {" ab @@ -17112,7 +17139,7 @@ vh vh vh Zb -Su +ZZ oz oz oz @@ -18911,7 +18938,7 @@ vh vh vh Zb -Su +ZZ oz oz oz @@ -29121,8 +29148,8 @@ Yp aA jj an -eg aq +eg an cN aq @@ -29378,8 +29405,8 @@ an an an an -ct -aq +Gf +eg an jE aq @@ -29635,8 +29662,8 @@ sG au ji an -eg -bh +aq +ht an cO cO @@ -48283,12 +48310,12 @@ gx gx gx gx +hM hL PV PV PV PV -PV Oe Oe Oe @@ -49311,12 +49338,12 @@ gx gx gx gx +hM hL PV PV PV PV -PV gx gx gx @@ -68750,10 +68777,10 @@ gx gx gx gx +ii +EK no -im -im -no +ii gx gx gx @@ -69264,10 +69291,10 @@ gx gx gx gx -no -im -lS -no +ii +EK +qx +ii gx gx gx diff --git a/_maps/RandomZLevels/TheBeach.dmm b/_maps/RandomZLevels/TheBeach.dmm index 6b29a5e2fc5239..cc06de9ed5dce4 100644 --- a/_maps/RandomZLevels/TheBeach.dmm +++ b/_maps/RandomZLevels/TheBeach.dmm @@ -93,7 +93,7 @@ /turf/open/floor/wood, /area/awaymission/beach) "bg" = ( -/obj/structure/no_effect_signpost{ +/obj/structure/signpost{ pixel_y = 6; desc = "Northwest: Hotel. South: Seaside Bar. East: Dressing Rooms." }, diff --git a/_maps/RandomZLevels/caves.dmm b/_maps/RandomZLevels/caves.dmm index 9891aa74685ed4..f3f34b78b3f542 100644 --- a/_maps/RandomZLevels/caves.dmm +++ b/_maps/RandomZLevels/caves.dmm @@ -152,7 +152,7 @@ /area/awaymission/caves/bmp_asteroid/level_four) "ba" = ( /obj/structure/table/wood/fancy, -/obj/item/clothing/gloves/krav_maga/combatglovesplus, +/obj/item/clothing/gloves/kaza_ruk/combatglovesplus, /turf/open/floor/engine/cult, /area/awaymission/caves/bmp_asteroid/level_four) "bf" = ( @@ -1038,7 +1038,7 @@ /turf/open/misc/asteroid/basalt, /area/awaymission/caves/bmp_asteroid) "nw" = ( -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/structure/spider/stickyweb, /turf/open/floor/iron, /area/awaymission/caves/bmp_asteroid/level_two) @@ -1149,7 +1149,7 @@ desc = "A warning sign which warns of potential mech traffic to and from different levels of the mine."; name = "\improper MECH TUNNEL PASSAGE A2 TO B1" }, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /turf/open/misc/asteroid/basalt, /area/awaymission/caves/bmp_asteroid/level_two) "vR" = ( @@ -1190,7 +1190,7 @@ "yS" = ( /obj/structure/closet/crate, /obj/item/paper/fluff/awaymissions/caves/shipment_receipt, -/obj/item/gun/energy/laser, +/obj/item/gun/energy/laser/soul, /obj/item/slimepotion/fireproof, /obj/item/slimepotion/fireproof, /obj/item/clothing/glasses/thermal, @@ -1314,7 +1314,7 @@ /turf/open/floor/iron, /area/awaymission/caves/research) "FS" = ( -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /obj/structure/spider/stickyweb, /mob/living/basic/spider/giant/hunter/away_caves, /turf/open/floor/iron, @@ -1324,7 +1324,7 @@ /turf/open/misc/asteroid/basalt, /area/awaymission/caves/bmp_asteroid/level_two) "Gt" = ( -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /obj/machinery/suit_storage_unit/mining{ desc = "An industrial unit made to hold space suits. Age has seemed to rust the sliding door mechanisms, making it difficult to open."; name = "rusted suit storage unit" @@ -1347,7 +1347,7 @@ /turf/open/floor/iron, /area/awaymission/caves/research) "IE" = ( -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/structure/sign/warning/pods/directional/east{ desc = "A warning sign which warns of potential mech traffic to and from different levels of the mine."; name = "\improper MECH TUNNEL PASSAGE B1 TO A2" @@ -1397,7 +1397,7 @@ /turf/open/misc/asteroid/basalt, /area/awaymission/caves/bmp_asteroid/level_two) "Mk" = ( -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /turf/open/floor/wood, /area/awaymission/caves/northblock) "Mq" = ( @@ -1453,7 +1453,7 @@ }, /area/awaymission/caves/bmp_asteroid) "PS" = ( -/obj/machinery/light/small/built/directional/south, +/obj/machinery/light/small/empty/directional/south, /obj/machinery/suit_storage_unit/mining{ desc = "An industrial unit made to hold space suits. Age has seemed to rust the sliding door mechanisms, making it difficult to open."; name = "rusted suit storage unit" diff --git a/_maps/RandomZLevels/heretic.dmm b/_maps/RandomZLevels/heretic.dmm new file mode 100644 index 00000000000000..f69126634259d4 --- /dev/null +++ b/_maps/RandomZLevels/heretic.dmm @@ -0,0 +1,75414 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/obj/machinery/vending/sustenance, +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"af" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"ah" = ( +/obj/structure/statue/uranium/nuke, +/turf/open/floor/mineral/uranium, +/area/awaymission/beach/heretic) +"ai" = ( +/obj/effect/turf_decal/caution/stand_clear, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"ak" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"al" = ( +/obj/item/radio/intercom/mi13/directional/north, +/obj/effect/turf_decal/tile/dark/opposingcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"am" = ( +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/effect/mapping_helpers/airlock/access/all/admin, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"an" = ( +/obj/machinery/light/directional/west, +/obj/structure/closet/crate/secure/weapon{ + name = "p90 ammo crate" + }, +/obj/item/stack/sheet/cardboard/fifty, +/obj/effect/turf_decal/tile/dark/opposingcorners, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"ao" = ( +/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack{ + pixel_y = 9; + pixel_x = 15; + anchored = 1; + name = "Sam Site Missle rack" + }, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"aq" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/door_assembly/door_assembly_material, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"ar" = ( +/obj/structure/railing{ + dir = 5 + }, +/obj/effect/turf_decal/stripes{ + dir = 4 + }, +/obj/effect/turf_decal/stripes{ + dir = 1 + }, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"as" = ( +/obj/structure/closet/crate/bin, +/obj/effect/spawner/random/heretic_gateway_low, +/turf/open/floor/carpet/green, +/area/awaymission/beach/heretic) +"au" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"aw" = ( +/obj/structure/fluff/tram_rail, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"ay" = ( +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"az" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/tile/dark_red/half/contrasted{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"aA" = ( +/obj/structure/table, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"aB" = ( +/obj/item/kirbyplants/organic/plant10, +/obj/effect/turf_decal/tile/green, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"aC" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"aD" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"aE" = ( +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"aF" = ( +/obj/structure/filingcabinet, +/obj/structure/filingcabinet{ + pixel_x = 10; + pixel_y = 0 + }, +/obj/structure/filingcabinet{ + pixel_x = -10; + pixel_y = 0 + }, +/turf/open/floor/carpet/green, +/area/awaymission/caves/heretic_laboratory) +"aK" = ( +/obj/structure/chair/comfy/shuttle, +/turf/open/floor/pod/dark, +/area/awaymission/beach/heretic) +"aL" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/structure/thermoplastic/light, +/obj/structure/window/reinforced/survival_pod/spawner/directional/east, +/obj/structure/window/reinforced/survival_pod/spawner/directional/north, +/obj/structure/chair/sofa/bench/tram/solo{ + dir = 8 + }, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory) +"aM" = ( +/obj/structure/fluff/bus/dense, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"aO" = ( +/obj/machinery/door/airlock{ + name = "Guest Room" + }, +/turf/open/floor/carpet, +/area/awaymission/beach/heretic) +"aP" = ( +/obj/effect/turf_decal/siding/wood/corner{ + dir = 1 + }, +/obj/machinery/camera/xray/directional/east, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"aQ" = ( +/obj/machinery/light/directional/east, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"aR" = ( +/obj/machinery/power/rtg/lavaland, +/obj/structure/window/reinforced/plasma/spawner/directional/west, +/obj/structure/window/reinforced/plasma/spawner/directional/north, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"aV" = ( +/obj/structure/table, +/obj/item/storage/toolbox/syndicate, +/obj/item/trench_tool, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"aW" = ( +/obj/structure/table/reinforced, +/obj/machinery/reagentgrinder{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/item/reagent_containers/cup/glass/shaker{ + pixel_x = -6 + }, +/obj/effect/turf_decal/tile/bar/opposingcorners, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"ba" = ( +/obj/machinery/light/directional/north, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"bb" = ( +/obj/machinery/computer/records/security{ + dir = 4 + }, +/turf/open/floor/pod/light, +/area/awaymission/beach/heretic) +"bc" = ( +/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"be" = ( +/obj/effect/turf_decal/tile/bar/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"bf" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/machinery/light/small/directional/west, +/obj/item/kirbyplants/random, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"bi" = ( +/obj/effect/landmark/transport/nav_beacon/tram/platform/heretic/left, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"bl" = ( +/obj/effect/spawner/random/trash/food_packaging, +/obj/effect/spawner/random/trash/food_packaging, +/obj/effect/spawner/random/trash/food_packaging, +/obj/structure/closet/crate/secure/trashcart/filled, +/turf/open/floor/plating/airless, +/area/awaymission/caves/heretic_laboratory_clean) +"bn" = ( +/obj/machinery/door/airlock/hatch, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"bq" = ( +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"br" = ( +/obj/item/bedsheet/black/double{ + dir = 4; + pixel_x = 0; + pixel_y = 2 + }, +/obj/structure/bed/double{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"bt" = ( +/obj/effect/turf_decal/tile/bar/anticorner/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"bu" = ( +/mob/living/basic/trooper/nanotrasen/peaceful, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"bv" = ( +/obj/structure/bed/double, +/obj/effect/spawner/random/bedsheet/double, +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"by" = ( +/obj/structure/fence, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"bA" = ( +/obj/structure/table, +/obj/item/binoculars, +/obj/item/binoculars, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"bB" = ( +/turf/closed/mineral/ash_rock, +/area/awaymission/beach/heretic) +"bG" = ( +/obj/effect/turf_decal/tile/blue/anticorner/contrasted{ + dir = 4 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"bH" = ( +/obj/structure/chair/sofa/bench/right{ + dir = 1 + }, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"bJ" = ( +/obj/machinery/light/directional/north, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"bN" = ( +/obj/effect/spawner/structure/window, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"bP" = ( +/obj/structure/chair/office/tactical{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"bR" = ( +/obj/effect/turf_decal/tile/blue/half/contrasted, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"bT" = ( +/obj/effect/turf_decal/tile/purple/half/contrasted{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"bZ" = ( +/obj/machinery/door/airlock/multi_tile{ + dir = 4 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"cb" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "p"; + pixel_x = -8; + pixel_y = 1 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"ce" = ( +/obj/effect/turf_decal/siding/blue/corner, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"ci" = ( +/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"cj" = ( +/mob/living/basic/heretic_summon/stalker, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"ck" = ( +/obj/structure/table, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 6 + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"cl" = ( +/turf/open/misc/beach/coast{ + dir = 9 + }, +/area/awaymission/caves/heretic_laboratory_clean) +"cp" = ( +/obj/effect/decal/cleanable/blood/tracks/xeno{ + dir = 10 + }, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"cq" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/iron/textured, +/area/awaymission/caves/heretic_laboratory) +"cs" = ( +/obj/machinery/quantum_server, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"ct" = ( +/obj/structure/closet/secure_closet/freezer/fridge/open, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"cw" = ( +/obj/structure/window/reinforced/survival_pod/spawner/directional/east, +/obj/structure/table, +/obj/item/stack/sheet/iron/fifty{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/item/stack/sheet/iron/fifty{ + pixel_x = -6; + pixel_y = 6 + }, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"cy" = ( +/obj/structure/table, +/obj/item/healthanalyzer, +/obj/item/healthanalyzer, +/obj/item/stack/medical/gauze, +/obj/item/stack/medical/gauze, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"cz" = ( +/obj/structure/holosign/barrier/atmos/sturdy, +/obj/machinery/conveyor/auto{ + dir = 4 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"cC" = ( +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"cF" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/mecha_wreckage/ripley/mk2, +/obj/effect/turf_decal/tile/yellow/anticorner/contrasted, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"cI" = ( +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/obj/machinery/door/puzzle/keycard/heretic_entrance, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"cK" = ( +/obj/effect/turf_decal/tile/bar/anticorner/contrasted, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"cL" = ( +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"cN" = ( +/obj/structure/closet/cabinet, +/obj/effect/turf_decal/tile/bar/anticorner/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"cO" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/pink/visible{ + dir = 5 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"cP" = ( +/obj/structure/table, +/obj/item/storage/toolbox/mechanical, +/obj/item/storage/toolbox/mechanical{ + pixel_x = 4; + pixel_y = 4 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"cQ" = ( +/turf/closed/wall/rock, +/area/awaymission/caves/heretic_laboratory) +"cR" = ( +/obj/machinery/shower{ + dir = 1 + }, +/obj/effect/turf_decal/weather/sand{ + dir = 1 + }, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"cT" = ( +/obj/effect/turf_decal/tile/bar/opposingcorners, +/obj/structure/dresser, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"cV" = ( +/obj/structure/frame/machine/secured, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"cX" = ( +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/obj/effect/decal/cleanable/blood/tracks, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"db" = ( +/obj/machinery/vending/games, +/obj/effect/turf_decal/tile/green/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"dd" = ( +/obj/effect/spawner/random/trash/cigbutt, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"de" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/tile/neutral/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"df" = ( +/obj/effect/mapping_helpers/burnt_floor, +/obj/effect/spawner/random/structure/shipping_container, +/turf/open/floor/iron/textured, +/area/awaymission/caves/heretic_laboratory) +"dj" = ( +/mob/living/basic/construct/proteon, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/bar/fourcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"dk" = ( +/obj/machinery/teleport/station{ + name = "Forcefield generator" + }, +/turf/open/floor/plating/airless, +/area/awaymission/caves/heretic_laboratory_clean) +"dl" = ( +/obj/item/stack/sheet/mineral/sandbags, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"dm" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/monitored{ + dir = 8 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"do" = ( +/obj/machinery/door/airlock, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"dp" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"dr" = ( +/obj/structure/table, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"du" = ( +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/obj/structure/disposaloutlet{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"dw" = ( +/obj/machinery/light/directional/west, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory_clean) +"dy" = ( +/obj/structure/table, +/obj/machinery/light/floor, +/obj/item/gun/magic/midas_hand, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"dA" = ( +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/all/supply, +/turf/open/indestructible/plating, +/area/awaymission/caves/heretic_laboratory) +"dC" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible{ + dir = 9 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"dD" = ( +/obj/effect/turf_decal/tile/bar/half/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"dF" = ( +/obj/machinery/light/very_dim/directional/east, +/obj/machinery/suit_storage_unit/industrial, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"dG" = ( +/obj/machinery/disposal/delivery_chute{ + name = "EXTREMELY hazardous waste disposal chute" + }, +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/end, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"dI" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"dL" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"dO" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"dP" = ( +/obj/structure/fence/corner{ + dir = 8 + }, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"dR" = ( +/turf/open/misc/beach/coast/corner{ + dir = 8 + }, +/area/awaymission/beach/heretic) +"dS" = ( +/obj/machinery/power/rtg/lavaland, +/obj/structure/window/reinforced/plasma/spawner/directional/north, +/obj/structure/window/reinforced/plasma/spawner/directional/east, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"dU" = ( +/obj/structure/table/glass, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 1 + }, +/obj/effect/spawner/surgery_tray/full, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"dW" = ( +/obj/machinery/atmospherics/miner/nitrogen, +/obj/machinery/light/small/directional/east, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"dX" = ( +/obj/machinery/camera/xray/directional/south, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"dY" = ( +/obj/structure/bookcase/random, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"eg" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/effect/mapping_helpers/airlock/access/all/security, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/door/puzzle/keycard/highsec_access, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"eh" = ( +/obj/machinery/light/small/directional/north, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"ek" = ( +/obj/effect/turf_decal/siding/blue{ + dir = 4 + }, +/obj/effect/turf_decal/siding/blue{ + dir = 8 + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"el" = ( +/obj/effect/turf_decal/siding/blue{ + dir = 1 + }, +/obj/effect/turf_decal/siding/blue, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"eo" = ( +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/effect/mapping_helpers/airlock/access/all/admin, +/obj/machinery/door/puzzle/keycard/biological_anomalies, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"ep" = ( +/obj/effect/spawner/structure/window/reinforced/tinted, +/obj/machinery/door/puzzle/keycard/misc_anomalies, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"eq" = ( +/obj/structure/table, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"et" = ( +/obj/structure/table, +/obj/item/storage/toolbox/electrical, +/obj/item/storage/toolbox/electrical{ + pixel_x = 4; + pixel_y = 4 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"ev" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/closed/indestructible/reinforced, +/area/awaymission/caves/heretic_laboratory) +"ew" = ( +/obj/item/radio/intercom/mi13/directional/west, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"ey" = ( +/obj/structure/railing{ + dir = 9 + }, +/obj/effect/turf_decal/stripes{ + dir = 8 + }, +/obj/effect/turf_decal/stripes{ + dir = 1 + }, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"eB" = ( +/obj/structure/filingcabinet, +/turf/open/floor/iron/white/textured_large, +/area/awaymission/beach/heretic) +"eE" = ( +/obj/machinery/door/airlock{ + name = "Kitchen" + }, +/obj/effect/mapping_helpers/airlock/access/all/service, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"eH" = ( +/obj/structure/fluff/tram_rail, +/obj/effect/turf_decal/delivery, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"eJ" = ( +/obj/effect/turf_decal/tile/brown/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"eK" = ( +/obj/structure/closet/crate/bin, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"eM" = ( +/obj/machinery/computer/operating/oldstation{ + dir = 8 + }, +/turf/open/floor/stone, +/area/awaymission/beach/heretic) +"eN" = ( +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"eQ" = ( +/obj/machinery/light/directional/east, +/obj/structure/extinguisher_cabinet/directional/east, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"eS" = ( +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/tile/bar/half/contrasted, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"eT" = ( +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"eW" = ( +/obj/structure/table, +/obj/item/ammo_box/magazine/m7mm, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory_clean) +"eY" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "j"; + pixel_x = -14; + pixel_y = 2 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "u"; + pixel_x = -4; + pixel_y = 1 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "m"; + pixel_x = 10; + pixel_y = 1 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"fb" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/cafeteria, +/area/awaymission/caves/heretic_laboratory_clean) +"fg" = ( +/obj/structure/table, +/obj/effect/turf_decal/siding/thinplating/dark, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"fh" = ( +/obj/machinery/door/airlock/public/glass{ + name = "Beachside Inn" + }, +/obj/effect/turf_decal/siding/wood, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"fk" = ( +/obj/effect/mapping_helpers/airlock/access/all/admin, +/obj/machinery/door/airlock/virology, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"fl" = ( +/obj/structure/projected_forcefield, +/obj/effect/oneway, +/turf/open/floor/mineral/titanium, +/area/awaymission/caves/heretic_laboratory_clean) +"fm" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"fo" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/spawner/random/trash/grime, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"fp" = ( +/obj/machinery/door/airlock/virology, +/obj/machinery/door/puzzle/keycard/cbrn_area, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"fq" = ( +/obj/machinery/vending/hotdog, +/obj/effect/turf_decal/tile/green/half/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"fu" = ( +/obj/effect/turf_decal/siding/blue{ + dir = 8 + }, +/obj/effect/turf_decal/siding/blue/corner{ + dir = 4 + }, +/obj/effect/turf_decal/siding/blue/corner, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"fw" = ( +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/effect/mapping_helpers/airlock/access/all/admin/captain, +/obj/machinery/door/puzzle/keycard/weapon_anomalies, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"fx" = ( +/obj/machinery/door/airlock/highsecurity, +/obj/effect/mapping_helpers/airlock/access/all/away/general, +/turf/open/floor/iron/checker, +/area/awaymission/caves/heretic_laboratory) +"fz" = ( +/obj/structure/table, +/obj/item/paper/fluff/awaymissions/heretic/floorsafe, +/obj/item/clothing/neck/stethoscope, +/turf/open/floor/iron/cafeteria, +/area/awaymission/caves/heretic_laboratory_clean) +"fA" = ( +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/effect/mapping_helpers/airlock/access/all/security, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"fB" = ( +/obj/structure/closet/secure_closet/security/sec, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"fC" = ( +/obj/machinery/conveyor/auto{ + dir = 4 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"fD" = ( +/obj/machinery/telecomms/processor, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"fE" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible{ + dir = 5 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"fF" = ( +/obj/machinery/door/airlock/public/glass{ + name = "Dorms" + }, +/obj/effect/mapping_helpers/airlock/access/all/away/general, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"fH" = ( +/obj/machinery/light/floor, +/obj/structure/table, +/obj/item/fake_items/feddy_fazbear, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"fI" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/door/airlock{ + name = "Personal Dorm" + }, +/obj/effect/mapping_helpers/airlock/access/all/supply, +/obj/machinery/door/puzzle/keycard/highsec_access, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"fJ" = ( +/obj/machinery/light/small/directional/south, +/obj/item/kirbyplants/random, +/turf/open/floor/carpet/green, +/area/awaymission/beach/heretic) +"fK" = ( +/obj/structure/table, +/obj/item/stack/sticky_tape{ + pixel_x = 6; + pixel_y = 5 + }, +/obj/item/stack/sticky_tape{ + pixel_x = -6; + pixel_y = 5 + }, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"fL" = ( +/obj/item/kirbyplants/random, +/turf/open/floor/carpet/green, +/area/awaymission/beach/heretic) +"fM" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"fP" = ( +/obj/item/stack/sheet/mineral/uranium, +/obj/item/coin/uranium, +/obj/item/coin/uranium, +/obj/item/coin/uranium, +/obj/item/stack/sheet/mineral/uranium, +/obj/item/stack/sheet/mineral/uranium, +/obj/item/coin/uranium, +/obj/item/stack/ore/uranium, +/obj/item/reagent_containers/cup/bottle/radium, +/obj/structure/closet/crate/wooden, +/obj/item/nuke_core{ + anchored = 1 + }, +/turf/open/floor/mineral/uranium, +/area/awaymission/beach/heretic) +"fR" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible{ + dir = 4 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"fV" = ( +/obj/effect/turf_decal/tile/bar/anticorner/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"fW" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"fX" = ( +/obj/item/stack/cable_coil/thirty, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"fY" = ( +/obj/structure/closet/crate/grave, +/obj/effect/spawner/random/heretic_gateway, +/turf/open/misc/dirt/jungle, +/area/awaymission/beach/heretic) +"fZ" = ( +/obj/structure/flora/tree/jungle/style_random, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"ga" = ( +/obj/structure/window/reinforced/survival_pod/spawner/directional/west, +/obj/structure/transport/linear/tram, +/obj/structure/thermoplastic/light, +/obj/machinery/computer/tram_controls/heretic_tram_computer{ + icon_state = "tram_alt_controls"; + dir = 8 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"gb" = ( +/obj/effect/turf_decal/tile/neutral/opposingcorners, +/obj/machinery/door/window/right/directional/west, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"gd" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"gg" = ( +/obj/item/coin/uranium, +/obj/item/coin/uranium, +/obj/item/coin/uranium, +/obj/item/coin/uranium, +/obj/item/stack/sheet/mineral/uranium, +/obj/item/stack/sheet/mineral/uranium, +/obj/item/coin/uranium, +/obj/item/stack/ore/uranium, +/obj/item/reagent_containers/cup/bottle/radium, +/obj/structure/closet/crate/wooden, +/obj/item/nuke_core{ + anchored = 1 + }, +/turf/open/floor/mineral/uranium, +/area/awaymission/beach/heretic) +"gh" = ( +/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, +/obj/effect/turf_decal/tile/dark_red/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"gi" = ( +/obj/effect/heretic_rune/big, +/mob/living/basic/faithless, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"gj" = ( +/obj/effect/turf_decal/trimline/blue/filled/corner{ + dir = 4 + }, +/turf/closed/indestructible/reinforced, +/area/awaymission/caves/heretic_laboratory_clean) +"gm" = ( +/turf/open/floor/wood/parquet, +/area/awaymission/caves/heretic_laboratory) +"gp" = ( +/obj/effect/turf_decal/siding/wood, +/turf/open/floor/iron/white/textured_large, +/area/awaymission/beach/heretic) +"gq" = ( +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"gr" = ( +/obj/effect/turf_decal/delivery, +/obj/item/stack/sheet/mineral/wood, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"gs" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/structure/barricade/security, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"gt" = ( +/obj/structure/closet/firecloset/full, +/turf/open/indestructible/plating, +/area/awaymission/caves/heretic_laboratory) +"gu" = ( +/obj/structure/flora/rock/pile/style_random, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"gv" = ( +/obj/structure/window/spawner/directional/north, +/obj/structure/window/spawner/directional/south, +/obj/structure/window/spawner/directional/east, +/obj/structure/flora/bush/jungle/c/style_random, +/turf/open/misc/grass/jungle, +/area/awaymission/caves/heretic_laboratory) +"gw" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/table/reinforced, +/obj/machinery/button/transport/tram{ + specific_transport_id = "heretic_1"; + pixel_y = 8; + id = 2 + }, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"gx" = ( +/obj/structure/mop_bucket, +/obj/effect/spawner/random/trash/bucket, +/obj/item/reagent_containers/spray/cleaner, +/obj/item/reagent_containers/spray/cleaner, +/obj/item/mop/advanced, +/obj/effect/spawner/random/trash/janitor_supplies, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"gy" = ( +/obj/effect/decal/cleanable/blood/tracks, +/obj/structure/holosign/barrier/atmos/sturdy, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"gz" = ( +/obj/effect/decal/remains/xeno, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"gA" = ( +/obj/machinery/light/small/directional/west, +/turf/open/floor/carpet/green, +/area/awaymission/beach/heretic) +"gB" = ( +/obj/structure/dresser, +/turf/open/floor/carpet/purple, +/area/awaymission/caves/heretic_laboratory) +"gC" = ( +/obj/structure/table, +/obj/machinery/recharger, +/turf/open/floor/pod/dark, +/area/awaymission/beach/heretic) +"gF" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"gI" = ( +/obj/machinery/door/window/survival_pod/left/directional/east, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"gJ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 1 + }, +/obj/effect/turf_decal/tile/bar/fourcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"gK" = ( +/turf/open/misc/beach/coast{ + dir = 8 + }, +/area/awaymission/beach/heretic) +"gN" = ( +/obj/effect/turf_decal/tile/yellow/anticorner/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"gO" = ( +/obj/structure/bodycontainer/crematorium{ + id = "crematoriumchapel"; + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"gQ" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/obj/structure/barricade/security, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"gS" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 1 + }, +/obj/structure/door_assembly/door_assembly_highsecurity, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"gT" = ( +/obj/machinery/computer/crew{ + dir = 4 + }, +/turf/open/floor/pod/light, +/area/awaymission/beach/heretic) +"gU" = ( +/obj/machinery/conveyor/auto{ + dir = 8 + }, +/obj/item/toy/plush/moth, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"gW" = ( +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"gX" = ( +/obj/machinery/vending/sustenance, +/obj/effect/turf_decal/tile/green/half/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"gY" = ( +/obj/machinery/conveyor/auto{ + dir = 9 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"ha" = ( +/obj/effect/decal/remains/robot, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"hb" = ( +/obj/effect/spawner/structure/window, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"hc" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/effect/turf_decal/siding/wood, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"hd" = ( +/obj/structure/table/wood/fancy, +/obj/item/flashlight/flare/candle/infinite, +/obj/machinery/light/floor, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"he" = ( +/obj/structure/sign/poster/contraband/communist_state/directional/west, +/obj/effect/spawner/random/trash/moisture_trap, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"hf" = ( +/obj/structure/fluff/bus/passable/seat{ + pixel_y = 15 + }, +/turf/open/floor/iron/dark, +/area/awaymission/beach/heretic) +"hg" = ( +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory) +"hi" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/item/stack/sheet/mineral/wood, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"hk" = ( +/turf/open/misc/beach/coast{ + dir = 4 + }, +/area/awaymission/beach/heretic) +"ho" = ( +/obj/structure/table/glass, +/obj/item/stack/medical/gauze, +/obj/item/stack/medical/mesh, +/obj/effect/turf_decal/siding{ + dir = 6 + }, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 6 + }, +/turf/open/floor/iron/white/smooth_large, +/area/awaymission/caves/heretic_laboratory) +"hp" = ( +/obj/machinery/light/directional/east, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"hq" = ( +/obj/structure/flora/tree/palm/style_random, +/obj/structure/flora/coconuts, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"hr" = ( +/obj/structure/table/reinforced, +/obj/machinery/button/transport/tram{ + specific_transport_id = "heretic_1"; + pixel_y = 8; + id = 1 + }, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"hs" = ( +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"hu" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/machinery/light/small/directional/west, +/obj/structure/dresser, +/turf/open/floor/carpet, +/area/awaymission/beach/heretic) +"hv" = ( +/obj/machinery/light/directional/north, +/obj/machinery/portable_atmospherics/scrubber, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"hB" = ( +/mob/living/basic/crab, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"hC" = ( +/obj/effect/turf_decal/tile/neutral/opposingcorners, +/obj/machinery/door/puzzle/keycard/heretic_entrance, +/obj/machinery/conveyor/auto{ + dir = 8 + }, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"hD" = ( +/obj/structure/table, +/obj/machinery/light/floor, +/obj/item/gun/energy/dueling, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"hE" = ( +/obj/effect/turf_decal/tile/blue/opposingcorners, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"hF" = ( +/obj/effect/turf_decal/siding/blue{ + dir = 1 + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"hG" = ( +/obj/structure/flora/tree/palm/style_random, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"hI" = ( +/obj/effect/turf_decal/sand/plating, +/obj/machinery/vending/snack, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"hJ" = ( +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"hK" = ( +/obj/structure/table/wood/fancy, +/obj/item/plate/oven_tray, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"hL" = ( +/obj/machinery/light/directional/south, +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/turf/open/floor/pod/dark, +/area/awaymission/beach/heretic) +"hM" = ( +/obj/machinery/door/airlock{ + name = "Employees Only"; + dir = 4 + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"hQ" = ( +/obj/structure/table, +/turf/open/floor/wood/parquet, +/area/awaymission/caves/heretic_laboratory) +"hS" = ( +/obj/effect/decal/cleanable/blood/tracks/xeno{ + dir = 6 + }, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"hU" = ( +/obj/machinery/autolathe, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"hV" = ( +/obj/machinery/door/airlock/wood{ + name = "Beach Bar" + }, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"hX" = ( +/obj/structure/chair/sofa/bench/left{ + dir = 1 + }, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"hY" = ( +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"ia" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/plasticflaps, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"id" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/light/directional/west, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"ie" = ( +/obj/item/bedsheet/black/double{ + pixel_x = 0; + pixel_y = 6 + }, +/obj/structure/bed/double, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"if" = ( +/obj/machinery/cryo_cell{ + dir = 4 + }, +/turf/open/floor/iron/white/smooth_large, +/area/awaymission/caves/heretic_laboratory) +"ig" = ( +/obj/structure/fluff/bus/passable{ + icon_state = "bottomdoor" + }, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"ih" = ( +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/tile/dark_green, +/obj/effect/turf_decal/tile/dark{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"ij" = ( +/obj/structure/table/bronze, +/obj/item/flashlight/lamp/green, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"ik" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"il" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/structure/transport/linear/tram, +/obj/structure/thermoplastic/light, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"im" = ( +/obj/item/mop/advanced, +/obj/structure/closet, +/obj/item/reagent_containers/cup/bottle/water, +/obj/item/reagent_containers/cup/glass/waterbottle/large, +/obj/item/stock_parts/water_recycler, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"in" = ( +/obj/structure/window/spawner/directional/west, +/obj/structure/window/spawner/directional/north, +/obj/structure/window/spawner/directional/south, +/obj/structure/flora/bush/jungle/c/style_random, +/turf/open/misc/grass/jungle, +/area/awaymission/caves/heretic_laboratory) +"ip" = ( +/obj/machinery/suit_storage_unit/standard_unit, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"iu" = ( +/obj/machinery/light/floor, +/turf/closed/wall/mineral/titanium, +/area/awaymission/beach/heretic) +"iw" = ( +/obj/effect/turf_decal/trimline/red/filled/end, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"ix" = ( +/obj/structure/window/spawner/directional/west, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"iz" = ( +/obj/machinery/light/directional/west, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"iB" = ( +/obj/structure/window/reinforced/spawner/directional/north, +/obj/structure/window/reinforced/spawner/directional/south, +/obj/structure/table, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"iC" = ( +/obj/structure/table/wood, +/obj/item/flashlight/lamp, +/turf/open/floor/carpet, +/area/awaymission/beach/heretic) +"iD" = ( +/mob/living/basic/heretic_summon/fire_shark/wild, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/dark_green/fourcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"iF" = ( +/obj/machinery/portable_atmospherics/canister/air, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"iH" = ( +/obj/structure/closet/secure_closet, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"iI" = ( +/obj/effect/turf_decal/tile/bar/opposingcorners, +/obj/structure/closet/cabinet, +/obj/effect/spawner/random/heretic_gateway_low, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"iJ" = ( +/obj/machinery/door/airlock/medical/glass{ + name = "Medical Freezer" + }, +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/tile/blue/opposingcorners{ + dir = 1 + }, +/obj/effect/mapping_helpers/airlock/access/all/medical, +/turf/open/floor/iron/freezer, +/area/awaymission/caves/heretic_laboratory) +"iL" = ( +/obj/structure/fluff/tram_rail/anchor{ + dir = 1 + }, +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/structure/thermoplastic/light, +/obj/structure/window/reinforced/survival_pod/spawner/directional/west, +/obj/structure/window/reinforced/survival_pod/spawner/directional/north, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory) +"iN" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/tile/bar/half/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"iO" = ( +/obj/effect/turf_decal/tile/blue/anticorner/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"iP" = ( +/obj/machinery/light/directional/south, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"iQ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/blessing/invisible, +/turf/open/floor/catwalk_floor/iron_dark, +/area/awaymission/caves/heretic_laboratory) +"iR" = ( +/obj/structure/fluff/tram_rail/end, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"iS" = ( +/obj/structure/transport/linear/tram, +/obj/structure/thermoplastic/light, +/obj/machinery/transport/tram_controller/heretic_tram_controller, +/obj/structure/tram, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"iU" = ( +/obj/item/bedsheet{ + pixel_x = 19; + pixel_y = 0 + }, +/obj/structure/bed{ + pixel_x = 17; + pixel_y = 0 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"iW" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/machinery/light/small/directional/east, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"iX" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"iZ" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "p"; + pixel_x = -8; + pixel_y = 1 + }, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"ja" = ( +/obj/effect/turf_decal/tile/bar/anticorner/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"jc" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/tile/dark/half{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"je" = ( +/obj/structure/fluff/tram_rail, +/obj/effect/turf_decal/delivery, +/obj/effect/decal/remains/human, +/obj/structure/reagent_dispensers/fueltank/large{ + max_integrity = 1; + name = "Extremely fragile high capacity fuel tank" + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"jf" = ( +/obj/structure/fluff/tram_rail/anchor{ + dir = 1 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"jg" = ( +/obj/machinery/door/airlock/highsecurity, +/obj/effect/mapping_helpers/airlock/access/all/security, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"ji" = ( +/obj/structure/table/wood, +/obj/item/paper_bin, +/turf/open/floor/plating/airless, +/area/awaymission/caves/heretic_laboratory_clean) +"jj" = ( +/obj/effect/decal/cleanable/glass/plastitanium, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"jk" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"jo" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/holosign/barrier/engineering, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"jq" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/structure/holosign/barrier/atmos/tram, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"js" = ( +/obj/machinery/door/airlock{ + name = "Showers" + }, +/turf/open/floor/iron/freezer, +/area/awaymission/caves/heretic_laboratory) +"ju" = ( +/obj/structure/table/wood, +/obj/machinery/light/directional/west, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/turf/open/floor/carpet/purple, +/area/awaymission/caves/heretic_laboratory) +"jx" = ( +/obj/effect/turf_decal/tile/blue/fourcorners, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"jy" = ( +/obj/structure/table, +/obj/machinery/microwave, +/obj/machinery/light/directional/west, +/turf/open/floor/iron/cafeteria, +/area/awaymission/caves/heretic_laboratory_clean) +"jz" = ( +/obj/effect/gibspawner/human, +/turf/open/misc/beach/sand, +/area/awaymission/caves/heretic_laboratory_clean) +"jF" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/effect/turf_decal/delivery, +/obj/item/stack/sheet/mineral/wood, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"jG" = ( +/obj/effect/mob_spawn/corpse/human, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"jK" = ( +/obj/machinery/power/smes/magical{ + desc = "A high-capacity superconducting magnetic energy storage (SMES) unit."; + name = "power storage unit" + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"jO" = ( +/obj/machinery/vending/medical, +/obj/effect/turf_decal/tile/green/anticorner/contrasted, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"jP" = ( +/obj/structure/barricade/sandbags, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"jQ" = ( +/turf/open/floor/iron/white/textured_large, +/area/awaymission/beach/heretic) +"jS" = ( +/obj/machinery/chem_master/condimaster{ + name = "CondiMaster Neo" + }, +/turf/open/floor/iron/cafeteria, +/area/awaymission/caves/heretic_laboratory_clean) +"jT" = ( +/obj/effect/mapping_helpers/broken_floor, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"jU" = ( +/obj/effect/turf_decal/stripes/line, +/obj/structure/window/reinforced/spawner/directional/south, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"jV" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/effect/decal/remains/robot, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"jW" = ( +/obj/effect/turf_decal/tile/dark/half{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"jX" = ( +/obj/structure/marker_beacon/burgundy, +/turf/open/water/deep_beach, +/area/awaymission/beach/heretic) +"jY" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/effect/turf_decal/delivery, +/obj/effect/decal/remains/robot, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"jZ" = ( +/turf/open/floor/iron/freezer, +/area/awaymission/caves/heretic_laboratory) +"kc" = ( +/obj/machinery/power/rtg/lavaland, +/obj/structure/window/reinforced/plasma/spawner/directional/north, +/obj/structure/window/reinforced/plasma/spawner/directional/west, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"kd" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/structure/window/reinforced/survival_pod/spawner/directional/north, +/obj/structure/window/reinforced/survival_pod/spawner/directional/west, +/obj/structure/chair/sofa/bench/tram/solo{ + dir = 4 + }, +/obj/structure/transport/linear/tram, +/obj/structure/thermoplastic/light, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"kf" = ( +/obj/structure/fluff/tram_rail/end{ + dir = 1 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"kg" = ( +/obj/structure/fluff/tram_rail/end{ + dir = 8 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"kj" = ( +/obj/effect/turf_decal/tile/brown/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"kk" = ( +/obj/structure/window/spawner/directional/south, +/obj/structure/window/spawner/directional/north, +/obj/structure/flora/bush/jungle/c/style_random, +/turf/open/misc/grass/jungle, +/area/awaymission/caves/heretic_laboratory) +"kl" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/effect/light_emitter/fake_outdoors, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"km" = ( +/obj/machinery/door/airlock/highsecurity, +/obj/effect/mapping_helpers/airlock/locked, +/obj/effect/turf_decal/stripes{ + dir = 8 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"kn" = ( +/obj/structure/chair/office/tactical{ + dir = 8 + }, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"ko" = ( +/obj/item/stack/sheet/mineral/uranium, +/obj/item/nuke_core{ + anchored = 1 + }, +/obj/item/coin/uranium, +/obj/item/coin/uranium, +/obj/item/stack/sheet/mineral/uranium, +/obj/item/coin/uranium, +/obj/item/stack/ore/uranium, +/obj/item/toy/brokenradio, +/obj/structure/closet/crate/wooden, +/turf/open/floor/mineral/uranium, +/area/awaymission/beach/heretic) +"kr" = ( +/turf/open/floor/stone, +/area/awaymission/beach/heretic) +"kw" = ( +/obj/machinery/light/very_dim/directional/west, +/obj/structure/chair/comfy/shuttle/tactical, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"kz" = ( +/obj/effect/turf_decal/tile/neutral/opposingcorners, +/obj/item/radio/intercom/mi13/directional/east, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"kD" = ( +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"kE" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/effect/turf_decal/tile/dark_red/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"kF" = ( +/obj/item/flashlight/flare/candle/infinite, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"kG" = ( +/obj/structure/sink{ + pixel_y = 15 + }, +/turf/open/floor/iron/white/textured_large, +/area/awaymission/beach/heretic) +"kH" = ( +/obj/structure/chair/sofa/bench/right, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"kI" = ( +/obj/structure/railing{ + dir = 10 + }, +/obj/effect/turf_decal/stripes, +/obj/effect/turf_decal/stripes{ + dir = 8 + }, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"kK" = ( +/obj/machinery/light/floor, +/obj/item/slimepotion/genderchange, +/obj/structure/closet/crate/freezer, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"kO" = ( +/obj/structure/table, +/obj/item/fake_items/l6_saw, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory_clean) +"kQ" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory_clean) +"kR" = ( +/obj/machinery/light/directional/east, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"kV" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"kW" = ( +/obj/machinery/door/airlock/public/glass{ + name = "Grocery Store"; + dir = 4 + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"kX" = ( +/obj/structure/sign/poster/abductor/ayy_recruitment/directional/south, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"ld" = ( +/obj/structure/closet/crate/secure/weapon{ + name = "p90 ammo crate" + }, +/obj/item/ammo_box/magazine/napad, +/obj/item/ammo_box/magazine/napad, +/obj/item/ammo_box/magazine/napad, +/obj/effect/turf_decal/tile/dark/opposingcorners, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"lh" = ( +/obj/effect/spawner/random/heretic_gateway_low, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"lj" = ( +/obj/structure/table/wood, +/obj/item/book/manual/wiki/medicine, +/obj/machinery/light/small/directional/west, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"lm" = ( +/turf/closed/mineral/ash_rock, +/area/awaymission/caves/heretic_laboratory) +"lo" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"ls" = ( +/obj/machinery/vending/sustenance, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"lt" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/light/directional/east, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"lu" = ( +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory_clean) +"lv" = ( +/obj/effect/spawner/random/structure/grille, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"lx" = ( +/mob/living/basic/construct/juggernaut, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/bar/fourcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"lz" = ( +/obj/effect/decal/cleanable/plasma, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"lA" = ( +/obj/item/radio/intercom/mi13/directional/north, +/obj/effect/turf_decal/trimline/blue/filled/corner{ + dir = 4 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"lB" = ( +/obj/machinery/autolathe, +/obj/effect/turf_decal/tile/yellow/anticorner/contrasted{ + dir = 1 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"lC" = ( +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/effect/mapping_helpers/airlock/access/all/admin/captain, +/obj/machinery/door/puzzle/keycard/misc_anomalies, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"lD" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/turf/open/floor/carpet/purple, +/area/awaymission/caves/heretic_laboratory) +"lE" = ( +/obj/effect/mapping_helpers/burnt_floor, +/turf/open/floor/iron/textured, +/area/awaymission/caves/heretic_laboratory) +"lH" = ( +/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, +/obj/effect/mapping_helpers/damaged_window, +/obj/effect/blessing/invisible, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"lJ" = ( +/obj/effect/turf_decal/tile/dark_green{ + dir = 8 + }, +/obj/effect/turf_decal/tile/dark{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"lK" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/blue/half/contrasted, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"lL" = ( +/obj/structure/table/wood, +/obj/item/flashlight/lamp/bananalamp, +/turf/open/floor/carpet, +/area/awaymission/beach/heretic) +"lO" = ( +/obj/effect/spawner/random/maintenance, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"lV" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"lW" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/window/reinforced/spawner/directional/north, +/obj/structure/window/reinforced/spawner/directional/east, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"lX" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/effect/turf_decal/tile/yellow/half/contrasted, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"lY" = ( +/obj/structure/bed/double, +/obj/effect/spawner/random/bedsheet/double, +/obj/effect/turf_decal/tile/bar/anticorner/contrasted, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"lZ" = ( +/obj/effect/turf_decal/siding/blue/corner{ + dir = 4 + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"ma" = ( +/obj/effect/decal/remains/human, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"mc" = ( +/obj/structure/sink{ + dir = 8; + pixel_y = 1; + pixel_x = 13 + }, +/turf/open/floor/iron/white, +/area/awaymission/beach/heretic) +"md" = ( +/obj/machinery/shieldgen, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"me" = ( +/obj/machinery/light/floor, +/obj/structure/closet/crate/freezer, +/obj/item/organ/heart/gland, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"mg" = ( +/obj/effect/turf_decal/trimline/blue/filled/line, +/obj/machinery/light/directional/south, +/obj/item/radio/intercom/mi13/directional/south, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"mi" = ( +/obj/machinery/chem_master/condimaster{ + desc = "Looks like a knock-off chem-master. Perhaps useful for separating liquids when mixing drinks precisely. Also dispenses condiments."; + name = "HoochMaster Deluxe" + }, +/obj/effect/turf_decal/tile/bar/opposingcorners, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"mj" = ( +/obj/structure/fence/door, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"mm" = ( +/obj/structure/table, +/obj/machinery/light/small/directional/south, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"mn" = ( +/obj/structure/fence/door{ + dir = 8 + }, +/turf/open/misc/dirt/jungle, +/area/awaymission/beach/heretic) +"mo" = ( +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"mq" = ( +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"mt" = ( +/obj/structure/closet/secure_closet/personal/cabinet, +/turf/open/floor/carpet, +/area/awaymission/beach/heretic) +"mu" = ( +/obj/structure/bed, +/turf/open/floor/carpet, +/area/awaymission/beach/heretic) +"mv" = ( +/turf/open/misc/beach/sand, +/area/awaymission/caves/heretic_laboratory_clean) +"mC" = ( +/obj/machinery/power/rtg/lavaland, +/obj/structure/window/reinforced/plasma/spawner/directional/west, +/obj/structure/window/reinforced/plasma/spawner/directional/south, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"mE" = ( +/obj/structure/bodycontainer/morgue/beeper_off, +/turf/open/floor/iron/dark/smooth_large, +/area/awaymission/caves/heretic_laboratory) +"mF" = ( +/obj/machinery/vending/drugs, +/obj/machinery/light/directional/east, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"mG" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"mH" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/curtain, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"mI" = ( +/obj/machinery/light/directional/north, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"mJ" = ( +/obj/machinery/suit_storage_unit/open, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory_clean) +"mL" = ( +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/effect/turf_decal/tile/bar{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"mM" = ( +/turf/open/water/jungle, +/area/awaymission/beach/heretic) +"mN" = ( +/obj/structure/fluff/tram_rail/anchor, +/obj/structure/holosign/barrier/atmos/tram, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"mO" = ( +/obj/structure/closet/secure_closet/freezer/kitchen, +/turf/open/floor/iron/cafeteria, +/area/awaymission/caves/heretic_laboratory_clean) +"mR" = ( +/obj/item/stack/sheet/mineral/wood, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"mS" = ( +/obj/structure/toilet{ + dir = 4 + }, +/obj/structure/curtain, +/turf/open/floor/iron/freezer, +/area/awaymission/caves/heretic_laboratory) +"mT" = ( +/obj/structure/closet/secure_closet/freezer/meat, +/turf/open/floor/iron/cafeteria, +/area/awaymission/caves/heretic_laboratory_clean) +"mV" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"mW" = ( +/obj/structure/flora/rock/pile/jungle/large/style_random, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"mX" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 4 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"mY" = ( +/obj/effect/turf_decal/trimline/blue/end{ + dir = 8 + }, +/turf/open/floor/iron/white/smooth_large, +/area/awaymission/caves/heretic_laboratory) +"mZ" = ( +/obj/structure/table/reinforced, +/obj/item/storage/medkit/toxin, +/obj/item/storage/medkit/toxin, +/turf/open/floor/pod/dark, +/area/awaymission/beach/heretic) +"na" = ( +/obj/structure/flora/bush/jungle/a/style_random, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"nb" = ( +/turf/closed/wall, +/area/awaymission/caves/heretic_laboratory) +"nd" = ( +/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, +/obj/machinery/door/puzzle/keycard/cbrn_area, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"ne" = ( +/obj/item/seeds/cherry/bomb, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"ng" = ( +/obj/machinery/atmospherics/pipe/layer_manifold/supply/visible, +/obj/machinery/door/airlock/maintenance, +/turf/open/indestructible/plating, +/area/awaymission/caves/heretic_laboratory) +"nh" = ( +/obj/machinery/conveyor/auto{ + dir = 6 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"ni" = ( +/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, +/obj/effect/turf_decal/tile/dark_red/half/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"nj" = ( +/obj/structure/rack, +/obj/item/stack/sheet/mineral/coal/ten, +/obj/item/stack/sheet/mineral/coal/ten, +/obj/item/stack/sheet/mineral/coal/ten, +/obj/item/stack/sheet/mineral/coal/ten, +/obj/item/stack/sheet/mineral/coal/ten, +/obj/item/stack/sheet/mineral/coal/ten, +/obj/item/stack/sheet/mineral/coal/ten, +/obj/item/stack/sheet/mineral/coal/ten, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"nk" = ( +/obj/structure/flora/tree/palm, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"np" = ( +/obj/structure/sign/poster/contraband/arc_slimes/directional/east, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"nr" = ( +/obj/effect/turf_decal/tile/bar/opposingcorners, +/obj/structure/bed, +/obj/item/bedsheet/black, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"nv" = ( +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 1 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"nw" = ( +/obj/effect/turf_decal/tile/purple{ + dir = 1 + }, +/obj/effect/turf_decal/tile/dark{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/item/radio/intercom/mi13/directional/west, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"ny" = ( +/obj/effect/turf_decal/trimline/blue/filled/corner{ + dir = 4 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"nz" = ( +/obj/structure/frame/machine/secured, +/obj/effect/turf_decal/tile/dark_red/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"nD" = ( +/obj/structure/projected_forcefield, +/obj/effect/oneway{ + dir = 8 + }, +/turf/open/floor/mineral/titanium, +/area/awaymission/caves/heretic_laboratory_clean) +"nE" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"nF" = ( +/obj/structure/closet/secure_closet/medical2, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 9 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"nG" = ( +/obj/structure/dresser, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"nI" = ( +/turf/open/water/deep_beach, +/area/awaymission/beach/heretic) +"nJ" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/effect/turf_decal/delivery, +/obj/structure/barricade/wooden, +/obj/structure/barricade/wooden/crude, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"nL" = ( +/obj/machinery/shieldgen, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"nM" = ( +/obj/structure/chair/wood{ + dir = 4 + }, +/turf/open/floor/carpet/green, +/area/awaymission/beach/heretic) +"nN" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 1 + }, +/obj/machinery/portable_atmospherics/canister/anesthetic_mix, +/obj/machinery/light/directional/east, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"nO" = ( +/obj/structure/table/wood, +/obj/machinery/light/small/directional/north, +/turf/open/floor/carpet/green, +/area/awaymission/beach/heretic) +"nP" = ( +/obj/item/paper/fluff/old_pirate_note{ + pixel_x = -5; + pixel_y = -7 + }, +/obj/item/pen/fountain{ + pixel_y = -11; + pixel_x = -8 + }, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"nQ" = ( +/obj/effect/turf_decal/tile/yellow/anticorner/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"nR" = ( +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/railing{ + dir = 8 + }, +/obj/structure/railing, +/obj/effect/turf_decal/stripes, +/obj/effect/turf_decal/stripes{ + dir = 8 + }, +/obj/effect/turf_decal/stripes{ + dir = 4 + }, +/obj/machinery/shieldgen, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"nT" = ( +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"nV" = ( +/obj/machinery/teleport/station{ + name = "Forcefield generator" + }, +/obj/structure/window/reinforced/plasma/spawner/directional/north, +/obj/structure/window/reinforced/plasma/spawner/directional/west, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"ob" = ( +/obj/structure/window/reinforced/plasma/spawner/directional/north, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"oc" = ( +/obj/machinery/door/airlock/public/glass{ + name = "General Store"; + dir = 4 + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"od" = ( +/obj/machinery/conveyor/auto, +/obj/item/toy/plush/moth, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"oe" = ( +/obj/effect/turf_decal/delivery, +/obj/item/stack/sheet/mineral/wood, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/structure/holosign/barrier/atmos/tram, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"oi" = ( +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/effect/mapping_helpers/airlock/access/all/supply, +/obj/machinery/door/puzzle/keycard/heretic_entrance, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"oj" = ( +/obj/effect/turf_decal/sand, +/obj/effect/turf_decal/weather/sand{ + dir = 4 + }, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"ol" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 + }, +/mob/living/basic/trooper/nanotrasen/ranged/smg/peaceful, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"om" = ( +/obj/structure/table, +/obj/machinery/light/small/directional/south, +/obj/structure/bedsheetbin, +/turf/open/floor/iron/white/textured_large, +/area/awaymission/beach/heretic) +"oo" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/effect/turf_decal/stripes{ + dir = 8 + }, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"op" = ( +/obj/item/bedsheet/black/double{ + pixel_x = 0; + pixel_y = 2 + }, +/obj/machinery/light/floor, +/obj/machinery/light/directional/east, +/obj/structure/bed/double, +/obj/effect/blessing/invisible, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"os" = ( +/obj/item/toy/seashell{ + pixel_y = -15 + }, +/obj/item/toy/seashell{ + pixel_y = -3; + pixel_x = -18 + }, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"ov" = ( +/obj/structure/closet/secure_closet/medical2, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 9 + }, +/obj/effect/spawner/random/heretic_gateway_low, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"oz" = ( +/obj/structure/rack, +/obj/item/gun/energy/disabler/smg, +/obj/effect/turf_decal/tile/dark/opposingcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"oC" = ( +/obj/machinery/pdapainter, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"oD" = ( +/obj/effect/turf_decal/tile/green/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"oF" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "p"; + pixel_x = -8; + pixel_y = 1 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"oI" = ( +/obj/effect/mapping_helpers/airlock/access/all/service, +/obj/machinery/door/airlock/glass{ + name = "Bar" + }, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"oL" = ( +/obj/effect/turf_decal/tile/dark_green/half{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"oN" = ( +/obj/item/kirbyplants/random, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"oO" = ( +/obj/machinery/conveyor/auto{ + dir = 5 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"oP" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"oQ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"oS" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/turf/open/floor/iron/white/textured_large, +/area/awaymission/beach/heretic) +"oW" = ( +/obj/structure/filingcabinet{ + pixel_x = -6; + pixel_y = 0 + }, +/obj/structure/filingcabinet{ + pixel_x = 3; + pixel_y = 0 + }, +/obj/structure/filingcabinet{ + pixel_x = -15; + pixel_y = 0 + }, +/obj/structure/filingcabinet{ + pixel_x = 12; + pixel_y = 0 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"pa" = ( +/obj/item/stack/sheet/runed_metal/five, +/turf/open/misc/beach/sand, +/area/awaymission/caves/heretic_laboratory_clean) +"pb" = ( +/obj/machinery/door/poddoor/shutters/window/indestructible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory_clean) +"pc" = ( +/obj/effect/decal/cleanable/glass/plastitanium, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/iron/textured, +/area/awaymission/caves/heretic_laboratory) +"pd" = ( +/obj/structure/table/wood, +/obj/item/flashlight/lamp, +/obj/machinery/light/directional/north, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory) +"pe" = ( +/obj/structure/closet/secure_closet/freezer/fridge, +/obj/machinery/light/directional/east, +/turf/open/floor/iron/cafeteria, +/area/awaymission/caves/heretic_laboratory_clean) +"pf" = ( +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/obj/item/mop/advanced, +/obj/effect/spawner/random/structure/closet_empty, +/obj/item/reagent_containers/cup/bucket, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"pg" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "p"; + pixel_x = -8; + pixel_y = 1 + }, +/obj/machinery/light/directional/east, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"pi" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"pm" = ( +/obj/structure/chair/wood{ + dir = 1 + }, +/turf/open/floor/carpet/green, +/area/awaymission/beach/heretic) +"pn" = ( +/obj/structure/table/wood, +/obj/item/storage/fancy/candle_box, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"po" = ( +/obj/structure/fluff/bus/passable/seat, +/turf/open/floor/iron/dark, +/area/awaymission/beach/heretic) +"pp" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"pr" = ( +/obj/structure/safe/floor{ + desc = "A huge chunk of metal with a dial embedded in it. Fine print on the dial reads \"Hardened Marine confidential containment safe, guaranteed thermite resistant, explosion resistant, and assistant resistant.\"" + }, +/obj/effect/spawner/random/heretic_gateway, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"ps" = ( +/obj/structure/table, +/obj/structure/sink{ + dir = 8; + pixel_y = 6; + pixel_x = 13 + }, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"pt" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/structure/window/reinforced/survival_pod/spawner/directional/east, +/obj/structure/window/reinforced/survival_pod/spawner/directional/north, +/obj/structure/chair/sofa/bench/tram/solo{ + dir = 8 + }, +/obj/structure/transport/linear/tram, +/obj/structure/thermoplastic/light, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"pu" = ( +/obj/structure/closet/cabinet, +/obj/effect/turf_decal/tile/dark_red/anticorner/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"pv" = ( +/turf/open/misc/beach/coast{ + dir = 1 + }, +/area/awaymission/beach/heretic) +"pw" = ( +/obj/structure/fluff/tram_rail, +/obj/effect/turf_decal/delivery, +/obj/structure/reagent_dispensers/fueltank/large{ + max_integrity = 1; + name = "Extremely fragile high capacity fuel tank" + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"px" = ( +/obj/effect/decal/remains/xeno, +/obj/machinery/light/directional/east, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"py" = ( +/obj/structure/mop_bucket/janitorialcart, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"pB" = ( +/obj/structure/railing{ + dir = 5 + }, +/obj/effect/turf_decal/stripes{ + dir = 1 + }, +/obj/effect/turf_decal/stripes{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"pC" = ( +/obj/effect/decal/cleanable/fuel_pool, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"pD" = ( +/obj/effect/turf_decal/siding/wood, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/effect/decal/cleanable/blood/tracks/xeno{ + dir = 5 + }, +/obj/structure/marker_beacon/jade, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"pF" = ( +/obj/structure/table/reinforced, +/obj/item/storage/medkit, +/obj/item/storage/medkit, +/turf/open/floor/pod/dark, +/area/awaymission/beach/heretic) +"pH" = ( +/obj/structure/fluff/tram_rail/anchor, +/obj/effect/turf_decal/delivery, +/obj/effect/gibspawner/generic/animal, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"pJ" = ( +/mob/living/basic/bot/cleanbot, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"pL" = ( +/obj/machinery/light/directional/south, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"pN" = ( +/obj/machinery/light/small/directional/south, +/obj/structure/table, +/obj/item/storage/toolbox/emergency, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"pO" = ( +/obj/effect/mapping_helpers/airlock/access/all/supply, +/obj/machinery/door/airlock{ + name = "Personal Dorm" + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"pP" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/effect/mapping_helpers/airlock/access/all/security, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/door/puzzle/keycard/highsec_access, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"pQ" = ( +/obj/item/radio/intercom/mi13/directional/west, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"pU" = ( +/obj/structure/falsewall, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"pW" = ( +/obj/structure/table, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"pX" = ( +/obj/structure/fluff/bus/dense{ + icon_state = "frontwallbottomrear" + }, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"pY" = ( +/obj/effect/decal/cleanable/dirt, +/obj/item/shard, +/obj/item/stack/sheet/iron/five, +/obj/item/stack/cable_coil/thirty, +/turf/open/floor/iron/textured, +/area/awaymission/caves/heretic_laboratory) +"qb" = ( +/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, +/obj/effect/turf_decal/tile/bar/half/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"qc" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/tile/dark_green/half{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"qe" = ( +/obj/structure/closet/secure_closet/personal/cabinet, +/obj/effect/spawner/random/heretic_gateway, +/obj/effect/blessing/invisible, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"qg" = ( +/obj/item/clothing/glasses/meson, +/turf/open/floor/black, +/area/awaymission/caves/heretic_laboratory_clean) +"qk" = ( +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"ql" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored{ + dir = 8 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"qm" = ( +/obj/machinery/door/airlock/hatch, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/door/puzzle/keycard/heretic_entrance, +/obj/effect/mapping_helpers/airlock/access/all/supply, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"qn" = ( +/obj/effect/decal/cleanable/blood/tracks/xeno, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"qp" = ( +/obj/structure/toilet{ + pixel_y = 18 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"qq" = ( +/obj/structure/flora/bush/jungle/b/style_random, +/obj/structure/flora/grass/jungle/a/style_random, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"qr" = ( +/obj/effect/mapping_helpers/airlock/access/all/supply, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"qt" = ( +/obj/structure/cable, +/obj/machinery/power/port_gen/pacman/pre_loaded, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"qu" = ( +/obj/machinery/light/directional/west, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"qv" = ( +/obj/structure/mineral_door/wood, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"qA" = ( +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/tile/blue/opposingcorners, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"qB" = ( +/obj/structure/disposalpipe/segment, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 8 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"qC" = ( +/obj/item/clothing/head/utility/radiation/cbrnhood, +/obj/item/clothing/suit/utility/radiation/cbrnsuit, +/obj/structure/closet/cabinet, +/obj/effect/turf_decal/tile/dark/opposingcorners, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"qE" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/textured, +/area/awaymission/caves/heretic_laboratory) +"qG" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, +/obj/effect/turf_decal/siding/corner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/blue/filled/corner{ + dir = 1 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"qI" = ( +/obj/structure/fluff/tram_rail/anchor{ + dir = 1 + }, +/obj/effect/turf_decal/delivery, +/obj/structure/reagent_dispensers/fueltank/large{ + max_integrity = 1; + name = "Extremely fragile high capacity fuel tank" + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"qK" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"qL" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"qM" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"qO" = ( +/obj/structure/bed/double, +/obj/item/bedsheet/green/double, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"qP" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"qT" = ( +/obj/structure/chair, +/obj/effect/turf_decal/box, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"qU" = ( +/obj/item/bedsheet/black/double{ + dir = 4; + pixel_x = 0; + pixel_y = 2 + }, +/obj/structure/bed/double{ + dir = 4 + }, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"qV" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"qW" = ( +/obj/structure/toilet{ + dir = 4; + pixel_x = -2 + }, +/turf/open/floor/iron/white, +/area/awaymission/beach/heretic) +"qY" = ( +/obj/effect/turf_decal/tile/purple{ + dir = 1 + }, +/obj/effect/turf_decal/tile/dark_green{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"rc" = ( +/obj/machinery/door/airlock{ + name = "Employees Only"; + dir = 4 + }, +/turf/open/floor/iron/white/textured_large, +/area/awaymission/beach/heretic) +"rf" = ( +/obj/machinery/light/directional/west, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"rh" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/effect/turf_decal/siding/wood, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"ri" = ( +/obj/effect/turf_decal/siding/blue/corner{ + dir = 1 + }, +/obj/effect/turf_decal/siding/blue/corner{ + dir = 8 + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"rl" = ( +/obj/effect/turf_decal/siding/blue/corner{ + dir = 1 + }, +/obj/machinery/light/directional/east, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"rt" = ( +/obj/item/bedsheet/black/double{ + dir = 4; + pixel_x = 0; + pixel_y = 10 + }, +/obj/structure/bed/double{ + dir = 4 + }, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"ru" = ( +/obj/structure/table, +/obj/machinery/reagentgrinder, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"rx" = ( +/obj/structure/bed/double, +/obj/effect/spawner/random/bedsheet/double, +/obj/effect/turf_decal/tile/dark_green/anticorner/contrasted, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"ry" = ( +/obj/structure/table, +/obj/item/book/bible, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"rA" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 9 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"rB" = ( +/obj/structure/table/reinforced, +/obj/item/storage/medkit/brute, +/obj/item/storage/medkit/brute, +/turf/open/floor/pod/light, +/area/awaymission/beach/heretic) +"rC" = ( +/obj/structure/chair/wood{ + dir = 8 + }, +/turf/open/floor/carpet/green, +/area/awaymission/beach/heretic) +"rF" = ( +/obj/machinery/light/directional/east, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"rG" = ( +/obj/effect/decal/cleanable/rubble, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"rK" = ( +/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, +/obj/machinery/door/puzzle/keycard/biological_anomalies, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"rM" = ( +/obj/structure/fluff/beach_umbrella/syndi, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"rN" = ( +/obj/structure/rack, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"rP" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/tile/yellow/half/contrasted, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"rR" = ( +/obj/effect/turf_decal/siding/blue{ + dir = 4 + }, +/obj/effect/turf_decal/siding/blue/corner{ + dir = 8 + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"rS" = ( +/mob/living/basic/construct/harvester, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/dark_red/fourcorners, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"rT" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "p"; + pixel_x = -8; + pixel_y = 1 + }, +/obj/structure/fluff/tram_rail, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"rU" = ( +/obj/structure/window/spawner/directional/east, +/obj/structure/window/spawner/directional/south, +/obj/structure/window/spawner/directional/north, +/obj/structure/table, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"rX" = ( +/obj/structure/closet/cabinet, +/obj/effect/spawner/random/heretic_gateway_low, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"sa" = ( +/obj/effect/turf_decal/siding/blue{ + dir = 4 + }, +/obj/effect/turf_decal/siding/blue/corner{ + dir = 1 + }, +/obj/effect/turf_decal/siding/blue/corner{ + dir = 8 + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"sb" = ( +/obj/effect/turf_decal/siding/blue/corner{ + dir = 4 + }, +/obj/effect/turf_decal/siding/blue/corner{ + dir = 1 + }, +/obj/machinery/light/directional/west, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"sc" = ( +/obj/structure/fluff/tram_rail, +/obj/structure/thermoplastic/light, +/obj/structure/window/reinforced/survival_pod/spawner/directional/east, +/obj/structure/window/reinforced/survival_pod/spawner/directional/south, +/obj/structure/chair/sofa/bench/tram/solo{ + dir = 8 + }, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory) +"sd" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/item/flashlight/lantern/on, +/turf/open/floor/black, +/area/awaymission/caves/heretic_laboratory_clean) +"se" = ( +/turf/open/floor/pod/dark, +/area/awaymission/beach/heretic) +"sf" = ( +/obj/machinery/vending/donksofttoyvendor, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"sg" = ( +/obj/structure/disposalpipe/junction/flip{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 8 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"sj" = ( +/obj/effect/decal/cleanable/blood/oil/slippery, +/turf/open/floor/iron/textured, +/area/awaymission/caves/heretic_laboratory) +"sk" = ( +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 10 + }, +/obj/structure/sink{ + dir = 4; + pixel_x = -12 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"so" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/tile/bar/half/contrasted, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"sp" = ( +/obj/machinery/light/small/directional/south, +/turf/open/floor/carpet, +/area/awaymission/beach/heretic) +"sq" = ( +/obj/machinery/light/very_dim/directional/west, +/obj/machinery/suit_storage_unit/industrial, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"sr" = ( +/obj/machinery/computer/crew{ + dir = 4 + }, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"ss" = ( +/obj/item/clothing/shoes/combat/swat, +/obj/item/clothing/gloves/combat, +/obj/item/clothing/mask/gas/atmos, +/obj/item/clothing/glasses/meson, +/obj/structure/closet/cabinet, +/obj/item/clothing/under/rank/centcom/military/eng, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"sw" = ( +/obj/structure/disposalpipe/segment, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory_clean) +"sx" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"sy" = ( +/obj/structure/table, +/obj/machinery/microwave, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"sA" = ( +/obj/machinery/door/airlock{ + name = "Employees Only" + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"sC" = ( +/obj/structure/flora/bush/jungle/a/style_random, +/mob/living/basic/venus_human_trap, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"sD" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"sF" = ( +/obj/machinery/vending/medical, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"sG" = ( +/obj/machinery/door/airlock/maintenance, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"sJ" = ( +/obj/structure/table, +/obj/item/storage/medkit/brute{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/storage/medkit/brute, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"sK" = ( +/obj/effect/turf_decal/tile/purple/half/contrasted{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"sL" = ( +/obj/structure/flora/grass/jungle/a/style_random, +/obj/item/seeds/replicapod, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"sM" = ( +/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, +/obj/machinery/door/puzzle/keycard/misc_anomalies, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"sN" = ( +/obj/item/radio/intercom/mi13/directional/south, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"sO" = ( +/obj/effect/turf_decal/tile/dark/opposingcorners, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/item/radio/intercom/mi13/directional/south, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"sS" = ( +/obj/effect/turf_decal/siding/wood/corner{ + dir = 4 + }, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"sU" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/effect/turf_decal/tile/dark_green/half{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"sZ" = ( +/obj/structure/table, +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"ta" = ( +/obj/structure/mineral_door/wood, +/turf/open/floor/stone, +/area/awaymission/beach/heretic) +"tb" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/item/screwdriver, +/obj/item/crowbar, +/obj/item/multitool, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"tc" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"td" = ( +/obj/machinery/vending/wardrobe/chef_wardrobe, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"te" = ( +/turf/closed/wall/mineral/wood/nonmetal, +/area/awaymission/beach/heretic) +"tf" = ( +/obj/effect/turf_decal/delivery, +/obj/structure/barricade/wooden, +/obj/structure/barricade/wooden/crude, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"tg" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/machinery/light/small/directional/west, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"tl" = ( +/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, +/obj/effect/blessing/invisible, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"tm" = ( +/obj/structure/flora/rock, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"to" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/wood/parquet, +/area/awaymission/caves/heretic_laboratory) +"tq" = ( +/obj/effect/spawner/structure/window, +/obj/structure/curtain/cloth/fancy, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"tr" = ( +/obj/machinery/light/small/directional/east, +/turf/open/floor/iron/white, +/area/awaymission/beach/heretic) +"ts" = ( +/obj/machinery/light/directional/west, +/obj/effect/blessing/invisible, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"ty" = ( +/obj/machinery/door/airlock/hatch, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/carpet/purple, +/area/awaymission/caves/heretic_laboratory) +"tA" = ( +/obj/machinery/light/directional/west, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"tB" = ( +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/effect/mapping_helpers/airlock/access/all/security, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"tD" = ( +/obj/structure/railing{ + dir = 4 + }, +/obj/effect/turf_decal/stripes{ + dir = 4 + }, +/turf/open/floor/iron/stairs/right, +/area/awaymission/beach/heretic) +"tJ" = ( +/obj/effect/turf_decal/siding/wood, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"tL" = ( +/obj/effect/turf_decal/tile/purple/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"tM" = ( +/obj/structure/chair/stool/directional/south, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory) +"tN" = ( +/obj/machinery/conveyor/auto{ + dir = 9 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"tP" = ( +/obj/structure/barricade/wooden, +/obj/structure/barricade/wooden/crude, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"tQ" = ( +/obj/machinery/light/small/directional/south, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"tR" = ( +/obj/effect/spawner/message_in_a_bottle/low_prob, +/turf/open/water/beach, +/area/awaymission/beach/heretic) +"tS" = ( +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"tU" = ( +/obj/effect/turf_decal/tile/purple/half/contrasted{ + dir = 1 + }, +/obj/machinery/light/directional/north, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"tX" = ( +/obj/machinery/shower/directional/west, +/obj/structure/window/spawner/directional/north, +/obj/structure/curtain, +/obj/machinery/door/window/right/directional/west, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"tY" = ( +/obj/item/binoculars, +/turf/open/floor/black, +/area/awaymission/caves/heretic_laboratory_clean) +"tZ" = ( +/obj/machinery/light/small/directional/west, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"ua" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/tile/bar/fourcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"uc" = ( +/obj/effect/turf_decal/tile/purple/anticorner/contrasted, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"ue" = ( +/obj/structure/flora/coconuts, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"uf" = ( +/obj/effect/decal/cleanable/rubble, +/obj/structure/flora/rock/pile, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"ug" = ( +/obj/structure/fluff/tram_rail, +/obj/structure/transport/linear/tram, +/obj/structure/thermoplastic/light, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"uh" = ( +/obj/effect/turf_decal/trimline/blue/filled/corner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/blue/filled/corner, +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"uj" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"ul" = ( +/obj/item/radio/intercom/mi13/directional/north, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"um" = ( +/turf/open/floor/iron/textured, +/area/awaymission/caves/heretic_laboratory) +"un" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"up" = ( +/obj/effect/turf_decal/trimline/blue/filled/corner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/blue/filled/corner{ + dir = 8 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"uq" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"us" = ( +/obj/structure/flora/bush/jungle/c/style_random, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"ut" = ( +/obj/structure/sink/directional/west, +/obj/machinery/light/directional/north, +/turf/open/floor/iron/freezer, +/area/awaymission/caves/heretic_laboratory) +"uu" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/turf/open/floor/carpet, +/area/awaymission/beach/heretic) +"uy" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/indestructible/plating, +/area/awaymission/caves/heretic_laboratory) +"uz" = ( +/turf/closed/wall/mineral/uranium, +/area/awaymission/beach/heretic) +"uA" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/structure/holosign/barrier/atmos/tram, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"uB" = ( +/obj/structure/closet/cabinet, +/obj/item/book/random, +/turf/open/floor/carpet/purple, +/area/awaymission/caves/heretic_laboratory) +"uE" = ( +/obj/structure/table, +/obj/machinery/light/floor, +/obj/item/fake_items/abductor_win_stick, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"uH" = ( +/obj/structure/fluff/tram_rail, +/obj/structure/window/reinforced/survival_pod/spawner/directional/east, +/obj/structure/window/reinforced/survival_pod/spawner/directional/south, +/obj/structure/chair/sofa/bench/tram/solo{ + dir = 8 + }, +/obj/structure/transport/linear/tram, +/obj/structure/thermoplastic/light, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"uI" = ( +/obj/effect/turf_decal/trimline/blue/filled/corner, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"uJ" = ( +/obj/machinery/door/airlock{ + name = "Personal Dorm" + }, +/obj/effect/mapping_helpers/airlock/access/all/away/general, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory) +"uK" = ( +/obj/effect/decal/cleanable/fuel_pool, +/obj/structure/holosign/barrier/engineering, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"uL" = ( +/obj/machinery/power/port_gen/pacman/pre_loaded, +/turf/open/misc/dirt/jungle, +/area/awaymission/beach/heretic) +"uM" = ( +/obj/structure/table/glass, +/obj/item/storage/medkit/regular, +/obj/item/stack/medical/gauze, +/obj/item/stack/medical/suture, +/obj/effect/turf_decal/siding{ + dir = 10 + }, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 10 + }, +/turf/open/floor/iron/white/smooth_large, +/area/awaymission/caves/heretic_laboratory) +"uN" = ( +/obj/machinery/light/floor, +/obj/item/slimepotion/lovepotion, +/obj/item/slimepotion/lovepotion, +/obj/structure/closet/crate/freezer, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"uO" = ( +/obj/structure/chair/wood{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/awaymission/beach/heretic) +"uQ" = ( +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/tile/dark_green/half/contrasted, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"uR" = ( +/obj/structure/sign/poster/official/here_for_your_safety/directional/east, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"uS" = ( +/mob/living/basic/trooper/nanotrasen/ranged/smg/peaceful, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"uT" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/effect/turf_decal/stripes{ + dir = 8 + }, +/turf/open/floor/iron/stairs/left, +/area/awaymission/beach/heretic) +"uV" = ( +/obj/machinery/door/airlock/highsecurity, +/obj/effect/mapping_helpers/airlock/locked, +/obj/effect/turf_decal/stripes{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"uW" = ( +/obj/effect/decal/cleanable/blood/oil/slippery, +/obj/effect/spawner/random/structure/shipping_container, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"uX" = ( +/obj/structure/table, +/obj/machinery/light/floor, +/obj/item/gun/energy/disabler/smoothbore, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"va" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/carpet/purple, +/area/awaymission/caves/heretic_laboratory) +"vb" = ( +/obj/structure/fluff/tram_rail/anchor{ + dir = 1 + }, +/obj/structure/holosign/barrier/atmos/tram, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"vd" = ( +/obj/structure/closet/crate/secure/trashcart/filled, +/obj/effect/spawner/random/heretic_gateway_low, +/turf/open/misc/dirt/jungle, +/area/awaymission/beach/heretic) +"vf" = ( +/obj/structure/closet/secure_closet/personal/cabinet, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory_clean) +"vj" = ( +/obj/machinery/vending/medical, +/obj/machinery/light/directional/west, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"vk" = ( +/obj/effect/blessing/invisible, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"vm" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"vn" = ( +/obj/structure/closet/cabinet, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/effect/spawner/random/heretic_gateway_low, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"vo" = ( +/obj/structure/cable, +/obj/machinery/power/floodlight, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"vp" = ( +/obj/machinery/washing_machine, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"vq" = ( +/obj/structure/closet/cardboard, +/obj/item/reagent_containers/cup/glass/waterbottle/large, +/obj/item/reagent_containers/cup/glass/waterbottle/large, +/obj/item/reagent_containers/cup/glass/waterbottle/large, +/obj/item/reagent_containers/cup/glass/waterbottle/large, +/obj/item/reagent_containers/cup/glass/waterbottle/large, +/obj/item/reagent_containers/cup/glass/waterbottle/large, +/obj/item/reagent_containers/cup/glass/waterbottle/large, +/obj/item/reagent_containers/cup/glass/waterbottle/large, +/obj/item/reagent_containers/cup/glass/waterbottle/large, +/obj/item/reagent_containers/cup/glass/waterbottle/large, +/obj/effect/spawner/random/heretic_gateway_low, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"vr" = ( +/obj/effect/mapping_helpers/airlock/access/all/admin, +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"vs" = ( +/obj/machinery/light/directional/west, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"vt" = ( +/obj/machinery/vending/medical, +/obj/machinery/light/directional/east, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"vu" = ( +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"vv" = ( +/obj/structure/table, +/obj/machinery/recharger{ + pixel_y = 4 + }, +/obj/effect/turf_decal/tile/dark/opposingcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"vw" = ( +/obj/effect/decal/cleanable/blood/tracks/xeno{ + dir = 8 + }, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"vx" = ( +/obj/effect/mapping_helpers/airlock/access/all/service, +/obj/machinery/door/airlock{ + name = "Kitchen" + }, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"vy" = ( +/obj/effect/turf_decal/siding/blue/corner{ + dir = 8 + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"vB" = ( +/obj/structure/closet/l3closet, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"vF" = ( +/obj/effect/landmark/transport/nav_beacon/tram/nav/heretic, +/obj/effect/landmark/transport/nav_beacon/tram/platform/heretic/middle, +/obj/structure/transport/linear/tram, +/obj/structure/thermoplastic/light, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"vI" = ( +/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack{ + pixel_y = 8; + pixel_x = -15; + anchored = 1; + name = "Sam Site Missle rack" + }, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"vK" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"vL" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"vN" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, +/obj/effect/turf_decal/siding{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 1 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"vO" = ( +/obj/machinery/light/directional/north, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"vR" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"vS" = ( +/obj/structure/window/reinforced/spawner/directional/north, +/obj/structure/window/reinforced/spawner/directional/west, +/obj/item/kirbyplants/random, +/turf/open/floor/iron/white/smooth_large, +/area/awaymission/caves/heretic_laboratory) +"vT" = ( +/obj/effect/mapping_helpers/burnt_floor, +/obj/effect/gibspawner/human, +/turf/open/floor/iron/textured, +/area/awaymission/caves/heretic_laboratory) +"vU" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "p"; + pixel_x = -8; + pixel_y = 1 + }, +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"vY" = ( +/obj/effect/decal/cleanable/glass/plastitanium, +/obj/effect/spawner/random/structure/shipping_container, +/turf/open/floor/iron/textured, +/area/awaymission/caves/heretic_laboratory) +"wa" = ( +/obj/structure/mineral_door/wood, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"wb" = ( +/obj/structure/closet, +/obj/item/shovel, +/obj/item/bodybag, +/turf/open/floor/stone, +/area/awaymission/beach/heretic) +"wc" = ( +/obj/machinery/light/small/directional/north, +/turf/open/floor/iron/white/textured_large, +/area/awaymission/beach/heretic) +"wd" = ( +/obj/structure/disposalpipe/segment, +/obj/effect/turf_decal/trimline/blue/filled/corner{ + dir = 8 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"we" = ( +/turf/open/floor/iron/cafeteria, +/area/awaymission/caves/heretic_laboratory_clean) +"wf" = ( +/turf/closed/wall/mineral/titanium, +/area/awaymission/beach/heretic) +"wh" = ( +/obj/machinery/conveyor/auto{ + dir = 8 + }, +/turf/open/floor/plating/airless, +/area/awaymission/caves/heretic_laboratory_clean) +"wi" = ( +/turf/closed/indestructible/riveted, +/area/awaymission/caves/heretic_laboratory_clean) +"wl" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/door/puzzle/keycard/highsec_access, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"wm" = ( +/obj/item/broken_bottle, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"wn" = ( +/turf/open/floor/plating/airless, +/area/awaymission/caves/heretic_laboratory_clean) +"wq" = ( +/obj/structure/chair/stool/bar/directional/south, +/obj/effect/turf_decal/tile/green/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"ws" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/effect/turf_decal/siding/wood/corner, +/obj/machinery/camera/xray/directional/north, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"wt" = ( +/mob/living/basic/heretic_summon/stalker, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"wu" = ( +/obj/effect/turf_decal/sand, +/obj/effect/turf_decal/weather/sand{ + dir = 1 + }, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"wy" = ( +/obj/machinery/light/directional/west, +/obj/effect/turf_decal/tile/green/anticorner/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"wz" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"wC" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"wD" = ( +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/tile/purple/half{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"wE" = ( +/obj/structure/chair/office{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/wood/parquet, +/area/awaymission/caves/heretic_laboratory) +"wF" = ( +/obj/machinery/suit_storage_unit, +/turf/open/floor/pod/dark, +/area/awaymission/beach/heretic) +"wH" = ( +/obj/structure/table/glass, +/obj/item/storage/medkit/regular, +/obj/effect/turf_decal/siding{ + dir = 5 + }, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 5 + }, +/turf/open/floor/iron/white/smooth_large, +/area/awaymission/caves/heretic_laboratory) +"wI" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/purple/half{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"wJ" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "j"; + pixel_x = -14; + pixel_y = 2 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "u"; + pixel_x = -4; + pixel_y = 1 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "m"; + pixel_x = 10; + pixel_y = 1 + }, +/obj/structure/fluff/tram_rail, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"wL" = ( +/obj/structure/table/reinforced, +/obj/machinery/button/transport/tram{ + specific_transport_id = "heretic_1"; + pixel_y = 8; + id = 3 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"wM" = ( +/obj/effect/spawner/random/trash/garbage, +/turf/open/misc/dirt/jungle, +/area/awaymission/beach/heretic) +"wN" = ( +/obj/structure/projected_forcefield, +/obj/effect/oneway{ + dir = 1 + }, +/turf/open/floor/mineral/titanium, +/area/awaymission/caves/heretic_laboratory_clean) +"wO" = ( +/turf/open/misc/beach/coast/corner{ + dir = 4 + }, +/area/awaymission/caves/heretic_laboratory_clean) +"wP" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/pink/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/bridge_pipe/green/visible, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"wR" = ( +/obj/structure/chair/office{ + dir = 1 + }, +/turf/open/floor/iron/white/textured_large, +/area/awaymission/beach/heretic) +"wT" = ( +/obj/machinery/door/puzzle/keycard/heretic_entrance, +/obj/machinery/conveyor/auto{ + dir = 1 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"wX" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"wY" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "d"; + pixel_x = -15; + pixel_y = 6 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "a"; + pixel_x = -6; + pixel_y = 4 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "n"; + pixel_x = 4; + pixel_y = 4 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "g"; + pixel_x = 16; + pixel_y = 3 + }, +/turf/open/floor/iron/textured, +/area/awaymission/caves/heretic_laboratory) +"wZ" = ( +/obj/effect/turf_decal/stripes/box, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"xa" = ( +/obj/machinery/computer/pod/old/mass_driver_controller/feeder{ + pixel_x = 24 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"xb" = ( +/obj/machinery/vending/sustenance, +/obj/effect/turf_decal/tile/bar/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"xd" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"xe" = ( +/obj/machinery/light/directional/west, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"xi" = ( +/obj/effect/spawner/random/trash/hobo_squat, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"xj" = ( +/obj/structure/table/glass, +/obj/effect/turf_decal/tile/green/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"xk" = ( +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/effect/mapping_helpers/airlock/access/all/admin, +/obj/machinery/door/puzzle/keycard/weapon_anomalies, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"xl" = ( +/turf/closed/indestructible/reinforced, +/area/awaymission/caves/heretic_laboratory_clean) +"xm" = ( +/obj/effect/turf_decal/tile/dark/half{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"xn" = ( +/obj/structure/fluff/bus/dense{ + icon_state = "reartire" + }, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"xo" = ( +/obj/structure/table/wood, +/obj/item/pen, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"xr" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/turf/open/floor/carpet/purple, +/area/awaymission/caves/heretic_laboratory) +"xs" = ( +/obj/effect/turf_decal/siding/blue, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"xu" = ( +/obj/effect/spawner/structure/window, +/obj/structure/curtain/cloth, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"xv" = ( +/obj/structure/table/glass, +/obj/item/reagent_containers/cup/beaker/cryoxadone{ + pixel_x = -6; + pixel_y = 10 + }, +/obj/item/reagent_containers/cup/beaker/cryoxadone{ + pixel_x = 6; + pixel_y = 10 + }, +/obj/item/wrench/medical, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"xx" = ( +/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, +/obj/machinery/door/puzzle/keycard/weapon_anomalies, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"xB" = ( +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"xC" = ( +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"xD" = ( +/obj/machinery/deepfryer, +/turf/open/floor/iron/cafeteria, +/area/awaymission/caves/heretic_laboratory_clean) +"xE" = ( +/obj/effect/turf_decal/weather/sand, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"xF" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/turf/open/floor/carpet, +/area/awaymission/beach/heretic) +"xG" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"xH" = ( +/obj/effect/turf_decal/trimline/red/filled, +/obj/item/mecha_ammo/missiles_srm{ + pixel_y = 3; + name = "Sam Site Missiles"; + anchored = 1 + }, +/obj/item/mecha_ammo/missiles_srm{ + pixel_y = 10; + name = "Sam Site Missiles"; + anchored = 1 + }, +/obj/structure/rack, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"xI" = ( +/obj/item/bedsheet/black/double{ + dir = 4; + pixel_x = 0; + pixel_y = 6 + }, +/obj/structure/bed/double{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"xJ" = ( +/obj/machinery/door/poddoor/shutters/indestructible, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"xM" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "d"; + pixel_x = -15; + pixel_y = 6 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "a"; + pixel_x = -6; + pixel_y = 4 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "n"; + pixel_x = 4; + pixel_y = 4 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "g"; + pixel_x = 16; + pixel_y = 3 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"xO" = ( +/obj/effect/turf_decal/tile/purple/half{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"xQ" = ( +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"xS" = ( +/obj/structure/window/fulltile, +/obj/structure/flora/bush/ferny/style_random, +/obj/structure/flora/bush/flowers_br/style_random, +/turf/open/floor/grass, +/area/awaymission/caves/heretic_laboratory) +"xT" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"xW" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/tile/bar/opposingcorners, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"xY" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"ya" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"yb" = ( +/obj/machinery/conveyor/auto/inverted{ + dir = 6 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"yc" = ( +/mob/living/basic/heretic_summon/stalker, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"yd" = ( +/obj/structure/table, +/obj/item/ammo_box/magazine/lahtimagazine{ + anchored = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory_clean) +"ye" = ( +/obj/effect/mapping_helpers/burnt_floor, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"yg" = ( +/obj/effect/spawner/structure/window/reinforced/tinted, +/obj/machinery/door/puzzle/keycard/weapon_anomalies, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"yj" = ( +/obj/structure/closet/crate/bin, +/obj/effect/spawner/random/heretic_gateway_low, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"yk" = ( +/obj/structure/curtain/cloth/fancy/mechanical/start_closed, +/obj/effect/spawner/structure/window/reinforced/shuttle, +/turf/open/floor/pod/light, +/area/awaymission/beach/heretic) +"yo" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"yp" = ( +/obj/structure/table, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"yu" = ( +/obj/structure/fluff/tram_rail/anchor, +/obj/structure/fluff/tram_rail, +/obj/structure/thermoplastic/light, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory) +"yw" = ( +/obj/structure/table, +/obj/machinery/light/floor, +/obj/item/clothing/shoes/gunboots/disabler, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"yx" = ( +/obj/effect/turf_decal/tile/blue/anticorner/contrasted, +/obj/item/radio/intercom/mi13/directional/south, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"yz" = ( +/obj/item/stack/ore/uranium, +/obj/item/coin/uranium, +/obj/item/stack/sheet/mineral/uranium, +/obj/item/stack/sheet/mineral/uranium, +/obj/item/stack/sheet/mineral/uranium, +/obj/structure/closet/crate/wooden, +/obj/item/nuke_core{ + anchored = 1 + }, +/turf/open/floor/mineral/uranium, +/area/awaymission/beach/heretic) +"yA" = ( +/obj/effect/turf_decal/delivery, +/obj/effect/decal/remains/human, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"yD" = ( +/obj/effect/turf_decal/siding/blue{ + dir = 8 + }, +/obj/effect/turf_decal/siding/blue{ + dir = 4 + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"yE" = ( +/obj/machinery/telecomms/hub, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"yF" = ( +/obj/item/binoculars, +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"yG" = ( +/obj/structure/closet/athletic_mixed, +/turf/open/floor/iron/white/textured_large, +/area/awaymission/beach/heretic) +"yI" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/effect/turf_decal/tile/bar/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"yJ" = ( +/obj/effect/turf_decal/trimline/blue/filled/corner{ + dir = 1 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"yK" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"yL" = ( +/obj/machinery/door/airlock{ + name = "Personal Dorm" + }, +/obj/effect/mapping_helpers/airlock/access/all/security, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"yM" = ( +/obj/effect/turf_decal/tile/purple/half{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/item/radio/intercom/mi13/directional/west, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"yN" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/dark_red/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"yO" = ( +/obj/structure/chair/plastic, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"yQ" = ( +/obj/effect/turf_decal/siding/blue, +/obj/effect/turf_decal/siding/blue/corner{ + dir = 4 + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"yS" = ( +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory_clean) +"yV" = ( +/obj/machinery/conveyor/auto{ + dir = 1 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"yW" = ( +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"yX" = ( +/obj/effect/decal/cleanable/blood/tracks, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"yZ" = ( +/obj/machinery/door/airlock/hatch, +/obj/structure/barricade/wooden, +/obj/structure/barricade/wooden/crude, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"za" = ( +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/tile/bar/half/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"zb" = ( +/obj/effect/turf_decal/tile/neutral/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"zc" = ( +/obj/effect/light_emitter/fake_outdoors, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"ze" = ( +/obj/structure/window/reinforced/plasma/spawner/directional/east, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"zh" = ( +/obj/structure/fluff/tram_rail/anchor{ + dir = 1 + }, +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory) +"zk" = ( +/mob/living/basic/trooper/nanotrasen/peaceful, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"zl" = ( +/obj/structure/falsewall, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"zo" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 1 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"zr" = ( +/obj/effect/decal/cleanable/plasma, +/obj/structure/holosign/barrier/engineering, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"zs" = ( +/obj/effect/turf_decal/trimline/blue/filled/corner{ + dir = 8 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"zu" = ( +/obj/item/reagent_containers/cup/soda_cans/space_mountain_wind{ + pixel_x = -17; + pixel_y = 17 + }, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"zv" = ( +/obj/structure/table/wood, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"zE" = ( +/obj/structure/bookcase/random, +/obj/effect/blessing/invisible, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"zF" = ( +/obj/structure/fluff/tram_rail/anchor{ + dir = 1 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"zH" = ( +/obj/machinery/light/directional/west, +/turf/open/floor/stone, +/area/awaymission/beach/heretic) +"zI" = ( +/obj/machinery/light/floor, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"zK" = ( +/obj/effect/decal/cleanable/rubble, +/obj/structure/flora/rock, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"zO" = ( +/mob/living/basic/rabbit{ + name = "Primal force of evil"; + desc = "Why is this bunny being put in a cell this extreme and why does it have a nametag that says 'hello my name is: SATAN'" + }, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"zQ" = ( +/turf/closed/indestructible/reinforced, +/area/awaymission/beach/heretic) +"zR" = ( +/obj/structure/flora/rock/pile/style_random, +/turf/open/misc/dirt/jungle, +/area/awaymission/beach/heretic) +"zS" = ( +/obj/structure/chair/sofa/bench, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"zT" = ( +/obj/structure/table/wood/fancy, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"zV" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/visible, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"zW" = ( +/obj/machinery/door/airlock/highsecurity, +/obj/effect/mapping_helpers/airlock/access/all/away/general, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"zZ" = ( +/obj/structure/fluff/bus/dense{ + icon_state = "frontwallbottom" + }, +/obj/effect/decal/cleanable/blood/oil, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"Ac" = ( +/obj/machinery/light/small/directional/west, +/turf/open/floor/carpet, +/area/awaymission/beach/heretic) +"Ae" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, +/obj/structure/cable, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Af" = ( +/obj/structure/window/spawner/directional/north, +/obj/structure/window/spawner/directional/south, +/obj/structure/flora/bush/jungle/c/style_random, +/turf/open/misc/grass/jungle, +/area/awaymission/caves/heretic_laboratory) +"Ag" = ( +/obj/structure/dresser, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory) +"Ai" = ( +/obj/item/seeds/nettle/death, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"Am" = ( +/obj/structure/flora/bush/grassy/style_random, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"Ao" = ( +/obj/structure/fluff/tram_rail, +/obj/effect/turf_decal/delivery, +/obj/item/stack/sheet/mineral/wood, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Ap" = ( +/obj/structure/fluff/bus/dense{ + icon_state = "hoodbottom" + }, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"Aq" = ( +/obj/effect/decal/cleanable/glass/plastitanium, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/tile/yellow/half/contrasted, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"As" = ( +/obj/machinery/door/window/survival_pod/left/directional/east, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"At" = ( +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Av" = ( +/obj/machinery/door/airlock/hatch, +/obj/structure/barricade/wooden, +/obj/structure/barricade/wooden/crude, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Aw" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible{ + dir = 4 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Ax" = ( +/obj/effect/turf_decal/siding/wood/corner, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"Ay" = ( +/obj/effect/mapping_helpers/airlock/access/all/service, +/obj/machinery/door/airlock/glass{ + name = "Bar" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Az" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"AA" = ( +/obj/structure/flora/bush/jungle/c/style_random, +/obj/effect/decal/cleanable/blood/tracks/xeno{ + dir = 8 + }, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"AB" = ( +/obj/machinery/light/directional/west, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"AC" = ( +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/effect/turf_decal/tile/bar/half/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"AD" = ( +/mob/living/basic/heretic_summon/stalker, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"AG" = ( +/obj/structure/bookcase/random, +/obj/machinery/light/directional/east, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"AI" = ( +/obj/effect/turf_decal/tile/purple/half{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"AJ" = ( +/obj/structure/toilet{ + dir = 4; + pixel_x = -2 + }, +/obj/structure/window/spawner/directional/south, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"AK" = ( +/obj/effect/decal/cleanable/blood/tracks/xeno{ + dir = 5 + }, +/turf/open/floor/mineral/uranium, +/area/awaymission/beach/heretic) +"AL" = ( +/obj/structure/table/wood, +/obj/item/book/manual/ripley_build_and_repair, +/obj/machinery/light/small/directional/north, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"AM" = ( +/obj/structure/table, +/obj/machinery/light/small/directional/north, +/turf/open/floor/iron/white/textured_large, +/area/awaymission/beach/heretic) +"AO" = ( +/obj/effect/mapping_helpers/burnt_floor, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"AP" = ( +/obj/structure/chair/plastic, +/obj/effect/turf_decal/tile/blue/opposingcorners, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"AQ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"AR" = ( +/obj/item/reagent_containers/cup/soda_cans/sol_dry{ + pixel_y = 18; + pixel_x = 9 + }, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"AS" = ( +/obj/effect/turf_decal/siding/blue{ + dir = 8 + }, +/obj/effect/turf_decal/siding/blue/corner, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"AT" = ( +/obj/structure/window/reinforced/plasma/spawner/directional/south, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"AZ" = ( +/obj/structure/table/wood, +/obj/item/flashlight/lantern/on, +/turf/open/floor/plating/airless, +/area/awaymission/caves/heretic_laboratory_clean) +"Bc" = ( +/obj/item/radio/intercom/mi13/directional/east, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"Be" = ( +/obj/machinery/gateway, +/turf/open/floor/pod/dark, +/area/awaymission/beach/heretic) +"Bf" = ( +/obj/item/clothing/head/collectable/welding, +/obj/item/weldingtool, +/obj/item/stack/cable_coil/five, +/obj/item/wrench, +/obj/item/screwdriver, +/obj/structure/closet/crate, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Bg" = ( +/obj/structure/table, +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 4 + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"Bi" = ( +/obj/machinery/power/shuttle_engine/heater{ + dir = 8 + }, +/obj/machinery/door/poddoor/shutters/indestructible, +/obj/structure/window/reinforced/spawner/directional/east, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"Bj" = ( +/obj/effect/turf_decal/tile/brown/opposingcorners, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Bl" = ( +/obj/effect/turf_decal/tile/blue/opposingcorners, +/obj/structure/sign/poster/contraband/eat/directional/west, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"Bm" = ( +/obj/structure/table/wood, +/obj/structure/bedsheetbin/empty{ + name = "Towel bin" + }, +/obj/machinery/light/floor, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Bq" = ( +/obj/structure/window/reinforced/plasma/spawner/directional/west, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"Br" = ( +/obj/machinery/light/directional/south, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Bs" = ( +/obj/structure/fluff/bus/passable{ + icon_state = "topdoor" + }, +/turf/open/floor/iron/dark, +/area/awaymission/beach/heretic) +"Bv" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/tile/neutral/opposingcorners, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"Bx" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/bar/half/contrasted, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"By" = ( +/obj/machinery/iv_drip, +/obj/effect/turf_decal/siding, +/obj/effect/turf_decal/trimline/blue/filled/line, +/turf/open/floor/iron/white/smooth_large, +/area/awaymission/caves/heretic_laboratory) +"BE" = ( +/obj/machinery/teleport/station{ + name = "Forcefield generator" + }, +/obj/structure/window/reinforced/plasma/spawner/directional/south, +/obj/structure/window/reinforced/plasma/spawner/directional/west, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"BM" = ( +/obj/item/weldingtool/hugetank, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"BN" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/tile/bar/half/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"BS" = ( +/obj/structure/table, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"BU" = ( +/obj/structure/holosign/barrier/atmos/tram, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"BV" = ( +/turf/open/floor/pod/light, +/area/awaymission/beach/heretic) +"BW" = ( +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/all/supply, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"BX" = ( +/obj/structure/window/reinforced/plasma/spawner/directional/east, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"BY" = ( +/obj/structure/window/reinforced/plasma/plastitanium, +/obj/machinery/door/poddoor/shutters, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"BZ" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Ce" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"Cf" = ( +/obj/structure/flora/rock/pile/jungle/large/style_random, +/turf/open/water/jungle, +/area/awaymission/beach/heretic) +"Ci" = ( +/obj/effect/baseturf_helper/beach/sand, +/turf/closed/mineral/ash_rock, +/area/awaymission/beach/heretic) +"Ck" = ( +/obj/effect/turf_decal/trimline/blue/end{ + dir = 4 + }, +/turf/open/floor/iron/white/smooth_large, +/area/awaymission/caves/heretic_laboratory) +"Cm" = ( +/mob/living/basic/heretic_summon/stalker, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Cn" = ( +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Co" = ( +/turf/open/misc/beach/coast{ + dir = 1 + }, +/area/awaymission/caves/heretic_laboratory_clean) +"Cp" = ( +/obj/structure/toilet{ + pixel_y = 18 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory_clean) +"Cs" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + dir = 8 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Ct" = ( +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/obj/effect/decal/cleanable/blood/tracks, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Cv" = ( +/obj/effect/spawner/random/structure/shipping_container, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"Cx" = ( +/mob/living/basic/heretic_summon/maid_in_the_mirror, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/dark_green/fourcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Cy" = ( +/obj/structure/holosign/barrier/atmos/tram, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Cz" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/obj/machinery/light/small/directional/south, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"CA" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"CB" = ( +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"CC" = ( +/obj/structure/railing{ + dir = 6 + }, +/obj/effect/turf_decal/stripes, +/obj/effect/turf_decal/stripes{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"CD" = ( +/obj/machinery/shower/directional/west, +/obj/structure/fluff/shower_drain, +/obj/effect/turf_decal/box, +/turf/open/floor/iron/white/smooth_large, +/area/awaymission/caves/heretic_laboratory) +"CG" = ( +/obj/effect/turf_decal/tile/yellow/anticorner/contrasted, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"CI" = ( +/obj/effect/turf_decal/trimline/blue/line, +/obj/effect/turf_decal/trimline/blue/line{ + dir = 1 + }, +/turf/open/floor/iron/white/smooth_large, +/area/awaymission/caves/heretic_laboratory) +"CJ" = ( +/obj/structure/closet/crate/freezer/blood, +/obj/effect/turf_decal/siding{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 1 + }, +/turf/open/floor/iron/white/smooth_large, +/area/awaymission/caves/heretic_laboratory) +"CP" = ( +/obj/item/radio/intercom/mi13/directional/east, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"CQ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"CS" = ( +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"CT" = ( +/obj/effect/blessing/invisible, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"CU" = ( +/obj/item/holosign_creator/atmos, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"CV" = ( +/obj/effect/turf_decal/tile/bar/opposingcorners, +/obj/structure/closet/secure_closet/bar, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"CW" = ( +/obj/effect/turf_decal/sand, +/obj/effect/turf_decal/weather/sand{ + dir = 6 + }, +/obj/structure/closet/crate/bin, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"CX" = ( +/obj/machinery/light/directional/east, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"CZ" = ( +/obj/effect/turf_decal/tile/purple{ + dir = 8 + }, +/obj/effect/turf_decal/tile/dark{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Dc" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"Df" = ( +/obj/structure/bed/double, +/obj/item/bedsheet/hos/double, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Dg" = ( +/obj/effect/mapping_helpers/airlock/access/all/admin/captain, +/obj/machinery/door/airlock/hatch, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Di" = ( +/obj/structure/closet/secure_closet/personal/cabinet, +/obj/effect/blessing/invisible, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"Dj" = ( +/turf/closed/indestructible/rock, +/area/awaymission/beach/heretic) +"Dk" = ( +/obj/structure/fluff/tram_rail/anchor, +/obj/structure/fluff/tram_rail, +/obj/structure/thermoplastic/light, +/obj/structure/window/reinforced/survival_pod/spawner/directional/west, +/obj/structure/window/reinforced/survival_pod/spawner/directional/south, +/obj/effect/decal/remains/human, +/obj/structure/chair/comfy/beige{ + dir = 4 + }, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory) +"Dp" = ( +/obj/effect/mapping_helpers/airlock/access/all/admin/captain, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/door/airlock/hatch, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Dr" = ( +/obj/structure/chair/plastic, +/obj/effect/turf_decal/tile/blue/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"Ds" = ( +/obj/effect/turf_decal/tile/yellow/anticorner/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Dt" = ( +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 6 + }, +/obj/structure/table/reinforced, +/obj/item/reagent_containers/spray/cleaner, +/obj/item/blood_filter, +/obj/item/clothing/gloves/latex/nitrile, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Du" = ( +/obj/structure/table, +/obj/item/pizzabox/meat, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"Dx" = ( +/turf/open/misc/beach/coast{ + dir = 5 + }, +/area/awaymission/beach/heretic) +"Dz" = ( +/obj/structure/table/glass, +/obj/item/stack/medical/gauze, +/obj/item/stack/medical/mesh, +/obj/item/stack/medical/suture, +/obj/effect/turf_decal/siding{ + dir = 9 + }, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 9 + }, +/turf/open/floor/iron/white/smooth_large, +/area/awaymission/caves/heretic_laboratory) +"DB" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/effect/turf_decal/tile/bar/fourcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"DC" = ( +/obj/structure/bookcase/random, +/obj/machinery/light/directional/west, +/obj/effect/blessing/invisible, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"DG" = ( +/obj/effect/turf_decal/tile/purple/half{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"DJ" = ( +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/effect/mapping_helpers/airlock/access/all/security, +/obj/machinery/door/puzzle/keycard/biological_anomalies, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"DL" = ( +/turf/open/floor/carpet/green, +/area/awaymission/beach/heretic) +"DN" = ( +/obj/effect/spawner/random/trash/moisture_trap, +/turf/open/floor/plating/airless, +/area/awaymission/caves/heretic_laboratory_clean) +"DR" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible{ + dir = 6 + }, +/turf/closed/indestructible/reinforced, +/area/awaymission/caves/heretic_laboratory) +"DT" = ( +/obj/machinery/light/directional/north, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"DU" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 6 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/catwalk_floor/iron_dark, +/area/awaymission/caves/heretic_laboratory) +"DX" = ( +/obj/effect/turf_decal/siding/blue{ + dir = 8 + }, +/obj/machinery/light/directional/south, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"DY" = ( +/obj/effect/turf_decal/tile/dark_green/half{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"DZ" = ( +/obj/effect/decal/cleanable/blood/tracks/xeno{ + dir = 8 + }, +/turf/open/floor/mineral/uranium, +/area/awaymission/beach/heretic) +"Ea" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible{ + dir = 4 + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Eb" = ( +/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, +/obj/effect/mapping_helpers/damaged_window, +/obj/effect/turf_decal/tile/bar/half/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Ec" = ( +/obj/structure/barricade/wooden, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Eg" = ( +/obj/machinery/conveyor/auto{ + dir = 5 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Ei" = ( +/obj/structure/flora/bush/jungle/b/style_random, +/obj/effect/decal/cleanable/blood/tracks/xeno{ + dir = 8 + }, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"Ek" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 1 + }, +/turf/open/floor/iron/textured, +/area/awaymission/caves/heretic_laboratory) +"El" = ( +/obj/item/kirbyplants/random, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Em" = ( +/obj/structure/chair/wood{ + dir = 1 + }, +/turf/open/floor/carpet, +/area/awaymission/beach/heretic) +"Er" = ( +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/tile/dark/half{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Es" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/light/directional/east, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Et" = ( +/obj/effect/turf_decal/tile/purple, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Ew" = ( +/obj/effect/spawner/random/heretic_gateway_low, +/obj/structure/closet, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"Ex" = ( +/obj/structure/fluff/tram_rail/anchor{ + dir = 1 + }, +/obj/effect/turf_decal/delivery, +/obj/item/stack/sheet/mineral/wood, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Ey" = ( +/obj/structure/projected_forcefield, +/obj/effect/oneway{ + dir = 4 + }, +/turf/open/floor/mineral/titanium, +/area/awaymission/caves/heretic_laboratory_clean) +"Ez" = ( +/obj/machinery/vending/cigarette/beach, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 4 + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"EA" = ( +/obj/structure/closet/crate/grave, +/obj/effect/spawner/random/heretic_gateway_low, +/turf/open/misc/dirt/jungle, +/area/awaymission/beach/heretic) +"EF" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 10 + }, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"EG" = ( +/obj/effect/spawner/random/food_or_drink/seed_rare, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"EH" = ( +/obj/machinery/computer/shuttle/ferry/request{ + dir = 4 + }, +/turf/open/floor/pod/light, +/area/awaymission/beach/heretic) +"EI" = ( +/turf/open/water/beach, +/area/awaymission/caves/heretic_laboratory_clean) +"EJ" = ( +/turf/open/water/beach, +/area/awaymission/beach/heretic) +"EK" = ( +/obj/item/seeds/firelemon, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"EO" = ( +/obj/structure/table/glass, +/obj/item/reagent_containers/cup/beaker/cryoxadone{ + pixel_x = -6; + pixel_y = 10 + }, +/obj/item/reagent_containers/cup/beaker/cryoxadone{ + pixel_x = 6; + pixel_y = 10 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"EP" = ( +/obj/machinery/deployable_turret/hmg, +/obj/structure/railing{ + dir = 1 + }, +/obj/effect/turf_decal/stripes{ + dir = 1 + }, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"EQ" = ( +/obj/machinery/cryo_cell{ + dir = 8 + }, +/obj/machinery/light/directional/north, +/turf/open/floor/iron/white/smooth_large, +/area/awaymission/caves/heretic_laboratory) +"ER" = ( +/obj/structure/fluff/tram_rail, +/obj/structure/thermoplastic/light, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory) +"ES" = ( +/obj/machinery/shower{ + pixel_y = 15 + }, +/obj/effect/turf_decal/weather/sand, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"EX" = ( +/obj/structure/table, +/obj/item/flashlight, +/obj/item/flashlight{ + pixel_x = -3; + pixel_y = 10 + }, +/obj/item/flashlight{ + pixel_x = 5; + pixel_y = 9 + }, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"EY" = ( +/obj/effect/spawner/surgery_tray/full/morgue, +/obj/structure/table, +/turf/open/floor/stone, +/area/awaymission/beach/heretic) +"EZ" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Fa" = ( +/obj/effect/turf_decal/tile/purple{ + dir = 1 + }, +/obj/machinery/light/directional/west, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Fb" = ( +/obj/structure/table, +/obj/item/storage/medkit/emergency, +/obj/item/storage/medkit/emergency{ + pixel_x = 0; + pixel_y = 7 + }, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Fe" = ( +/obj/effect/decal/cleanable/blood/oil/slippery, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 6 + }, +/obj/effect/turf_decal/tile/yellow/half/contrasted, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"Fh" = ( +/obj/effect/turf_decal/tile/dark_red/opposingcorners, +/obj/item/gun/ballistic/shotgun/riot, +/obj/item/gun/ballistic/shotgun/riot, +/obj/item/gun/ballistic/shotgun/riot, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Fi" = ( +/obj/structure/fluff/tram_rail, +/obj/effect/turf_decal/delivery, +/obj/effect/decal/remains/robot, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Fk" = ( +/obj/structure/closet/l3closet/janitor, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Fl" = ( +/turf/open/misc/beach/coast/corner{ + dir = 1 + }, +/area/awaymission/beach/heretic) +"Fm" = ( +/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, +/obj/effect/turf_decal/tile/bar/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Fn" = ( +/obj/item/kirbyplants/organic/plant10, +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Fr" = ( +/obj/structure/fluff/tram_rail/anchor, +/obj/structure/transport/linear/tram, +/obj/structure/thermoplastic/light, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Fs" = ( +/turf/open/floor/iron/dark, +/area/awaymission/beach/heretic) +"Fu" = ( +/obj/structure/table, +/obj/machinery/light/floor, +/obj/item/fake_items/wabbajack, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"Fw" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/structure/thermoplastic/light, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory) +"Fx" = ( +/obj/structure/fluff/bus/dense{ + icon_state = "frontwallbottom" + }, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"Fy" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/on{ + dir = 8 + }, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory_clean) +"Fz" = ( +/obj/machinery/door/airlock{ + name = "Kitchen" + }, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"FB" = ( +/obj/structure/closet/cabinet, +/obj/effect/turf_decal/tile/dark_green/anticorner/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"FC" = ( +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/tile/bar/half/contrasted, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"FD" = ( +/obj/structure/table, +/obj/effect/turf_decal/tile/bar/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"FF" = ( +/obj/machinery/light/very_dim/directional/east, +/obj/structure/chair/comfy/shuttle/tactical, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"FG" = ( +/obj/structure/flora/tree/jungle/small/style_random, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"FH" = ( +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/tile/bar, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"FM" = ( +/obj/item/toy/dodgeball{ + name = "William"; + desc = "It's just not the same thing."; + pixel_y = -4; + pixel_x = 7 + }, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"FO" = ( +/obj/effect/mob_spawn/corpse/human/wizard/red, +/turf/open/misc/beach/sand, +/area/awaymission/caves/heretic_laboratory_clean) +"FP" = ( +/obj/structure/holosign/barrier/engineering, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"FQ" = ( +/obj/effect/decal/cleanable/blood/oil, +/obj/structure/holosign/barrier/engineering, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"FR" = ( +/obj/machinery/recharge_station, +/obj/effect/turf_decal/tile/dark/opposingcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"FS" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"FT" = ( +/obj/structure/toilet{ + dir = 1 + }, +/turf/open/floor/iron/white/textured_large, +/area/awaymission/beach/heretic) +"FU" = ( +/obj/effect/spawner/structure/window/reinforced/tinted, +/obj/machinery/door/puzzle/keycard/misc_anomalies, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"FW" = ( +/obj/effect/turf_decal/tile/yellow/half/contrasted, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"FX" = ( +/obj/effect/turf_decal/tile/blue/anticorner/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"FY" = ( +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"FZ" = ( +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Ga" = ( +/obj/structure/bed/double{ + dir = 4 + }, +/obj/item/bedsheet/rd/double{ + dir = 1 + }, +/turf/open/floor/carpet/purple, +/area/awaymission/caves/heretic_laboratory) +"Gb" = ( +/obj/effect/spawner/random/maintenance, +/obj/effect/spawner/random/structure/grille, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Gd" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/window/reinforced/spawner/directional/north, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"Gf" = ( +/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, +/obj/effect/mapping_helpers/damaged_window, +/obj/effect/turf_decal/tile/bar/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Gg" = ( +/obj/machinery/light/directional/west, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Gh" = ( +/turf/closed/wall/mineral/iron, +/area/awaymission/beach/heretic) +"Gi" = ( +/obj/structure/sink/directional/east, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Gj" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Gk" = ( +/obj/machinery/door/airlock/hatch, +/obj/machinery/door/puzzle/keycard/heretic_entrance, +/obj/effect/mapping_helpers/airlock/access/all/supply, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Gm" = ( +/obj/structure/flora/tree/palm{ + pixel_y = 24; + pixel_x = -7 + }, +/obj/structure/flora/coconuts, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"Go" = ( +/obj/structure/flora/bush/jungle/b/style_random, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"Gp" = ( +/mob/living/basic/bot/medbot/mysterious, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory_clean) +"Gq" = ( +/obj/structure/sign/poster/contraband/energy_swords/directional/east, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Gs" = ( +/obj/structure/table/wood/fancy, +/obj/item/flashlight/flare/candle/infinite, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"Gt" = ( +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Gu" = ( +/obj/structure/table/wood/fancy, +/obj/item/kitchen/fork, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"Gv" = ( +/obj/effect/spawner/random/vending/colavend, +/obj/machinery/light/floor, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Gw" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/siding{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 8 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Gy" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Gz" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 4 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"GC" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"GD" = ( +/obj/structure/rack, +/turf/open/floor/pod/dark, +/area/awaymission/beach/heretic) +"GE" = ( +/obj/machinery/light/directional/east, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"GF" = ( +/obj/structure/dresser, +/obj/effect/blessing/invisible, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"GH" = ( +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/tile/neutral/opposingcorners, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"GJ" = ( +/obj/effect/turf_decal/siding/blue{ + dir = 8 + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"GL" = ( +/obj/effect/spawner/random/trash/deluxe_garbage, +/obj/effect/spawner/random/trash/deluxe_garbage, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"GM" = ( +/obj/structure/closet/crate/secure/trashcart/filled, +/turf/open/misc/dirt/jungle, +/area/awaymission/beach/heretic) +"GN" = ( +/obj/machinery/light/floor, +/obj/item/slimepotion/slime/mutator, +/obj/structure/closet/crate/freezer, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"GO" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on{ + dir = 8 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"GP" = ( +/obj/effect/spawner/random/vending/colavend, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"GR" = ( +/obj/effect/turf_decal/trimline/red/arrow_cw, +/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack{ + pixel_y = 9; + pixel_x = 15; + anchored = 1; + name = "Sam Site Missle rack" + }, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"GT" = ( +/obj/machinery/light/floor, +/obj/structure/closet/crate/freezer, +/obj/item/organ/appendix/corrupt, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"GU" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible{ + dir = 8 + }, +/obj/structure/cable, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"GV" = ( +/obj/structure/fluff/tram_rail, +/obj/effect/turf_decal/delivery, +/obj/structure/barricade/wooden, +/obj/structure/barricade/wooden/crude, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"GW" = ( +/obj/structure/fluff/tram_rail, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory) +"GY" = ( +/obj/structure/bed/double, +/obj/effect/spawner/random/bedsheet/double, +/obj/effect/turf_decal/tile/bar/anticorner/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"GZ" = ( +/obj/structure/rack, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory_clean) +"Hb" = ( +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory) +"Hc" = ( +/obj/structure/table, +/obj/machinery/light/directional/east, +/obj/item/ammo_box/magazine/m7mm, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory_clean) +"Hf" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/turf_decal/sand/plating, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"Hh" = ( +/obj/effect/turf_decal/tile/yellow/anticorner/contrasted{ + dir = 4 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Hi" = ( +/obj/structure/railing{ + dir = 9 + }, +/obj/effect/turf_decal/stripes{ + dir = 1 + }, +/obj/effect/turf_decal/stripes{ + dir = 8 + }, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"Hj" = ( +/obj/effect/turf_decal/tile/bar/opposingcorners, +/obj/effect/mapping_helpers/airlock/access/all/service, +/obj/machinery/door/airlock/glass{ + name = "Bar" + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Hk" = ( +/obj/effect/turf_decal/siding/blue, +/obj/effect/turf_decal/siding/blue{ + dir = 1 + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"Hl" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Hn" = ( +/obj/effect/turf_decal/tile/bar/opposingcorners, +/obj/effect/mapping_helpers/airlock/access/all/service, +/obj/machinery/door/airlock/glass{ + name = "Bar" + }, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Hp" = ( +/obj/machinery/door/airlock/maintenance, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Hq" = ( +/obj/item/stack/rods, +/obj/item/stack/rods, +/obj/item/stack/sheet/iron, +/obj/item/stack/sheet/iron, +/obj/effect/turf_decal/tile/dark_red/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Hr" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, +/obj/effect/turf_decal/siding{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 4 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Hs" = ( +/obj/structure/chair/sofa/bench/left, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Ht" = ( +/obj/structure/filingcabinet{ + pixel_x = -1; + pixel_y = 0 + }, +/obj/structure/filingcabinet{ + pixel_x = 8; + pixel_y = 0 + }, +/obj/structure/filingcabinet{ + pixel_x = -10; + pixel_y = 0 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Hv" = ( +/obj/structure/table, +/obj/machinery/light/floor, +/obj/item/fakeartefact, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"Hx" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/turf/open/floor/carpet/green, +/area/awaymission/beach/heretic) +"Hz" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"HA" = ( +/obj/effect/turf_decal/weather/sand{ + dir = 1 + }, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"HC" = ( +/obj/effect/blessing/invisible, +/turf/open/floor/catwalk_floor/iron_dark, +/area/awaymission/caves/heretic_laboratory) +"HF" = ( +/obj/machinery/computer/cargo/request{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"HH" = ( +/turf/open/floor/mineral/uranium, +/area/awaymission/beach/heretic) +"HJ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"HL" = ( +/obj/effect/mapping_helpers/airlock/access/all/security, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"HM" = ( +/mob/living/basic/heretic_summon/stalker, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"HN" = ( +/turf/open/misc/beach/coast{ + dir = 10 + }, +/area/awaymission/beach/heretic) +"HQ" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"HR" = ( +/obj/machinery/door/airlock/hatch, +/obj/effect/mapping_helpers/airlock/access/all/admin/captain, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"HU" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/item/stack/sheet/mineral/sandbags, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"HV" = ( +/turf/open/misc/beach/coast/corner{ + dir = 4 + }, +/area/awaymission/beach/heretic) +"HW" = ( +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 8 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"HX" = ( +/obj/structure/closet/cabinet, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory) +"Ia" = ( +/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Ib" = ( +/obj/item/gun/ballistic/automatic/napad/no_mag{ + pixel_x = -3 + }, +/obj/structure/rack, +/obj/effect/turf_decal/tile/dark/opposingcorners, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"Ic" = ( +/obj/structure/table/wood, +/obj/machinery/light/directional/east, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/turf/open/floor/carpet/purple, +/area/awaymission/caves/heretic_laboratory) +"Id" = ( +/obj/effect/turf_decal/tile/dark_red/opposingcorners, +/obj/machinery/light/directional/east, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Ie" = ( +/obj/effect/turf_decal/siding/wood, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/machinery/door/airlock/wood, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"If" = ( +/turf/open/floor/carpet/neon, +/area/awaymission/caves/heretic_laboratory) +"Ii" = ( +/obj/effect/spawner/random/trash/food_packaging, +/obj/effect/spawner/random/trash/food_packaging, +/obj/structure/closet/crate/secure/trashcart/filled, +/turf/open/floor/plating/airless, +/area/awaymission/caves/heretic_laboratory_clean) +"Ij" = ( +/obj/item/reagent_containers/cup/soda_cans/starkist{ + pixel_y = 16; + pixel_x = 10 + }, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"Ik" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Il" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/turf/open/floor/iron/cafeteria, +/area/awaymission/caves/heretic_laboratory_clean) +"Im" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/structure/dresser, +/turf/open/floor/carpet, +/area/awaymission/beach/heretic) +"In" = ( +/obj/effect/turf_decal/tile/green/half/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Io" = ( +/obj/machinery/door/window/right/directional/west, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Ir" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "e"; + pixel_x = -6; + pixel_y = 2 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "r"; + pixel_x = 5; + pixel_y = 3 + }, +/obj/machinery/light/red/directional/east, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Iv" = ( +/obj/structure/table/wood, +/obj/structure/bedsheetbin/empty{ + name = "Towel bin" + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Iw" = ( +/obj/structure/closet/crate/grave, +/turf/open/misc/dirt/jungle, +/area/awaymission/beach/heretic) +"Iz" = ( +/obj/effect/decal/cleanable/rubble, +/obj/structure/flora/rock/pile, +/obj/effect/decal/cleanable/plasma, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"IA" = ( +/obj/machinery/washing_machine, +/turf/open/floor/iron/white/textured_large, +/area/awaymission/beach/heretic) +"IB" = ( +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/obj/structure/disposaloutlet{ + dir = 4 + }, +/obj/effect/light_emitter/fake_outdoors, +/turf/open/misc/asteroid, +/area/awaymission/beach/heretic) +"ID" = ( +/obj/structure/closet/cabinet, +/obj/effect/turf_decal/tile/dark_green/anticorner/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"IF" = ( +/obj/structure/fluff/tram_rail/anchor, +/obj/effect/turf_decal/delivery, +/obj/item/stack/sheet/mineral/wood, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"IG" = ( +/mob/living/basic/heretic_summon/raw_prophet, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/dark_green/fourcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"II" = ( +/obj/structure/fluff/tram_rail, +/obj/effect/oneway{ + dir = 4 + }, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory) +"IJ" = ( +/turf/open/misc/beach/coast{ + dir = 9 + }, +/area/awaymission/beach/heretic) +"IK" = ( +/obj/machinery/conveyor/auto{ + dir = 8 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"IL" = ( +/obj/machinery/light/small/directional/south, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"IP" = ( +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"IQ" = ( +/obj/machinery/shower/directional/east, +/obj/structure/window/spawner/directional/north, +/obj/structure/curtain, +/obj/machinery/door/window/right/directional/east, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"IS" = ( +/obj/machinery/griddle, +/turf/open/floor/iron/cafeteria, +/area/awaymission/caves/heretic_laboratory_clean) +"IV" = ( +/obj/structure/window/reinforced/survival_pod/spawner/directional/east, +/obj/machinery/power/smes/magical{ + desc = "A high-capacity superconducting magnetic energy storage (SMES) unit."; + name = "power storage unit" + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"IX" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/effect/turf_decal/delivery, +/obj/item/stack/sheet/mineral/wood, +/obj/effect/decal/remains/xeno, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"IZ" = ( +/obj/effect/turf_decal/tile/green/half/contrasted, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Ja" = ( +/obj/effect/turf_decal/siding/wood, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"Jb" = ( +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Jf" = ( +/obj/structure/table, +/obj/machinery/light/floor, +/obj/structure/holosign/barrier/atmos/sturdy, +/obj/item/fake_items/sm_sliver, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"Jg" = ( +/obj/machinery/computer/camera_advanced{ + dir = 4 + }, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Ji" = ( +/obj/structure/flora/tree/palm{ + pixel_y = 31 + }, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"Jn" = ( +/obj/structure/sign/poster/contraband/double_rainbow/directional/east, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Jo" = ( +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/effect/turf_decal/tile/bar{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Jp" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 1 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Jq" = ( +/obj/structure/fence/corner, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"Js" = ( +/obj/machinery/light/directional/north, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Jt" = ( +/obj/machinery/light/directional/east, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Jv" = ( +/turf/open/floor/black, +/area/awaymission/caves/heretic_laboratory_clean) +"Jw" = ( +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/turf/open/floor/pod/dark, +/area/awaymission/beach/heretic) +"Jy" = ( +/obj/effect/mob_spawn/corpse/human/old_pirate_captain, +/obj/structure/bed/maint, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"Jz" = ( +/obj/effect/turf_decal/tile/bar/half/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"JA" = ( +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"JB" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/indestructible/plating, +/area/awaymission/caves/heretic_laboratory) +"JD" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible{ + dir = 4 + }, +/obj/structure/cable, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"JE" = ( +/obj/structure/marker_beacon/burgundy, +/turf/open/water/beach, +/area/awaymission/beach/heretic) +"JG" = ( +/obj/structure/fluff/tram_rail/anchor, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"JH" = ( +/obj/machinery/light/directional/east, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory_clean) +"JI" = ( +/obj/effect/spawner/random/food_or_drink/seed_vault, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"JK" = ( +/obj/structure/table/wood, +/obj/item/paper_bin, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"JM" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/computer/mech_bay_power_console{ + dir = 1 + }, +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/tile/yellow/half/contrasted, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"JN" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "j"; + pixel_x = -14; + pixel_y = 2 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "u"; + pixel_x = -4; + pixel_y = 1 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "m"; + pixel_x = 10; + pixel_y = 1 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"JO" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/effect/turf_decal/tile/yellow/half/contrasted, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"JQ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/bar/half/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"JR" = ( +/obj/effect/turf_decal/tile/dark_green/half/contrasted, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"JS" = ( +/obj/structure/table/reinforced, +/obj/structure/displaycase/forsale/kitchen{ + pixel_y = 8 + }, +/obj/effect/turf_decal/tile/bar/opposingcorners, +/obj/machinery/light/directional/east, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"JT" = ( +/obj/machinery/conveyor/auto{ + dir = 4 + }, +/obj/item/toy/plush/moth, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"JU" = ( +/obj/structure/falsewall, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"JW" = ( +/obj/structure/table/reinforced, +/obj/machinery/chem_dispenser/drinks/fullupgrade, +/obj/effect/turf_decal/tile/bar/opposingcorners, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"JX" = ( +/obj/structure/table/glass, +/obj/effect/turf_decal/tile/green/half/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"JY" = ( +/obj/structure/table, +/obj/machinery/light/directional/west, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Ka" = ( +/obj/effect/spawner/structure/window/reinforced/indestructible, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"Kb" = ( +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"Kd" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/spawner/random/trash/graffiti, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Kg" = ( +/obj/effect/mapping_helpers/airlock/access/all/admin, +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Kj" = ( +/obj/machinery/blackbox_recorder, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Kk" = ( +/obj/machinery/computer/camera_advanced{ + dir = 1 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"Kl" = ( +/obj/structure/rack, +/obj/item/storage/toolbox/drone, +/obj/item/storage/toolbox/electrical, +/obj/item/storage/toolbox/emergency, +/obj/item/clothing/head/utility/welding, +/obj/item/clothing/head/utility/welding, +/turf/open/floor/pod/dark, +/area/awaymission/beach/heretic) +"Km" = ( +/obj/machinery/light/directional/east, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Kn" = ( +/obj/structure/fluff/tram_rail, +/obj/effect/turf_decal/delivery, +/obj/effect/decal/remains/human, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Ko" = ( +/obj/structure/curtain, +/obj/machinery/shower{ + dir = 1 + }, +/turf/open/floor/iron/white/textured_large, +/area/awaymission/beach/heretic) +"Kp" = ( +/obj/effect/landmark/transport/transport_id/heretic, +/obj/structure/transport/linear/tram, +/obj/structure/thermoplastic/light, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Kq" = ( +/obj/machinery/stasis{ + dir = 4 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Ks" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Ku" = ( +/obj/machinery/atmospherics/pipe/layer_manifold/scrubbers/visible, +/obj/machinery/door/airlock/maintenance, +/turf/open/indestructible/plating, +/area/awaymission/caves/heretic_laboratory) +"Kx" = ( +/obj/item/grenade/c4, +/obj/item/grenade/c4, +/obj/item/grenade/c4, +/obj/effect/spawner/random/heretic_gateway_low, +/obj/structure/closet, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"Ky" = ( +/obj/structure/rack, +/obj/item/shovel/spade, +/obj/item/shovel/spade, +/obj/item/shovel/spade, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"KB" = ( +/turf/closed/indestructible/reinforced, +/area/awaymission/caves/heretic_laboratory) +"KD" = ( +/obj/machinery/door/airlock/medical, +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/effect/mapping_helpers/airlock/access/all/medical, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"KE" = ( +/obj/structure/table, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/item/paper_bin/bundlenatural, +/obj/item/pen, +/turf/open/floor/iron/white/textured_large, +/area/awaymission/beach/heretic) +"KF" = ( +/obj/structure/chair/plastic, +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/tile/blue/opposingcorners, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"KG" = ( +/obj/item/bedsheet/black/double{ + pixel_x = 0; + pixel_y = 2 + }, +/obj/machinery/light/floor, +/obj/structure/bed/double, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"KH" = ( +/obj/item/radio/intercom/mi13/directional/south, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"KJ" = ( +/obj/effect/turf_decal/tile/purple/half/contrasted, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"KO" = ( +/obj/machinery/computer/communications{ + dir = 1 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"KQ" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/spawner/random/structure/grille, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"KR" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"KS" = ( +/turf/open/floor/carpet, +/area/awaymission/beach/heretic) +"KT" = ( +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"La" = ( +/obj/effect/baseturf_helper/beach/sand, +/turf/closed/indestructible/rock, +/area/awaymission/caves/heretic_laboratory_clean) +"Lb" = ( +/obj/structure/table, +/obj/machinery/light/floor, +/obj/item/fake_items/time_stopper, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"Lc" = ( +/obj/structure/chair/sofa/bench{ + dir = 1 + }, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Le" = ( +/obj/structure/table, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory_clean) +"Lf" = ( +/turf/open/floor/carpet/green, +/area/awaymission/caves/heretic_laboratory) +"Lh" = ( +/turf/closed/indestructible/rock, +/area/awaymission/caves/heretic_laboratory_clean) +"Li" = ( +/obj/structure/fluff/bus/passable{ + icon_state = "wheredahoodat" + }, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"Lj" = ( +/obj/effect/turf_decal/tile/dark/half{ + dir = 4 + }, +/obj/item/kirbyplants/random, +/obj/effect/turf_decal/stripes/corner, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Ln" = ( +/obj/machinery/door/airlock/titanium, +/turf/open/floor/pod/dark, +/area/awaymission/beach/heretic) +"Lo" = ( +/obj/item/paper_bin, +/obj/item/pen, +/obj/structure/table, +/turf/open/floor/carpet/green, +/area/awaymission/caves/heretic_laboratory) +"Lp" = ( +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/locked, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Lv" = ( +/obj/structure/fluff/bus/passable, +/turf/open/floor/iron/dark, +/area/awaymission/beach/heretic) +"Lw" = ( +/obj/structure/table, +/obj/item/storage/backpack/duffelbag/sec/surgery{ + pixel_y = 5 + }, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Lx" = ( +/obj/machinery/mass_driver/feeder{ + dir = 4 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"Ly" = ( +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/tile/dark_green/half{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"LC" = ( +/obj/effect/turf_decal/delivery, +/obj/item/stack/sheet/mineral/wood, +/obj/effect/decal/remains/human, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"LE" = ( +/obj/structure/flora/bush/fullgrass/style_random, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"LI" = ( +/obj/effect/turf_decal/tile/purple/half/contrasted{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"LL" = ( +/obj/structure/bed/double, +/obj/effect/spawner/random/bedsheet/double, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory) +"LN" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/window/reinforced/spawner/directional/east, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"LS" = ( +/obj/effect/spawner/random/trash/bin, +/turf/open/misc/dirt/jungle, +/area/awaymission/beach/heretic) +"LU" = ( +/obj/item/bedsheet/black/double{ + pixel_x = 0; + pixel_y = 6 + }, +/obj/structure/bed/double, +/obj/effect/blessing/invisible, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"Ma" = ( +/obj/machinery/door/airlock/highsecurity, +/obj/effect/mapping_helpers/airlock/access/all/security, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Mb" = ( +/obj/structure/disposalpipe/segment, +/obj/effect/turf_decal/sand/plating, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"Md" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 1 + }, +/obj/machinery/portable_atmospherics/canister/anesthetic_mix, +/obj/machinery/light/directional/west, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Mf" = ( +/obj/structure/fluff/tram_rail/end, +/obj/effect/turf_decal/delivery, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Mg" = ( +/obj/structure/fluff/tram_rail, +/obj/effect/turf_decal/delivery, +/obj/item/stack/sheet/mineral/wood, +/obj/effect/decal/remains/robot, +/obj/structure/holosign/barrier/atmos/tram, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Mh" = ( +/obj/structure/holosign/barrier/atmos/sturdy, +/obj/machinery/conveyor/auto{ + dir = 8 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"Mj" = ( +/obj/effect/turf_decal/trimline/red/line, +/turf/closed/wall/mineral/iron, +/area/awaymission/beach/heretic) +"Mk" = ( +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/tile/green/anticorner/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Ml" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/catwalk_floor/iron_dark, +/area/awaymission/caves/heretic_laboratory) +"Mn" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"Mo" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/effect/turf_decal/tile/yellow/anticorner/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"Mq" = ( +/obj/structure/dresser, +/turf/open/floor/carpet, +/area/awaymission/beach/heretic) +"Mr" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/effect/turf_decal/delivery, +/obj/structure/holosign/barrier/atmos/tram, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Ms" = ( +/obj/effect/turf_decal/tile/blue/opposingcorners, +/obj/structure/sign/poster/contraband/donk_co/directional/east, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"Mt" = ( +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/effect/mapping_helpers/airlock/access/all/admin, +/obj/machinery/door/puzzle/keycard/misc_anomalies, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Mu" = ( +/obj/effect/turf_decal/delivery, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Mw" = ( +/obj/item/stack/ore/uranium, +/turf/open/water/jungle, +/area/awaymission/beach/heretic) +"Mz" = ( +/obj/structure/bodycontainer/crematorium{ + dir = 4; + id = "crematoriumChapel" + }, +/turf/open/floor/iron/dark/smooth_large, +/area/awaymission/caves/heretic_laboratory) +"MB" = ( +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"MD" = ( +/obj/machinery/door/airlock/medical{ + name = "Surgery B" + }, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/blue/filled/line, +/obj/machinery/door/firedoor, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/all/medical, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"MH" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"MI" = ( +/obj/item/clothing/neck/stethoscope, +/obj/item/wrench, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"ML" = ( +/obj/structure/bookcase/random, +/obj/machinery/light/directional/west, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"MP" = ( +/obj/structure/fluff/tram_rail, +/obj/structure/thermoplastic/light, +/obj/effect/spawner/random/structure/shipping_container, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory) +"MR" = ( +/obj/effect/turf_decal/siding/blue{ + dir = 4 + }, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"MS" = ( +/obj/machinery/vending/donksnack, +/obj/effect/turf_decal/tile/green/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"MT" = ( +/mob/living/basic/heretic_summon/stalker, +/obj/structure/flora/bush/fullgrass/style_random, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"MV" = ( +/turf/closed/indestructible/reinforced/titanium, +/area/awaymission/caves/heretic_laboratory_clean) +"MW" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/effect/turf_decal/tile/purple/half{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"MX" = ( +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/effect/turf_decal/tile/bar{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"MY" = ( +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Na" = ( +/turf/open/misc/dirt/jungle, +/area/awaymission/beach/heretic) +"Nb" = ( +/obj/effect/mapping_helpers/airlock/access/all/security, +/obj/machinery/door/airlock/security{ + name = "Armory" + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Nc" = ( +/obj/machinery/light/directional/east, +/obj/effect/spawner/random/structure/grille, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Ne" = ( +/obj/machinery/light/small/directional/north, +/turf/open/floor/carpet, +/area/awaymission/beach/heretic) +"Ni" = ( +/obj/effect/turf_decal/siding/wood/corner{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/awaymission/beach/heretic) +"Nj" = ( +/obj/machinery/light/directional/west, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Nm" = ( +/obj/effect/turf_decal/tile/dark_red/opposingcorners, +/obj/structure/chair/office/tactical{ + dir = 8 + }, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Nn" = ( +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/effect/mapping_helpers/airlock/access/all/security, +/obj/machinery/door/puzzle/keycard/misc_anomalies, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Np" = ( +/obj/effect/decal/cleanable/blood/tracks/xeno, +/turf/open/floor/mineral/uranium, +/area/awaymission/beach/heretic) +"Nq" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/machinery/door/airlock/hatch, +/obj/effect/mapping_helpers/airlock/access/all/service, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Ns" = ( +/obj/machinery/light/directional/south, +/turf/open/floor/iron/white/textured_large, +/area/awaymission/beach/heretic) +"Nt" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/pink/visible, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Nu" = ( +/obj/structure/bed/double, +/obj/item/bedsheet/double, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"Nv" = ( +/obj/machinery/light/directional/west, +/obj/effect/turf_decal/tile/blue/opposingcorners, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"Nz" = ( +/obj/effect/mob_spawn/corpse/human/skeleton/cultist, +/turf/open/misc/beach/sand, +/area/awaymission/caves/heretic_laboratory_clean) +"NA" = ( +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"NB" = ( +/obj/effect/spawner/random/heretic_gateway, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"ND" = ( +/obj/structure/sign/poster/contraband/babel_device/directional/east, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"NG" = ( +/obj/structure/safe/floor, +/obj/item/reagent_containers/cup/glass/bottle/beer, +/obj/item/reagent_containers/cup/glass/bottle/beer, +/obj/item/cigarette/rollie/cannabis, +/obj/item/cigarette/rollie/cannabis, +/obj/item/cigarette/rollie/cannabis, +/obj/item/storage/fancy/cigarettes/cigpack_syndicate, +/obj/item/storage/fancy/cigarettes/cigpack_syndicate, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"NI" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/mob/living/basic/migo, +/obj/effect/turf_decal/tile/bar/fourcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"NO" = ( +/obj/machinery/conveyor/auto{ + dir = 1 + }, +/obj/item/toy/plush/moth, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"NQ" = ( +/obj/structure/sink/directional/east, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory_clean) +"NU" = ( +/obj/effect/turf_decal/tile/dark_red/opposingcorners, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"NW" = ( +/obj/effect/spawner/random/structure/shipping_container, +/turf/open/floor/iron/textured, +/area/awaymission/caves/heretic_laboratory) +"NX" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"NY" = ( +/obj/structure/table/optable, +/turf/open/floor/stone, +/area/awaymission/beach/heretic) +"Oa" = ( +/obj/structure/chair/comfy{ + dir = 8 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Oc" = ( +/obj/structure/table/wood, +/obj/item/pen, +/turf/open/floor/plating/airless, +/area/awaymission/caves/heretic_laboratory_clean) +"Od" = ( +/obj/machinery/door/airlock/external/ruin, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"Oe" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 1 + }, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"Of" = ( +/obj/structure/chair/wood, +/turf/open/floor/carpet/green, +/area/awaymission/beach/heretic) +"Og" = ( +/obj/structure/table/optable, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 1 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Oh" = ( +/obj/structure/fluff/tram_rail/anchor{ + dir = 1 + }, +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/structure/thermoplastic/light, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory) +"Oi" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 6 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Ok" = ( +/obj/effect/turf_decal/tile/dark_red/half/contrasted, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Ol" = ( +/obj/item/kirbyplants/random, +/turf/open/floor/carpet/neon, +/area/awaymission/caves/heretic_laboratory) +"Op" = ( +/obj/structure/chair/stool/bar/directional/north, +/obj/effect/turf_decal/tile/green/half/contrasted{ + dir = 8 + }, +/obj/structure/sign/poster/contraband/free_tonto/directional/west, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Oq" = ( +/obj/item/seeds/organ_tree, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"Or" = ( +/obj/machinery/door/airlock/hatch, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"Ot" = ( +/obj/effect/turf_decal/tile/dark_red/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Ow" = ( +/obj/structure/flora/grass/jungle/a/style_random, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"Ox" = ( +/obj/effect/turf_decal/tile/dark_green/half{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Oz" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/spawner/random/trash/grille_or_waste, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"OC" = ( +/obj/machinery/conveyor/auto{ + dir = 1 + }, +/obj/structure/sign/poster/abductor/ayy_piping/directional/east, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"OD" = ( +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"OG" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"OJ" = ( +/obj/machinery/teleport/station{ + name = "Forcefield generator" + }, +/obj/structure/window/reinforced/plasma/spawner/directional/east, +/obj/structure/window/reinforced/plasma/spawner/directional/north, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"OK" = ( +/obj/structure/table, +/obj/item/stack/sheet/iron/fifty{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/item/stack/rods/fifty, +/obj/item/stack/cable_coil, +/obj/item/stack/cable_coil, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"OL" = ( +/obj/effect/turf_decal/tile/dark_red/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/item/radio/intercom/mi13/directional/east, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"OM" = ( +/obj/item/clothing/mask/gas/welding/up, +/obj/effect/decal/cleanable/blood/tracks/xeno, +/obj/item/organ/tail/xeno, +/obj/item/stack/sheet/animalhide/xeno, +/obj/item/stack/sheet/xenochitin, +/obj/effect/decal/cleanable/blood/gibs/xeno/larva/body, +/obj/effect/decal/remains/xeno, +/obj/effect/light_emitter, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"OP" = ( +/obj/machinery/light/directional/north, +/obj/structure/chair/comfy/shuttle, +/turf/open/floor/pod/dark, +/area/awaymission/beach/heretic) +"OQ" = ( +/obj/machinery/vending/boozeomat, +/obj/effect/turf_decal/tile/bar/opposingcorners, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"OR" = ( +/obj/structure/table/wood, +/obj/structure/curtain/cloth, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"OS" = ( +/obj/effect/temp_visual/drawing_heretic_rune, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"OW" = ( +/obj/effect/turf_decal/siding/wood/corner{ + dir = 8 + }, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"OY" = ( +/obj/machinery/door/airlock/medical, +/obj/effect/mapping_helpers/airlock/access/all/medical, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"OZ" = ( +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/tile/dark/half{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Pa" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "j"; + pixel_x = -14; + pixel_y = 2 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "u"; + pixel_x = -4; + pixel_y = 1 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "m"; + pixel_x = 10; + pixel_y = 1 + }, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Pb" = ( +/obj/effect/turf_decal/tile/green/half/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Pc" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/blessing/invisible, +/turf/open/floor/catwalk_floor/iron_dark, +/area/awaymission/caves/heretic_laboratory) +"Ph" = ( +/obj/machinery/light/small/directional/south, +/turf/open/floor/pod/light, +/area/awaymission/beach/heretic) +"Pj" = ( +/obj/machinery/light/directional/south, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Pl" = ( +/obj/machinery/light/directional/east, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"Pp" = ( +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/obj/effect/turf_decal/sand/plating, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"Pq" = ( +/obj/machinery/vending/sustenance, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Pw" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/structure/chair/wood{ + dir = 8 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Px" = ( +/obj/effect/turf_decal/tile/purple/anticorner/contrasted{ + dir = 1 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Py" = ( +/turf/open/floor/carpet/blue, +/area/awaymission/beach/heretic) +"Pz" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible{ + dir = 4 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"PA" = ( +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"PC" = ( +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"PD" = ( +/obj/structure/barricade/sandbags, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"PE" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/mob/living/basic/faithless, +/obj/effect/turf_decal/tile/bar/fourcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"PF" = ( +/obj/machinery/power/shuttle_engine/heater{ + dir = 8 + }, +/obj/structure/window/reinforced/spawner/directional/east, +/obj/machinery/door/poddoor/shutters/indestructible, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"PG" = ( +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/machinery/door/firedoor/heavy, +/obj/effect/mapping_helpers/airlock/access/all/admin/captain, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/door/puzzle/keycard/misc_anomalies, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"PK" = ( +/obj/machinery/door/airlock/titanium, +/obj/effect/mapping_helpers/airlock/locked, +/turf/open/floor/pod/light, +/area/awaymission/beach/heretic) +"PL" = ( +/obj/structure/window/spawner/directional/east, +/obj/structure/window/spawner/directional/west, +/obj/structure/flora/bush/jungle/c/style_random, +/obj/effect/blessing/invisible, +/turf/open/misc/grass/jungle, +/area/awaymission/caves/heretic_laboratory) +"PN" = ( +/obj/structure/window/spawner/directional/south, +/obj/structure/window/spawner/directional/north, +/obj/structure/window/spawner/directional/west, +/obj/structure/flora/bush/jungle/c/style_random, +/turf/open/misc/grass/jungle, +/area/awaymission/caves/heretic_laboratory) +"PP" = ( +/obj/structure/flora/tree/palm/style_random, +/obj/structure/flora/coconuts, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"PT" = ( +/obj/machinery/light/floor, +/obj/structure/closet/crate/freezer, +/obj/item/organ/eyes/corrupt, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"PU" = ( +/obj/machinery/door/airlock{ + name = "Personal Dorm" + }, +/obj/effect/mapping_helpers/airlock/access/all/security, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"PV" = ( +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/effect/mapping_helpers/airlock/access/all/admin, +/obj/machinery/door/puzzle/keycard/highsec_access, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"PX" = ( +/obj/structure/window/spawner/directional/south, +/obj/structure/window/spawner/directional/north, +/obj/structure/window/spawner/directional/east, +/obj/structure/flora/bush/jungle/c/style_random, +/turf/open/misc/grass/jungle, +/area/awaymission/caves/heretic_laboratory) +"Qb" = ( +/obj/structure/safe/floor, +/obj/item/keycard/highsec_access, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"Qd" = ( +/obj/structure/fluff/tram_rail/end{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Qf" = ( +/obj/effect/turf_decal/sand, +/obj/effect/turf_decal/weather/sand{ + dir = 5 + }, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"Qh" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Qi" = ( +/obj/structure/bed/double, +/obj/item/bedsheet/rd/double, +/turf/open/floor/carpet/purple, +/area/awaymission/caves/heretic_laboratory) +"Qj" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/freezer, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Qk" = ( +/obj/item/bedsheet/black/double{ + dir = 4; + pixel_x = 0; + pixel_y = 6 + }, +/obj/structure/bed/double{ + dir = 4 + }, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"Ql" = ( +/obj/structure/fence{ + dir = 8 + }, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"Qm" = ( +/mob/living/basic/heretic_summon/ash_spirit, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/dark_green/fourcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Qn" = ( +/obj/effect/mapping_helpers/airlock/access/all/supply, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/door/airlock/maintenance, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Qo" = ( +/obj/effect/spawner/structure/window/reinforced/shuttle, +/obj/structure/curtain/cloth/fancy/mechanical/start_closed, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"Qr" = ( +/obj/effect/spawner/random/trash/bacteria, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"Qt" = ( +/obj/structure/bed/double, +/obj/effect/spawner/random/bedsheet/double, +/obj/effect/turf_decal/tile/dark_red/anticorner/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Qx" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"Qz" = ( +/obj/structure/table, +/obj/machinery/light/floor, +/obj/item/gun/energy/shrink_ray/one_shot, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"QA" = ( +/mob/living/basic/heretic_summon/stalker, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"QB" = ( +/obj/effect/decal/cleanable/blood/tracks/xeno{ + dir = 5 + }, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"QE" = ( +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/effect/turf_decal/tile/bar/half/contrasted{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"QF" = ( +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"QG" = ( +/obj/structure/disposalpipe/segment, +/obj/effect/decal/cleanable/blood/tracks, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"QI" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/machinery/door/airlock/wood{ + dir = 4 + }, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"QK" = ( +/obj/structure/table/wood, +/turf/open/floor/carpet/green, +/area/awaymission/beach/heretic) +"QL" = ( +/obj/effect/turf_decal/tile/purple/half{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"QM" = ( +/obj/item/kirbyplants/random, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"QN" = ( +/obj/machinery/cryo_cell{ + dir = 8 + }, +/turf/open/floor/iron/white/smooth_large, +/area/awaymission/caves/heretic_laboratory) +"QO" = ( +/obj/structure/fluff/tram_rail, +/obj/structure/window/reinforced/survival_pod/spawner/directional/south, +/obj/structure/window/reinforced/survival_pod/spawner/directional/west, +/obj/structure/chair/sofa/bench/tram/solo{ + dir = 4 + }, +/obj/structure/transport/linear/tram, +/obj/structure/thermoplastic/light, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"QP" = ( +/mob/living/basic/venus_human_trap, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"QW" = ( +/obj/effect/turf_decal/tile/yellow/anticorner/contrasted{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"QZ" = ( +/obj/machinery/door/airlock/highsecurity, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Ra" = ( +/obj/machinery/light/directional/south, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Rb" = ( +/obj/effect/turf_decal/tile/blue/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"Re" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"Rf" = ( +/obj/structure/window/reinforced/spawner/directional/north, +/obj/structure/window/reinforced/spawner/directional/south, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"Rl" = ( +/obj/structure/closet/cardboard, +/obj/effect/spawner/random/heretic_gateway_low, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"Rn" = ( +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory_clean) +"Rp" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/spawner/random/structure/grille, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Rq" = ( +/obj/machinery/atmospherics/components/trinary/filter/atmos/o2{ + dir = 1 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Rs" = ( +/obj/structure/flora/bush/jungle/a/style_random, +/obj/effect/decal/cleanable/blood/tracks/xeno{ + dir = 10 + }, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"Rt" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/pink/visible{ + dir = 4 + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Ru" = ( +/obj/effect/turf_decal/tile/purple/half/contrasted{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Rv" = ( +/obj/effect/turf_decal/tile/bar/fourcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Rw" = ( +/obj/effect/decal/cleanable/blood/tracks/xeno{ + dir = 9 + }, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"Ry" = ( +/turf/open/lava, +/area/awaymission/caves/heretic_laboratory_clean) +"Rz" = ( +/obj/structure/table, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/turf/open/floor/iron/white/textured_large, +/area/awaymission/beach/heretic) +"RA" = ( +/obj/structure/table, +/obj/machinery/light/floor, +/obj/item/gun/magic/staff, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"RB" = ( +/obj/structure/closet/cabinet, +/obj/effect/turf_decal/tile/bar/anticorner/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"RE" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/obj/structure/barricade/wooden, +/obj/structure/barricade/wooden/crude, +/obj/effect/light_emitter/fake_outdoors, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"RH" = ( +/obj/item/fishing_rod, +/obj/structure/closet/crate/trashcart, +/obj/item/reagent_containers/cup/glass/bottle/rum/aged, +/obj/effect/spawner/random/heretic_gateway, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"RI" = ( +/obj/structure/window/fulltile, +/obj/structure/flora/bush/ferny/style_random, +/obj/structure/flora/bush/flowers_br/style_random, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/grass, +/area/awaymission/caves/heretic_laboratory) +"RM" = ( +/obj/machinery/door/airlock/highsecurity, +/obj/effect/mapping_helpers/airlock/access/all/away/general, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"RP" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/tile/purple/half{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"RR" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/effect/turf_decal/delivery, +/obj/effect/gibspawner/human/bodypartless, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"RS" = ( +/obj/machinery/shower/directional/east, +/obj/structure/fluff/shower_drain, +/obj/effect/turf_decal/box, +/turf/open/floor/iron/white/smooth_large, +/area/awaymission/caves/heretic_laboratory) +"RT" = ( +/obj/structure/table/wood/fancy, +/obj/item/knife/combat, +/obj/item/knife/hunting, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"RU" = ( +/obj/structure/sign/poster/official/safety_internals/directional/west, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"RW" = ( +/obj/structure/table, +/obj/item/stack/sheet/rglass/fifty{ + pixel_x = 6; + pixel_y = 4 + }, +/obj/item/stack/sheet/rglass/fifty{ + pixel_x = -6; + pixel_y = 4 + }, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"RY" = ( +/obj/structure/table, +/obj/effect/spawner/random/exotic/tool, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"RZ" = ( +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Sb" = ( +/obj/machinery/camera/xray/directional/north, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"Sc" = ( +/obj/effect/turf_decal/siding/wood, +/obj/machinery/light/small/directional/north, +/obj/item/kirbyplants/random, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"Sd" = ( +/obj/structure/chair/office{ + dir = 4 + }, +/turf/open/floor/carpet/green, +/area/awaymission/caves/heretic_laboratory) +"Sg" = ( +/obj/structure/rack, +/obj/machinery/light/directional/north, +/obj/item/shovel, +/obj/item/shovel, +/obj/item/shovel, +/obj/item/shovel, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"Sh" = ( +/obj/machinery/light/directional/east, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Si" = ( +/obj/machinery/door/airlock/hatch, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"Sk" = ( +/obj/structure/fluff/tram_rail, +/obj/effect/decal/remains/human, +/obj/item/stack/sheet/mineral/wood, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Sl" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"Sm" = ( +/obj/machinery/power/shuttle_engine/heater{ + dir = 8 + }, +/obj/machinery/door/poddoor/shutters/indestructible, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"Sn" = ( +/obj/effect/turf_decal/tile/dark_red/half/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/obj/structure/sign/poster/contraband/blood_geometer/directional/north, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Sq" = ( +/obj/item/keycard/heretic_entrance, +/turf/open/floor/black, +/area/awaymission/caves/heretic_laboratory_clean) +"Sr" = ( +/obj/machinery/door/airlock/maintenance, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/indestructible/plating, +/area/awaymission/caves/heretic_laboratory) +"Ss" = ( +/obj/effect/turf_decal/tile/brown/opposingcorners, +/obj/structure/sign/poster/contraband/eistee/directional/west, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"St" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/dark_green/half/contrasted, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Su" = ( +/obj/structure/table, +/obj/machinery/light/directional/east, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Sv" = ( +/turf/closed/mineral/ash_rock, +/area/awaymission/caves/heretic_laboratory_clean) +"Sx" = ( +/obj/machinery/door/window/right/directional/south, +/obj/effect/turf_decal/tile/bar/opposingcorners, +/obj/machinery/light/directional/west, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"SB" = ( +/obj/machinery/door/airlock/hatch, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"SC" = ( +/obj/structure/closet/cabinet, +/obj/item/sticker/pslime, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory) +"SG" = ( +/obj/machinery/vending/engivend, +/obj/effect/turf_decal/tile/green/half/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"SI" = ( +/obj/machinery/light/floor, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"SL" = ( +/obj/structure/fluff/bus/dense{ + icon_state = "fronttire" + }, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"SM" = ( +/obj/effect/decal/cleanable/blood/oil, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"SN" = ( +/obj/structure/table/reinforced, +/obj/machinery/chem_dispenser/drinks/beer/fullupgrade, +/obj/effect/turf_decal/tile/bar/opposingcorners, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"SP" = ( +/obj/effect/turf_decal/tile/brown/opposingcorners, +/obj/structure/chair/stool/bar/directional/north, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"SQ" = ( +/obj/item/paper/fluff/awaymissions/heretic/blackroomhint, +/turf/open/floor/black, +/area/awaymission/caves/heretic_laboratory_clean) +"SR" = ( +/obj/machinery/telecomms/relay/preset/telecomms, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"ST" = ( +/obj/structure/cable, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"SW" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/iron/cafeteria, +/area/awaymission/caves/heretic_laboratory_clean) +"SX" = ( +/obj/structure/fluff/bus/passable, +/obj/item/reagent_containers/condiment/saltshaker, +/turf/open/floor/iron/dark, +/area/awaymission/beach/heretic) +"SY" = ( +/obj/structure/railing{ + dir = 1 + }, +/obj/effect/turf_decal/stripes{ + dir = 1 + }, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"Tb" = ( +/obj/effect/light_emitter/fake_outdoors, +/turf/open/water/beach, +/area/awaymission/beach/heretic) +"Tc" = ( +/obj/structure/closet/cabinet, +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Td" = ( +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/machinery/door/airlock/medical/glass, +/obj/effect/mapping_helpers/airlock/access/all/medical, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Te" = ( +/obj/structure/barricade/wooden, +/obj/structure/barricade/wooden/crude, +/obj/machinery/light/directional/east, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Tf" = ( +/obj/effect/turf_decal/tile/purple/half{ + dir = 8 + }, +/obj/item/kirbyplants/random, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Ti" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"Tk" = ( +/obj/structure/table, +/obj/item/clothing/gloves/combat{ + pixel_x = -3; + pixel_y = 4 + }, +/obj/item/clothing/gloves/combat{ + pixel_x = 3; + pixel_y = -2 + }, +/obj/item/clothing/mask/gas, +/obj/item/clothing/mask/gas, +/obj/item/clothing/mask/gas, +/obj/machinery/light/directional/south, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Tl" = ( +/obj/effect/turf_decal/siding/wood/corner{ + dir = 1 + }, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"Tm" = ( +/obj/structure/bookcase/random, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"Tn" = ( +/obj/effect/turf_decal/tile/purple/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Tp" = ( +/obj/structure/rack, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"Tq" = ( +/obj/machinery/door/window/survival_pod/left/directional/east, +/obj/machinery/light/directional/north, +/turf/open/floor/carpet/green, +/area/awaymission/caves/heretic_laboratory) +"Ts" = ( +/obj/effect/turf_decal/tile/bar/half/contrasted, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"TA" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"TB" = ( +/obj/effect/turf_decal/tile/purple/half/contrasted{ + dir = 4 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"TD" = ( +/mob/living/basic/construct/wraith, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/bar/fourcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"TF" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/textured, +/area/awaymission/caves/heretic_laboratory) +"TG" = ( +/obj/machinery/light/directional/east, +/obj/effect/blessing/invisible, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"TH" = ( +/obj/effect/turf_decal/tile/purple/half/contrasted{ + dir = 8 + }, +/obj/machinery/light/directional/west, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"TI" = ( +/obj/structure/chair/plastic{ + dir = 4 + }, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"TJ" = ( +/obj/machinery/shower/directional/east, +/obj/structure/window/spawner/directional/north, +/obj/machinery/door/window/right/directional/east, +/obj/structure/curtain, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory_clean) +"TL" = ( +/obj/structure/chair/plastic, +/turf/open/floor/plating/airless, +/area/awaymission/caves/heretic_laboratory_clean) +"TM" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/tile/bar/half/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"TN" = ( +/obj/structure/table, +/obj/item/paperwork/research, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"TO" = ( +/obj/effect/decal/remains/robot, +/obj/machinery/light/directional/east, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"TQ" = ( +/obj/machinery/door/puzzle/keycard/highsec_access, +/obj/machinery/conveyor/auto{ + dir = 4 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"TT" = ( +/obj/structure/fluff/bus/dense{ + icon_state = "hoodtop" + }, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"TV" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible{ + dir = 4 + }, +/turf/closed/indestructible/reinforced, +/area/awaymission/caves/heretic_laboratory) +"TY" = ( +/obj/effect/turf_decal/tile/dark_red/half/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Ua" = ( +/turf/open/misc/beach/coast{ + dir = 8 + }, +/area/awaymission/caves/heretic_laboratory_clean) +"Uc" = ( +/obj/effect/turf_decal/sand, +/obj/effect/turf_decal/weather/sand{ + dir = 9 + }, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"Ug" = ( +/turf/open/misc/beach/coast/corner, +/area/awaymission/beach/heretic) +"Ui" = ( +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/tile/dark_red/half/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Uj" = ( +/obj/item/stack/sheet/plasteel/twenty, +/obj/structure/closet/crate, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"Um" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/effect/oneway{ + dir = 4 + }, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory) +"Un" = ( +/obj/effect/baseturf_helper/beach/sand, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Uo" = ( +/obj/machinery/light/directional/east, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"Up" = ( +/obj/machinery/vending/security, +/obj/effect/turf_decal/tile/dark/opposingcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Uq" = ( +/obj/machinery/shower{ + pixel_y = 15 + }, +/obj/structure/curtain, +/turf/open/floor/iron/white, +/area/awaymission/beach/heretic) +"Ur" = ( +/obj/effect/turf_decal/siding/blue{ + dir = 8 + }, +/obj/machinery/camera/xray/directional/north, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"Uy" = ( +/obj/item/kirbyplants/fern, +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/tile/green/half/contrasted, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"UA" = ( +/obj/structure/table/wood, +/obj/machinery/light/small/directional/west, +/turf/open/floor/carpet/green, +/area/awaymission/beach/heretic) +"UC" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/window/reinforced/spawner/directional/south, +/obj/structure/window/reinforced/spawner/directional/east, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory_clean) +"UD" = ( +/obj/machinery/teleport/station{ + name = "Forcefield generator" + }, +/obj/structure/window/reinforced/plasma/spawner/directional/east, +/obj/structure/window/reinforced/plasma/spawner/directional/south, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"UE" = ( +/obj/structure/rack, +/obj/effect/spawner/random/armory/disablers, +/obj/effect/turf_decal/tile/dark/opposingcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"UF" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "e"; + pixel_x = -6; + pixel_y = 2 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "r"; + pixel_x = 5; + pixel_y = 3 + }, +/turf/open/floor/iron/textured, +/area/awaymission/caves/heretic_laboratory) +"UG" = ( +/obj/machinery/vending/modularpc, +/obj/effect/turf_decal/tile/green/anticorner/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"UK" = ( +/obj/machinery/atmospherics/components/trinary/filter/atmos/n2{ + dir = 1 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"UL" = ( +/obj/structure/transport/linear/tram, +/obj/structure/thermoplastic/light, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"UN" = ( +/obj/machinery/door/airlock/highsecurity{ + name = "Telecomms" + }, +/obj/effect/mapping_helpers/airlock/access/all/away/general, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"UO" = ( +/obj/machinery/computer/atmos_alert{ + dir = 4 + }, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"UQ" = ( +/obj/machinery/atmospherics/miner/oxygen, +/obj/machinery/light/small/directional/east, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"US" = ( +/obj/structure/closet/radiation, +/turf/open/floor/mineral/uranium, +/area/awaymission/beach/heretic) +"UT" = ( +/obj/machinery/power/shuttle_engine/propulsion/left{ + dir = 8 + }, +/turf/open/floor/plating, +/area/awaymission/beach/heretic) +"UV" = ( +/obj/effect/turf_decal/tile/dark/half{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"UX" = ( +/mob/living/basic/heretic_summon/stalker, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"UY" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/mob/living/basic/trooper/nanotrasen/ranged/smg/peaceful, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Vb" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, +/obj/effect/turf_decal/siding{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 8 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Ve" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Vh" = ( +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/tile/purple, +/obj/effect/turf_decal/tile/dark{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Vi" = ( +/obj/effect/turf_decal/tile/brown/opposingcorners, +/obj/machinery/light/directional/south, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Vj" = ( +/obj/effect/turf_decal/trimline/blue/filled/line, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Vl" = ( +/obj/effect/turf_decal/tile/yellow/anticorner/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Vn" = ( +/obj/effect/turf_decal/tile/dark/opposingcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Vr" = ( +/obj/machinery/door/window/right/directional/north, +/obj/effect/turf_decal/tile/neutral/opposingcorners, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"Vt" = ( +/turf/open/indestructible/plating, +/area/awaymission/caves/heretic_laboratory) +"Vy" = ( +/obj/effect/mapping_helpers/burnt_floor, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"Vz" = ( +/obj/effect/turf_decal/delivery, +/obj/effect/decal/remains/xeno, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"VA" = ( +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory_clean) +"VB" = ( +/obj/structure/table, +/obj/item/radio{ + pixel_x = -4 + }, +/obj/item/radio, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"VC" = ( +/obj/structure/fluff/tram_rail/anchor{ + dir = 1 + }, +/obj/structure/transport/linear/tram, +/obj/structure/thermoplastic/light, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"VD" = ( +/obj/machinery/atmospherics/components/trinary/mixer/airmix/inverse{ + dir = 1 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"VF" = ( +/obj/structure/holosign/barrier/atmos/sturdy, +/obj/machinery/conveyor/auto{ + dir = 8 + }, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"VG" = ( +/obj/structure/table, +/obj/item/fake_items/lahti_l39{ + pixel_x = 16 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory_clean) +"VI" = ( +/obj/structure/table, +/obj/machinery/light/small/directional/north, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"VJ" = ( +/obj/structure/rack, +/obj/item/storage/box/drinkingglasses, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"VQ" = ( +/obj/structure/railing{ + dir = 4 + }, +/obj/effect/turf_decal/stripes{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"VR" = ( +/obj/structure/fence, +/turf/open/misc/dirt/jungle, +/area/awaymission/beach/heretic) +"VT" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 5 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"VW" = ( +/obj/machinery/power/smes/magical{ + desc = "A high-capacity superconducting magnetic energy storage (SMES) unit."; + name = "power storage unit" + }, +/obj/machinery/light/directional/west, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"VX" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 4 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"VY" = ( +/obj/effect/turf_decal/tile/dark_red/half/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"VZ" = ( +/obj/effect/turf_decal/siding/wood/corner{ + dir = 1 + }, +/turf/open/floor/carpet/green, +/area/awaymission/beach/heretic) +"Wa" = ( +/obj/effect/turf_decal/tile/dark/opposingcorners, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"Wc" = ( +/obj/effect/decal/remains/human, +/obj/machinery/light/directional/east, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Wd" = ( +/turf/open/floor/iron/checker, +/area/awaymission/caves/heretic_laboratory) +"Wi" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, +/obj/effect/turf_decal/siding/corner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/blue/filled/corner{ + dir = 4 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Wj" = ( +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Wk" = ( +/obj/item/bedsheet/black{ + dir = 4 + }, +/obj/structure/bed{ + dir = 4 + }, +/turf/open/floor/stone, +/area/awaymission/beach/heretic) +"Wl" = ( +/obj/structure/chair/stool/bar/directional/north, +/obj/effect/turf_decal/tile/green/half/contrasted{ + dir = 4 + }, +/obj/structure/sign/poster/contraband/clown/directional/east, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Wn" = ( +/obj/effect/spawner/structure/window/reinforced/plasma/plastitanium, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Wo" = ( +/obj/machinery/power/rtg/lavaland, +/obj/structure/window/reinforced/plasma/spawner/directional/south, +/obj/structure/window/reinforced/plasma/spawner/directional/east, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"Wr" = ( +/obj/effect/blessing/invisible, +/obj/effect/blessing/invisible, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"Ws" = ( +/obj/structure/fluff/beach_umbrella/science, +/turf/open/misc/beach/sand, +/area/awaymission/beach/heretic) +"Ww" = ( +/obj/structure/table, +/obj/item/storage/toolbox/drone, +/obj/item/flashlight, +/obj/item/flashlight, +/obj/item/flashlight/flare, +/obj/item/flashlight/flare, +/obj/item/flashlight/flare, +/obj/item/flashlight/flare{ + pixel_y = 6 + }, +/obj/item/flashlight/flare{ + pixel_y = 6 + }, +/obj/item/flashlight/flare{ + pixel_y = 6 + }, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Wx" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Wy" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "j"; + pixel_x = -14; + pixel_y = 2 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "u"; + pixel_x = -4; + pixel_y = 1 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "m"; + pixel_x = 10; + pixel_y = 1 + }, +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Wz" = ( +/obj/effect/turf_decal/trimline/red/arrow_ccw, +/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack{ + pixel_y = 8; + pixel_x = -15; + anchored = 1; + name = "Sam Site Missle rack" + }, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"WA" = ( +/obj/machinery/door/airlock/hatch, +/obj/effect/mapping_helpers/airlock/access/all/service, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"WD" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/effect/mapping_helpers/airlock/access/all/supply, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/door/puzzle/keycard/heretic_entrance, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"WF" = ( +/obj/structure/dresser, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory_clean) +"WJ" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/turf/open/floor/carpet/green, +/area/awaymission/beach/heretic) +"WK" = ( +/obj/structure/fluff/tram_rail/end{ + dir = 1 + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"WN" = ( +/obj/item/radio/intercom/mi13/directional/east, +/obj/effect/blessing/invisible, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"WO" = ( +/obj/effect/turf_decal/tile/dark_red/opposingcorners, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"WP" = ( +/obj/machinery/door/airlock/hatch, +/obj/structure/holosign/barrier/atmos/sturdy, +/obj/effect/blessing/invisible, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"WR" = ( +/obj/effect/decal/cleanable/rubble, +/obj/effect/decal/cleanable/plasma, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"WT" = ( +/obj/effect/spawner/random/trash, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"WU" = ( +/obj/structure/table, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/wood/parquet, +/area/awaymission/caves/heretic_laboratory) +"WV" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory) +"WY" = ( +/obj/effect/turf_decal/tile/bar/opposingcorners, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"WZ" = ( +/obj/structure/bed/double, +/obj/effect/spawner/random/bedsheet/double, +/obj/effect/turf_decal/tile/dark_green/anticorner/contrasted{ + dir = 4 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Xa" = ( +/obj/structure/flora/bush/jungle/a/style_random, +/obj/effect/decal/cleanable/blood/tracks/xeno, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"Xb" = ( +/obj/structure/table, +/obj/machinery/light/small/directional/east, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"Xc" = ( +/obj/machinery/light/small/directional/east, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"Xd" = ( +/obj/structure/falsewall, +/obj/structure/disposalpipe/segment, +/obj/effect/decal/cleanable/blood/tracks, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Xe" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Xg" = ( +/obj/structure/closet/secure_closet, +/obj/item/crowbar, +/obj/item/wrench, +/obj/item/clothing/neck/stethoscope, +/obj/item/stack/tile/iron/small, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Xh" = ( +/obj/machinery/door/airlock/hatch, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Xk" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Xl" = ( +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Xm" = ( +/obj/structure/fluff/tram_rail/anchor, +/obj/effect/turf_decal/delivery, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Xn" = ( +/obj/effect/turf_decal/tile/dark_red/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Xo" = ( +/obj/structure/table, +/obj/item/storage/medkit/toxin{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/storage/medkit/toxin, +/obj/item/storage/pill_bottle/multiver, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Xq" = ( +/obj/item/wrench, +/obj/effect/light_emitter, +/turf/open/misc/grass/jungle/station, +/area/awaymission/beach/heretic) +"Xs" = ( +/obj/machinery/stasis{ + dir = 8 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Xu" = ( +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Xv" = ( +/obj/effect/turf_decal/tile/brown/opposingcorners, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Xx" = ( +/obj/machinery/shower/directional/south, +/obj/structure/curtain, +/obj/structure/fluff/shower_drain, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Xy" = ( +/obj/effect/turf_decal/tile/bar/opposingcorners, +/obj/item/radio/intercom/mi13/directional/west, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"XB" = ( +/obj/structure/table/glass, +/obj/item/reagent_containers/cup/beaker/cryoxadone{ + pixel_x = -6; + pixel_y = 10 + }, +/obj/item/reagent_containers/cup/beaker/cryoxadone{ + pixel_x = 6; + pixel_y = 10 + }, +/obj/item/storage/pill_bottle/mannitol, +/obj/item/reagent_containers/dropper{ + pixel_y = 6 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"XC" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"XI" = ( +/obj/machinery/disposal/bin, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 5 + }, +/obj/machinery/camera/directional/east{ + network = list("ss13","medbay"); + c_tag = "Medical - Surgery B" + }, +/obj/structure/disposalpipe/trunk{ + dir = 2 + }, +/obj/machinery/light_switch/directional/east{ + pixel_x = 22; + pixel_y = -9 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"XL" = ( +/obj/machinery/door/window/survival_pod/left/directional/east, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"XO" = ( +/obj/structure/sign/poster/contraband/beekind/directional/west, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"XQ" = ( +/obj/structure/chair/stool/bar/directional/south, +/obj/effect/turf_decal/tile/green/half/contrasted{ + dir = 4 + }, +/obj/item/radio/intercom/mi13/directional/east, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"XR" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/tile/bar/half/contrasted, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"XS" = ( +/obj/structure/chair/plastic{ + dir = 1 + }, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"XU" = ( +/obj/machinery/computer/operating, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 1 + }, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"XV" = ( +/obj/structure/fluff/bus/passable/seat/driver, +/turf/open/floor/iron/dark, +/area/awaymission/beach/heretic) +"XY" = ( +/obj/item/bedsheet/black/double{ + pixel_x = 0; + pixel_y = 10 + }, +/obj/structure/bed/double, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"XZ" = ( +/obj/structure/fluff/tram_rail/anchor, +/obj/item/stack/sheet/mineral/wood, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Ya" = ( +/obj/structure/mop_bucket/janitorialcart, +/obj/item/reagent_containers/cup/bucket/wooden, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Yb" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/tile/bar/half/contrasted, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Yc" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light/directional/west, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"Yd" = ( +/obj/machinery/conveyor/auto{ + dir = 10 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Ye" = ( +/obj/machinery/vending/wardrobe/medi_wardrobe, +/obj/machinery/light/directional/west, +/turf/open/floor/iron/white, +/area/awaymission/caves/heretic_laboratory) +"Yh" = ( +/obj/effect/turf_decal/tile/purple/half/contrasted{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Yi" = ( +/obj/structure/reagent_dispensers/fueltank/large, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Yj" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/indestructible/plating, +/area/awaymission/caves/heretic_laboratory) +"Ym" = ( +/obj/structure/window/spawner/directional/east, +/obj/structure/window/spawner/directional/west, +/obj/structure/window/spawner/directional/south, +/obj/structure/flora/bush/jungle/c/style_random, +/obj/effect/blessing/invisible, +/turf/open/misc/grass/jungle, +/area/awaymission/caves/heretic_laboratory) +"Yn" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/light_emitter/fake_outdoors, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory_clean) +"Yo" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"Yp" = ( +/obj/structure/table, +/turf/open/floor/carpet/green, +/area/awaymission/caves/heretic_laboratory) +"Yq" = ( +/obj/structure/closet/cabinet, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"Yr" = ( +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/obj/structure/mop_bucket/janitorialcart, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Yt" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/iron/textured, +/area/awaymission/caves/heretic_laboratory) +"Yu" = ( +/obj/structure/table, +/obj/machinery/light/directional/east, +/obj/item/ammo_box/magazine/lahtimagazine{ + anchored = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory_clean) +"Yv" = ( +/turf/closed/wall/mineral/plastitanium{ + color = "#000000" + }, +/area/awaymission/caves/heretic_laboratory_clean) +"Yw" = ( +/obj/effect/turf_decal/tile/neutral/opposingcorners, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"Yx" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/tile/bar/half/contrasted{ + dir = 1 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Yy" = ( +/obj/structure/chair/comfy/shuttle/tactical, +/mob/living/basic/trooper/nanotrasen/ranged/smg/peaceful{ + name = "Man filled with fear"; + desc = "This man, has terror in his eyes, he stays deadset on the console and he is constantly twitching, he doesnt acknowledge you and he doesnt do anything besides sit there. This mans mind seems to be lost" + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"YA" = ( +/obj/structure/table, +/obj/item/storage/medkit/regular{ + pixel_x = 4; + pixel_y = 4 + }, +/obj/item/storage/medkit/regular, +/obj/machinery/light/directional/north, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"YG" = ( +/obj/structure/fluff/tram_rail/anchor, +/obj/structure/fluff/tram_rail, +/turf/open/misc/asteroid, +/area/awaymission/caves/heretic_laboratory) +"YL" = ( +/obj/structure/window/reinforced/survival_pod/spawner/directional/east, +/obj/structure/table, +/obj/item/stack/sheet/iron/fifty{ + pixel_x = 7; + pixel_y = 5 + }, +/obj/item/stack/sheet/rglass/fifty{ + pixel_x = -6; + pixel_y = 5 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory) +"YN" = ( +/obj/machinery/vending/dinnerware, +/turf/open/floor/iron/cafeteria, +/area/awaymission/caves/heretic_laboratory_clean) +"YO" = ( +/obj/effect/turf_decal/tile/dark_red/opposingcorners, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"YP" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/structure/barricade/wooden, +/obj/structure/barricade/wooden/crude, +/obj/effect/light_emitter/fake_outdoors, +/turf/open/floor/wood, +/area/awaymission/beach/heretic) +"YR" = ( +/obj/machinery/oven/range, +/turf/open/floor/iron/cafeteria, +/area/awaymission/caves/heretic_laboratory_clean) +"YS" = ( +/obj/effect/landmark/transport/nav_beacon/tram/platform/heretic/right, +/obj/effect/turf_decal/delivery, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"YW" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory_clean) +"YX" = ( +/obj/machinery/autolathe, +/turf/open/floor/carpet/royalblack, +/area/awaymission/beach/heretic) +"Za" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/carpet/purple, +/area/awaymission/caves/heretic_laboratory) +"Zb" = ( +/obj/effect/spawner/random/heretic_gateway_low, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Zc" = ( +/obj/effect/turf_decal/siding/wood/corner{ + dir = 1 + }, +/turf/open/floor/carpet, +/area/awaymission/beach/heretic) +"Zd" = ( +/obj/effect/decal/cleanable/rubble, +/obj/structure/flora/rock/pile, +/turf/open/floor/asphalt, +/area/awaymission/beach/heretic) +"Zf" = ( +/obj/structure/fluff/tram_rail{ + dir = 1 + }, +/obj/effect/turf_decal/delivery, +/obj/effect/decal/remains/human, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Zg" = ( +/turf/open/misc/beach/coast{ + dir = 6 + }, +/area/awaymission/beach/heretic) +"Zi" = ( +/obj/structure/rack, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Zj" = ( +/obj/machinery/shower/directional/east, +/obj/item/soap, +/turf/open/floor/iron/freezer, +/area/awaymission/caves/heretic_laboratory) +"Zk" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"Zo" = ( +/obj/effect/gibspawner, +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Zp" = ( +/mob/living/basic/slime/pet{ + name = "Gilbert"; + desc = "What a cute slime, they seem relieved to see you" + }, +/turf/open/floor/wood, +/area/awaymission/caves/heretic_laboratory) +"Zs" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/pink/visible{ + dir = 4 + }, +/turf/open/floor/engine, +/area/awaymission/caves/heretic_laboratory) +"Zv" = ( +/obj/machinery/shower/directional/north, +/obj/structure/curtain, +/obj/structure/fluff/shower_drain, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Zw" = ( +/obj/machinery/vending/cigarette, +/obj/effect/turf_decal/tile/green/half/contrasted{ + dir = 8 + }, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"Zy" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"ZD" = ( +/obj/machinery/vending/wardrobe/sec_wardrobe, +/obj/effect/turf_decal/tile/dark/opposingcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"ZG" = ( +/obj/item/weldingtool/hugetank, +/obj/item/clothing/head/utility/welding, +/obj/item/wrench, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory_clean) +"ZH" = ( +/turf/open/misc/beach/coast, +/area/awaymission/beach/heretic) +"ZI" = ( +/obj/structure/falsewall, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/awaymission/caves/heretic_laboratory) +"ZK" = ( +/obj/effect/turf_decal/tile/dark_green/half{ + dir = 8 + }, +/obj/item/radio/intercom/mi13/directional/west, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"ZL" = ( +/obj/machinery/door/airlock/highsecurity{ + max_integrity = 10000; + normal_integrity = 10000 + }, +/obj/effect/mapping_helpers/airlock/access/all/security, +/obj/machinery/door/puzzle/keycard/weapon_anomalies, +/turf/open/floor/iron/small, +/area/awaymission/caves/heretic_laboratory) +"ZM" = ( +/obj/machinery/computer/telecomms/monitor{ + dir = 1 + }, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory_clean) +"ZO" = ( +/obj/machinery/door/airlock/highsecurity, +/obj/effect/mapping_helpers/airlock/access/all/away/general, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"ZP" = ( +/obj/effect/turf_decal/trimline/red/filled, +/turf/open/floor/iron/large, +/area/awaymission/beach/heretic) +"ZQ" = ( +/obj/machinery/light/directional/east, +/obj/structure/table, +/obj/machinery/recharger{ + pixel_y = 4 + }, +/obj/effect/turf_decal/tile/dark/opposingcorners, +/obj/effect/blessing/invisible, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"ZV" = ( +/obj/effect/turf_decal/tile/blue/opposingcorners, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/turf/open/floor/iron, +/area/awaymission/caves/heretic_laboratory_clean) +"ZX" = ( +/obj/effect/decal/cleanable/blood/tracks{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/awaymission/caves/heretic_laboratory) +"ZY" = ( +/obj/machinery/mech_bay_recharge_port, +/obj/effect/turf_decal/tile/yellow/half/contrasted, +/turf/open/floor/iron/large, +/area/awaymission/caves/heretic_laboratory) +"ZZ" = ( +/obj/structure/window/spawner/directional/north, +/obj/structure/window/spawner/directional/east, +/obj/structure/window/spawner/directional/west, +/obj/structure/flora/bush/jungle/c/style_random, +/obj/effect/blessing/invisible, +/turf/open/misc/grass/jungle, +/area/awaymission/caves/heretic_laboratory) + +(1,1,1) = {" +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +"} +(2,1,1) = {" +Lh +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +La +Lh +"} +(3,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +KB +KB +KB +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(4,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +oO +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +yV +OC +yV +tN +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +Eg +NO +gY +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +KB +KB +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(5,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +fC +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +yb +yV +yV +yV +yV +yV +yV +wT +yV +tN +xl +JT +kF +gU +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +mE +mE +Mz +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(6,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +fC +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +hg +WV +GW +hg +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +xl +KB +KB +KB +KB +KB +KB +KB +xl +Mh +xl +nh +od +Yd +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +xQ +xQ +xQ +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(7,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +fC +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +hg +WV +GW +hg +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +rA +yX +yX +yX +yX +yX +gy +IK +gy +yX +yX +yX +yX +yX +yX +yX +yX +yX +yX +yX +yX +Ct +QG +QG +QG +Xd +cX +UX +du +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(8,1,1) = {" +Lh +Dj +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +fC +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +nb +zh +YG +nb +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +sx +KB +ay +ay +ay +KB +xl +Mh +xl +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +ZI +KB +KB +KB +KB +Yr +yo +pf +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(9,1,1) = {" +Lh +Dj +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +fC +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +hg +WV +GW +hg +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +sx +KB +ay +rF +ay +KB +wn +wh +wn +KB +Yi +GL +fW +fW +fW +ay +ay +ay +KB +lm +lm +Xk +lm +lm +lm +KB +KB +iJ +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(10,1,1) = {" +Lh +Dj +nI +nI +EJ +EJ +EJ +EJ +tR +EJ +tR +EJ +tR +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +fC +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +hg +WV +GW +hg +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +sx +KB +KB +KB +KB +KB +wn +wh +wn +KB +Bf +fW +fW +fW +ay +ay +ay +ay +KB +lm +KQ +Rp +lv +Zi +lm +KB +nF +up +sk +KB +ov +up +sk +KB +ov +up +sk +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(11,1,1) = {" +Lh +Dj +nI +nI +EJ +EJ +EJ +tR +IJ +gK +gK +gK +HN +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +fC +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +nb +zh +YG +nb +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +sx +KB +Sv +Sv +Sv +Sv +wn +wh +wn +KB +fW +Qd +nE +kg +KB +hJ +hJ +hJ +KB +lm +lO +Rp +jT +lm +lm +KB +XU +mY +Vj +KB +XU +mY +Vj +KB +XU +mY +Vj +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(12,1,1) = {" +Lh +Dj +nI +nI +EJ +EJ +EJ +EJ +pv +Gm +RH +wm +Fl +HN +tR +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +fC +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +hg +WV +GW +hg +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +sx +KB +Sv +Sv +Sv +Sv +wn +wh +wn +KB +fW +qP +cL +aw +mq +xQ +xQ +xQ +KB +Zi +ay +Xk +lO +lm +lm +KB +Og +CI +mg +KB +Og +CI +mg +KB +Og +CI +mg +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(13,1,1) = {" +Lh +Dj +nI +nI +EJ +EJ +EJ +tR +pv +PA +dd +Jy +os +ZH +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +fC +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +hg +WV +GW +hg +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +sx +KB +Sv +Sv +Sv +Sv +wn +wh +wn +KB +ay +wz +cL +aw +mq +xQ +xQ +xQ +KB +lm +jT +Xk +KQ +lO +lm +KB +dU +Ck +Vj +KB +dU +Ck +Vj +KB +dU +Ck +Vj +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(14,1,1) = {" +Lh +Dj +nI +nI +EJ +EJ +EJ +EJ +pv +PA +nP +PA +PA +ZH +tR +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +fC +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +nb +iL +Dk +nb +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +sx +KB +Sv +Sv +Sv +Sv +wn +wh +wn +KB +ay +wz +cL +aw +mq +xQ +xQ +xQ +KB +lm +Nc +Rp +Gb +lm +lm +KB +XI +uh +Dt +KB +XI +uh +Dt +KB +XI +uh +Dt +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(15,1,1) = {" +Lh +Dj +nI +nI +EJ +EJ +EJ +tR +pv +hB +PA +dd +PA +ZH +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +fC +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +hg +Fw +MP +hg +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +sx +KB +Sv +Sv +Sv +Sv +wn +wh +wn +KB +KB +zF +cL +JG +KB +xQ +xQ +Pj +KB +KB +KB +ZI +KB +KB +KB +KB +KB +MD +KB +KB +KB +MD +KB +KB +KB +MD +KB +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(16,1,1) = {" +Lh +Dj +nI +nI +EJ +EJ +EJ +EJ +Dx +hk +dR +FM +PA +ZH +tR +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +fC +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +hg +Fw +ER +hg +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +sx +KB +Sv +Sv +Sv +Sv +wn +wh +wn +KB +xQ +wz +cL +aw +mq +xQ +xQ +bR +Td +JA +vs +cC +sD +sD +sD +id +wd +sg +qB +qB +qB +sg +qB +qB +qB +HW +yJ +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(17,1,1) = {" +Lh +Dj +nI +nI +EJ +EJ +EJ +EJ +tR +EJ +Dx +hk +hk +Zg +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +fC +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +KB +KB +KB +nb +Oh +yu +nb +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +sx +KB +Sv +Sv +Sv +Sv +wn +wh +wn +KB +xQ +wz +cL +aw +mq +xQ +xQ +bR +Td +JA +Xu +Xu +Xu +Xu +Xu +Xu +Xu +Xu +Xu +Xu +Xu +Xu +Xu +Xu +Xu +Xu +Xu +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(18,1,1) = {" +Lh +Dj +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +tR +EJ +tR +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +cz +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +lB +iz +RW +KB +hg +aL +sc +hg +KB +Sv +Sv +Sv +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +JU +KB +Sv +Sv +Sv +Sv +wn +wh +wn +KB +xQ +wz +cL +aw +mq +xQ +xQ +bR +Td +JA +Xu +Xu +Xu +Xu +Xu +Xu +Xu +Xu +Xu +Xu +Xu +Km +Xu +Xu +Xu +Km +vS +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(19,1,1) = {" +Lh +Dj +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +TQ +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +Sv +Sv +Sv +KB +KB +KB +KB +KB +KB +KB +Sv +KB +Cn +mo +aV +KB +hg +WV +GW +hg +KB +Sv +Sv +Sv +KB +gN +ye +CB +tA +CB +lo +ye +Yc +CB +Mo +KB +Sv +Sv +Sv +Sv +wn +wh +wn +KB +KB +zF +cL +JG +KB +xQ +xQ +Pj +KB +KB +KB +KB +KB +KB +KB +KB +DT +Xu +Xu +KB +KB +KB +KB +KB +KB +KB +KB +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(20,1,1) = {" +Lh +Dj +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +Qr +WT +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +xl +Sv +Sv +Sv +KB +jK +cL +VW +cL +jK +KB +Sv +KB +cw +As +YL +KB +nb +zh +YG +nb +KB +Sv +Sv +Sv +KB +eT +um +df +lE +lE +vY +Yt +um +NW +JO +KB +Sv +Sv +Sv +Sv +wn +wh +wn +KB +hr +wz +bi +aw +mq +xQ +xQ +sN +KB +RS +vj +Kq +RS +Ye +Kq +KB +Xu +Xu +Xu +KB +if +Xu +if +Xu +if +vN +Md +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(21,1,1) = {" +Lh +Dj +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +WT +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +xl +Sv +Sv +Sv +KB +IV +XL +IV +XL +IV +KB +Sv +KB +fK +mo +mo +KB +hg +WV +GW +hg +KB +Sv +Sv +Sv +KB +QF +um +lE +Vy +AO +aE +AO +vT +cq +rP +KB +xl +xl +xl +xl +wn +wh +wn +KB +xQ +wz +cL +aw +mq +xQ +xQ +xQ +BZ +ny +Xu +Xu +Xu +Xu +Xu +KB +Xu +Xu +Xu +KB +Gw +Vb +Vb +Vb +Vb +qG +Qj +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(22,1,1) = {" +Lh +Dj +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +bB +Sv +Sv +Sv +Sv +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +Co +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +zk +zk +vu +vu +xa +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +xl +Sv +Sv +Sv +KB +If +If +If +If +If +KB +Sv +KB +Fb +mo +mo +KB +hg +WV +GW +hg +KB +Sv +Sv +Sv +KB +QF +um +AO +AO +aE +aE +aE +aE +sj +JO +KB +bl +Ii +DN +Ka +wn +wh +wn +KB +xQ +wz +cL +aw +mq +xQ +xQ +xQ +BZ +nv +Xu +Dz +uM +Xu +yx +KB +bG +Xu +uI +KB +lA +Xu +Xu +Xu +Xu +Xu +XB +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(23,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +Sv +Sv +EI +EI +EI +EI +EI +EI +EI +EI +EI +EI +Sv +Sv +Sv +EI +EI +EI +EI +EI +EI +EI +cl +Ua +wO +mv +pa +Nz +mv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +wi +Az +Az +Az +Az +Az +Az +Az +Az +Az +Az +wi +PD +PD +PD +PD +PD +Lx +wi +Az +Az +Az +Az +Az +Az +Az +Az +Az +Az +wi +vu +vu +vu +xl +Sv +Sv +Sv +KB +Ol +If +If +If +Ol +KB +Sv +KB +EX +mo +mo +KB +nb +zh +YG +nb +KB +Sv +Sv +Sv +KB +QF +um +mV +AO +uq +AO +aE +aE +cq +JO +KB +Ii +wn +wn +Ka +wn +wh +wn +KB +KB +zF +cL +JG +KB +xQ +xQ +xQ +BZ +nv +Xu +CJ +By +Xu +jx +KD +jx +Xu +Vj +OY +nv +Xu +Xu +Xu +Xu +Xu +EO +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(24,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +EI +EI +EI +EI +EI +EI +EI +EI +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Ua +Ua +Ua +Ua +wO +FO +mv +Nz +mv +mv +pa +mv +mv +mv +mv +xl +vu +vu +vu +Az +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Az +vu +vu +vu +xl +Sv +Sv +Sv +KB +KB +KB +QZ +KB +KB +KB +KB +KB +KB +QZ +QZ +KB +KB +Um +II +KB +KB +KB +KB +KB +KB +yW +wt +AO +aE +aE +uW +aE +aE +Cv +lX +KB +wn +wn +wn +Ka +wn +wh +wn +KB +xQ +wz +cL +aw +mq +xQ +xQ +xQ +BZ +nv +Xu +wH +ho +Xu +FX +KB +iO +Xu +zs +KB +yJ +Xu +Xu +Xu +Xu +Xu +xv +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(25,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +EI +EI +EI +EI +EI +EI +EI +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +mv +mv +mv +mv +mv +mv +mv +mv +mv +mv +mv +jz +mv +mv +xl +Uj +vu +vu +Az +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Az +vu +vu +vu +xl +KB +KB +KB +KB +gt +KB +qk +qk +qk +qk +qk +qk +qk +qk +qk +qk +yK +kf +iR +mo +mo +aE +aE +Sl +aE +aE +AO +aE +aE +mV +aE +jj +aE +aE +Aq +KB +wn +wn +ji +Ka +wn +wh +wn +KB +xQ +wz +cL +aw +mq +xQ +xQ +xQ +BZ +yJ +Xu +Xu +Xu +Xu +Xu +KB +Xu +Xu +Xu +KB +Hr +Hr +Hr +Hr +Hr +Wi +Qj +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(26,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +Tb +EI +EI +EI +EI +EI +EI +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +mv +Nz +mv +mv +mv +Nz +mv +mv +mv +mv +Nz +mv +Nz +xl +ZG +vu +vu +Az +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Az +vu +vu +vu +xl +KB +uy +uy +uy +uy +Sr +jk +mX +VX +Gz +Gz +Gz +Gz +Gz +pp +ik +ik +to +to +ik +ik +kV +kV +kV +kV +kV +TF +Zy +jj +uq +aE +aE +uq +Yt +JO +KB +wn +TL +Oc +Ka +wn +wh +wn +KB +xQ +wz +cL +aw +mq +xQ +xQ +xQ +KB +CD +vt +Xs +CD +mF +Xs +KB +Xu +Xu +Xu +KB +EQ +Xu +QN +Xu +QN +vN +nN +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(27,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +Tb +EI +EI +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +pa +mv +mv +mv +mv +mv +jz +mv +mv +mv +mv +xl +vu +vu +vu +Az +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Az +vu +vu +vu +xl +KB +uy +KB +KB +KB +KB +KB +KB +KB +zW +zW +KB +KB +KB +KB +FS +gm +to +gm +gm +ya +aE +aE +aE +aE +aE +um +Zy +Zy +Zy +ak +xY +zo +Ek +Fe +KB +wn +wn +AZ +Ka +wn +wh +wn +KB +KB +zF +cL +JG +KB +xQ +xQ +Pj +KB +KB +KB +KB +KB +KB +KB +KB +DT +Xu +Xu +KB +KB +KB +KB +KB +KB +KB +KB +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(28,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +pa +mv +jz +mv +Nz +mv +mv +mv +mv +mv +xl +vu +vu +vu +Az +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Az +vu +vu +vu +xl +KB +uy +Yj +Ku +Ae +Ae +Ae +JD +oP +Ae +GU +Ae +fE +cL +KB +OD +hQ +WU +hQ +hQ +At +KB +KB +KB +KB +Dc +um +Yt +aE +OS +fX +au +wY +um +JM +KB +wn +wn +wn +Ka +wn +wh +wn +KB +xQ +wz +cL +aw +mq +xQ +xQ +bR +Td +JA +Xu +Xu +Xu +Xu +Xu +QA +Xu +Xu +Xu +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(29,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +tR +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +pa +mv +mv +mv +mv +mv +mv +mv +mv +xl +vu +vu +vu +Az +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Az +vu +vu +vu +xl +KB +JB +JB +ng +zV +VD +Nt +Nt +Nt +cO +GO +cL +fR +cL +KB +Cn +hQ +wE +gm +hQ +FW +KB +aF +Lo +KB +QF +um +um +sj +pY +Yt +qE +UF +pc +ZY +KB +wn +wn +wn +Ka +wn +wh +wn +KB +xQ +wz +cL +aw +mq +xQ +xQ +bR +Td +JA +Xu +Xu +Xu +Xu +Xu +Xu +Xu +Xu +Xu +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(30,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +mv +mv +mv +mv +mv +mv +Sv +xl +vu +vu +vu +Az +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Az +vu +vu +vu +xl +KB +KB +KB +DR +Cs +wP +aD +Rq +aD +wP +aD +UK +dC +et +KB +Cn +hQ +to +gm +hQ +FW +KB +Lf +Sd +KB +QW +gW +gW +xC +Bc +dl +HU +dl +yF +cF +KB +wn +wn +wn +Ka +wn +wh +wn +KB +xQ +wz +cL +aw +mq +xQ +xQ +bR +Td +JA +Km +Xu +Xu +Xu +Xu +Km +Xu +Xu +vS +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(31,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +Az +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Az +vu +vu +vu +xl +Sv +Sv +Sv +TV +ip +Zs +cL +Pz +eQ +Zs +cL +Pz +cL +cP +KB +Cn +mo +to +gm +mo +FW +KB +Tq +Yp +KB +KB +KB +KB +KB +KB +oi +WD +oi +KB +KB +KB +KB +zl +KB +KB +wn +wh +wn +KB +KB +zF +cL +JG +KB +xQ +xQ +Pj +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(32,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +Az +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +nV +mC +Ry +Ry +Ry +Ry +Ry +Ry +aR +BE +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Az +vu +vu +vu +xl +Sv +Sv +Sv +TV +KB +Rt +Hl +Aw +KB +Rt +Hl +Ea +KB +KB +KB +mo +mo +ik +mo +mo +mo +KB +mo +mo +Ht +KB +bq +bq +bq +bq +bq +wC +bq +bq +bq +bq +bq +bq +bq +KB +wn +wh +wn +KB +xQ +wz +cL +aw +mq +xQ +xQ +xQ +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(33,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +wi +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +dS +wi +Ey +Ey +Ey +Ey +Ey +Ey +wi +Wo +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +wi +vu +vu +vu +xl +Sv +Sv +Sv +TV +KB +ql +ay +dm +KB +ql +ay +dm +KB +KB +KB +KB +KB +qm +Gk +KB +KB +KB +mo +mo +oW +KB +bq +bq +bq +bq +bq +wC +bq +bq +bq +bq +bq +bq +bq +KB +wn +wh +dk +KB +xQ +wz +cL +aw +mq +xQ +xQ +UX +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(34,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +PD +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +fl +hd +RT +Gs +KT +KT +SI +wN +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +PD +vu +vu +vu +xl +Sv +Sv +Sv +TV +KB +ay +UQ +ay +KB +ay +dW +ay +KB +py +KB +Px +Fa +ik +mo +mo +mo +KB +KB +Xh +KB +KB +bq +bq +in +Gv +bq +oN +xS +El +bq +Gv +PN +bq +Br +KB +xl +Mh +xl +KB +Sh +wz +cL +aw +gq +xQ +KB +KB +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(35,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +PD +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +fl +Gu +KT +KT +KT +KT +rU +wN +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +PD +vu +zk +vu +xl +Sv +Sv +Sv +TV +KB +KB +KB +KB +KB +KB +KB +KB +KB +ay +SB +tL +mo +ik +mo +mo +mo +mo +mo +mo +mo +Xh +bq +bq +Af +yO +bq +hX +xS +kH +bq +XS +kk +bq +bq +KB +xl +IK +xl +KB +KB +vb +BU +mN +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +gj +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(36,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +PD +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +fl +hK +KT +zO +KT +KT +im +wN +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +PD +vu +vu +vu +xl +Sv +Sv +Sv +Fy +lu +lu +Sv +Sv +Sv +Sv +Sv +Sv +KB +Fk +KB +tL +ik +ik +mo +mo +mo +mo +mo +mo +mo +Xh +bq +bq +Af +yO +bq +Lc +xS +zS +bq +XS +kk +bq +bq +KB +xl +IK +xl +Sv +KB +wz +cL +aw +xl +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(37,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +zk +PD +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +fl +Gs +zT +Gs +KT +KT +KT +wN +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +PD +zk +vu +vu +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +KB +KB +KB +KB +tL +Et +KB +KB +KB +ix +Io +KB +KB +KB +KB +bq +bq +Af +yO +CA +Lc +xS +zS +bq +XS +kk +bq +bq +KB +xl +IK +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(38,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +PD +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +fl +KT +qU +Qk +rt +KT +KT +wN +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +PD +vu +vu +vu +xl +Sv +xl +xl +xl +xl +xl +xl +xl +xl +KB +gB +Za +va +va +ty +bT +KJ +KB +lm +KB +DT +Xu +KB +Gi +iP +KB +mI +bq +Af +Gv +Wx +Lc +xS +zS +bq +Gv +kk +bq +Br +KB +xl +IK +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(39,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +PD +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +fl +KT +KG +ie +XY +KT +SI +wN +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +PD +vu +vu +vu +xl +Sv +xl +vu +vu +dI +iB +MH +vu +vu +KB +Qi +lD +Ic +uB +KB +tL +KJ +KB +lm +KB +Bm +vp +KB +qp +Hh +qv +bq +bq +Af +yO +bq +Lc +xS +zS +bq +XS +kk +bq +bq +KB +xl +IK +xl +Sv +KB +zF +cL +JG +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(40,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +wi +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +kc +wi +nD +nD +nD +nD +nD +nD +wi +mC +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +wi +vu +vu +vu +xl +Sv +xl +vu +vu +Gd +Rf +jU +vu +vu +KB +KB +KB +KB +KB +KB +tL +KJ +KB +KB +KB +KB +KB +KB +KB +KB +KB +bq +bq +Af +yO +bq +Lc +xS +zS +bq +XS +kk +bq +bq +KB +xl +IK +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(41,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +Az +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +OJ +Wo +Ry +Ry +Ry +Ry +Ry +Ry +dS +UD +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Az +vu +vu +vu +xl +Sv +xl +vu +vu +lW +LN +UC +vu +vu +KB +gB +Za +va +va +ty +bT +KJ +KB +uB +ju +xr +Ga +KB +Gi +iP +KB +mI +bq +Af +yO +bq +bH +xS +Hs +bq +XS +kk +bq +bq +KB +xl +IK +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(42,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +Az +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Az +vu +vu +vu +xl +Sv +xl +vu +vu +vu +vu +vu +vu +vu +KB +Qi +lD +Ic +uB +KB +tU +KJ +ty +va +va +Za +gB +KB +qp +Xu +qv +bq +bq +gv +Gv +bq +oN +xS +El +bq +Gv +PX +bq +Br +KB +xl +IK +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(43,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +Az +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Az +vu +vu +vu +xl +Sv +xl +Or +Ka +Ka +Ka +Ka +Ka +Or +KB +KB +KB +KB +KB +KB +tL +KJ +KB +KB +KB +KB +KB +KB +KB +KB +KB +bq +bq +bq +bq +bq +wC +bq +bq +bq +bq +bq +bq +bq +KB +xl +IK +xl +Sv +KB +zF +cL +JG +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(44,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +Az +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Az +vu +vu +vu +xl +Sv +xl +hs +hs +eq +TN +eq +hs +hs +KB +gB +xr +ju +uB +KB +tL +KJ +ty +va +va +Za +gB +KB +Gi +Xu +qv +bq +bq +xG +xG +xG +wC +CP +bq +bq +Gq +bq +bq +bq +KB +xl +IK +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(45,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +Az +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Az +vu +vu +vu +xl +Sv +xl +hs +Pl +hs +hs +hs +Pl +hs +KB +Qi +Za +va +va +ty +bT +KJ +KB +uB +Ic +lD +Qi +KB +qp +iP +KB +KB +KB +Qn +KB +KB +Nq +KB +WA +KB +KB +pO +KB +KB +KB +xl +IK +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(46,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +Az +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Az +vu +vu +vu +xl +Sv +xl +xl +xl +xl +Si +xl +xl +xl +KB +KB +KB +KB +KB +KB +mo +KJ +KB +KB +KB +KB +KB +KB +KB +KB +KB +he +xi +OG +KB +bq +wC +bq +bq +bq +yL +ay +ay +gx +KB +xl +IK +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(47,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +Az +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Az +vu +vu +vu +xl +Sv +Sv +Sv +Sv +xl +mo +Tn +Yh +LI +LI +TH +LI +LI +LI +ik +ik +KJ +Hp +OG +OG +OG +OG +Kd +OG +OG +OG +OG +OG +OG +KB +bq +wC +bq +bq +bq +KB +ba +ay +Ya +KB +xl +VF +xl +Sv +KB +zF +cL +JG +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(48,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +Az +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Az +vu +vu +vu +xl +Sv +Sv +Sv +Sv +xl +mo +TB +sK +Ru +TB +TB +TB +TB +TB +TB +TB +uc +KB +OG +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +bq +wC +xS +bq +bq +xl +xl +xl +xl +xl +xl +hC +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(49,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +Az +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Ry +Az +vu +vu +vu +xl +Sv +xl +xl +xl +xl +bn +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +KB +OG +KB +Sv +Sv +KB +CV +Xy +Sx +Xv +Ss +Xv +Hl +CA +wC +xS +bq +bq +Az +hE +Bl +Nv +Vr +Yw +gb +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(50,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +wi +Az +Az +Az +Az +Az +wi +PD +PD +PD +PD +PD +wi +Az +Az +Az +Az +wi +PD +PD +PD +PD +PD +wi +Az +Az +Az +Az +Az +wi +vu +vu +vu +xl +Sv +xl +Kb +rf +Kb +Kb +Kb +rf +Kb +xl +xl +Ib +ld +an +ld +Ib +xl +KB +OG +KB +Sv +Sv +KB +xW +WY +xW +SP +Xv +Xv +Hl +Wx +wC +xS +bq +bq +Az +hE +hE +AP +Bv +Yw +Yw +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(51,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +zk +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +xl +Sv +xl +Kb +Kb +dr +ry +dr +Kb +Kb +xl +xl +Wa +Wa +Wa +Wa +sO +xl +KB +OG +KB +Sv +Sv +KB +aW +WY +xW +SP +Xv +Xv +oI +bq +wC +xS +bq +bq +vx +hE +hE +AP +Bv +Yw +Yw +xl +Sv +KB +zF +cL +JG +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(52,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +zk +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +xl +Sv +xl +WP +Ka +Ka +Ka +Ka +Ka +WP +xl +xl +qC +Wa +Wa +Wa +qC +xl +KB +Oz +KB +Sv +Sv +KB +mi +WY +xW +SP +Bj +Vi +KB +mI +wC +xS +bq +bq +xl +qA +ZV +AP +Bv +Yw +GH +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(53,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +Rl +vq +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +vu +xl +Sv +xl +vk +vk +vk +vk +vk +vk +Wr +xl +xl +nd +nd +fp +nd +nd +xl +KB +OG +KB +Sv +Sv +KB +OQ +WY +xW +SP +kj +eJ +Ay +CQ +wC +RI +CQ +CQ +aq +Rb +Rb +Dr +de +zb +zb +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(54,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +vu +vu +vu +vu +vu +vu +Ce +GC +Ti +vu +vu +vu +vu +vu +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +Sv +xl +vk +vk +vk +vk +vk +vk +vk +xl +FY +FY +FY +FY +FY +FY +FY +KB +OG +KB +Sv +Sv +KB +SN +WY +xW +SP +Xv +Xv +Hl +bq +wC +xS +bq +bq +Az +hE +hE +AP +Bv +Yw +zb +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(55,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +vu +vu +vu +vu +GC +vu +vu +vu +vu +vu +vu +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +Sv +xl +vk +vk +vk +gO +vk +vk +vk +xl +FY +FY +FY +kR +FY +FY +FY +KB +OG +KB +Sv +Sv +KB +JW +WY +JS +Xv +Xv +Xv +Hl +bq +wC +xS +bq +bq +Az +hE +Ms +KF +Bv +kz +zb +xl +Sv +KB +zF +cL +JG +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(56,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +vu +vu +vu +vu +vu +GC +vu +vu +vu +vu +vu +vu +xl +Sv +Sv +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +xl +xl +xl +xl +fk +xl +xl +xl +fk +KB +OG +KB +KB +KB +KB +KB +Hj +KB +KB +KB +KB +KB +bq +wC +xS +bq +bq +xl +xl +xl +xl +xl +xl +aq +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(57,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +vu +vu +Hl +Hl +Hl +Hl +Hl +Xe +Hl +Hl +Hl +Hl +vu +vu +xl +Sv +Sv +KB +Cm +tS +tS +Nj +tS +tS +tS +tS +Ks +tS +tS +Nj +tS +tS +tS +KB +Sv +xl +WF +ss +hs +xl +WF +ss +hs +KB +OG +KB +Gi +Xu +IQ +KB +WY +WY +WY +WY +WY +KB +bq +wC +xS +bq +bq +xl +IS +YR +jy +jS +YN +fb +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(58,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +HR +KB +KB +bA +bq +sr +sr +HF +Jg +UO +bA +KB +KB +HR +KB +KB +Sv +KB +tS +lV +lV +lV +lV +lV +lV +lV +lV +lV +lV +lV +lV +lV +tS +KB +Sv +xl +hv +hs +hs +xl +hv +hs +hs +KB +OG +KB +qp +Km +Xu +Hn +WY +WY +iI +cT +nr +KB +bq +wC +xS +bq +bq +xl +we +we +we +we +SW +fb +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(59,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +bq +bq +RU +KB +bq +kn +kn +kn +bP +kn +kn +bq +KB +RU +bq +bq +KB +Sv +KB +tS +lV +tS +tS +tS +tS +tS +tS +af +tS +tS +tS +tS +lV +tS +KB +Sv +xl +qO +hs +iF +xl +qO +hs +iF +KB +OG +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +bq +Qh +HQ +bq +bq +xl +we +we +we +we +Il +fb +xl +Sv +KB +zF +cL +JG +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(60,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +bq +bq +bq +KB +bq +bq +uS +bq +CQ +bq +bu +bq +KB +bq +bq +bq +KB +Sv +KB +tS +lV +tS +KB +KB +ci +ci +ci +ci +ci +KB +KB +tS +lV +tS +KB +Sv +xl +xl +am +xl +xl +xl +am +xl +KB +fo +OG +OG +OG +OG +OG +fW +fW +fW +fW +fW +qr +hp +bq +wC +bq +hp +xl +xD +mT +mO +pe +fz +fb +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(61,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +mI +bq +bq +HR +bq +bq +bq +UY +CQ +ol +bq +bq +HR +bq +bq +Br +KB +Sv +KB +tS +lV +tS +KB +Fh +Nm +NU +Nm +WO +Nm +Fh +KB +tS +lV +tS +KB +Sv +Sv +xl +vu +xl +Sv +xl +vu +xl +KB +KB +KB +KB +KB +KB +OG +KB +KB +KB +KB +KB +KB +KB +KB +eg +KB +KB +xl +xl +xl +xl +xl +xl +eE +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(62,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +bq +bq +bq +KB +bq +hp +CP +bq +CQ +bq +hp +bq +KB +bq +bq +bq +KB +Sv +KB +tS +lV +tS +vr +WO +YO +Xn +Id +OL +Xn +Xn +Kg +lV +lV +tS +KB +Sv +Sv +xl +vu +xl +Sv +xl +vu +xl +Sv +Sv +Sv +Sv +Sv +KB +OG +KB +Sv +Sv +Sv +Sv +Sv +KB +vB +ZX +vB +KB +NQ +Rn +TJ +xl +td +rX +Hz +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +MV +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(63,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +KB +KB +KB +KB +KB +KB +KB +Dp +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +Kg +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +Kg +KB +KB +KB +KB +KB +PV +KB +KB +KB +PV +KB +KB +KB +KB +KB +KB +KB +OG +KB +Sv +Sv +Sv +Sv +Sv +KB +Xx +ZX +Zv +KB +Cp +JH +Rn +Fz +hs +gF +Hz +xl +Sv +KB +zF +cL +JG +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +MV +MV +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(64,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +tS +lV +tS +tS +tS +tS +tS +tS +Ks +tS +tS +tS +tS +lV +tS +tS +tS +tS +tS +KB +tS +tS +tS +tS +tS +lV +tS +tS +tS +tS +tS +Ks +tS +tS +tS +tS +tS +tS +tS +tS +qL +qL +fI +OG +KB +Sv +Sv +Sv +Sv +Sv +KB +vO +ZX +Ra +KB +xl +xl +xl +xl +WF +dO +tc +pU +hI +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Sq +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +MV +MV +MV +MV +MV +MV +MV +MV +Lh +Lh +"} +(65,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +tS +lV +lV +lV +lV +lV +lV +lV +lV +lV +lV +lV +lV +lV +tS +tS +tS +tS +tS +KB +tS +tS +tS +tS +tS +lV +lV +lV +lV +lV +lV +lV +lV +lV +lV +lV +lV +lV +lV +lV +lV +tS +KB +KB +KB +Sv +Sv +Sv +Sv +Sv +KB +Xx +ZX +Zv +KB +lm +lm +lm +xl +hs +hs +hs +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +MV +MV +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(66,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +bJ +tS +tS +tS +CX +tS +af +tS +tS +CX +tS +tS +tS +tS +CX +tS +tS +tS +Cm +KB +Cm +tS +tS +CX +tS +tS +tS +CX +tS +tS +tS +aQ +tS +tS +tS +CX +tS +tS +tS +tS +lV +tS +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +vB +ZX +vB +KB +lm +lm +lm +xl +hs +ij +Nu +xl +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +MV +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(67,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +KB +KB +KB +KB +KB +KB +Dg +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +sF +sf +GP +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +bJ +lV +tS +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +pP +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +Sv +KB +zF +cL +JG +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(68,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +xl +xl +dY +ML +dY +dY +ML +dY +Kb +Kb +Kb +rf +dr +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +KB +KB +KB +Vt +Vt +Vt +Vt +Vt +Vt +Vt +Vt +Vt +Vt +Vt +Vt +Vt +Vt +KB +tS +lV +tS +KB +ID +BS +ls +Jb +Jb +bc +bc +bc +TM +uj +Yb +bc +bc +bc +Jb +Jb +cV +BS +FB +KB +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(69,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +Kb +Kb +Kb +Kb +Kb +Kb +Kb +Kb +Kb +Kb +Kb +Kb +Kb +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +uy +uy +uy +uy +uy +uy +uy +uy +uy +uy +uy +uy +uy +uy +uy +uy +uy +BW +lV +lV +tS +KB +eN +Wj +EZ +Wj +Wj +tl +tl +tl +TM +Ml +Yb +tl +tl +tl +Wj +CG +EZ +Vl +JR +KB +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(70,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +Kb +Kb +Kb +Kb +Kb +Kb +Kb +Kb +Kb +Kb +dr +Kb +Kb +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +uy +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +tS +lV +tS +KB +Xl +JR +Qm +fm +xT +Lp +AQ +Lp +iN +Ml +so +Lp +dp +Lp +xT +St +iD +eN +uQ +KB +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(71,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +xl +xl +FY +bZ +xl +xl +xl +dY +dY +dY +Kb +pJ +dr +Kb +Kb +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +uy +KB +IP +IP +IP +KB +CU +gI +MB +KB +IP +XO +IP +KB +IP +IP +IP +KB +tS +lV +tS +KB +eN +Wj +Gy +Wj +Wj +tl +tl +tl +TM +Ml +Yb +tl +tl +tl +Wj +Ds +Gy +nQ +JR +KB +Sv +KB +zF +cL +JG +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(72,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +zE +DC +CT +CT +ts +GF +xl +dr +Kb +Kb +Kb +Kb +Kb +Kb +Kb +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +uy +KB +IP +yw +IP +KB +AT +Jf +ob +KB +IP +Qz +IP +KB +IP +uN +IP +KB +tS +lV +tS +KB +WZ +Gt +Gt +Gt +Gt +Ia +Ia +Ia +TM +Ml +Yb +Ia +Ia +Ia +Gt +Gt +Gt +Gt +rx +KB +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(73,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +CT +CT +CT +CT +CT +GF +xl +dY +AG +dY +Kb +Kb +Kb +Uo +dr +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +uy +KB +IP +IP +IP +KB +ze +Bq +BX +KB +IP +IP +IP +KB +IP +IP +IP +KB +tS +lV +tS +KB +KB +KB +KB +KB +KB +KB +KB +KB +AC +Ml +eS +KB +KB +KB +KB +KB +KB +KB +KB +KB +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(74,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +zE +zE +CT +CT +CT +GF +xl +xl +xl +xl +pb +pb +xl +xl +xl +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +uy +KB +yg +fw +yg +KB +FU +PG +FU +KB +yg +fw +yg +KB +rK +DJ +rK +KB +bJ +lV +tS +KB +ID +BS +ls +Jb +Jb +bc +bc +bc +TM +Ml +Yb +tl +tl +tl +Wj +Wj +Pq +pW +FB +KB +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(75,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +iU +br +xI +CT +CT +Di +xl +xl +vf +dw +VA +VA +dw +vf +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +uy +KB +jW +jW +jW +CZ +AI +wI +AI +nw +jW +jc +jW +lJ +Ox +Ox +Ox +KB +tS +lV +tS +KB +eN +Wj +EZ +Wj +Wj +tl +tl +tl +TM +Ml +Yb +tl +tl +tl +Wj +Wj +EZ +Wj +JR +KB +Sv +KB +zF +cL +JG +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(76,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +CT +op +LU +WN +TG +qe +xl +xl +VA +VA +VA +VA +VA +VA +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +uy +KB +tS +tS +tS +tS +tS +lV +lV +lV +lV +lV +lV +lV +lV +lV +lV +fA +lV +lV +tS +KB +Xl +JR +IG +fm +xT +Lp +AQ +Lp +iN +Ml +so +Lp +dp +Lp +xT +St +Cx +eN +uQ +KB +Sv +KB +wz +cL +aw +Yv +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(77,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +xl +xl +xl +xl +xl +xl +xl +xl +VA +yd +VG +kO +eW +VA +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +uy +KB +UV +UV +UV +OZ +UV +UV +UV +ih +oL +sU +oL +Ly +oL +oL +oL +KB +tS +lV +tS +KB +eN +Wj +Gy +Wj +Wj +tl +tl +tl +TM +Ml +Yb +tl +tl +tl +Wj +Wj +Gy +Wj +JR +KB +Sv +KB +wz +cL +aw +sd +SQ +Jv +tY +qg +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(78,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +VA +yd +Le +eW +eW +Gp +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +uy +KB +yg +fw +yg +KB +xx +xk +xx +KB +rK +DJ +rK +KB +rK +DJ +rK +KB +tS +lV +tS +KB +WZ +Gt +Gt +Gt +Gt +Ia +Ia +Ia +TM +Ml +Yb +Ia +Ia +Ia +Gt +Gt +Gt +Gt +rx +KB +Sv +KB +wz +cL +aw +Yv +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(79,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +mJ +Yu +Le +eW +Hc +GZ +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +uy +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +tS +lV +tS +KB +KB +KB +KB +KB +KB +KB +KB +KB +QE +Ml +eS +KB +KB +KB +KB +KB +KB +KB +KB +KB +Sv +KB +zF +cL +JG +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(80,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +xl +xl +xl +xl +xl +xl +xl +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +uy +KB +IP +hD +IP +KB +IP +uX +IP +KB +IP +GN +IP +KB +IP +kK +IP +KB +tS +lV +tS +KB +RB +FD +xb +be +be +Fm +Fm +Fm +TM +Ml +Yb +tl +tl +tl +NA +NA +aa +sZ +Tc +KB +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(81,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +uy +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +tS +lV +tS +KB +Jz +cK +ua +bt +Wj +lH +tl +tl +TM +Ml +Yb +tl +tl +tl +Wj +Wj +qV +Wj +Wj +KB +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(82,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +uy +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +bJ +lV +tS +KB +za +Rv +gJ +gJ +fM +gS +wX +gS +Yx +DU +so +Lp +dp +Lp +xT +lK +cj +RZ +pL +KB +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(83,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +uy +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +tS +lV +tS +KB +Jz +fV +DB +ja +Wj +tl +tl +tl +TM +Pc +Yb +tl +tl +tl +Wj +Wj +dL +Wj +Wj +KB +Sv +KB +zF +cL +JG +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(84,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +uy +KB +IP +Fu +IP +KB +IP +RA +IP +KB +IP +Lb +IP +KB +IP +fH +IP +KB +TA +lV +tS +KB +GY +dD +dD +dD +dD +Eb +qb +qb +TM +Pc +Yb +tl +tl +tl +MY +MY +MY +MY +bv +KB +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(85,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +uy +uy +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +tS +lV +tS +KB +KB +KB +KB +KB +KB +KB +KB +KB +Jo +Pc +mL +KB +KB +KB +KB +KB +KB +KB +KB +KB +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(86,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +dA +KB +KB +ep +lC +ep +KB +ep +lC +ep +KB +sM +Mt +sM +KB +rK +DJ +rK +KB +tS +lV +tS +KB +wy +oD +oD +oD +oD +oD +oD +Wj +XC +Pc +Wj +Fn +wq +xj +Op +Zw +MS +db +UG +KB +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(87,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +KB +KB +KB +CQ +KB +Tf +AI +AI +AI +xO +DG +DG +DG +yM +AI +RP +AI +qY +DY +DY +DY +KB +tS +lV +tS +KB +In +Wj +Wj +Wj +Wj +Wj +Wj +Wj +Wj +Pc +Wj +Wj +Wj +Wj +Wj +Wj +Wj +Wj +IZ +KB +Sv +KB +zF +cL +JG +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(88,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +cI +wl +dG +ai +xM +tB +tS +tS +tS +tS +tS +tS +tS +tS +tS +tS +lV +lV +lV +lV +lV +lV +fA +lV +lV +tS +tB +In +Wj +ZZ +PL +PL +PL +Ym +Wj +Wj +Pc +HC +HC +HC +HC +HC +HC +HC +Wj +Uy +KB +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(89,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Xk +KB +KB +KB +Ir +KB +Lj +xm +xm +xm +Er +UV +UV +UV +Vh +QL +MW +QL +wD +QL +QL +QL +KB +tS +lV +tS +KB +In +Wj +Wj +Wj +Wj +Wj +Wj +Wj +Wj +Pc +Wj +Wj +Wj +Wj +Wj +Wj +Wj +Wj +IZ +KB +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(90,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Xk +KB +Sv +KB +KB +KB +KB +xx +ZL +xx +KB +xx +xk +xx +KB +ep +Mt +ep +KB +sM +Nn +sM +KB +tS +lV +tS +KB +Mk +Pb +Pb +Pb +Pb +Pb +Pb +Wj +aC +Pc +Wj +aB +XQ +JX +Wl +gX +SG +fq +jO +KB +Sv +KB +wz +cL +aw +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +"} +(91,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Xk +KB +Sv +Sv +Sv +Sv +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +tS +lV +tS +KB +KB +KB +KB +KB +KB +KB +KB +KB +MX +Pc +FH +KB +KB +KB +KB +KB +KB +KB +KB +KB +Sv +KB +zF +cL +JG +xl +Yv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Jv +Yv +xl +Sv +Sv +bB +bB +bB +bB +bB +bB +bB +Dj +"} +(92,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Xk +KB +Sv +Sv +Sv +Sv +KB +IP +uE +IP +KB +IP +dy +IP +KB +IP +Hv +IP +KB +IP +Hv +IP +KB +Ik +lV +tS +KB +pu +Hq +nz +Ot +Ot +gh +gh +gh +TM +Pc +Yb +Fm +Fm +Gf +be +be +xb +FD +cN +KB +Sv +KB +wz +cL +aw +xl +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +Yv +xl +bB +bB +bB +CS +CS +vK +CS +Iz +Dj +Dj +"} +(93,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Xk +KB +Sv +Sv +Sv +Sv +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +tS +lV +tS +KB +TY +Wj +az +xQ +xQ +tl +tl +tl +TM +Pc +Yb +tl +tl +lH +Wj +Wj +BN +Wj +Ts +KB +Sv +KB +wz +cL +aw +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +bB +bB +CS +CS +CS +CS +CS +jo +zK +Dj +Dj +"} +(94,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Xk +KB +Sv +Sv +Sv +Sv +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +bJ +lV +tS +KB +Ui +Ok +rS +yN +xT +Lp +AQ +Lp +iN +Pc +XR +Lp +AQ +Lp +xT +Bx +lx +Jz +FC +KB +Sv +KB +wz +cL +aw +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +MV +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +CS +CS +CS +CS +CS +CS +CS +SM +rG +Dj +Dj +"} +(95,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Xk +KB +Sv +Sv +Sv +Sv +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +tS +lV +tS +KB +Sn +xQ +kE +Wj +Wj +tl +tl +tl +TM +Pc +Yb +tl +tl +lH +Wj +Wj +yI +Wj +Ts +KB +Sv +KB +vb +BU +mN +KB +KB +KB +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +MV +MV +MV +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +CS +CS +CS +CS +CS +CS +CS +CS +vK +zr +WR +Dj +Dj +"} +(96,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Xk +KB +Sv +Sv +Sv +Sv +KB +IP +GT +IP +KB +IP +me +IP +KB +IP +me +IP +KB +IP +me +IP +KB +tS +lV +tS +KB +Qt +VY +VY +VY +VY +ni +ni +ni +TM +Pc +Yb +qb +qb +Eb +dD +dD +dD +dD +lY +KB +Sv +KB +wz +cL +aw +gd +xQ +xQ +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +MV +MV +MV +MV +MV +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +lz +CS +uf +Dj +Dj +"} +(97,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Xk +KB +Sv +Sv +Sv +Sv +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +tS +lV +tS +KB +KB +KB +KB +KB +KB +KB +KB +KB +AC +Pc +eS +KB +KB +KB +KB +KB +KB +KB +KB +KB +Sv +KB +wz +cL +aw +gd +xQ +xQ +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +MV +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +Lh +Lh +Lh +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +vK +FQ +WR +Dj +Dj +"} +(98,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Zk +KB +Sv +Sv +Sv +Sv +KB +rK +DJ +rK +KB +rK +DJ +rK +KB +rK +eo +rK +KB +rK +DJ +rK +KB +tS +lV +tS +KB +RB +FD +xb +be +be +Fm +Fm +Fm +TM +Pc +Yb +Fm +Fm +Fm +be +be +xb +FD +cN +KB +Sv +KB +wz +cL +aw +Es +xQ +xQ +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +MV +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +SM +pC +Zd +Dj +Dj +"} +(99,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Zk +KB +Sv +Sv +Sv +Sv +KB +Ox +Ox +Ox +Ox +Ox +Ox +Ox +ZK +Ox +qc +Ox +Ox +Ox +Ox +Ox +KB +tS +lV +tS +KB +Jz +Wj +BN +Wj +Wj +tl +tl +tl +TM +Pc +Yb +tl +tl +tl +Wj +Wj +BN +Wj +Ts +KB +Sv +KB +zF +cL +JG +ev +xQ +xQ +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +MV +Sv +Sv +Sv +Sv +Lh +Lh +Lh +Lh +Lh +Lh +Lh +bB +bB +bB +bB +Lh +Lh +Lh +Lh +Lh +Lh +Dj +Dj +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +vK +uK +zK +Dj +Dj +"} +(100,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Zk +KB +Sv +Sv +Sv +Sv +KB +tS +tS +tS +tS +tS +tS +tS +tS +tS +lV +lV +lV +lV +lV +lV +fA +lV +lV +tS +KB +za +Ts +TD +JQ +xT +Lp +AQ +FZ +iN +Pc +so +Lp +AQ +Lp +xT +Bx +dj +Jz +FC +KB +Sv +KB +wz +cL +aw +gd +xQ +xQ +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +Sv +Sv +Sv +Sv +Sv +MV +Sv +Sv +Sv +Lh +Lh +Lh +bB +bB +bB +bB +bB +bB +nT +LE +bB +bB +bB +Lh +Lh +Lh +Lh +Dj +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +vK +rG +Dj +Dj +"} +(101,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Zk +KB +Sv +Sv +Sv +Sv +KB +oL +oL +oL +Ly +oL +oL +oL +Ly +oL +sU +oL +Ly +oL +oL +oL +KB +tS +tS +tS +KB +Jz +Wj +yI +Wj +Wj +tl +tl +tl +TM +Pc +Yb +tl +tl +tl +Wj +Wj +yI +Wj +Ts +KB +Sv +KB +wz +cL +aw +gd +xQ +xQ +fF +mo +mo +mo +mo +ew +mo +mo +KB +Ag +SC +KB +Ag +HX +KB +Ag +HX +KB +Sv +Sv +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +bB +bB +bB +Am +LE +nT +nT +Am +nT +HM +bB +bB +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +bB +Dj +"} +(102,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Zk +KB +Sv +Sv +Sv +Sv +KB +rK +DJ +rK +KB +rK +DJ +rK +KB +rK +DJ +rK +KB +rK +DJ +rK +KB +bJ +tS +tS +KB +GY +dD +dD +dD +dD +qb +qb +qb +TM +Pc +Yb +qb +qb +qb +dD +dD +dD +dD +lY +KB +Sv +KB +wz +cL +aw +Es +xQ +xQ +fF +mo +mo +mo +Jt +mo +mo +mo +KB +pd +tM +KB +pd +tM +KB +pd +tM +KB +Sv +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +bB +bB +bB +bB +bB +nT +LE +nT +nT +LE +nT +LE +Am +LE +bB +bB +bB +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(103,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +mH +KB +Sv +Sv +Sv +Sv +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +AC +Pc +eS +KB +KB +KB +KB +KB +KB +KB +KB +KB +Sv +KB +zF +cL +JG +ev +xQ +xQ +KB +KB +Ma +KB +KB +KB +Js +mo +KB +LL +Hb +KB +LL +Zp +KB +LL +Hb +KB +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +bB +bB +nT +nT +nT +nT +nT +nT +te +te +te +te +bN +bN +te +te +te +te +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(104,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ia +KB +Sv +Sv +Sv +Sv +KB +IP +PT +IP +KB +IP +me +IP +KB +IP +me +IP +KB +IP +me +IP +KB +Sv +Sv +Sv +KB +RB +FD +xb +be +be +Fm +Fm +Fm +TM +Pc +Yb +Fm +Fm +Fm +be +be +xb +FD +cN +KB +Sv +KB +wz +cL +aw +gd +xQ +xQ +KB +ay +ay +ay +pQ +KB +mo +mo +KB +KB +uJ +KB +KB +uJ +KB +KB +uJ +KB +Lh +Lh +Lh +bB +bB +bB +bB +bB +bB +nT +nT +nT +HM +nT +nT +nT +te +mt +Mq +te +eK +QM +te +Mq +mt +te +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(105,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ia +KB +Sv +Sv +Sv +Sv +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +IP +IP +IP +KB +Sv +Sv +Sv +KB +Jz +Wj +BN +Wj +Wj +tl +tl +tl +TM +Pc +Yb +tl +tl +tl +Wj +Wj +BN +Wj +Ts +KB +Sv +KB +wz +cL +aw +gd +xQ +xQ +KB +ay +ay +ay +ay +KB +mo +mo +mo +mo +mo +mo +mo +mo +mo +mo +mo +KB +Lh +Lh +Lh +bB +te +te +te +te +te +hM +te +te +te +nT +nT +nT +te +Ne +KS +aO +PC +PC +aO +KS +sp +te +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(106,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ia +KB +Sv +Sv +Sv +Sv +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +Sv +Sv +Sv +KB +za +Ts +PE +JQ +xT +Lp +AQ +Lp +iN +Pc +so +Lp +AQ +Lp +xT +Bx +NI +Jz +FC +KB +Sv +KB +wz +cL +aw +Es +xQ +xQ +KB +ba +ay +ay +ay +KB +mo +mo +Jt +mo +mo +Jt +np +mo +Jt +mo +mo +KB +Lh +Lh +Lh +bB +te +kD +xe +kD +kD +xs +oC +rN +te +te +nT +nT +te +mu +lL +te +PC +PC +te +lL +mu +te +Sv +bB +CS +FP +CS +FP +CS +FP +CS +FP +CS +FP +CS +FP +CS +bB +Lh +Lh +"} +(107,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Hf +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +AJ +Gi +KB +AJ +Gi +KB +Sv +Sv +Sv +Sv +Sv +Sv +KB +Jz +Wj +yI +Wj +Wj +tl +tl +tl +TM +iQ +Yb +tl +tl +tl +Wj +Wj +yI +Wj +Ts +KB +Sv +KB +zF +cL +JG +ev +xQ +UX +KB +jP +jP +jP +jP +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +Lh +Lh +bB +bB +te +kD +kD +fg +ce +rR +fu +yD +sb +hb +nT +nT +te +te +te +te +PC +tQ +te +te +te +te +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(108,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Hf +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Km +Xu +KB +Ve +Km +KB +Sv +Sv +Sv +Sv +Sv +Sv +KB +GY +dD +dD +dD +dD +qb +qb +qb +TM +oQ +Yb +qb +qb +qb +dD +dD +dD +dD +lY +KB +Sv +KB +kd +ga +QO +gd +xQ +xQ +KB +ay +ay +ay +ay +KB +aA +JY +KR +KR +KB +ay +ay +ay +ay +ay +kX +KB +Lh +bB +bB +nT +sA +kD +qT +fg +xs +rN +el +VJ +hF +hb +nT +nT +Am +te +AM +gp +PC +PC +oS +om +te +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(109,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Hf +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +qv +KB +wa +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +HL +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +Sv +KB +il +Kp +ug +gd +xQ +xQ +KB +KB +xJ +xJ +KB +KB +qM +mo +mo +mo +KB +KB +KB +KB +KB +KB +KB +KB +Lh +bB +nT +nT +te +Bg +Ez +ck +yQ +rN +el +rN +hF +hb +nT +nT +nT +te +yG +gp +PC +PC +oS +IA +te +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(110,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Hf +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +vp +Xu +vs +qK +Xu +Xu +tS +tS +Nj +tS +tS +tS +tS +tS +tS +tS +tS +tS +tS +tS +tS +tS +qL +tS +tS +tS +tS +tS +tS +tS +tS +tS +KB +Sv +KB +il +vF +ug +Es +xQ +xQ +fx +Wd +Wd +Wd +Wd +RM +Gj +mo +mo +mo +RM +ay +ay +tZ +ay +ay +KB +Lh +Lh +bB +nT +nT +te +rN +YX +nj +Hk +rN +el +rN +hF +hb +nT +nT +te +te +te +te +eh +PC +te +te +te +te +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(111,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Hf +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Iv +qK +qK +qK +qK +qK +HJ +HJ +HJ +HJ +HJ +HJ +GE +HJ +HJ +qL +lt +qL +qL +qL +lt +qL +qL +qL +lt +qL +qL +qL +lt +qL +qL +qL +KB +Sv +KB +VC +UL +Fr +ev +ul +xQ +fx +Wd +Wd +Wd +Wd +RM +Gj +mo +mo +mo +RM +ay +ay +ay +ay +ay +KB +Lh +Lh +bB +HM +LE +te +Ur +GJ +GJ +ri +AS +sa +ek +rl +hb +nT +nT +te +mt +Mq +te +PC +PC +te +Mq +mt +te +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(112,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Hf +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +wa +KB +wa +KB +KB +Wn +Wn +Nb +Wn +Wn +Wn +KB +KB +KB +PU +KB +KB +KB +PU +KB +KB +KB +PU +KB +KB +KB +PU +KB +KB +KB +PU +KB +Sv +KB +pt +iS +uH +gw +xQ +xQ +KB +KB +pi +pi +KB +KB +Yo +mo +mo +mo +KB +KB +KB +KB +ay +IL +KB +Lh +Lh +bB +Am +nT +te +te +MR +MR +lZ +xs +rN +rN +te +te +nT +nT +te +Ne +KS +aO +PC +PC +aO +KS +sp +te +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(113,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Hf +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +AB +qK +KB +qK +vs +KB +Up +Vn +Vn +Vn +Vn +ZD +KB +nG +vn +xG +KB +nG +vn +xG +KB +nG +Yq +xG +KB +nG +Yq +xG +KB +nG +Yq +xG +KB +Sv +KB +wz +cL +aw +gd +xQ +xQ +KB +ew +JK +xo +mo +KB +aA +Su +KR +KR +KB +SR +Kj +KB +ay +ay +KB +Lh +Lh +bB +nT +nT +HM +te +Sg +Ky +hF +vy +GJ +DX +te +nT +nT +nT +te +mu +lL +te +PC +PC +te +lL +mu +te +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(114,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Hf +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Pw +tX +KB +Pw +tX +KB +al +Vn +Vn +Vn +Vn +Vn +KB +mI +Wx +vm +KB +mI +Wx +vm +KB +mI +Wx +vm +KB +mI +Wx +vm +KB +mI +Wx +vm +KB +Sv +KB +wz +cL +aw +Es +xQ +xQ +KB +Js +mo +Oa +mo +KB +KB +KB +KB +KB +KB +ay +ay +KB +ay +ay +KB +Lh +Lh +bB +LE +Am +LE +te +hb +hb +oc +kW +hb +hb +te +nT +nT +nT +te +te +te +te +PC +PC +te +te +te +te +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(115,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Hf +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +KB +KB +KB +KB +KB +Vn +Vn +Vn +Vn +Vn +Vn +KB +Df +fB +Jn +KB +Df +iH +El +KB +Df +iH +uR +KB +Df +Xg +NG +KB +Df +iH +El +KB +Sv +KB +zF +cL +JG +ev +xQ +xQ +KB +mo +mo +mo +mo +KB +Zj +mS +KB +mo +KB +ay +pN +KB +RM +RM +KB +Sv +Sv +bB +nT +nT +nT +nT +nT +nT +un +tJ +nT +nT +nT +nT +nT +nT +nT +nT +dX +te +PC +PC +KE +jQ +eB +te +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(116,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Hf +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +FR +vv +ZQ +oz +UE +UE +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +Sv +KB +wz +cL +aw +gd +xQ +xQ +KB +mo +mo +mo +mo +KB +ut +jZ +js +mo +UN +ay +hU +KB +tb +KT +Qx +Qx +gQ +RE +vL +vL +vL +vL +vL +vL +PC +PC +vL +vL +vL +vL +vL +vL +vL +vL +vL +fh +PC +PC +Rz +wR +Ns +te +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(117,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Hf +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +KB +KB +KB +KB +KB +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +cL +aw +gd +xQ +xQ +KB +KB +jg +KB +KB +KB +KB +KB +KB +mo +KB +KB +KB +KB +ws +YW +iW +YW +gs +YP +NX +NX +NX +NX +NX +NX +NX +NX +NX +NX +NX +PC +PC +NX +NX +NX +NX +fh +PC +PC +Rz +jQ +jQ +te +Sv +bB +CS +aM +Fs +Lv +pX +CS +CS +aM +Fs +Lv +pX +CS +CS +bB +Lh +Lh +"} +(118,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Hf +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +cL +aw +Es +xQ +xQ +do +mo +mo +mo +mo +mo +mo +mo +mo +mo +mo +mo +KB +Sv +rh +Sv +Sv +Sv +Sv +bB +nT +nT +nT +nT +nT +nT +nT +nT +nT +nT +nT +un +tJ +nT +nT +nT +nT +te +PC +PC +te +rc +te +te +Sv +bB +CS +aM +po +Lv +Fx +CS +CS +aM +po +Lv +Fx +CS +CS +bB +Lh +Lh +"} +(119,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Pp +Mb +Mb +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +sw +yS +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +zF +cL +JG +ev +xQ +xQ +do +mo +mo +mo +mo +ND +mo +mo +mo +mo +mo +mo +KB +Sv +Sv +Sv +bB +bB +bB +bB +by +by +by +by +by +by +by +by +by +by +dP +un +tJ +nT +nT +HM +te +te +PC +PC +qu +WJ +fJ +te +bB +bB +CS +aM +po +Lv +xn +CS +CS +aM +po +Lv +xn +CS +CS +bB +Lh +Lh +"} +(120,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +cL +aw +gd +xQ +xQ +KB +KB +KB +KB +KB +KB +Hl +Hl +ZO +ZO +Hl +Hl +KB +Lh +Lh +bB +bB +zI +xB +xB +xB +zI +xB +xB +xB +zI +xB +xB +xB +zI +Ql +un +tJ +nT +nT +te +te +Hx +Hx +Hx +Hx +VZ +DL +tq +HM +bB +CS +aM +po +Lv +Fx +CS +CS +aM +po +Lv +Fx +CS +CS +bB +Lh +Lh +"} +(121,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +PA +PA +PA +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +cL +aw +gd +xQ +xQ +KB +Sv +Sv +Sv +Sv +KB +cy +xQ +xQ +xQ +xQ +Xo +KB +Lh +Lh +bB +Ql +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +Ql +un +tJ +nT +te +te +DL +DL +DL +DL +DL +DL +QK +tq +Am +Ql +CS +aM +hf +Lv +Fx +CS +CS +aM +hf +Lv +Fx +CS +CS +bB +Lh +Lh +"} +(122,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +cL +aw +Es +xQ +xQ +KB +Sv +Sv +Sv +Sv +KB +YA +xQ +xQ +xQ +xQ +Tk +KB +Lh +Lh +bB +Ql +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +Ql +un +tJ +nT +te +gA +DL +DL +DL +DL +DL +DL +DL +tq +LE +Ql +CS +aM +po +SX +zZ +CS +CS +aM +po +SX +zZ +CS +CS +bB +Lh +Lh +"} +(123,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +EJ +Dx +dR +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +vb +BU +mN +KB +KB +KB +KB +KB +KB +KB +KB +KB +sJ +OK +VB +Lw +RY +Ww +KB +Lh +Lh +bB +Ql +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +Ql +un +tJ +nT +te +fL +DL +DL +DL +DL +DL +as +te +te +nT +Ql +CS +aM +po +Lv +Fx +CS +CS +aM +po +Lv +Fx +CS +CS +bB +Lh +Lh +"} +(124,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +cL +aw +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +KB +KB +KB +KB +KB +KB +Lh +Lh +bB +Ql +zI +xB +xB +UT +UT +UT +UT +UT +UT +UT +xB +xB +zI +Ql +un +tJ +nT +te +te +DL +QK +QK +QK +DL +te +te +nT +LE +Ql +CS +aM +po +Lv +Fx +CS +CS +aM +po +Lv +Fx +CS +CS +bB +Lh +Lh +"} +(125,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +hG +PA +PA +PA +PA +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +cL +aw +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +Ql +xB +xB +xB +Sm +Bi +Bi +PF +Bi +Bi +Sm +xB +xB +xB +Ql +un +tJ +nT +nT +te +tq +tq +tq +tq +tq +te +nT +LE +Am +Ql +CS +aM +XV +Bs +ig +CS +CS +aM +XV +Bs +ig +CS +CS +bB +Lh +Lh +"} +(126,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +EJ +EJ +EJ +Dx +dR +PA +PA +PA +ue +PA +PA +PA +PA +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +cL +aw +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +Ql +xB +xB +wf +wf +wf +bb +EH +gT +wf +wf +wf +xB +xB +Ql +un +tJ +nT +nT +nT +nT +nT +nT +nT +nT +nT +nT +nT +nT +Ql +CS +Li +TT +Ap +SL +CS +CS +Li +TT +Ap +SL +CS +CS +bB +Lh +Lh +"} +(127,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +zF +cL +JG +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +Ql +xB +xB +wf +wF +gC +wf +Ph +wf +gC +GD +wf +xB +xB +Ql +un +tJ +PC +PC +PC +PC +PC +PC +PC +PC +PC +PC +PC +nT +mj +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(128,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +cL +aw +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +Ql +zI +xB +iu +wF +se +wf +PK +wf +se +Kl +wf +xB +zI +Ql +un +tJ +nT +nT +nT +nT +nT +nT +nT +nT +nT +nT +nT +nT +Ql +CS +aM +Fs +Lv +pX +CS +CS +aM +Fs +Lv +pX +CS +CS +bB +Lh +Lh +"} +(129,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +cL +aw +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +Ql +xB +xB +wf +wf +Ln +wf +BV +wf +Ln +wf +wf +xB +xB +Ql +un +tJ +nT +te +te +xu +xu +xu +te +te +te +LE +nT +LE +Ql +CS +aM +po +Lv +Fx +CS +CS +aM +po +Lv +Fx +CS +CS +bB +Lh +Lh +"} +(130,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +Dx +dR +PA +PA +PA +PA +PA +PA +PA +hG +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +cL +aw +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +bB +bB +Ql +xB +xB +xB +wf +aK +se +BV +se +Jw +wf +xB +xB +xB +mj +un +tJ +nT +te +Sc +Of +QK +pm +tg +yj +te +nT +Am +nT +Ql +CS +aM +po +Lv +xn +CS +CS +aM +po +Lv +xn +CS +CS +bB +Lh +Lh +"} +(131,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +zF +cL +JG +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +bB +Sb +Ql +xB +xB +xB +wf +OP +BV +BV +BV +hL +wf +xB +xB +xB +Ql +un +tJ +nT +te +tJ +DL +DL +DL +un +Du +xu +LE +nT +HM +bB +CS +aM +po +Lv +Fx +CS +CS +aM +po +Lv +Fx +CS +CS +bB +Lh +Lh +"} +(132,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +cL +aw +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +bB +bB +Ql +zI +xB +xB +Od +se +BV +Be +BV +BV +Od +xB +xB +zI +Ql +un +PC +vR +Ie +OW +vL +vL +vL +Tl +ct +xu +nT +nT +LE +bB +CS +aM +hf +Lv +Fx +CS +CS +aM +hf +Lv +Fx +CS +CS +bB +Lh +Lh +"} +(133,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +eY +aw +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +Ql +xB +xB +xB +wf +OP +BV +BV +BV +hL +wf +xB +xB +xB +Ql +un +tJ +nT +te +AL +PC +QM +Xb +ps +sy +te +Am +nT +bB +bB +CS +aM +po +SX +zZ +CS +CS +aM +po +SX +zZ +CS +CS +bB +Lh +Lh +"} +(134,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +oF +aw +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +Ql +xB +xB +xB +wf +aK +se +BV +se +Jw +wf +xB +xB +xB +Ql +un +tJ +nT +te +PC +PC +pn +te +te +te +te +nT +bB +bB +bB +CS +aM +po +Lv +Fx +CS +CS +aM +po +Lv +Fx +CS +CS +bB +Lh +Lh +"} +(135,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +Dx +dR +PA +PA +rM +AR +hG +PA +PA +PA +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +KB +zF +cL +JG +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +Ql +xB +xB +xB +wf +wf +pF +rB +mZ +wf +wf +xB +xB +xB +Ql +un +tJ +nT +te +PC +PC +Tm +te +Uq +qW +te +LE +bB +Sv +bB +CS +aM +po +Lv +Fx +CS +CS +aM +po +Lv +Fx +CS +CS +bB +Lh +Lh +"} +(136,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +Py +Py +PA +PA +PA +PA +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +ay +wz +cL +aw +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +Ql +zI +xB +xB +xB +wf +Qo +yk +Qo +wf +yc +xB +xB +zI +Ql +un +tJ +dX +te +PC +PC +PC +Ie +tr +mc +te +nT +bB +Lh +bB +CS +aM +XV +Bs +ig +CS +CS +aM +XV +Bs +ig +CS +CS +bB +Lh +Lh +"} +(137,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +EJ +EJ +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +lh +PA +PA +PA +PA +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +AD +ay +wz +cL +aw +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +Ql +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +Ql +un +tJ +nT +te +PC +tQ +te +te +te +te +te +bB +bB +Lh +bB +CS +Li +TT +Ap +SL +CS +CS +Li +TT +Ap +SL +CS +CS +bB +Lh +Lh +"} +(138,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +hG +PA +Ws +Ij +PA +PA +PA +PA +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +rF +wz +cL +aw +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +Ql +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +Ql +un +tJ +HM +te +NX +sS +te +mu +Ac +uO +te +bB +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(139,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +EJ +EJ +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +ue +DL +DL +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +KB +zF +cL +JG +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +Ql +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +xB +Ql +un +tJ +nT +te +fL +un +te +Im +Ni +iC +te +bB +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(140,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +EJ +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +hG +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +cL +aw +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +Ql +zI +xB +xB +xB +zI +xB +xB +xB +zI +xB +xB +xB +zI +Ql +un +tJ +nT +te +nO +un +Ie +PC +xF +mt +te +bB +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(141,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +EJ +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +cL +aw +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +Jq +by +by +by +by +by +by +by +by +by +by +by +by +by +Jq +un +tJ +nT +te +te +te +te +te +te +te +te +bB +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(142,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +Dx +dR +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +xd +aw +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +bB +bB +bB +bB +bB +bB +nT +Am +LE +nT +nT +LE +PC +Re +Re +NX +Ja +nT +nT +nT +nT +LE +nT +bB +bB +bB +bB +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(143,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +EJ +EJ +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +zF +xd +JG +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +Lh +Lh +Lh +bB +bB +MT +nT +LE +nT +nT +LE +nT +nT +hc +nT +nT +nT +nT +nT +LE +nT +Am +nT +nT +bB +Lh +Lh +Lh +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(144,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +hG +ue +PA +PA +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +xd +aw +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +Lh +Lh +Lh +bB +te +te +te +te +te +te +te +te +te +QI +te +te +te +Am +nT +nT +nT +nT +nT +bB +bB +Lh +Lh +Lh +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(145,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +EJ +EJ +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +wz +xd +aw +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +Lh +Lh +bB +te +UA +fL +un +PC +PC +PC +PC +lj +Ax +NX +bf +te +nT +nT +nT +LE +nT +LE +bB +Lh +Lh +Lh +Lh +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(146,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +EJ +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +wz +xd +aw +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +Lh +Lh +bB +te +vL +vL +aP +Xc +PC +PC +PC +PC +tJ +DL +nM +xu +nT +nT +HM +nT +Am +nT +bB +Lh +Lh +Lh +Lh +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(147,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +kQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +vb +jq +mN +KB +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +Lh +bB +te +QI +te +te +te +PC +Tm +zv +QM +tJ +DL +QK +xu +nT +nT +nT +LE +nT +nT +bB +Lh +Lh +Lh +Lh +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(148,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +hG +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Yn +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Gg +wz +Pa +aw +Gg +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +Lh +bB +te +PC +hu +mu +te +QI +te +te +VI +tJ +DL +rC +xu +nT +LE +nT +Am +nT +nT +bB +Lh +Lh +Lh +Sv +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(149,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +ue +PA +PA +PA +PA +PA +PA +PA +PA +hG +PA +PA +PA +PA +PA +PA +te +te +te +te +te +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +uz +uz +IB +uz +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +ay +wz +iZ +aw +ay +KB +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +Lh +bB +te +uu +Zc +KS +te +wc +Ko +te +Du +OW +vL +Cz +te +nT +nT +nT +nT +nT +bB +bB +Lh +Lh +Lh +Sv +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(150,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +Uc +te +te +PC +PC +te +te +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +uz +uz +fP +HH +DZ +US +uz +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +rF +wz +xd +aw +rF +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +Lh +bB +te +mt +lL +Em +te +kG +FT +te +sy +PC +yp +eK +te +LE +nT +nT +nT +LE +bB +Lh +Lh +Lh +Sv +Sv +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(151,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +wu +hV +PC +PC +PC +ru +te +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +bB +bB +bB +bB +mM +mM +mM +ah +gg +DZ +HH +yz +uz +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +KB +zF +xd +JG +KB +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +te +te +te +te +te +te +te +te +te +xu +xu +te +te +nT +nT +LE +nT +bB +bB +Lh +Lh +Lh +Sv +Sv +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(152,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +wu +OR +PC +PC +PC +mm +te +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +bB +mM +mM +mM +mM +mM +Mw +mM +Mw +mM +mM +HH +AK +Np +mM +uz +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +ay +wz +xd +aw +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +LE +nT +Am +nT +Am +HM +bB +bB +bB +Lh +Lh +Lh +Sv +Sv +Sv +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(153,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +bB +bB +Sv +Sv +Sv +Sv +bB +bB +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +ue +PA +PA +PA +PA +wu +OR +PC +PC +PC +yp +te +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +HH +ko +HH +mM +Mw +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +ay +wz +xd +aw +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +bB +bB +bB +bB +bB +bB +bB +bB +Lh +Lh +Lh +Lh +Lh +Sv +Sv +Sv +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(154,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +bB +bB +Sv +bB +bB +bB +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PP +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +wu +OR +PC +PC +PC +te +te +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +Ow +Cf +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +Mw +HH +mM +mM +mM +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +rF +wz +xd +aw +rF +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(155,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +bB +bB +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +Dx +dR +PA +PA +PA +PA +PA +PA +PA +PA +PA +hG +PA +PA +PA +PA +PA +PA +wu +OR +PC +PC +PC +te +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +nT +nT +fZ +Cf +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +bB +bB +bB +Sv +Sv +Sv +Sv +KB +ay +KB +zF +xd +JG +KB +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(156,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +wu +te +OR +OR +OR +te +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +nT +nT +nT +Ow +nT +Cf +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +Mw +mM +mM +mM +mM +mM +bB +bB +Sv +Sv +Sv +KB +ay +ay +wz +xd +aw +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(157,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PP +PA +Qf +oj +oj +oj +oj +CW +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +nT +nT +FG +us +nT +Go +Cf +mM +mM +mM +mM +mM +mM +mM +mM +mM +Mw +mM +mM +mM +mM +mM +mM +mM +mM +Cf +nT +bB +bB +Sv +Sv +KB +ay +ay +wz +xd +aw +JN +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +Ci +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(158,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +ey +oo +oo +oo +oo +oo +oo +oo +oo +oo +oo +oo +oo +oo +oo +oo +oo +oo +uT +uT +oo +oo +oo +oo +oo +oo +kI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +hG +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +Ow +nT +na +nT +nT +FG +Cf +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +Cf +Go +nT +bB +Sv +Sv +KB +ay +rF +wz +xd +aw +pg +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(159,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +SY +hY +hY +hY +hY +xl +xl +xl +uV +xl +xl +xl +xl +hY +xl +xl +uV +xl +xl +xl +BY +xH +xH +ZP +iw +hY +hY +oo +oo +kI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +hG +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +nT +fZ +nT +Go +nT +nT +na +Cf +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mW +nT +fZ +bB +Sv +Sv +KB +ay +KB +zF +xd +JG +KB +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Lh +Lh +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(160,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +pB +hY +hY +hY +hY +xl +Kx +jG +vu +sq +Tp +Tp +xl +hY +xl +yE +IP +IP +kw +ZM +BY +hY +hY +ao +GR +hY +hY +hY +hY +hY +kI +nI +nI +jX +nI +nI +jX +nI +nI +jX +nI +nI +jX +nI +nI +jX +nI +nI +jX +nI +nI +jX +nI +nI +jX +nI +nI +jX +nI +nI +jX +nI +EJ +JE +EJ +EJ +JE +EJ +EJ +JE +EJ +EJ +JE +pv +Oe +Oe +Oe +Oe +Oe +Oe +Oe +Oe +Oe +Oe +Oe +Oe +Oe +Oe +Oe +Oe +Oe +Oe +Oe +Oe +Oe +Oe +Oe +EF +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +nT +nT +nT +FG +na +nT +nT +Cf +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +Cf +nT +nT +nT +bB +Sv +Sv +KB +ay +ay +wz +xd +aw +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(161,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EP +hY +hY +hY +xl +nL +vu +gi +vu +vu +pr +xl +md +xl +cs +IP +IP +Yy +KO +BY +hY +hY +Gh +Mj +hY +hY +hY +hY +hY +hY +nR +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +Dx +dR +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +Mn +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +FG +na +nT +Ow +nT +nT +FG +Cf +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +Cf +nT +nT +FG +bB +Sv +Sv +KB +ay +ay +wz +xd +aw +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(162,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +Hi +hY +hY +hY +hY +xl +Ew +jG +jG +dF +Tp +Tp +xl +hY +xl +fD +IP +IP +FF +Kk +BY +hY +hY +vI +Wz +hY +hY +hY +hY +hY +CC +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +hG +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +hq +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +nT +nT +nT +fZ +nT +nT +na +Cf +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +pD +mM +mM +Cf +qn +qn +Xa +cp +bB +Sv +Sv +KB +ay +rF +wz +xd +aw +rF +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +bB +bB +bB +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(163,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +SY +hY +hY +hY +hY +xl +xl +xl +km +xl +xl +xl +xl +hY +xl +xl +km +xl +xl +xl +BY +xH +xH +ZP +iw +hY +hY +VQ +VQ +CC +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +ue +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +Mn +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +nT +nT +FG +nT +nT +nT +fZ +nT +Cf +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +Cf +nT +FG +nT +vw +bB +Sv +Sv +KB +ay +KB +zF +xd +JG +KB +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +Na +Na +Na +Na +Na +Na +Na +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(164,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +ar +VQ +VQ +VQ +VQ +VQ +VQ +VQ +VQ +VQ +VQ +VQ +VQ +VQ +VQ +VQ +VQ +VQ +tD +tD +VQ +VQ +VQ +VQ +VQ +VQ +CC +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +te +te +te +PA +PA +PA +PA +PA +PA +Mn +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +nT +JI +na +nT +FG +nT +sC +nT +Cf +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +Cf +Cf +nT +nT +nT +fZ +AA +bB +bB +Sv +KB +ay +ay +wz +xd +aw +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +Na +EA +Na +Na +Na +Iw +Na +Na +zR +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(165,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PP +PA +PA +PA +PA +cR +te +ES +PA +PA +hG +PA +PA +PA +Mn +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +nT +fZ +ne +nT +nT +nT +FG +us +Cf +mM +mM +mM +mM +mM +mM +mM +mM +mM +mM +Cf +Go +nT +nT +nT +nT +nT +QB +Rs +bB +Sv +KB +ay +ay +wz +xd +aw +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(166,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +nk +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +HA +te +xE +PA +PA +PA +PA +PA +PA +Mn +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +FG +Ow +nT +nT +FG +Go +nT +nT +Ow +nT +Cf +mM +mM +mM +mM +mM +mM +mM +Cf +Cf +nT +nT +nT +FG +us +nT +nT +FG +vw +bB +Sv +KB +ay +rF +mG +Mu +eH +rF +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +zR +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(167,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +cR +te +ES +PA +PA +PA +PA +PA +PA +Mn +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +nT +nT +nT +nT +na +nT +nT +FG +na +Cf +mM +mM +mM +Cf +mM +mM +Cf +Cf +nT +nT +na +nT +nT +fZ +nT +nT +Rw +hS +bB +Sv +KB +ay +KB +jf +Mu +Xm +KB +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +zR +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(168,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +bB +bB +bB +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +te +te +te +PA +PA +PA +PA +PA +PA +Mn +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +nT +fZ +nT +NB +nT +fZ +EK +nT +nT +Cf +Cf +Cf +Cf +mM +Cf +Cf +nT +nT +nT +fZ +nT +nT +nT +nT +nT +nT +vw +fZ +bB +Sv +KB +ay +ay +Wy +xd +aw +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +Na +Na +Iw +Na +Na +Na +Iw +Na +Na +Na +Iw +Na +Na +Na +Na +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(169,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +bB +bB +bB +Sv +bB +bB +bB +EJ +IJ +gK +HN +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +TI +PA +PA +nk +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +Mn +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +Oq +nT +nT +FG +nT +nT +nT +FG +us +nT +na +nT +Cf +mM +nT +nT +fZ +nT +nT +us +nT +nT +FG +nT +nT +vw +nT +bB +Sv +KB +ay +ay +vU +xd +aw +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(170,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +PA +ZH +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +Ji +zu +PA +PA +ue +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +hG +PA +Mn +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +na +sL +EG +na +nT +nT +nT +nT +nT +nT +Ow +nT +nT +nT +nT +nT +nT +nT +FG +nT +fZ +nT +nT +fZ +nT +vw +FG +bB +bB +KB +ay +rF +wz +mR +aw +rF +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +zR +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(171,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +bB +bB +bB +Sv +Sv +Sv +bB +bB +bB +bB +PA +PA +Fl +HN +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +Mn +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +Ai +nT +nT +Go +nT +nT +nT +fZ +na +nT +FG +nT +nT +FG +na +nT +qq +nT +na +nT +nT +nT +nT +nT +na +nT +Ei +nT +nT +bB +nb +ay +KB +zF +xd +XZ +KB +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(172,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +bB +bB +bB +bB +bB +PA +PA +hG +PA +PA +PA +ZH +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +hG +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +Mn +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +nT +FG +nT +nT +nT +nT +FG +nT +nT +nT +nT +nT +nT +nT +nT +nT +FG +nT +nT +nT +nT +nT +FG +Ow +nT +QB +Xa +qn +OM +nb +ay +ay +hi +xd +aw +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +Na +Na +Na +Na +Iw +Na +Na +Na +EA +Na +Na +Na +Iw +Na +Na +Na +Iw +Na +Na +Na +zR +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +LE +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(173,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +Dx +dR +PA +PA +PA +PA +Ug +Zg +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +Mn +PA +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +nT +fZ +nT +fZ +nT +us +nT +na +nT +nT +nT +fZ +nT +nT +FG +nT +nT +nT +nT +nT +fZ +nT +nT +us +nT +FG +nT +BM +Xq +nb +AD +ay +mG +Mu +eH +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +zR +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +bB +bB +Sv +Sv +Sv +Sv +Sv +bB +bB +nT +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(174,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +Dx +dR +PA +PA +PA +ZH +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +ue +PA +PA +PA +PA +PA +PA +PA +PA +Mn +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +nT +nT +nT +nT +na +nT +nT +FG +nT +nT +nT +na +nT +nT +us +nT +nT +FG +nT +Ow +nT +Go +nT +nT +nT +nT +bB +bB +nb +ay +rF +mG +Mu +eH +rF +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +bB +bB +Sv +Sv +bB +bB +bB +nT +nT +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(175,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +Dx +hk +hk +hk +Zg +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +ue +PA +PA +PA +PA +Mn +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +nT +nT +FG +QP +nT +FG +Ow +nT +nT +nT +FG +nT +nT +nT +fZ +nT +nT +nT +na +nT +nT +FG +nT +nT +nT +fZ +bB +Sv +KB +ay +KB +zF +xd +XZ +KB +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +LE +bB +bB +bB +bB +nT +nT +FG +nT +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(176,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +hG +PA +PA +PA +PA +PA +ue +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +Mn +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +Ow +QP +na +nT +nT +nT +nT +fZ +nT +us +nT +nT +nT +nT +fZ +nT +nT +nT +fZ +nT +nT +nT +nT +nT +nT +FG +bB +bB +Sv +KB +ay +ay +wz +xd +aw +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +zR +Na +Na +Na +Iw +Na +Na +Na +fY +Na +Na +Na +Iw +Na +Na +Na +EA +Na +Na +Na +Na +LE +nT +nT +Ql +nT +nT +Am +nT +LE +Am +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(177,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +ue +PA +PA +PA +PA +PA +PA +hG +PA +PA +PA +PA +PA +hG +PA +PA +PA +PA +PA +Mn +PA +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +us +nT +nT +nT +nT +nT +nT +FG +nT +Go +nT +nT +nT +na +nT +FG +nT +nT +nT +nT +nT +fZ +nT +nT +bB +bB +Sv +Sv +KB +ay +ay +hi +xd +wJ +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +zR +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +nT +nT +LE +LE +Ql +nT +LE +nT +nT +nT +nT +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(178,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +Mn +PP +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +nT +Go +nT +FG +nT +us +nT +nT +na +nT +nT +nT +FG +nT +nT +us +Go +nT +FG +nT +nT +nT +na +nT +bB +Sv +Sv +Sv +KB +ay +rF +wz +xd +rT +rF +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +nT +nT +nT +nT +Ql +nT +Am +nT +nT +nT +LE +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(179,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +IJ +HV +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +Mn +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +nT +nT +nT +nT +na +nT +nT +nT +fZ +nT +nT +nT +nT +Ow +na +nT +nT +nT +nT +nT +FG +us +nT +bB +bB +bB +Sv +Sv +KB +ay +KB +zF +xd +JG +KB +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +nT +nT +nT +nT +mj +nT +nT +nT +nT +nT +nT +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(180,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +Mn +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +nT +FG +nT +nT +nT +FG +nT +nT +nT +nT +FG +nT +fZ +nT +nT +nT +nT +fZ +nT +Go +bB +bB +bB +Sv +Sv +Sv +Sv +KB +ay +JN +mG +Mu +eH +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +Na +Na +Na +Na +Iw +Na +Na +Na +Iw +Na +Na +Na +Iw +Na +Na +Na +EA +Na +Na +Na +nT +LE +nT +nT +Ql +nT +LE +nT +nT +nT +Am +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(181,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +bB +bB +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +Mn +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +nT +nT +nT +fZ +nT +nT +nT +na +nT +nT +nT +nT +nT +nT +nT +FG +nT +na +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +cb +Zf +Mu +Kn +JN +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +zR +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +nT +nT +LE +Ql +nT +nT +Am +nT +LE +nT +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(182,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +bB +Sv +bB +bB +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +hG +PA +PA +PA +PA +hG +PA +PA +PA +hG +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +Mn +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +nT +nT +nT +Ow +nT +us +nT +nT +FG +us +Ow +nT +nT +FG +nT +nT +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +rF +jV +mR +aw +pg +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +LE +bB +bB +bB +nT +nT +nT +nT +nT +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(183,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +bB +Sv +Sv +Sv +bB +bB +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +Mn +PA +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +nT +nT +nT +na +nT +nT +nT +nT +nT +nT +nT +FG +us +nT +na +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +KB +zF +ha +JG +KB +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +bB +bB +bB +bB +Sv +bB +bB +bB +nT +Am +nT +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(184,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +bB +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +IJ +HV +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +Mn +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +bB +bB +bB +bB +nT +Go +nT +nT +nT +nT +bB +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +JN +wz +mR +aw +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +zR +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Na +Iw +Na +Na +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +bB +bB +nT +LE +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(185,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +Mn +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +bB +bB +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +cb +Wy +Zo +Sk +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +VR +VR +mn +VR +zQ +zQ +zQ +zQ +zQ +zQ +Na +Na +Na +Na +Na +Na +Na +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +nT +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(186,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +hG +ue +PA +PA +PA +PA +PA +PA +PA +PA +PA +te +te +te +PA +PA +PA +PA +PA +PA +Mn +PA +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +ay +vU +xd +aw +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +vd +wM +wM +zQ +wb +zH +kr +Wk +zQ +Na +Na +Na +Na +Na +Na +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(187,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +hG +PA +PA +PA +cR +te +ES +PA +PA +PA +PA +PA +PA +Mn +PA +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +KB +jf +Mu +IF +KB +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +LS +uL +zQ +EY +kr +kr +kr +zQ +Na +Na +Na +Na +Na +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(188,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +HA +te +xE +PA +PA +PA +PA +Sv +vu +iX +vu +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +ay +Zf +Mu +Kn +JN +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +GM +zQ +kr +kr +kr +kr +zQ +Na +Na +Na +zR +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(189,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +cR +te +ES +PA +PA +PA +bB +Sv +vu +iX +vu +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +ay +jY +gr +Ao +cb +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +bB +zQ +NY +eM +kr +kr +ta +Na +Na +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(190,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +EJ +EJ +EJ +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +ue +PA +PA +PA +te +te +te +PA +PA +bB +bB +Sv +vu +iX +vu +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +rF +jF +Mu +eH +TO +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +zQ +zQ +zQ +zQ +zQ +zQ +bB +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(191,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +EJ +EJ +nI +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +IJ +HV +PA +PA +PA +PA +PP +PA +PA +PA +PA +PA +PA +hG +PA +PA +PA +PA +PA +PA +PA +PA +bB +Sv +Sv +zc +kl +zc +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +KB +Ex +Vz +pH +KB +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +bB +bB +bB +bB +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(192,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +nI +nI +nI +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +Sv +cQ +yZ +Av +yZ +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Cy +Cy +Mr +oe +Mg +Cy +Cy +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(193,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +EJ +nI +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +Ec +mG +Mu +Ao +Zb +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(194,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +EJ +EJ +nI +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +bB +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +rF +jF +gr +Kn +Te +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(195,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +KB +jf +gr +IF +KB +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(196,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +hG +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +tP +RR +yA +eH +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(197,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +ay +IX +Mu +Ao +Ec +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(198,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +hG +ue +PA +PA +PA +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +rF +jY +gr +eH +rF +ay +KB +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(199,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +IJ +HV +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +KB +Ex +gr +IF +KB +ay +KB +xl +wZ +wZ +wZ +wZ +wZ +wZ +wZ +wZ +wZ +wZ +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(200,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PP +PA +PA +PA +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +ay +mG +LC +Ao +gz +ay +KB +xl +wZ +MB +MB +MB +MB +MB +MB +MB +MB +wZ +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(201,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +EJ +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +ay +jF +Mu +eH +Ec +ay +KB +xl +wZ +MB +MB +MB +MB +MB +Qb +MB +MB +wZ +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(202,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +EJ +EJ +EJ +EJ +EJ +EJ +EJ +pv +PA +PA +PA +PA +PA +PA +PA +PA +PA +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +px +Zf +gr +Fi +Wc +ay +KB +xl +wZ +MB +MB +MB +MB +MB +MB +MB +MB +wZ +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(203,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +EJ +EJ +EJ +EJ +EJ +EJ +IJ +HV +PA +ue +PA +PA +PA +PA +PA +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +KB +Ex +Mu +IF +KB +ay +KB +xl +wZ +MB +MB +MB +MB +MB +MB +MB +MB +wZ +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(204,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +EJ +EJ +EJ +EJ +pv +PA +PA +hG +PA +PA +PA +PA +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +Ec +mG +Mu +je +ma +ay +KB +xl +wZ +MB +MB +MB +MB +MB +MB +MB +MB +wZ +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(205,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +bB +bB +EJ +EJ +pv +PA +PA +PA +PA +PA +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +ay +nJ +tf +GV +Ec +ay +KB +xl +wZ +MB +MB +MB +MB +MB +MB +MB +MB +wZ +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(206,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +bB +PA +PA +PA +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +rF +mG +tf +GV +rF +ay +ay +xl +wZ +MB +MB +MB +MB +MB +MB +MB +MB +wZ +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +FP +CS +FP +CS +FP +CS +FP +CS +FP +CS +FP +CS +bB +Lh +Lh +"} +(207,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +bB +bB +bB +bB +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +KB +qI +YS +Xm +KB +wL +KH +xl +wZ +MB +MB +MB +MB +MB +MB +MB +MB +wZ +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(208,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +ay +nJ +tf +eH +ay +ay +ay +xl +wZ +wZ +wZ +wZ +wZ +wZ +wZ +wZ +wZ +wZ +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(209,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +ay +mG +Mu +pw +ay +ay +KB +xl +xl +xl +sG +xl +xl +xl +xl +xl +xl +xl +xl +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(210,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +ay +nJ +Mu +GV +ay +ay +KB +ay +ay +ay +MI +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(211,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +ay +WK +tf +Mf +ay +ay +KB +ay +KB +KB +KB +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(212,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Un +ay +ay +sx +ay +ay +ay +KB +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(213,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +rF +ay +sx +ay +rF +ay +KB +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(214,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +KB +Cy +uA +Cy +KB +Hp +KB +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(215,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +sx +ay +KB +ay +Cy +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(216,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +sx +ay +KB +KB +KB +KB +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(217,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +yZ +Av +yZ +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(218,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +sx +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(219,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +sx +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(220,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +sx +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(221,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +cQ +cQ +cQ +cQ +cQ +cQ +cQ +cQ +cQ +cQ +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +Cy +uA +Cy +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(222,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +sx +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +sx +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(223,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +VT +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Jp +Oi +AD +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(224,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +vo +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(225,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +cQ +cQ +cQ +cQ +cQ +cQ +cQ +cQ +cQ +cQ +cQ +cQ +cQ +cQ +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +ay +ST +ay +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(226,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +ay +ST +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(227,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +Zb +qt +ay +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(228,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +KB +KB +KB +KB +KB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(229,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(230,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(231,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(232,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(233,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(234,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(235,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(236,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(237,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(238,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(239,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(240,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(241,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(242,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(243,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(244,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(245,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +CS +bB +Lh +Lh +"} +(246,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +CS +pC +CS +CS +CS +SM +CS +CS +CS +bB +Lh +Lh +"} +(247,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +SM +CS +CS +CS +CS +CS +CS +CS +CS +lz +CS +bB +Lh +Lh +"} +(248,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +lz +CS +CS +CS +CS +lz +CS +pC +CS +CS +CS +bB +Lh +Lh +"} +(249,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +pC +CS +CS +pC +CS +SM +CS +CS +CS +lz +CS +CS +bB +Lh +Lh +"} +(250,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +CS +CS +CS +lz +pC +CS +CS +pC +CS +CS +pC +CS +bB +Lh +Lh +"} +(251,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +CS +FP +lz +FP +CS +FP +lz +FP +SM +FP +lz +FP +SM +bB +Lh +Lh +"} +(252,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +bB +gu +gu +tm +gu +gu +gu +gu +gu +tm +gu +gu +tm +gu +bB +Lh +Lh +"} +(253,1,1) = {" +Lh +Dj +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +nI +EJ +bB +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Sv +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Lh +Lh +"} +(254,1,1) = {" +Lh +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Dj +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +"} +(255,1,1) = {" +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +Lh +"} diff --git a/_maps/RandomZLevels/moonoutpost19.dmm b/_maps/RandomZLevels/moonoutpost19.dmm index bad2d094eb4c66..7ec1338d0c0a38 100644 --- a/_maps/RandomZLevels/moonoutpost19.dmm +++ b/_maps/RandomZLevels/moonoutpost19.dmm @@ -1176,9 +1176,6 @@ /turf/open/floor/iron/white, /area/awaymission/moonoutpost19/research) "il" = ( -/obj/machinery/newscaster{ - pixel_x = -30 - }, /obj/item/chair{ pixel_x = 5; pixel_y = 5 @@ -1191,6 +1188,7 @@ /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 8 }, +/obj/machinery/newscaster/directional/west, /turf/open/floor/iron, /area/awaymission/moonoutpost19/research) "io" = ( @@ -1212,10 +1210,7 @@ /turf/open/floor/iron/white, /area/awaymission/moonoutpost19/research) "is" = ( -/obj/structure/fence/post{ - dir = 4 - }, -/obj/structure/sign/warning, +/obj/structure/sign/warning/directional/north, /turf/open/misc/asteroid/moon{ initial_gas_mix = "co2=48.7;n2=13.2;o2=32.4;TEMP=251" }, @@ -1440,12 +1435,8 @@ /turf/open/floor/iron, /area/awaymission/moonoutpost19/research) "ki" = ( -/obj/structure/sign/warning/vacuum{ - desc = "A warning sign which reads 'HOSTILE ATMOSPHERE AHEAD'"; - name = "\improper HOSTILE ATMOSPHERE AHEAD"; - pixel_x = -32 - }, /obj/effect/turf_decal/lunar_sand/plating, +/obj/structure/sign/warning/vacuum/directional/west, /turf/open/floor/plating, /area/awaymission/moonoutpost19/arrivals) "kj" = ( @@ -1943,14 +1934,9 @@ /turf/open/floor/mineral/titanium/yellow, /area/awaymission/moonoutpost19/arrivals) "mJ" = ( -/obj/structure/sign/warning/vacuum{ - desc = "A beacon used by a teleporter."; - icon = 'icons/obj/devices/tracker.dmi'; - icon_state = "beacon"; - name = "tracking beacon" - }, -/obj/effect/landmark/awaystart/moonoutpost, -/turf/open/floor/mineral/titanium/yellow, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/warning/vacuum/directional/north, +/turf/open/floor/plating, /area/awaymission/moonoutpost19/arrivals) "mK" = ( /obj/machinery/door/airlock/titanium{ @@ -2885,12 +2871,10 @@ }, /area/awaymission/moonoutpost19/mines) "si" = ( -/obj/structure/sign/warning/biohazard{ - pixel_x = 32 - }, /obj/structure/alien/weeds, /obj/effect/turf_decal/tile/purple, /obj/structure/cable, +/obj/structure/sign/warning/biohazard/directional/east, /turf/open/floor/iron/white, /area/awaymission/moonoutpost19/research) "sn" = ( @@ -3860,14 +3844,6 @@ }, /turf/open/floor/carpet/red, /area/awaymission/moonoutpost19/arrivals) -"yT" = ( -/obj/structure/sign/warning/vacuum{ - desc = "A warning sign which reads 'HOSTILE ATMOSPHERE AHEAD'"; - name = "\improper HOSTILE ATMOSPHERE AHEAD" - }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/awaymission/moonoutpost19/arrivals) "yV" = ( /turf/open/misc/asteroid/moon, /area/awaymission/moonoutpost19/main) @@ -3983,12 +3959,8 @@ }, /area/awaymission/moonoutpost19/research) "zK" = ( -/obj/structure/sign/warning/vacuum{ - desc = "A warning sign which reads 'HOSTILE ATMOSPHERE AHEAD'"; - name = "\improper HOSTILE ATMOSPHERE AHEAD"; - pixel_y = 32 - }, /obj/effect/turf_decal/lunar_sand/plating, +/obj/structure/sign/warning/vacuum/directional/north, /turf/open/floor/plating, /area/awaymission/moonoutpost19/arrivals) "zN" = ( @@ -4621,10 +4593,10 @@ }, /area/awaymission/moonoutpost19/main) "DS" = ( -/obj/structure/fence{ - dir = 4 +/obj/structure/flora/rock/style_random{ + pixel_y = -2 }, -/obj/structure/sign/warning, +/obj/structure/sign/warning/directional/north, /turf/open/misc/asteroid/moon{ initial_gas_mix = "co2=48.7;n2=13.2;o2=32.4;TEMP=251" }, @@ -5162,13 +5134,11 @@ /turf/open/floor/iron, /area/awaymission/moonoutpost19/research) "HY" = ( -/obj/structure/sign/departments/science{ - pixel_y = 32 - }, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/purple/anticorner{ dir = 1 }, +/obj/structure/sign/departments/science/directional/north, /turf/open/floor/iron, /area/awaymission/moonoutpost19/arrivals) "Ia" = ( @@ -33674,7 +33644,7 @@ My ld mc mt -mJ +mI mt mc ld @@ -35472,8 +35442,8 @@ hI My My My -yT -Ue +iM +mJ iM My My @@ -36460,7 +36430,7 @@ LG dA My My -DS +dA My My My @@ -39801,6 +39771,7 @@ My My My My +Jb is My My @@ -39814,7 +39785,6 @@ My My My My -My ea en en @@ -44688,8 +44658,8 @@ dA My My My +YX DS -Wg My My My diff --git a/_maps/RandomZLevels/museum.dmm b/_maps/RandomZLevels/museum.dmm index 4c7fe9782de328..ab6be28cdfb432 100644 --- a/_maps/RandomZLevels/museum.dmm +++ b/_maps/RandomZLevels/museum.dmm @@ -119,7 +119,7 @@ /turf/open/floor/wood/large, /area/awaymission/museum) "bg" = ( -/obj/structure/no_effect_signpost{ +/obj/structure/signpost{ name = "if youre reading this you stink and also made by jimmyl" }, /turf/open/floor/bluespace, @@ -735,7 +735,8 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/structure/sign/painting{ pixel_y = 32; - persistence_id = "museumgate" + persistence_id = "museumgate"; + dir = 1 }, /obj/machinery/light/floor, /obj/effect/decal/cleanable/dirt/dust, @@ -1047,16 +1048,14 @@ /obj/effect/turf_decal/stripes/asteroid/line{ dir = 1 }, -/obj/machinery/button{ - pixel_y = 32 - }, /turf/open/indestructible/plating, /area/awaymission/museum) "iI" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/structure/sign/painting{ pixel_y = 32; - persistence_id = "museumgate" + persistence_id = "museumgate"; + dir = 1 }, /obj/machinery/light/floor, /turf/open/floor/iron/dark, @@ -1760,7 +1759,7 @@ dir = 1 }, /obj/structure/table, -/obj/item/food/sandwich/cheese/grilled, +/obj/item/food/sandwich/grilled_cheese, /turf/open/floor/iron/dark, /area/awaymission/museum) "of" = ( @@ -2464,8 +2463,9 @@ }, /area/awaymission/museum) "tK" = ( -/obj/structure/sign/warning, -/turf/closed/indestructible/reinforced, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/sign/warning/directional/south, +/turf/open/indestructible/plating, /area/awaymission/museum) "tM" = ( /obj/structure/table/wood, @@ -3250,6 +3250,7 @@ /obj/machinery/door/window/elevator/left/directional/south{ transport_linked_id = "museum_cargo" }, +/obj/structure/sign/warning/directional/east, /turf/open/chasm/true/no_smooth, /area/awaymission/museum) "Ak" = ( @@ -4648,6 +4649,7 @@ /obj/structure/broken_flooring/side/always_floorplane{ dir = 8 }, +/obj/structure/sign/warning/directional/east, /turf/open/indestructible/plating, /area/awaymission/museum) "Mv" = ( @@ -4756,6 +4758,7 @@ dir = 1 }, /obj/structure/closet/crate/bin, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/mineral/titanium/blue, /area/awaymission/museum) "NB" = ( @@ -5200,6 +5203,8 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/obj/structure/sign/warning/directional/west, +/obj/structure/sign/warning/directional/east, /turf/open/indestructible/plating, /area/awaymission/museum) "Rl" = ( @@ -5371,8 +5376,8 @@ /turf/open/floor/iron/white/small, /area/awaymission/museum) "Tr" = ( -/obj/structure/plaque/static_plaque/golden/commission/kilo, /obj/machinery/light/floor, +/obj/structure/plaque/static_plaque/golden/commission/kilo, /turf/open/floor/mineral/gold, /area/awaymission/museum) "Tt" = ( @@ -5443,6 +5448,7 @@ dir = 1 }, /obj/item/kirbyplants/random/fullysynthetic, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/mineral/titanium/blue, /area/awaymission/museum) "TO" = ( @@ -5478,6 +5484,7 @@ transport_linked_id = "museum_cargo" }, /obj/effect/spawner/random/maintenance/no_decals/seven, +/obj/structure/sign/warning/directional/west, /turf/open/chasm/true/no_smooth, /area/awaymission/museum) "Um" = ( @@ -5759,6 +5766,7 @@ "We" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/portable_atmospherics/canister/oxygen, +/obj/structure/sign/warning/directional/south, /turf/open/indestructible/plating, /area/awaymission/museum) "Wf" = ( @@ -6026,10 +6034,6 @@ /obj/effect/mapping_helpers/airlock/access/all/away/generic3, /turf/open/indestructible/plating, /area/awaymission/museum) -"Ye" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/indestructible/reinforced/titanium/nodiagonal, -/area/awaymission/museum) "Yg" = ( /obj/effect/mob_spawn/cockroach, /obj/effect/decal/cleanable/dirt/dust, @@ -29524,7 +29528,7 @@ iW go iW TN -Ye +fe FK FK FK @@ -30072,7 +30076,7 @@ Qk Ma Ma Ma -tK +FK FK FK Kh @@ -30295,7 +30299,7 @@ DU iW iW Ny -Ye +fe FK FK FK @@ -30323,7 +30327,7 @@ FK bF FK We -tK +FK Ma VE zr @@ -30586,7 +30590,7 @@ do Ma Ma Ma -tK +FK FK FK Kh @@ -32120,8 +32124,8 @@ DY FK TB ZZ -XK tK +FK Kh Kh FK @@ -32132,7 +32136,7 @@ FK lU lU lU -tK +FK FK FK Uq @@ -33406,7 +33410,7 @@ FK FK FK FK -tK +FK FK FK FK @@ -33417,7 +33421,7 @@ FK FK PB PB -tK +FK FK FK Uq diff --git a/_maps/RandomZLevels/research.dmm b/_maps/RandomZLevels/research.dmm index 64f2a725a51ff6..c3513c00bfccdc 100644 --- a/_maps/RandomZLevels/research.dmm +++ b/_maps/RandomZLevels/research.dmm @@ -1350,7 +1350,6 @@ /turf/open/floor/iron/white, /area/awaymission/research/interior/engineering) "gP" = ( -/obj/structure/cable, /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 8 }, @@ -1474,7 +1473,6 @@ /area/awaymission/research/interior/security) "hr" = ( /obj/machinery/light/directional/east, -/obj/structure/cable, /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 8 }, @@ -1543,7 +1541,6 @@ /area/awaymission/research/interior/security) "hH" = ( /obj/machinery/vending/security, -/obj/structure/cable, /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 8 }, @@ -1604,18 +1601,11 @@ /turf/open/floor/iron/white, /area/awaymission/research/interior) "hP" = ( -/obj/structure/sign/directions/medical{ - pixel_x = 32; - pixel_y = -32 - }, /obj/structure/sign/directions/evac{ - pixel_x = 32; - pixel_y = -24 + pixel_y = 10 }, -/obj/effect/turf_decal/tile/green/anticorner/contrasted{ - dir = 1 - }, -/turf/open/floor/iron/white, +/obj/structure/sign/directions/medical, +/turf/closed/wall/r_wall, /area/awaymission/research/interior) "hQ" = ( /turf/open/floor/iron/white/corner{ @@ -1624,7 +1614,6 @@ /area/awaymission/research/interior) "hR" = ( /obj/structure/table, -/obj/structure/cable, /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 8 }, @@ -2836,11 +2825,13 @@ }, /obj/machinery/power/apc/auto_name/directional/west, /obj/effect/mapping_helpers/apc/cell_5k, +/obj/structure/cable, /turf/open/floor/iron, /area/awaymission/research/interior/dorm) "oT" = ( /obj/structure/table, /obj/effect/turf_decal/tile/red/fourcorners, +/obj/structure/cable, /turf/open/floor/iron/white, /area/awaymission/research/interior/security) "pt" = ( @@ -2906,14 +2897,6 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/awaymission/research/interior/gateway) -"qY" = ( -/obj/structure/chair{ - dir = 8 - }, -/obj/structure/cable, -/obj/effect/turf_decal/tile/red/fourcorners, -/turf/open/floor/iron/white, -/area/awaymission/research/interior/security) "qZ" = ( /obj/structure/chair/stool/directional/west, /obj/effect/turf_decal/tile/blue/fourcorners, @@ -3049,7 +3032,6 @@ /obj/effect/turf_decal/siding/yellow{ dir = 8 }, -/obj/structure/cable, /turf/open/floor/iron, /area/awaymission/research/interior/dorm) "vT" = ( @@ -3140,24 +3122,18 @@ /turf/open/floor/iron/white, /area/awaymission/research/interior/security) "yj" = ( -/obj/structure/sign/directions/security{ +/obj/structure/sign/directions/science{ dir = 1; - pixel_x = 32; - pixel_y = 40 + pixel_y = 10 }, /obj/structure/sign/directions/engineering{ dir = 1; - pixel_x = 32; - pixel_y = 33 + pixel_y = -10 }, -/obj/structure/sign/directions/science{ - dir = 1; - pixel_x = 32; - pixel_y = 26 +/obj/structure/sign/directions/security{ + dir = 1 }, -/mob/living/basic/trooper/syndicate/ranged/smg, -/obj/effect/turf_decal/tile/green/fourcorners, -/turf/open/floor/iron/white, +/turf/closed/wall/r_wall, /area/awaymission/research/interior) "yn" = ( /obj/item/ammo_casing/c45, @@ -3196,14 +3172,6 @@ /obj/machinery/light/directional/east, /turf/open/floor/iron/white, /area/awaymission/research/interior/cryo) -"zU" = ( -/obj/machinery/light/directional/south, -/obj/effect/turf_decal/tile/blue/half/contrasted{ - dir = 1 - }, -/obj/structure/cable, -/turf/open/floor/iron/white, -/area/awaymission/research/interior/medbay) "AY" = ( /obj/structure/rack, /obj/item/clothing/suit/armor/riot, @@ -3241,7 +3209,6 @@ /turf/open/floor/iron/white, /area/awaymission/research/interior) "By" = ( -/obj/structure/cable, /obj/effect/turf_decal/tile/red/half/contrasted, /obj/machinery/light/directional/north, /turf/open/floor/iron/white, @@ -3255,6 +3222,7 @@ "BQ" = ( /mob/living/basic/trooper/nanotrasen/ranged/smg, /obj/effect/turf_decal/tile/red/fourcorners, +/obj/structure/cable, /turf/open/floor/iron/white, /area/awaymission/research/interior/security) "BY" = ( @@ -3518,6 +3486,11 @@ }, /turf/open/floor/iron, /area/awaymission/research/interior/dorm) +"Jg" = ( +/obj/effect/turf_decal/tile/red/fourcorners, +/obj/structure/cable, +/turf/open/floor/iron/white, +/area/awaymission/research/interior/security) "Jl" = ( /obj/item/kirbyplants/organic/plant20{ pixel_y = 3 @@ -3753,6 +3726,13 @@ /obj/effect/turf_decal/tile/purple/fourcorners, /turf/open/floor/iron, /area/awaymission/research/interior/genetics) +"PM" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/effect/turf_decal/tile/red/fourcorners, +/turf/open/floor/iron/white, +/area/awaymission/research/interior/security) "Qd" = ( /obj/machinery/door/airlock/medical{ name = "Medical" @@ -3844,6 +3824,7 @@ dir = 4 }, /obj/machinery/power/apc/auto_name/directional/south, +/obj/structure/cable, /turf/open/floor/iron/white, /area/awaymission/research/interior/medbay) "SJ" = ( @@ -42258,7 +42239,7 @@ Nf eJ eJ hB -hP +kv ia ia it @@ -42269,7 +42250,7 @@ ia ia ia ia -yj +sn ut HS kv @@ -42516,7 +42497,7 @@ eJ eJ hC hM -cp +hP cp eH cp @@ -42525,7 +42506,7 @@ cp cp cp cp -cp +yj js ry ke @@ -45851,9 +45832,9 @@ jp si hF fr -LX -LX -LX +Jg +Jg +Jg ho hF si @@ -46108,10 +46089,10 @@ do do do By -QQ -QQ -QQ -ho +LX +Jg +LX +hn do do do @@ -46881,7 +46862,7 @@ hF fr BQ QQ -LX +Jg ho hF si @@ -47135,11 +47116,11 @@ do do do do -fr -Or +fq +PM Or -QQ -ho +LX +hn do do do @@ -47160,7 +47141,7 @@ kL kZ Fl Th -zU +lD iW aO aH @@ -47653,10 +47634,10 @@ fq Kg yc oT -LX -LX -LX -LX +Jg +Jg +Jg +Jg CW do bD @@ -47908,7 +47889,7 @@ ok eS fq LX -qY +wN wN LX LX diff --git a/_maps/RandomZLevels/snowdin.dmm b/_maps/RandomZLevels/snowdin.dmm index b656d7b4a943f9..7169a3cc75fadf 100644 --- a/_maps/RandomZLevels/snowdin.dmm +++ b/_maps/RandomZLevels/snowdin.dmm @@ -1510,6 +1510,7 @@ /obj/effect/turf_decal/tile/green/half/contrasted{ dir = 1 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/iron, /area/awaymission/snowdin/post/hydro) "fS" = ( @@ -1517,10 +1518,13 @@ /obj/effect/turf_decal/tile/green/half/contrasted{ dir = 1 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/iron, /area/awaymission/snowdin/post/hydro) "fV" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 8 + }, /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/effect/turf_decal/tile/green/anticorner/contrasted{ dir = 4 @@ -1737,12 +1741,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/awaymission/snowdin/post/hydro) -"gL" = ( -/obj/structure/sink/directional/west, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/obj/effect/mapping_helpers/broken_floor, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) "gM" = ( /obj/item/stack/cable_coil{ amount = 1 @@ -1938,10 +1936,6 @@ /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating, /area/awaymission/snowdin/post/hydro) -"hA" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) "hB" = ( /obj/structure/lattice/catwalk, /obj/effect/turf_decal/weather/snow, @@ -2301,10 +2295,6 @@ /turf/open/floor/iron, /area/awaymission/snowdin/post/gateway) "iB" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ - dir = 10 - }, /obj/effect/landmark/awaystart/snowdin, /obj/machinery/holopad, /obj/effect/decal/cleanable/dirt, @@ -2353,7 +2343,6 @@ /turf/open/floor/plating, /area/awaymission/snowdin/post/hydro) "iL" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/effect/turf_decal/tile/green/half/contrasted{ dir = 4 }, @@ -2372,7 +2361,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/iron, /area/awaymission/snowdin/post/garage) "iP" = ( @@ -2576,11 +2564,12 @@ "ju" = ( /obj/effect/landmark/awaystart/snowdin, /obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ + dir = 10 + }, /turf/open/floor/iron, /area/awaymission/snowdin/post/gateway) "jv" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/effect/landmark/awaystart/snowdin, /obj/effect/turf_decal/stripes/line, /obj/effect/decal/cleanable/dirt, @@ -2616,7 +2605,6 @@ /turf/open/floor/iron/cafeteria, /area/awaymission/snowdin/post/messhall) "jB" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/structure/sink/directional/west, /obj/effect/turf_decal/tile/green/half/contrasted{ dir = 4 @@ -2647,7 +2635,6 @@ }, /obj/effect/landmark/awaystart/snowdin, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/iron, /area/awaymission/snowdin/post/garage) "jF" = ( @@ -2658,6 +2645,7 @@ "jG" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/iron, /area/awaymission/snowdin/post/garage) "jH" = ( @@ -2750,11 +2738,10 @@ id = "snowdin_gate" }, /obj/effect/turf_decal/delivery, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /turf/open/floor/iron, /area/awaymission/snowdin/post/gateway) "jZ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/machinery/door/poddoor/shutters/preopen{ id = "snowdin_gate" }, @@ -2797,27 +2784,14 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/iron, /area/awaymission/snowdin/post/garage) "ki" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/effect/mapping_helpers/broken_floor, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/garage) -"kj" = ( -/obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/plating, /area/awaymission/snowdin/post/garage) -"kk" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/awaymission/snowdin/post/garage) "km" = ( /obj/structure/sign/poster/contraband/tools/directional/east, /obj/structure/closet/crate/preopen, @@ -2844,7 +2818,9 @@ /turf/closed/wall/ice, /area/awaymission/snowdin/cave/mountain) "kv" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 4 + }, /obj/machinery/shower/directional/south, /turf/open/floor/iron/showroomfloor, /area/awaymission/snowdin/post/dorm) @@ -2883,7 +2859,9 @@ /turf/open/floor/iron/showroomfloor, /area/awaymission/snowdin/post/dorm) "kB" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 8 + }, /turf/open/floor/iron/showroomfloor, /area/awaymission/snowdin/post/dorm) "kF" = ( @@ -2909,11 +2887,10 @@ /obj/effect/turf_decal/tile/neutral/half/contrasted{ dir = 1 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /turf/open/floor/iron, /area/awaymission/snowdin/post) "kK" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/effect/turf_decal/stripes/line{ dir = 1 }, @@ -2979,7 +2956,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/iron, /area/awaymission/snowdin/post/garage) "kV" = ( @@ -2988,6 +2964,7 @@ dir = 4 }, /obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/iron, /area/awaymission/snowdin/post/garage) "kW" = ( @@ -3043,7 +3020,6 @@ /turf/open/floor/iron/showroomfloor, /area/awaymission/snowdin/post/dorm) "lj" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/iron/showroomfloor, /area/awaymission/snowdin/post/dorm) "lk" = ( @@ -3238,14 +3214,12 @@ /turf/open/floor/plating, /area/awaymission/snowdin/post/hydro) "lH" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/cable, /turf/open/floor/iron, /area/awaymission/snowdin/post/hydro) "lI" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/effect/decal/cleanable/dirt, /obj/structure/cable, /turf/open/floor/iron, @@ -3259,21 +3233,16 @@ /obj/item/paper/crumpled/ruins/snowdin/foreshadowing, /turf/open/floor/wood, /area/awaymission/snowdin/post/dorm) -"lK" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/obj/effect/mapping_helpers/broken_floor, -/turf/open/floor/plating, -/area/awaymission/snowdin/post/hydro) "lM" = ( /obj/machinery/door/airlock/external/glass/ruin, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/effect/mapping_helpers/airlock/cyclelink_helper, /turf/open/floor/plating, /area/awaymission/snowdin/post/garage) "lN" = ( /obj/machinery/door/airlock/external/glass/ruin, /obj/effect/mapping_helpers/airlock/cyclelink_helper, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/plating, /area/awaymission/snowdin/post/garage) "lO" = ( @@ -3428,6 +3397,9 @@ /area/awaymission/snowdin/post) "ml" = ( /obj/effect/turf_decal/snowdin_station_sign/seven, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ + dir = 4 + }, /turf/open/floor/iron, /area/awaymission/snowdin/post) "mm" = ( @@ -3537,12 +3509,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark, /area/awaymission/snowdin/post/custodials) -"mI" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/obj/effect/mapping_helpers/broken_floor, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) "mJ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, @@ -3655,7 +3621,7 @@ /area/awaymission/snowdin/outside) "nd" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 1 + dir = 4 }, /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating, @@ -3669,28 +3635,12 @@ /obj/effect/turf_decal/tile/neutral/half/contrasted, /turf/open/floor/iron, /area/awaymission/snowdin/post) -"nf" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral/half/contrasted, -/turf/open/floor/iron, -/area/awaymission/snowdin/post) "ng" = ( /obj/structure/flora/grass/both/style_random, /obj/structure/flora/tree/pine/style_random, /turf/open/misc/asteroid/snow, /area/awaymission/snowdin/outside) -"nh" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ - dir = 4 - }, -/turf/open/floor/plating, -/area/awaymission/snowdin/post) "ni" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ dir = 10 }, @@ -3905,6 +3855,7 @@ /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 1 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/iron, /area/awaymission/snowdin/post/secpost) "oh" = ( @@ -3912,6 +3863,7 @@ dir = 1 }, /obj/item/shard, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/plating, /area/awaymission/snowdin/post/secpost) "ol" = ( @@ -4017,29 +3969,18 @@ /turf/open/floor/iron, /area/awaymission/snowdin/post/secpost) "oE" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/awaymission/snowdin/post/secpost) -"oF" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/awaymission/snowdin/post/secpost) -"oG" = ( -/obj/structure/table, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/obj/effect/turf_decal/tile/red/half/contrasted{ - dir = 4 - }, -/turf/open/floor/iron, -/area/awaymission/snowdin/post/secpost) "oH" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/awaymission/snowdin/post/secpost) "oI" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ + welded = 1; + dir = 4 + }, /obj/effect/turf_decal/tile/neutral/anticorner/contrasted{ dir = 1 }, @@ -4061,7 +4002,9 @@ /turf/open/floor/iron, /area/awaymission/snowdin/post) "oL" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 8 + }, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/old, /obj/effect/turf_decal/tile/neutral/anticorner/contrasted{ @@ -4173,6 +4116,14 @@ /obj/machinery/microwave, /turf/open/floor/iron/cafeteria, /area/awaymission/snowdin/post/cavern2) +"pi" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "snowdin_gate" + }, +/obj/effect/turf_decal/delivery, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, +/turf/open/floor/iron, +/area/awaymission/snowdin/post/gateway) "pj" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 @@ -4217,15 +4168,6 @@ }, /turf/open/floor/iron, /area/awaymission/snowdin/post/secpost) -"pp" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ - dir = 5 - }, -/obj/effect/turf_decal/tile/neutral/half/contrasted{ - dir = 8 - }, -/turf/open/floor/iron, -/area/awaymission/snowdin/post) "pq" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ dir = 4 @@ -4246,13 +4188,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/awaymission/snowdin/post) -"pt" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/obj/effect/turf_decal/tile/neutral/half/contrasted{ - dir = 4 - }, -/turf/open/floor/iron, -/area/awaymission/snowdin/post) "pu" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -5370,9 +5305,7 @@ /area/awaymission/snowdin/post/mining_main/mechbay) "tQ" = ( /obj/machinery/light/small/directional/south, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/misc/asteroid/snow/ice, /area/awaymission/snowdin/cave/cavern) "tR" = ( @@ -5427,10 +5360,8 @@ /turf/open/floor/plating, /area/awaymission/snowdin/post/cavern1) "un" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/machinery/light/small/broken/directional/east, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/plating/snowed/cavern, /area/awaymission/snowdin/post/cavern2) "up" = ( @@ -5703,7 +5634,6 @@ /turf/open/floor/iron, /area/awaymission/snowdin/post/cavern1) "vy" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ dir = 6 }, @@ -5769,6 +5699,9 @@ /obj/effect/baseturf_helper/asteroid/snow, /turf/open/floor/plating, /area/awaymission/snowdin/post/broken_shuttle) +"vO" = ( +/turf/closed/wall, +/area/awaymission/snowdin/outside) "vP" = ( /obj/structure/plasticflaps, /obj/machinery/conveyor{ @@ -5778,15 +5711,17 @@ /turf/open/floor/plating, /area/awaymission/snowdin/post/mining_main/mechbay) "vR" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium, -/area/awaymission/snowdin/post/broken_shuttle) +/obj/structure/flora/tree/stump, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/misc/asteroid/snow, +/area/awaymission/snowdin/outside) "vT" = ( /obj/structure/chair, /turf/open/floor/mineral/titanium/blue, /area/awaymission/snowdin/post/broken_shuttle) "vU" = ( /obj/item/chair, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/mineral/titanium/blue, /area/awaymission/snowdin/post/broken_shuttle) "vW" = ( @@ -5805,6 +5740,7 @@ /obj/structure/chair{ dir = 1 }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/mineral/titanium/blue, /area/awaymission/snowdin/post/broken_shuttle) "wc" = ( @@ -6983,6 +6919,11 @@ slowdown = 1 }, /area/awaymission/snowdin/outside) +"AV" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, +/turf/open/floor/plating, +/area/awaymission/snowdin/post) "AW" = ( /obj/effect/decal/cleanable/blood/old, /turf/open/floor/plating/snowed/cavern, @@ -7503,7 +7444,7 @@ /area/awaymission/snowdin/cave) "De" = ( /obj/structure/table/reinforced, -/obj/machinery/light/built/directional/west, +/obj/machinery/light/empty/directional/west, /turf/open/floor/iron/dark, /area/awaymission/snowdin/cave) "Df" = ( @@ -7589,7 +7530,7 @@ /turf/open/floor/plating/snowed/smoothed, /area/awaymission/snowdin/cave) "Dx" = ( -/obj/machinery/light/built/directional/south, +/obj/machinery/light/empty/directional/south, /turf/open/floor/plating/snowed, /area/awaymission/snowdin/cave) "DA" = ( @@ -7881,7 +7822,7 @@ /area/awaymission/snowdin/cave) "ES" = ( /obj/structure/table/reinforced, -/obj/machinery/light/built/directional/south, +/obj/machinery/light/empty/directional/south, /turf/open/floor/iron/dark, /area/awaymission/snowdin/cave) "ET" = ( @@ -7894,6 +7835,15 @@ /obj/item/stack/ore/iron, /turf/closed/mineral/iron/ice, /area/awaymission/snowdin/cave/cavern) +"EW" = ( +/obj/effect/light_emitter{ + name = "outdoor light"; + set_cap = 3; + set_luminosity = 6 + }, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/misc/asteroid/snow, +/area/awaymission/snowdin/outside) "EX" = ( /obj/item/pickaxe/drill{ pixel_x = 3; @@ -8156,6 +8106,7 @@ dir = 4 }, /obj/structure/table, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/awaymission/snowdin/post/mining_main/mechbay) "GJ" = ( @@ -8391,6 +8342,7 @@ /obj/effect/turf_decal/stripes/corner{ dir = 1 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/awaymission/snowdin/post/mining_main/mechbay) "HS" = ( @@ -8769,6 +8721,12 @@ "JV" = ( /turf/open/misc/ice, /area/awaymission/snowdin/outside) +"Ka" = ( +/obj/effect/landmark/awaystart/snowdin, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, +/turf/open/floor/iron, +/area/awaymission/snowdin/post/gateway) "Kc" = ( /obj/effect/turf_decal/tile/brown/half/contrasted{ dir = 8 @@ -9403,6 +9361,7 @@ /obj/effect/turf_decal/tile/green/half/contrasted{ dir = 1 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/iron, /area/awaymission/snowdin/post/hydro) "Nt" = ( @@ -9558,7 +9517,6 @@ /turf/open/floor/iron/white, /area/awaymission/snowdin/post) "Oh" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/effect/decal/cleanable/dirt, /obj/machinery/light/small/broken/directional/south, /turf/open/floor/iron/showroomfloor, @@ -9814,6 +9772,7 @@ "PL" = ( /obj/structure/chair, /obj/machinery/light/small/directional/west, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/mineral/titanium/blue, /area/awaymission/snowdin/post/broken_shuttle) "PM" = ( @@ -10333,10 +10292,6 @@ /turf/open/floor/iron, /area/awaymission/snowdin/post/research) "Sr" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ - dir = 4 - }, /obj/structure/extinguisher_cabinet/directional/south, /turf/open/floor/plating, /area/awaymission/snowdin/post) @@ -10518,6 +10473,20 @@ /mob/living/basic/bear/snow, /turf/open/misc/asteroid/snow, /area/awaymission/snowdin/outside) +"Th" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ + dir = 9 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/showroomfloor, +/area/awaymission/snowdin/post/dorm) +"Tj" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ + dir = 4 + }, +/turf/open/floor/iron, +/area/awaymission/snowdin/post) "Tk" = ( /obj/effect/turf_decal/weather/snow/corner, /turf/open/misc/asteroid/snow{ @@ -10693,11 +10662,11 @@ /turf/open/floor/plating, /area/awaymission/snowdin/post/mining_main/mechbay) "Us" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ dir = 4 }, /obj/machinery/airalarm/directional/north, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/iron, /area/awaymission/snowdin/post/garage) "Ut" = ( @@ -10783,10 +10752,8 @@ /turf/open/misc/asteroid/snow/ice, /area/awaymission/snowdin/cave/cavern) "Va" = ( -/obj/structure/fence{ - dir = 4 - }, -/obj/structure/sign/nanotrasen, +/obj/structure/flora/grass/both/style_random, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/misc/asteroid/snow, /area/awaymission/snowdin/outside) "Vb" = ( @@ -10853,6 +10820,16 @@ /obj/machinery/light/broken/directional/south, /turf/open/floor/plating, /area/awaymission/snowdin/post/mining_dock) +"Vs" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, +/turf/open/floor/iron, +/area/awaymission/snowdin/post) "Vt" = ( /obj/docking_port/stationary{ dir = 4; @@ -10867,6 +10844,7 @@ /area/awaymission/snowdin/post/mining_main) "Vu" = ( /obj/machinery/light/broken/directional/north, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/plating, /area/awaymission/snowdin/post/hydro) "Vw" = ( @@ -10879,16 +10857,17 @@ /turf/open/misc/asteroid/snow, /area/awaymission/snowdin/cave) "Vy" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = -32 +/obj/effect/turf_decal/weather/snow, +/obj/effect/turf_decal/weather/snow/corner{ + dir = 5 }, -/turf/open/misc/asteroid/snow/ice, -/area/awaymission/snowdin/cave/cavern) +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/iron/dark/snowdin, +/area/awaymission/snowdin/outside) "Vz" = ( /obj/machinery/light/small/directional/east, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/plating/snowed/cavern, /area/awaymission/snowdin/post/cavern2) "VB" = ( @@ -10918,9 +10897,7 @@ /area/awaymission/snowdin/post/hydro) "VO" = ( /obj/machinery/light/small/directional/north, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/plating/snowed/cavern, /area/awaymission/snowdin/cave/cavern) "VP" = ( @@ -11157,6 +11134,7 @@ dir = 1 }, /obj/machinery/light/small/directional/east, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/mineral/titanium/blue, /area/awaymission/snowdin/post/broken_shuttle) "Xk" = ( @@ -11294,7 +11272,6 @@ "Yd" = ( /obj/machinery/light/small/directional/west, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer4, /turf/open/floor/plating, /area/awaymission/snowdin/post/garage) "Ye" = ( @@ -11311,6 +11288,10 @@ }, /turf/open/misc/asteroid/snow, /area/awaymission/snowdin/outside) +"Yg" = ( +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/misc/asteroid/snow, +/area/awaymission/snowdin/outside) "Yh" = ( /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, @@ -11474,7 +11455,9 @@ /turf/open/floor/plating, /area/awaymission/snowdin/post/gateway) "Zj" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4{ + dir = 8 + }, /obj/machinery/airalarm/directional/north, /obj/effect/turf_decal/tile/red/anticorner/contrasted{ dir = 4 @@ -17291,7 +17274,7 @@ eQ je aS kw -lf +Th lV aK Zy @@ -20188,9 +20171,9 @@ Zy Zy Zy vL -vR +vL vX -vR +vL vL Zy Zy @@ -20249,8 +20232,8 @@ eo Zy Zy YE +vO Va -TI Zy Zy Zy @@ -20634,7 +20617,7 @@ jU js jU me -mI +jo nd nF Ob @@ -21149,7 +21132,7 @@ jU lp mg mK -nf +nL nH og oE @@ -21216,9 +21199,9 @@ Zy Zy Zy vL -vR +vL vX -vR +vL vL Zy Zy @@ -21406,10 +21389,10 @@ jU lq mh mL -nf +nL QZ oh -oF +oz pn pL qq @@ -21663,10 +21646,10 @@ kG lr mi mM -nf +nL nF Zj -oG +po po pM qq @@ -21761,8 +21744,8 @@ Zy Zy Zy Zy -Va -Tr +SS +Vy YT YT YT @@ -21791,8 +21774,8 @@ Qj Zy YE Zy -Va -Qj +vO +EW Zy Zy Zy @@ -21938,8 +21921,8 @@ dX dX Zy Zy -Va -Zy +SS +Yg Zy Zy Cu @@ -22177,11 +22160,11 @@ kI lt mk mL -nh +js nJ hM oI -pp +kF pN dK qM @@ -22433,7 +22416,7 @@ jY kJ lu ml -jU +Tj ni nK HU @@ -22620,8 +22603,8 @@ Zy Zy Zy Zy -Va -Zy +SS +Yg Zy Zy Zy @@ -22691,7 +22674,7 @@ kK lv js jW -nM +jm nL dK js @@ -22942,12 +22925,12 @@ fG hn hT iC -ju -jY -kJ +Ka +pi +Vs lw -jo -js +AV +rm rm nM QN @@ -23209,7 +23192,7 @@ jX jm hM oL -pt +jX pR dK qM @@ -23303,8 +23286,8 @@ YE Zy Zy Zy -Va -Zy +SS +Yg Zy Zy Qj @@ -23480,8 +23463,8 @@ Cu Zy Zy dX -Va -Zy +SS +Yg Zy Zy Zy @@ -24162,8 +24145,8 @@ Zy Zy Wp Zy -Va -ZX +SS +vR Zy Zy Zy @@ -27314,7 +27297,7 @@ iJ gI hz gI -lK +iK ms hz nA @@ -27564,14 +27547,14 @@ bf bf bf fV -gL -hA -lK +mv +mt +iK iL jB iL iL -lK +iK mv iK nA @@ -29367,7 +29350,7 @@ gP hD id Us -iW +my ki kV lN @@ -29625,7 +29608,7 @@ Oe ie iP jF -kj +hE kW id ld @@ -29882,7 +29865,7 @@ Oe if iQ jG -kk +jJ kX ie mz @@ -35536,8 +35519,8 @@ ai ai ai Zy -Va -Zy +SS +Yg Zy Zy Zy @@ -35807,8 +35790,8 @@ Zy dX dX Zy -Va -Zy +SS +Yg Zy Zy Zy @@ -37335,8 +37318,8 @@ ai ai ai Zy -Va -Zy +SS +Yg Zy Zy Zy @@ -37349,8 +37332,8 @@ Zy ZK Zy Zy -Va -Zy +SS +Yg Zy Zy Zy @@ -59379,7 +59362,7 @@ WN WN WN WN -Vy +WN Gk GI Hc @@ -61435,7 +61418,7 @@ WN WN Nz WN -Vy +WN Gk HR Hi diff --git a/_maps/RandomZLevels/undergroundoutpost45.dmm b/_maps/RandomZLevels/undergroundoutpost45.dmm index 12aa7f7458b573..624f05678ace14 100644 --- a/_maps/RandomZLevels/undergroundoutpost45.dmm +++ b/_maps/RandomZLevels/undergroundoutpost45.dmm @@ -112,12 +112,6 @@ /turf/open/floor/iron/grimy, /area/awaymission/undergroundoutpost45/central) "az" = ( -/obj/structure/sign/warning/vacuum{ - desc = "A beacon used by a teleporter."; - icon = 'icons/obj/devices/tracker.dmi'; - icon_state = "beacon"; - name = "tracking beacon" - }, /obj/effect/landmark/awaystart/underground, /obj/effect/turf_decal/tile/neutral/half/contrasted{ dir = 4 @@ -258,7 +252,6 @@ req_access = list("away_maintenance") }, /obj/item/clothing/under/suit/black/skirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/carpet, /area/awaymission/undergroundoutpost45/central) "ba" = ( @@ -474,7 +467,6 @@ "cw" = ( /obj/structure/table/wood, /obj/machinery/newscaster/directional/west, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/carpet, /area/awaymission/undergroundoutpost45/central) "cA" = ( @@ -503,7 +495,7 @@ /area/awaymission/undergroundoutpost45/central) "cH" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 + dir = 4 }, /obj/structure/chair/wood{ dir = 1 @@ -526,7 +518,7 @@ /area/awaymission/undergroundoutpost45/central) "cK" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 + dir = 4 }, /obj/structure/bed, /obj/item/bedsheet, @@ -876,7 +868,6 @@ /obj/structure/disposalpipe/segment, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/awaymission/undergroundoutpost45/central) "ed" = ( @@ -917,6 +908,7 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/awaymission/undergroundoutpost45/central) "ek" = ( @@ -957,7 +949,7 @@ "eq" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 + dir = 4 }, /turf/open/floor/iron, /area/awaymission/undergroundoutpost45/central) @@ -1122,6 +1114,7 @@ dir = 1 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/awaymission/undergroundoutpost45/central) "fa" = ( @@ -1193,7 +1186,9 @@ /turf/open/floor/iron, /area/awaymission/undergroundoutpost45/central) "fp" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, /obj/effect/turf_decal/tile/neutral{ dir = 4 }, @@ -1206,7 +1201,9 @@ /turf/open/floor/iron, /area/awaymission/undergroundoutpost45/central) "fr" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, /obj/effect/turf_decal/tile/neutral{ dir = 1 }, @@ -1306,7 +1303,6 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/awaymission/undergroundoutpost45/central) "fI" = ( @@ -1917,7 +1913,7 @@ /turf/open/floor/plating, /area/awaymission/undergroundoutpost45/gateway) "ig" = ( -/obj/machinery/computer/rdconsole{ +/obj/machinery/computer/rdconsole/unlocked{ dir = 4; req_access = null }, @@ -2144,7 +2140,9 @@ /turf/open/floor/iron, /area/awaymission/undergroundoutpost45/gateway) "iT" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, /obj/structure/chair{ dir = 8 }, @@ -2262,6 +2260,7 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/awaymission/undergroundoutpost45/gateway) "jz" = ( @@ -2497,7 +2496,7 @@ /area/awaymission/undergroundoutpost45/crew_quarters) "kr" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 + dir = 2 }, /obj/effect/turf_decal/tile/bar/opposingcorners, /turf/open/floor/iron, @@ -2554,7 +2553,7 @@ /area/awaymission/undergroundoutpost45/gateway) "kB" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 + dir = 2 }, /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -2566,7 +2565,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/awaymission/undergroundoutpost45/gateway) "kF" = ( @@ -2630,7 +2628,7 @@ /area/awaymission/undergroundoutpost45/research) "kU" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 + dir = 2 }, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/purple{ @@ -2697,7 +2695,7 @@ /area/awaymission/undergroundoutpost45/crew_quarters) "le" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 + dir = 1 }, /turf/open/floor/iron, /area/awaymission/undergroundoutpost45/crew_quarters) @@ -2748,6 +2746,7 @@ /obj/effect/decal/cleanable/dirt, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/awaymission/undergroundoutpost45/gateway) "lu" = ( @@ -2893,7 +2892,7 @@ /area/awaymission/undergroundoutpost45/research) "lL" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 + dir = 1 }, /obj/effect/turf_decal/tile/purple, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -2913,6 +2912,7 @@ }, /obj/effect/turf_decal/tile/purple, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, /area/awaymission/undergroundoutpost45/research) "lO" = ( @@ -3013,7 +3013,6 @@ /area/awaymission/undergroundoutpost45/gateway) "mc" = ( /obj/effect/mapping_helpers/burnt_floor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron{ dir = 8 }, @@ -4411,14 +4410,13 @@ "qU" = ( /obj/machinery/light/small/directional/west, /obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white/side{ dir = 4 }, /area/awaymission/undergroundoutpost45/research) "qV" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 + dir = 2 }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/white, @@ -4662,8 +4660,8 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white/side{ dir = 4 }, @@ -4774,7 +4772,6 @@ /obj/effect/turf_decal/tile/yellow/half/contrasted{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/awaymission/undergroundoutpost45/crew_quarters) "rW" = ( @@ -5840,11 +5837,8 @@ /turf/open/floor/iron/checker, /area/awaymission/undergroundoutpost45/engineering) "vQ" = ( -/obj/structure/noticeboard{ - dir = 1; - pixel_y = -27 - }, /obj/effect/decal/cleanable/dirt, +/obj/structure/noticeboard/directional/south, /turf/open/floor/iron, /area/awaymission/undergroundoutpost45/engineering) "vR" = ( @@ -6540,7 +6534,6 @@ /obj/structure/chair/wood{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/carpet, /area/awaymission/undergroundoutpost45/central) "Bz" = ( @@ -6837,6 +6830,8 @@ /obj/machinery/airalarm/directional/west, /obj/effect/mapping_helpers/airalarm/all_access, /obj/effect/mapping_helpers/burnt_floor, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron{ dir = 8 }, @@ -6876,6 +6871,11 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron, /area/awaymission/undergroundoutpost45/engineering) +"GS" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/awaymission/undergroundoutpost45/central) "Hp" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -6971,7 +6971,6 @@ /obj/effect/turf_decal/tile/purple{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, /area/awaymission/undergroundoutpost45/research) "Ji" = ( @@ -6983,6 +6982,7 @@ }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/awaymission/undergroundoutpost45/gateway) "Jm" = ( @@ -7121,25 +7121,14 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/awaymission/undergroundoutpost45/gateway) -"LX" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/awaymission/undergroundoutpost45/gateway) "LZ" = ( /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 8 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/awaymission/undergroundoutpost45/central) -"Mg" = ( -/obj/effect/turf_decal/tile/purple{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/white, -/area/awaymission/undergroundoutpost45/research) "Mo" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, @@ -7286,6 +7275,7 @@ "ON" = ( /obj/effect/turf_decal/tile/purple, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, /area/awaymission/undergroundoutpost45/research) "OO" = ( @@ -7312,6 +7302,15 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/general, /turf/open/floor/plating, /area/awaymission/undergroundoutpost45/research) +"Px" = ( +/obj/structure/sign/warning/vacuum{ + desc = "A beacon used by a teleporter."; + icon = 'icons/obj/devices/tracker.dmi'; + icon_state = "beacon"; + name = "tracking beacon" + }, +/turf/closed/wall, +/area/awaymission/undergroundoutpost45/central) "PB" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -7362,7 +7361,6 @@ /obj/machinery/light/small/directional/north, /obj/machinery/airalarm/directional/north, /obj/effect/mapping_helpers/airalarm/all_access, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/carpet, /area/awaymission/undergroundoutpost45/central) "Qu" = ( @@ -7606,11 +7604,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/awaymission/undergroundoutpost45/gateway) -"Vo" = ( -/obj/effect/turf_decal/tile/bar/opposingcorners, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/awaymission/undergroundoutpost45/crew_quarters) "VF" = ( /obj/effect/turf_decal/tile/purple/half/contrasted{ dir = 4 @@ -7734,6 +7727,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/awaymission/undergroundoutpost45/central) "Xd" = ( @@ -7751,6 +7745,11 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron/white, /area/awaymission/undergroundoutpost45/research) +"XD" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/white, +/area/awaymission/undergroundoutpost45/research) "XF" = ( /obj/structure/ore_box, /turf/open/misc/asteroid/plasma, @@ -7773,10 +7772,6 @@ /obj/structure/glowshroom/single, /turf/open/misc/asteroid/plasma, /area/awaymission/undergroundoutpost45/caves) -"XU" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/awaymission/undergroundoutpost45/gateway) "Yb" = ( /obj/structure/alien/weeds, /obj/structure/bed/nest, @@ -28313,8 +28308,8 @@ gU gv gv kA -cA -XU +Qb +mb mF gv ad @@ -28566,12 +28561,12 @@ hw ib ib iT -LX +gJ gK Rx kB lt -XU +mb mG gw zq @@ -35251,7 +35246,7 @@ zq zq zq hH -Mg +mU lM hH mR @@ -35776,7 +35771,7 @@ lu gx Ap qV -YF +XD sw gz tR @@ -37787,7 +37782,7 @@ aK aC aP aP -aC +Px aC bv aC @@ -37800,7 +37795,7 @@ cH ae aF Gc -IV +GS ej LZ LZ @@ -38057,14 +38052,14 @@ fB cZ gf gf -zJ -zJ -zJ -zJ -zJ -zJ +aS +aS +aS +aS +aS Ai aS +aS aC fO gr @@ -38320,7 +38315,7 @@ ez eN fa fp -Ai +aS aS da gA @@ -38577,7 +38572,7 @@ el el el fq -Ai +aS aS da gs @@ -38591,8 +38586,8 @@ WD WD Ij HA -HA -Ug +zA +gs lQ gs nG @@ -38834,7 +38829,7 @@ eA eB el fq -Ai +aS fU ae fK @@ -38849,7 +38844,7 @@ gg gg jR Ro -Ug +gs gA mp fN @@ -39091,7 +39086,7 @@ eB eO el fq -Ai +aS fV ae zq @@ -39348,7 +39343,7 @@ el el el fq -Ai +aS aF aP zq @@ -39605,7 +39600,7 @@ eC eC aY fr -Ai +aS fW aP zq @@ -42446,7 +42441,7 @@ iH jc jz hK -Vo +hK lj lU fN diff --git a/_maps/doppler/automapper/templates/metastation/metastation_cryo.dmm b/_maps/doppler/automapper/templates/metastation/metastation_cryo.dmm index 83810e4d897fef..2c9b4a646568e3 100644 --- a/_maps/doppler/automapper/templates/metastation/metastation_cryo.dmm +++ b/_maps/doppler/automapper/templates/metastation/metastation_cryo.dmm @@ -95,10 +95,6 @@ "N" = ( /turf/closed/wall, /area/station/commons/cryopods) -"O" = ( -/obj/machinery/airalarm/directional/west, -/turf/template_noop, -/area/template_noop) "U" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -147,7 +143,7 @@ N a a U -O +a a "} (6,1,1) = {" diff --git a/_maps/map_files/CatwalkStation/CatwalkStation_2023.dmm b/_maps/map_files/CatwalkStation/CatwalkStation_2023.dmm index 793a8e79c6fd55..02508b9de0f21c 100644 --- a/_maps/map_files/CatwalkStation/CatwalkStation_2023.dmm +++ b/_maps/map_files/CatwalkStation/CatwalkStation_2023.dmm @@ -2,20 +2,21 @@ "aad" = ( /turf/closed/wall, /area/station/service/hydroponics) -"aah" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/general/hidden, -/obj/effect/turf_decal/siding/blue{ - dir = 4 - }, -/turf/open/floor/catwalk_floor, -/area/station/science/server) -"aat" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +"aaq" = ( /obj/structure/cable, -/obj/structure/disposalpipe/segment, -/turf/open/floor/catwalk_floor, +/obj/structure/sign/poster/random/directional/north, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/landmark/firealarm_sanity, +/turf/open/floor/catwalk_floor/iron_smooth, /area/station/engineering/main) +"aas" = ( +/obj/machinery/door/airlock/public/glass{ + name = "Laundromat" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/iron/textured, +/area/station/commons/dorms/laundry) "aau" = ( /obj/structure/railing{ dir = 1 @@ -23,6 +24,13 @@ /obj/structure/showcase/machinery/implanter, /turf/open/floor/wood, /area/station/command/corporate_showroom) +"aaN" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/main) "aaO" = ( /obj/structure/plaque/static_plaque/golden{ desc = "Come get your own gold plaque!"; @@ -31,56 +39,28 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"aaS" = ( -/obj/effect/mapping_helpers/broken_floor, -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper/stack{ - dir = 1 - }, -/obj/structure/fluff/paper/corner{ - dir = 8 - }, -/obj/item/paper/crumpled{ - pixel_x = -3; - pixel_y = 2 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "aaV" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/station/maintenance/port/fore) -"abi" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/structure/railing{ - dir = 8 - }, -/obj/structure/rack, -/obj/item/grenade/chem_grenade/smart_metal_foam, -/obj/item/grenade/chem_grenade/smart_metal_foam{ - pixel_x = 5 - }, -/obj/item/holosign_creator/atmos{ - pixel_x = -1; - pixel_y = -5 - }, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "abm" = ( -/obj/machinery/door/airlock/mining/glass{ - name = "Quartermaster" - }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/access/all/supply/qm, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/tile/brown/fourcorners, /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/iron, -/area/station/command/heads_quarters/qm) +/obj/machinery/door/firedoor/heavy, +/obj/effect/turf_decal/trimline/dark_red/filled/warning{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark_red/filled/warning{ + dir = 4 + }, +/turf/open/floor/iron/dark/textured_half{ + dir = 1 + }, +/area/station/cargo/storage) "abp" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/window/reinforced/spawner/directional/east, @@ -89,14 +69,13 @@ /turf/open/floor/plating, /area/station/maintenance/space_hut) "abs" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, +/obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters{ - id = "commissaryshutter"; + dir = 1; + id = "Rcommissaryshutter"; name = "Vacant Commissary Shutter" }, -/obj/effect/turf_decal/tile/dark_green/fourcorners, -/turf/open/floor/iron/dark, +/turf/open/floor/plating, /area/station/commons/vacant_room/office) "abE" = ( /obj/machinery/door/airlock/maintenance, @@ -119,25 +98,17 @@ /turf/open/floor/iron/kitchen, /area/station/service/kitchen) "abI" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/landmark/start/shaft_miner, +/obj/machinery/autolathe, +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 8 + }, /turf/open/floor/iron, -/area/station/cargo/miningoffice) +/area/station/cargo/storage) "abM" = ( +/obj/structure/railing, /obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 4 - }, -/obj/machinery/conveyor{ - dir = 8; - id = "cargounload" - }, -/obj/effect/spawner/random/maintenance, -/obj/structure/closet/crate, -/obj/item/storage/belt/fannypack/yellow, -/obj/structure/railing{ - dir = 1 + dir = 6 }, -/obj/structure/railing, /turf/open/floor/iron, /area/station/cargo/storage) "abT" = ( @@ -149,6 +120,28 @@ }, /turf/open/floor/iron, /area/station/science/robotics) +"acc" = ( +/obj/item/flashlight/lamp{ + pixel_y = 7 + }, +/obj/structure/table/wood, +/obj/effect/turf_decal/siding/dark{ + dir = 8 + }, +/obj/effect/turf_decal/siding/dark{ + dir = 4 + }, +/turf/open/floor/carpet/orange, +/area/station/command/heads_quarters/qm) +"acd" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/decal/cleanable/dirt, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "acl" = ( /obj/structure/table, /obj/effect/decal/cleanable/dirt, @@ -159,22 +152,11 @@ /turf/open/floor/carpet/stellar, /area/station/maintenance/hallway/abandoned_recreation) "acx" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/sign/directions/engineering/directional/north{ - dir = 8 - }, -/obj/structure/sign/directions/engineering/directional/north{ - dir = 8; - pixel_y = 26 - }, -/obj/structure/sign/directions/engineering/directional/north{ - dir = 8; - pixel_y = 38 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/obj/effect/decal/cleanable/dirt, +/obj/effect/landmark/start/cargo_technician, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/cargo/storage) "acI" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -187,7 +169,7 @@ "acL" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/ladder, -/turf/open/floor/wood, +/turf/open/floor/iron/dark, /area/station/command/gateway) "acN" = ( /obj/structure/flora/rock/pile/style_2, @@ -202,21 +184,6 @@ }, /turf/open/misc/asteroid, /area/station/science/robotics) -"acQ" = ( -/obj/structure/table, -/obj/item/flashlight{ - pixel_x = 1; - pixel_y = 5 - }, -/obj/item/flashlight{ - pixel_x = 1; - pixel_y = 5 - }, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) "acS" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -228,12 +195,6 @@ /obj/machinery/light/floor, /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) -"acU" = ( -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5{ - dir = 5 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "acV" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /obj/structure/table, @@ -243,18 +204,17 @@ /obj/machinery/camera/autoname/directional/south, /turf/open/floor/iron, /area/station/science/research) -"ade" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +"adg" = ( +/obj/machinery/door/airlock/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/lattice/catwalk, -/obj/item/trash/tray, -/turf/open/water, -/area/station/maintenance/starboard/fore) -"ado" = ( -/obj/machinery/light/directional/west, -/turf/open/openspace, -/area/station/engineering/break_room) +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"adq" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/carpet, +/area/station/security/detectives_office) "adv" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor, @@ -285,11 +245,6 @@ }, /turf/open/openspace, /area/station/science/xenobiology) -"aej" = ( -/obj/effect/turf_decal/stripes/corner, -/obj/structure/cable/layer1, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "aep" = ( /obj/structure/disposalpipe/segment{ dir = 9 @@ -315,13 +270,6 @@ }, /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) -"afj" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/poster/contraband/random/directional/south, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "afk" = ( /obj/structure/flora/bush/pale/style_random, /obj/structure/flora/bush/ferny/style_random, @@ -348,20 +296,29 @@ }, /area/station/medical/cryo) "afn" = ( -/obj/structure/railing{ - dir = 4 - }, /obj/effect/turf_decal/siding/blue{ dir = 5 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/command/bridge) -"afr" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/cable, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/end{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 4 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "aft" = ( /obj/structure/stairs/west, /obj/structure/railing, @@ -370,14 +327,23 @@ "afu" = ( /turf/open/openspace, /area/station/commons/dorms) -"afB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/cigbutt{ - pixel_x = -12; - pixel_y = 15 +"afA" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 }, +/obj/structure/table, +/obj/item/stack/sheet/iron, +/obj/structure/sign/poster/official/random/directional/south, +/turf/open/floor/iron/dark/textured_large, +/area/station/commons/dorms) +"afI" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard) "afK" = ( /obj/machinery/turretid{ name = "AI Chamber turret control"; @@ -400,21 +366,18 @@ }, /obj/structure/lattice/catwalk, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "afL" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 }, /turf/open/floor/iron/dark, /area/station/science/lobby) -"afP" = ( -/obj/structure/chair/pew{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/landmark/start/hangover, -/turf/open/floor/carpet, -/area/station/maintenance/starboard/lesser) +"afQ" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment, +/turf/open/floor/catwalk_floor/iron, +/area/station/commons/dorms) "afR" = ( /turf/open/openspace, /area/station/hallway/primary/aft) @@ -429,18 +392,16 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/security/prison/mess) -"agh" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 8 - }, -/obj/machinery/firealarm/directional/south, -/obj/machinery/camera/autoname/directional/south, +"agq" = ( /obj/structure/lattice/catwalk, -/turf/open/openspace, -/area/station/engineering/break_room) +/obj/structure/railing/corner{ + dir = 4 + }, +/turf/open/water/no_planet_atmos, +/area/station/maintenance/port/fore) "agu" = ( /obj/structure/sign/departments/medbay/alt/directional/south, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge, /area/station/hallway/primary/central) "agy" = ( /obj/machinery/atmospherics/components/unary/thermomachine/freezer/on{ @@ -455,15 +416,31 @@ /obj/machinery/camera/autoname/directional/east, /turf/open/floor/iron, /area/station/engineering/lobby) +"agB" = ( +/obj/machinery/atmospherics/pipe/layer_manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/station/engineering/atmos/upper) "agF" = ( /obj/structure/disposalpipe/segment{ dir = 6 }, /turf/open/floor/plating, /area/station/maintenance/starboard/central) -"agO" = ( -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) +"agL" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, +/obj/effect/decal/cleanable/blood/footprints{ + dir = 8 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"agX" = ( +/obj/structure/lattice, +/obj/structure/sign/warning/directional/west, +/turf/open/space/openspace, +/area/space/nearstation) "ahf" = ( /turf/closed/wall/r_wall, /area/station/medical/chemistry) @@ -472,6 +449,13 @@ /obj/effect/spawner/random/vending/colavend, /turf/open/floor/iron/dark, /area/station/hallway/secondary/entry) +"ahl" = ( +/obj/machinery/pipedispenser/disposal, +/obj/effect/turf_decal/bot, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, +/turf/open/floor/iron/smooth, +/area/station/engineering/main) "ahx" = ( /obj/structure/table, /obj/item/storage/toolbox/mechanical{ @@ -514,12 +498,6 @@ /obj/machinery/camera/autoname/directional/east, /turf/open/openspace, /area/station/hallway/primary/aft) -"ahT" = ( -/obj/effect/landmark/event_spawn, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/station/engineering/engine_smes) "ahU" = ( /obj/effect/turf_decal/delivery, /obj/effect/spawner/random/vending/snackvend, @@ -540,16 +518,18 @@ /turf/open/floor/iron/dark, /area/station/science/cytology) "aia" = ( -/obj/machinery/holopad, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) -"aii" = ( -/obj/machinery/light/directional/west, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/gravity_generator) +/obj/machinery/computer/communications{ + dir = 1 + }, +/obj/structure/window/reinforced/spawner/directional/south, +/turf/open/floor/circuit, +/area/station/command/bridge) +"aim" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 4 + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "aiq" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/machinery/doppler_array{ @@ -565,18 +545,11 @@ /obj/effect/mapping_helpers/airlock/access/all/security/general, /turf/open/floor/iron/dark, /area/station/security/courtroom) -"aiv" = ( -/obj/item/kirbyplants/random, -/obj/machinery/light/directional/east, -/obj/machinery/camera/autoname/directional/east, -/obj/machinery/light_switch/directional/east, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "aiA" = ( /obj/effect/turf_decal/delivery, /obj/structure/closet/emcloset, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "aiE" = ( /obj/structure/railing, /obj/structure/cable, @@ -595,7 +568,11 @@ /area/station/science/robotics/lab) "aiP" = ( /obj/effect/turf_decal/trimline/brown/filled/line, -/turf/open/floor/iron, +/obj/structure/chair/sofa/middle/brown{ + dir = 1 + }, +/obj/structure/lattice/catwalk, +/turf/open/openspace, /area/station/cargo/storage) "aiY" = ( /obj/structure/railing{ @@ -605,15 +582,13 @@ /obj/structure/sign/poster/official/random/directional/south, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"ajl" = ( -/obj/structure/chair/office{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/yellow/filled/warning{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +"ajw" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/delivery, +/obj/machinery/icecream_vat, +/obj/structure/light_construct/directional/east, +/turf/open/floor/iron, +/area/station/maintenance/starboard/central) "ajB" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -648,7 +623,7 @@ /obj/structure/cable/layer3, /obj/structure/cable, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "ajU" = ( /obj/effect/turf_decal/trimline/blue/warning{ dir = 1 @@ -687,6 +662,13 @@ /obj/machinery/firealarm/directional/north, /turf/open/floor/iron/grimy, /area/station/security/interrogation) +"akk" = ( +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/obj/structure/sign/poster/official/random/directional/south, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "ako" = ( /obj/structure/railing/corner, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -712,6 +694,16 @@ }, /turf/open/openspace, /area/station/maintenance/port/aft) +"akv" = ( +/obj/effect/turf_decal/tile/red/opposingcorners{ + dir = 1 + }, +/obj/machinery/holopad, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/security/checkpoint/supply) "akE" = ( /obj/structure/chair{ dir = 1 @@ -729,35 +721,13 @@ codes_txt = "patrol;next_patrol=8-Kitchen"; location = "7-Gateway" }, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) -"akK" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/engineering/hallway) "akL" = ( /obj/machinery/telecomms/server/presets/engineering, /obj/effect/turf_decal/tile/yellow/fourcorners, /turf/open/floor/iron/dark/telecomms, /area/station/tcommsat/server) -"akS" = ( -/obj/structure/rack, -/obj/item/storage/crayons{ - pixel_x = -4; - pixel_y = 4 - }, -/obj/item/storage/box/lights/bulbs{ - pixel_x = 5 - }, -/obj/item/assembly/prox_sensor{ - pixel_x = -4; - pixel_y = -7 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "akU" = ( /obj/effect/landmark/start/hangover, /obj/structure/disposalpipe/segment{ @@ -766,7 +736,9 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 8 + }, /area/station/hallway/primary/central) "akW" = ( /obj/effect/turf_decal/trimline/dark_blue/line{ @@ -783,7 +755,16 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"alb" = ( +/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 9 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "alh" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -792,9 +773,11 @@ /obj/structure/railing/corner/end/flip{ dir = 8 }, +/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/openspace, -/area/station/command/bridge) +/area/station/command/meeting_room/council) "ali" = ( /obj/structure/plaque/static_plaque/golden/commission/pubby{ pixel_y = 32 @@ -819,19 +802,6 @@ }, /turf/open/floor/iron, /area/station/maintenance/port/aft) -"alk" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 4 - }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) -"alm" = ( -/obj/effect/turf_decal/siding/brown, -/obj/structure/closet/masks, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "als" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 8 @@ -846,14 +816,12 @@ /obj/structure/cable, /turf/open/floor/iron/textured_large, /area/station/medical/virology) -"alx" = ( -/obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, -/turf/open/floor/plating, -/area/station/maintenance/port) +"alA" = ( +/obj/item/radio/intercom/directional/east, +/obj/effect/turf_decal/tile/red/fourcorners, +/obj/structure/closet/firecloset, +/turf/open/floor/iron/dark, +/area/station/security/checkpoint/engineering) "alF" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table_frame, @@ -864,30 +832,36 @@ /obj/effect/spawner/random/maintenance/no_decals, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) -"alG" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/multiz/scrubbers/visible/layer2{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/multiz/supply/visible/layer4{ - dir = 4 - }, -/turf/open/openspace, -/area/station/engineering/atmos/project) -"alI" = ( +"alM" = ( /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/door/airlock/engineering{ + name = "Engine Room" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ - dir = 10 +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line{ + dir = 1 }, -/turf/open/floor/plating, -/area/station/maintenance/port) +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "atmoslowersm" + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/supermatter/room) "alT" = ( /obj/structure/disposalpipe/segment, /obj/effect/spawner/random/structure/steam_vent, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) +"amd" = ( +/obj/structure/closet/secure_closet/engineering_personal{ + anchored = 1 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "ame" = ( /obj/machinery/newscaster/directional/west, /obj/machinery/light/directional/west, @@ -901,16 +875,24 @@ /turf/open/floor/iron/dark, /area/station/security/warden) "ams" = ( -/obj/effect/turf_decal/bot, -/obj/effect/turf_decal/siding/blue/corner{ - dir = 1 +/obj/machinery/door/window/left/directional/west, +/obj/structure/table/reinforced, +/obj/item/paper_bin{ + pixel_x = -5; + pixel_y = 4 }, -/obj/effect/turf_decal/siding/blue/corner{ - dir = 8 +/obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/preopen{ + id = "hop"; + name = "Privacy Shutters" }, -/obj/effect/landmark/navigate_destination/hop, -/turf/open/floor/iron/dark/smooth_large, -/area/station/hallway/primary/central) +/obj/machinery/door/window/brigdoor/right/directional/east{ + name = "Head of Personnel's Desk"; + req_access = list("hop") + }, +/obj/item/pen, +/turf/open/floor/plating, +/area/station/command/heads_quarters/hop) "amt" = ( /obj/effect/decal/cleanable/dirt, /obj/item/reagent_containers/cup/bucket{ @@ -931,13 +913,12 @@ }, /obj/machinery/light/directional/west, /turf/open/floor/iron/dark/textured_half, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "amJ" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/effect/landmark/event_spawn, /turf/open/floor/iron, /area/station/cargo/miningoffice) "amU" = ( @@ -973,6 +954,11 @@ "anm" = ( /turf/closed/wall, /area/station/service/library/printer) +"ano" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "anp" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -990,43 +976,40 @@ }, /turf/open/floor/iron/dark/telecomms, /area/station/tcommsat/server) -"anB" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 1 - }, -/obj/machinery/vending/engivend, -/turf/open/floor/iron/smooth, -/area/station/engineering/main) "anG" = ( /obj/structure/window/reinforced/spawner/directional/west, /turf/open/openspace, /area/station/security/detectives_office) -"anJ" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) "anY" = ( /turf/open/floor/engine/hull/air, /area/station/maintenance/port/fore) -"aof" = ( -/obj/structure/table, -/obj/machinery/status_display/ai/directional/north, -/obj/item/analyzer, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 +"aod" = ( +/obj/machinery/door/airlock/engineering{ + name = "Engineering" }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/engineering/supermatter/room/upper) "aoh" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/engineering/tank, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"aoi" = ( +/obj/machinery/firealarm/directional/west, +/obj/structure/closet/crate, +/obj/item/stack/rods{ + amount = 25 + }, +/obj/item/stack/sheet/iron{ + amount = 30 + }, +/obj/item/stack/cable_coil, +/turf/open/floor/iron, +/area/station/commons/storage/primary) "aoz" = ( /obj/effect/turf_decal/tile/red{ dir = 1 @@ -1038,27 +1021,28 @@ dir = 1 }, /area/station/medical/morgue) -"aoF" = ( -/obj/structure/cable, -/obj/machinery/light/directional/west, -/turf/open/floor/iron, -/area/station/commons/storage/primary) -"aoK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/athletic_mixed, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "aoQ" = ( +/obj/effect/turf_decal/arrows{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/turf/open/floor/iron/dark, +/turf/open/floor/iron/dark/smooth_large, /area/station/command/gateway) +"aoY" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 8 + }, +/obj/structure/closet/radiation, +/obj/structure/sign/warning/no_smoking/directional/west, +/turf/open/floor/iron, +/area/station/engineering/lobby) "apa" = ( /obj/structure/rack, /obj/machinery/door/window/left/directional/east{ - name = "Jetpack Storage" + name = "Magboot Storage"; + req_access = list("eva") }, /obj/item/clothing/shoes/magboots{ pixel_x = -4; @@ -1069,8 +1053,8 @@ pixel_x = 4; pixel_y = -3 }, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "apf" = ( /obj/machinery/status_display/evac/directional/north, /obj/effect/turf_decal/siding/thinplating_new/dark{ @@ -1093,12 +1077,30 @@ }, /turf/open/floor/iron/checker, /area/station/service/bar) -"apE" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +"apv" = ( +/obj/effect/turf_decal/siding{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/white/corner, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) +"apy" = ( +/obj/item/ammo_casing/spent{ + pixel_x = -8; + pixel_y = -4 + }, +/obj/item/ammo_casing/spent{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "apK" = ( /turf/closed/wall/r_wall, /area/station/security/range) @@ -1152,18 +1154,19 @@ }, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) -"aqj" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) +"aqi" = ( +/obj/effect/turf_decal/trimline/brown/arrow_cw{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/brown/arrow_ccw, +/turf/open/floor/iron, +/area/station/hallway/primary/starboard) "aqk" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "aqm" = ( /turf/closed/mineral/random/stationside/asteroid/porus, /area/space/nearstation) @@ -1172,33 +1175,33 @@ /obj/structure/cable, /obj/structure/disposalpipe/segment, /obj/machinery/holopad, -/turf/open/floor/carpet, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) -"aqy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +"aqp" = ( +/obj/structure/railing/corner{ + dir = 8 }, -/obj/structure/cable, -/obj/item/radio/intercom/directional/north, -/turf/open/floor/plating, -/area/station/engineering/main) +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 8 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "aqD" = ( /turf/open/floor/iron/white/smooth_large, /area/station/security/prison) -"aqG" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/obj/item/radio/intercom/directional/east, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) -"aqQ" = ( -/obj/item/kirbyplants/photosynthetic, -/obj/effect/spawner/random/trash/mess, -/turf/open/floor/eighties, -/area/station/maintenance/starboard/fore) +"aqE" = ( +/obj/structure/cable, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) +"aqP" = ( +/obj/structure/lattice/catwalk, +/obj/effect/spawner/random/engineering/atmospherics_portable, +/turf/open/water/no_planet_atmos, +/area/station/maintenance/port/fore) "aqS" = ( /obj/item/cigbutt{ pixel_x = -15 @@ -1214,14 +1217,13 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"arl" = ( -/obj/effect/spawner/random/food_or_drink/refreshing_beverage{ - pixel_x = 5; - pixel_y = 9 +"arc" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 4 }, -/obj/structure/table, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/obj/machinery/status_display/evac/directional/north, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "ars" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -1274,21 +1276,6 @@ /obj/machinery/light_switch/directional/east, /turf/open/floor/wood, /area/station/service/chapel) -"arL" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/bot, -/turf/open/floor/iron, -/area/station/engineering/storage_shared) -"arN" = ( -/obj/structure/table, -/obj/item/book/manual/wiki/security_space_law{ - pixel_y = 6 - }, -/obj/structure/cable, -/obj/machinery/camera/autoname/directional/north, -/turf/open/floor/wood, -/area/station/security/courtroom) "arT" = ( /turf/closed/wall/r_wall, /area/station/science/xenobiology) @@ -1304,6 +1291,14 @@ /obj/effect/landmark/start/cook, /turf/open/floor/glass, /area/station/service/kitchen) +"asl" = ( +/obj/structure/flora/bush/fullgrass/style_random, +/obj/structure/flora/bush/ferny/style_random, +/obj/structure/flora/bush/flowers_br/style_random, +/obj/effect/landmark/start/hangover, +/obj/structure/sign/poster/official/random/directional/south, +/turf/open/floor/grass, +/area/station/commons/dorms) "asx" = ( /obj/structure/lattice/catwalk, /obj/structure/railing/corner{ @@ -1319,22 +1314,20 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/command/bridge) -"asA" = ( -/obj/effect/turf_decal/trimline/green/filled/line{ +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ dir = 1 }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 1 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "asI" = ( /obj/structure/railing/corner{ dir = 4 }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "asK" = ( /obj/effect/turf_decal/trimline/red/filled/line, /obj/machinery/airalarm/directional/south, @@ -1343,6 +1336,28 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/primary/port) +"asM" = ( +/obj/machinery/camera/directional/north{ + c_tag = "Atmospherics - Mix Cell"; + name = "atmospherics camera" + }, +/obj/machinery/light/small/directional/north, +/turf/open/floor/engine/vacuum, +/area/station/engineering/atmos/upper) +"asU" = ( +/obj/machinery/atmospherics/pipe/layer_manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/station/maintenance/aft/upper) +"asV" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "!"; + pixel_x = 9; + pixel_y = -1 + }, +/turf/closed/wall, +/area/station/maintenance/starboard/aft/upper) "asY" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -1354,6 +1369,13 @@ }, /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) +"asZ" = ( +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "ata" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -1378,13 +1400,6 @@ }, /turf/open/floor/iron/dark, /area/station/security/brig) -"atj" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "atm" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on{ dir = 1 @@ -1419,6 +1434,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood/large, /area/station/medical/break_room) +"atJ" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "atV" = ( /obj/structure/closet/firecloset, /obj/effect/turf_decal/tile/purple, @@ -1442,19 +1463,11 @@ /obj/machinery/firealarm/directional/south, /turf/open/floor/iron, /area/station/hallway/primary/aft) -"aud" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/lattice/catwalk, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) -"aug" = ( -/obj/machinery/vending/games, +"auf" = ( +/obj/effect/landmark/start/assistant, +/obj/machinery/holopad, /turf/open/floor/iron, -/area/station/commons/fitness/recreation) +/area/station/commons/storage/primary) "aum" = ( /obj/structure/sign/poster/official/random/directional/south, /obj/effect/turf_decal/siding/wood, @@ -1476,21 +1489,19 @@ /obj/effect/turf_decal/tile/purple/full, /turf/open/floor/iron/dark/smooth_large, /area/station/security/brig) +"aur" = ( +/obj/structure/chair{ + dir = 4; + pixel_y = -2 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "aut" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple/layer4{ dir = 6 }, /turf/open/space/openspace, /area/space/nearstation) -"auA" = ( -/obj/machinery/disposal/bin, -/obj/machinery/light/directional/east, -/obj/machinery/newscaster/directional/east, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, -/turf/open/floor/wood, -/area/station/commons/dorms) "auF" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 1 @@ -1500,15 +1511,6 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/brig) -"auP" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/lobby) "auS" = ( /obj/item/toy/plush/moth{ name = "Goofy Greg"; @@ -1538,6 +1540,30 @@ /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/cargo/storage) +"avj" = ( +/obj/structure/table, +/obj/item/gavelhammer{ + pixel_y = 3 + }, +/obj/machinery/light/small/directional/north, +/turf/open/floor/wood, +/area/station/security/courtroom) +"avw" = ( +/obj/machinery/vatgrower, +/obj/effect/turf_decal/trimline/green/filled/line, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) +"avI" = ( +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/starboard/upper) +"avJ" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/effect/landmark/start/hangover, +/obj/machinery/light_switch/directional/north, +/turf/open/floor/iron/dark, +/area/station/service/chapel) "avZ" = ( /obj/structure/railing{ dir = 4 @@ -1551,11 +1577,12 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron, /area/station/science/research) -"awv" = ( -/obj/structure/cable, -/obj/item/assembly/mousetrap/armed, -/turf/open/floor/plating, -/area/station/maintenance/port) +"awk" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/engineering/atmospherics_portable, +/obj/effect/turf_decal/bot, +/turf/open/floor/iron, +/area/station/maintenance/starboard/fore) "aww" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -1573,9 +1600,16 @@ /turf/open/floor/iron, /area/station/hallway/primary/aft) "awD" = ( -/obj/machinery/light/small/directional/west, -/turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/obj/structure/sign/directions/command/directional/north{ + dir = 2; + pixel_y = 0 + }, +/obj/structure/sign/directions/security/directional/north{ + dir = 2; + pixel_y = 7 + }, +/turf/closed/wall, +/area/station/maintenance/port/greater) "awG" = ( /turf/open/misc/asteroid/airless, /area/station/science/ordnance/bomb) @@ -1585,22 +1619,33 @@ }, /obj/effect/turf_decal/siding/dark, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat_interior) -"awK" = ( -/obj/structure/girder, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/ai/satellite/interior) "awP" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden, /turf/open/floor/iron/dark, /area/station/science/ordnance) -"axn" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/iron/dark/textured_large, -/area/station/medical/storage) +"awR" = ( +/obj/machinery/atmospherics/pipe/smart/simple/pink/visible{ + dir = 5 + }, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) +"awV" = ( +/obj/effect/spawner/random/trash/mess, +/turf/open/floor/plating, +/area/station/maintenance/disposal) +"awX" = ( +/obj/machinery/space_heater, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"axj" = ( +/obj/structure/chair/plastic{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/engine/hull/air, +/area/station/commons/fitness/recreation) "axr" = ( /obj/structure/railing{ dir = 4 @@ -1616,12 +1661,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/textured, /area/station/science/xenobiology) -"axF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/turf_decal/bot, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "axN" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -1646,21 +1685,14 @@ /obj/effect/turf_decal/bot/right, /turf/open/floor/engine, /area/station/engineering/atmos/hfr_room) -"ayn" = ( -/obj/effect/turf_decal/siding/brown{ - dir = 9 - }, -/obj/effect/turf_decal/siding/brown/corner, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) -"ayr" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/skub{ - pixel_x = 7; - pixel_y = 18 +"ayi" = ( +/obj/machinery/door/airlock{ + name = "Unisex Restrooms" }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/obj/machinery/door/firedoor, +/obj/structure/fluff/shower_drain, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet/restrooms) "ayA" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -1675,16 +1707,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) -"ayD" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/lattice/catwalk, -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/turf/open/water, -/area/station/maintenance/port/fore) "ayF" = ( /obj/structure/closet/crate/trashcart/filled, /obj/item/poster/random_contraband{ @@ -1692,6 +1714,13 @@ }, /turf/open/floor/plating, /area/station/maintenance/port) +"ayI" = ( +/obj/structure/table/reinforced, +/obj/structure/disposalpipe/segment{ + dir = 8 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "ayR" = ( /obj/structure/table, /obj/item/storage/crayons{ @@ -1701,6 +1730,18 @@ /obj/machinery/airalarm/directional/west, /turf/open/floor/wood, /area/station/service/library/printer) +"ayU" = ( +/obj/effect/turf_decal/siding{ + dir = 8 + }, +/obj/structure/hoop{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "ayZ" = ( /obj/docking_port/stationary/escape_pod{ dir = 2 @@ -1725,12 +1766,16 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/entry) +"azj" = ( +/obj/effect/spawner/random/engineering/tracking_beacon, +/turf/open/floor/iron, +/area/station/commons/locker) "azn" = ( /obj/machinery/door/airlock/maintenance{ name = "Medbay Maintenance" }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/medical/abandoned) "azo" = ( @@ -1759,10 +1804,22 @@ /turf/open/space/basic, /area/station/solars/port/aft) "azx" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/carpet, -/area/station/command/bridge) +/obj/effect/turf_decal/tile/dark_blue{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/line, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) +"azG" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/sign/flag/mars/directional/south, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "azI" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -1799,18 +1856,21 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron, /area/station/science/research) -"aAk" = ( -/obj/structure/table/wood, -/obj/item/paper/crumpled{ - pixel_x = 2; - pixel_y = 7 +"aAg" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment{ + dir = 8 }, -/obj/item/pen{ - pixel_x = -4; - pixel_y = 1 +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/fore) +"aAn" = ( +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 8 }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) +/turf/open/floor/iron, +/area/station/engineering/lobby) "aAr" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/structure/closet_maintenance, @@ -1828,6 +1888,16 @@ }, /turf/open/floor/iron, /area/station/science/robotics) +"aAM" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/item/tank/internals/oxygen, +/obj/item/clothing/mask/breath, +/obj/machinery/light/small/directional/east, +/obj/structure/table/reinforced, +/obj/machinery/airalarm/directional/east, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/aft) "aBc" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -1857,10 +1927,27 @@ /obj/structure/cable, /turf/open/openspace, /area/station/hallway/primary/port) -"aBv" = ( -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/engine, -/area/station/engineering/break_room) +"aBu" = ( +/obj/structure/table/reinforced/rglass, +/obj/item/storage/toolbox/mechanical{ + pixel_y = 11 + }, +/obj/machinery/cell_charger{ + pixel_x = -2 + }, +/obj/item/stock_parts/power_store/cell/high{ + charge = 100; + maxcharge = 15000; + pixel_x = -5 + }, +/obj/item/multitool{ + pixel_x = 6; + pixel_y = 2 + }, +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/structure/window/reinforced/spawner/directional/south, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "aBy" = ( /obj/item/storage/medkit/regular{ pixel_x = 3; @@ -1884,6 +1971,13 @@ /obj/machinery/camera/autoname/directional/north, /turf/open/floor/iron/dark/textured_large, /area/station/medical/storage) +"aBz" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/mapping_helpers/airlock/abandoned, +/obj/structure/disposalpipe/segment, +/turf/open/floor/wood, +/area/station/maintenance/aft) "aBF" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /obj/machinery/firealarm/directional/south, @@ -1916,10 +2010,6 @@ /obj/effect/turf_decal/siding/wood, /turf/open/floor/iron/dark, /area/station/hallway/secondary/service) -"aBV" = ( -/obj/effect/spawner/random/structure/crate, -/turf/open/floor/wood, -/area/station/commons/dorms) "aBW" = ( /obj/machinery/atmospherics/pipe/layer_manifold/supply/hidden{ dir = 4 @@ -1959,11 +2049,11 @@ }, /obj/machinery/status_display/evac/directional/south, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "aCD" = ( /obj/machinery/holopad/secure, /turf/open/floor/iron/smooth, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "aCE" = ( /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/trimline/blue/filled/line, @@ -1982,6 +2072,32 @@ }, /turf/open/floor/iron/dark, /area/station/service/chapel) +"aDb" = ( +/obj/machinery/button/elevator{ + id = "catwalk_engi"; + pixel_y = -24 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/caution/stand_clear{ + dir = 8 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) +"aDd" = ( +/turf/open/floor/iron, +/area/station/maintenance/starboard/fore) +"aDk" = ( +/obj/structure/closet/secure_closet/personal/cabinet, +/obj/effect/decal/cleanable/dirt, +/obj/item/radio/intercom/directional/north, +/obj/structure/sign/poster/official/no_erp/directional/east, +/turf/open/floor/plating, +/area/station/commons/dorms) "aDm" = ( /obj/effect/turf_decal/tile/red/half/contrasted, /obj/machinery/holopad, @@ -1989,12 +2105,14 @@ dir = 1 }, /area/station/medical/morgue) -"aDp" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 10 +"aDw" = ( +/obj/effect/turf_decal/trimline/yellow/warning{ + dir = 8 }, -/obj/structure/lattice/catwalk, -/turf/open/space/basic, +/obj/effect/turf_decal/trimline/yellow/mid_joiner{ + dir = 8 + }, +/turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "aDF" = ( /obj/structure/reagent_dispensers/watertank, @@ -2035,6 +2153,10 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) +"aEg" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "aEm" = ( /obj/effect/turf_decal/siding/purple{ dir = 1 @@ -2044,14 +2166,15 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/science/explab) -"aEr" = ( -/obj/machinery/atmospherics/components/binary/pump/off{ - dir = 8; - name = "O2 To Port" +"aEA" = ( +/obj/structure/window/reinforced/spawner/directional/east, +/obj/machinery/atmospherics/components/unary/thermomachine/heater/on{ + dir = 1; + initialize_directions = 1 }, -/obj/effect/turf_decal/tile/blue/fourcorners, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) +/obj/effect/turf_decal/bot_red, +/turf/open/floor/iron/freezer, +/area/station/engineering/atmos/pumproom) "aEG" = ( /obj/effect/turf_decal/siding/wood, /obj/structure/closet/emcloset, @@ -2072,21 +2195,28 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "aEZ" = ( /turf/open/floor/iron, /area/station/science/breakroom) -"aFg" = ( -/turf/open/openspace, -/area/station/maintenance/starboard/aft) +"aFe" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "aFi" = ( /obj/structure/ladder, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"aFm" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"aFn" = ( +/obj/structure/table/wood/fancy/cyan, +/obj/item/book/manual/wiki/atmospherics{ + pixel_y = 8 + }, +/obj/machinery/light/directional/east, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "aFt" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -2112,28 +2242,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/smooth_large, /area/station/security/execution/transfer) -"aFN" = ( -/obj/effect/turf_decal/siding/brown, -/obj/structure/closet/boxinggloves, -/obj/effect/landmark/start/hangover, -/obj/machinery/light/directional/south, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) -"aFP" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/obj/machinery/light/directional/east, -/obj/effect/turf_decal/trimline/dark/arrow_ccw{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/dark/arrow_ccw{ - dir = 4 - }, -/turf/open/floor/iron/edge{ - dir = 4 - }, -/area/station/hallway/primary/fore) "aFV" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden, @@ -2148,25 +2256,41 @@ dir = 4 }, /turf/open/openspace, -/area/station/command/bridge) +/area/station/command/meeting_room/council) "aGb" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/railing, /obj/structure/fake_stairs/directional/east, /turf/open/floor/iron, /area/station/cargo/storage) +"aGe" = ( +/obj/structure/table, +/obj/machinery/cell_charger, +/obj/effect/decal/cleanable/dirt, +/obj/item/reagent_containers/cup/soda_cans/monkey_energy{ + pixel_x = 8; + pixel_y = 16 + }, +/obj/item/stock_parts/power_store/cell/high{ + charge = 100; + maxcharge = 15000; + pixel_y = 6 + }, +/obj/item/cigbutt{ + pixel_x = -11; + pixel_y = 15 + }, +/turf/open/floor/iron, +/area/station/maintenance/starboard/aft/upper) "aGf" = ( /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/hallway/secondary/entry) -"aGp" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/structure/cable/layer1, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +"aGx" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/aft) "aGG" = ( /obj/effect/turf_decal/siding/thinplating{ dir = 4 @@ -2178,41 +2302,22 @@ "aGR" = ( /turf/open/floor/iron/dark/textured_large, /area/station/security/prison) -"aGX" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 1 - }, -/obj/item/radio/intercom/directional/north, -/obj/machinery/rnd/production/protolathe/department/engineering, -/turf/open/floor/iron/dark, -/area/station/engineering/storage) -"aHc" = ( -/obj/machinery/door/poddoor/shutters/preopen{ - id = "SM_Outside_shutters"; - name = 4 +"aHb" = ( +/obj/structure/sign/poster/contraband/grey_tide/directional/north, +/obj/structure/rack, +/obj/item/clothing/head/cone{ + pixel_x = -4; + pixel_y = -13 }, -/obj/effect/spawner/structure/window/reinforced/plasma, -/turf/open/floor/plating, -/area/station/engineering/supermatter/room) -"aHe" = ( -/obj/machinery/button/door/directional/west{ - id = "Cabin5"; - name = "Cabin Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 24; - specialfunctions = 4 +/obj/effect/turf_decal/tile/yellow{ + dir = 1 }, -/obj/item/storage/box/lights/mixed, -/obj/item/kirbyplants/random/dead{ - name = "dead plant" +/obj/item/storage/toolbox/mechanical, +/obj/item/storage/toolbox/electrical{ + pixel_y = -2 }, -/turf/open/floor/wood, -/area/station/commons/dorms) -"aHo" = ( -/obj/structure/safe, -/obj/item/storage/fancy/pickles_jar, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/iron, +/area/station/commons/storage/primary) "aHp" = ( /obj/machinery/light/directional/west, /obj/effect/turf_decal/trimline/dark/arrow_cw{ @@ -2226,32 +2331,22 @@ dir = 8 }, /area/station/hallway/primary/fore) -"aHx" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +"aHB" = ( +/obj/structure/table/wood, +/obj/item/reagent_containers/cup/soda_cans/cola{ + pixel_x = -4; + pixel_y = 9 + }, +/obj/item/cigbutt, +/obj/effect/landmark/event_spawn, +/turf/open/floor/wood/large, +/area/station/commons/dorms) +"aHH" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/structure/cable, -/obj/machinery/camera/autoname/directional/west, -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/hallway/primary/starboard) -"aHD" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Virology Maintenance" - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ - dir = 2 - }, -/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/port) +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "aHO" = ( /obj/effect/spawner/random/structure/crate, /turf/open/floor/plating, @@ -2283,17 +2378,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/carpet, /area/station/security/courtroom) -"aIt" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/machinery/camera/autoname/directional/west, -/obj/structure/railing{ - dir = 4 +"aIh" = ( +/obj/machinery/camera/preset/ordnance{ + c_tag = "Cannon's exit" }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/storage_shared) +/turf/open/floor/plating/airless, +/area/station/maintenance/starboard/aft) "aIA" = ( /obj/structure/railing{ dir = 8 @@ -2319,6 +2409,13 @@ /obj/machinery/light/directional/west, /turf/open/floor/iron/dark, /area/station/security/brig) +"aIJ" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "aIL" = ( /obj/structure/chair/stool/bar/directional/east, /obj/effect/turf_decal/siding/thinplating_new/dark{ @@ -2347,10 +2444,37 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/security/detectives_office/private_investigators_office) +"aIR" = ( +/obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/shutters/window{ + dir = 8; + name = "Cargo Bay Shutters"; + id = "qm_cargobay" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/plating, +/area/station/cargo/storage) "aIU" = ( /obj/machinery/holopad/secure, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) +"aIY" = ( +/obj/machinery/power/apc/auto_name/directional/east, +/obj/machinery/modular_computer/preset/engineering{ + dir = 8 + }, +/obj/structure/cable, +/obj/machinery/light/small/directional/north, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/plating, +/area/station/engineering/atmos/office) +"aIZ" = ( +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/engine, +/area/station/engineering/atmos) "aJg" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/all/service/theatre, @@ -2371,12 +2495,28 @@ /obj/structure/cable, /turf/open/floor/iron/dark/textured_large, /area/station/security/prison) +"aJn" = ( +/obj/structure/sign/poster/official/fruit_bowl, +/turf/closed/wall, +/area/station/maintenance/starboard/aft/upper) +"aJs" = ( +/obj/effect/turf_decal/trimline/dark_green, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "aJu" = ( /obj/structure/sign/poster/official/random/directional/south, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"aJA" = ( +/obj/effect/spawner/random/trash/mess, +/obj/effect/landmark/start/hangover, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "aJD" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/security/glass{ @@ -2419,8 +2559,16 @@ /area/station/maintenance/port) "aKc" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/turf/open/floor/iron/large, +/turf/open/floor/iron/corner{ + dir = 1 + }, /area/station/hallway/primary/central) +"aKj" = ( +/obj/machinery/atmospherics/pipe/smart/simple/dark/visible{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "aKk" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, @@ -2430,12 +2578,15 @@ }, /turf/open/floor/iron/airless, /area/station/maintenance/starboard/aft) -"aKq" = ( -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 4 +"aKo" = ( +/obj/machinery/door/airlock/maintenance, +/obj/structure/barricade/wooden/crude, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 1 }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "aKz" = ( /obj/structure/railing{ dir = 8 @@ -2449,19 +2600,12 @@ pixel_y = -3 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aKA" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/extinguisher_cabinet/directional/west, /turf/open/floor/iron/dark, /area/station/service/chapel) -"aKB" = ( -/obj/item/cigbutt{ - pixel_x = -12; - pixel_y = 9 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "aKE" = ( /obj/machinery/door/airlock/virology, /obj/effect/turf_decal/tile/dark_green/fourcorners, @@ -2479,6 +2623,14 @@ /obj/machinery/status_display/evac/directional/west, /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) +"aKJ" = ( +/obj/structure/chair/sofa/left/brown{ + dir = 4 + }, +/obj/item/cigbutt, +/obj/structure/sign/calendar/directional/north, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "aKR" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 10 @@ -2510,9 +2662,6 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"aLd" = ( -/turf/open/floor/glass/airless, -/area/station/maintenance/starboard/lesser) "aLl" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 8 @@ -2527,6 +2676,17 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) +"aLq" = ( +/obj/machinery/light/directional/east, +/obj/structure/disposalpipe/sorting/mail{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/mapping_helpers/mail_sorting/supply/disposals, +/turf/open/floor/iron/dark/textured, +/area/station/cargo/sorting) "aLu" = ( /obj/item/paint/white{ pixel_x = 11; @@ -2534,6 +2694,25 @@ }, /turf/open/floor/glass/reinforced, /area/station/service/library) +"aLA" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light/small/directional/west, +/turf/open/floor/wood/large, +/area/station/commons/dorms) +"aLB" = ( +/obj/structure/table/reinforced, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light/directional/north, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) +"aLG" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/railing, +/obj/machinery/duct, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) "aLJ" = ( /turf/open/floor/carpet, /area/station/security/courtroom) @@ -2545,28 +2724,14 @@ /turf/open/space/openspace, /area/space/nearstation) "aLT" = ( -/obj/machinery/computer/records/medical{ - dir = 1 - }, /obj/machinery/firealarm/directional/south, -/obj/effect/turf_decal/tile/blue/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) -"aLW" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 - }, -/turf/open/floor/wood, -/area/station/commons/dorms) -"aLX" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 1 +/obj/effect/turf_decal/tile/dark_blue{ + dir = 4 }, -/obj/machinery/status_display/evac/directional/north, -/turf/open/floor/iron, -/area/station/engineering/lobby) +/obj/effect/turf_decal/trimline/dark_blue/filled/line, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "aLY" = ( /obj/item/stack/cable_coil{ pixel_y = -12 @@ -2574,13 +2739,6 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/dark, /area/station/science/xenobiology) -"aMa" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper/stack{ - dir = 1 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "aMd" = ( /obj/machinery/door/firedoor/border_only{ dir = 8 @@ -2604,30 +2762,20 @@ }, /turf/open/floor/iron, /area/station/maintenance/starboard/aft) -"aMq" = ( +"aMl" = ( /obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) -"aMs" = ( -/obj/effect/mapping_helpers/burnt_floor, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) +/obj/structure/fluff/paper/stack{ + dir = 1 + }, +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "aMw" = ( /obj/effect/turf_decal/trimline/yellow/filled/corner, /turf/open/floor/iron/dark, /area/station/engineering/storage) -"aMz" = ( -/obj/item/restraints/legcuffs/beartrap/prearmed, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"aMD" = ( -/obj/item/flashlight/lantern{ - pixel_x = 6; - pixel_y = 13 - }, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "aMK" = ( /obj/effect/turf_decal/siding/dark_blue/inner_corner{ dir = 8 @@ -2650,27 +2798,15 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/carpet, +/obj/structure/cable, +/obj/effect/landmark/event_spawn, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) "aNc" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/science/zoo) -"aNf" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 1 - }, -/turf/closed/wall/r_wall, -/area/station/engineering/atmos/upper) -"aNg" = ( -/obj/structure/chair/sofa/corner/brown, -/obj/item/instrument/eguitar, -/obj/structure/sign/poster/contraband/space_cube/directional/north, -/obj/machinery/light/small/broken/directional/east, -/turf/open/floor/eighties, -/area/station/maintenance/starboard/fore) "aNB" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 10 @@ -2691,6 +2827,19 @@ /obj/structure/extinguisher_cabinet/directional/south, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) +"aNE" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/effect/turf_decal/trimline/purple/filled/line{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/showcase/horrific_experiment, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/upper) +"aNI" = ( +/obj/effect/landmark/blobstart, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "aNL" = ( /obj/effect/turf_decal/tile/dark_blue{ dir = 1 @@ -2699,10 +2848,13 @@ /obj/machinery/status_display/evac/directional/west, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"aNT" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"aNP" = ( +/obj/structure/cable, +/obj/structure/table, +/obj/item/paper_bin, +/obj/item/folder/yellow, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos/upper) "aNU" = ( /obj/structure/chair/office{ dir = 4 @@ -2728,11 +2880,27 @@ }, /turf/open/floor/engine, /area/station/engineering/supermatter/room) +"aOo" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/duct, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/aft/upper) "aOs" = ( /obj/structure/lattice/catwalk, /obj/structure/marker_beacon/burgundy, /turf/open/space/openspace, /area/space/nearstation) +"aOE" = ( +/obj/effect/landmark/start/hangover, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/dark, +/area/station/science/lobby) +"aOI" = ( +/obj/effect/spawner/random/clothing/wardrobe_closet_colored, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "aOK" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, @@ -2763,28 +2931,16 @@ /turf/open/floor/plating, /area/station/maintenance/port/greater) "aPg" = ( -/obj/structure/window/reinforced/spawner/directional/south, -/obj/structure/table, -/obj/item/megaphone/cargo{ - pixel_y = 3 - }, -/turf/open/floor/iron/dark, -/area/station/command/heads_quarters/qm) +/obj/effect/turf_decal/trimline/brown/filled/line, +/obj/structure/railing, +/turf/open/floor/iron, +/area/station/cargo/storage) "aPq" = ( /obj/structure/table/wood, /obj/item/gavelblock, /obj/item/gavelhammer, /turf/open/floor/wood, /area/station/security/courtroom) -"aPr" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/machinery/light/directional/north, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "aPv" = ( /obj/structure/railing/corner{ dir = 8 @@ -2818,7 +2974,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 }, -/obj/machinery/newscaster/directional/south, /obj/machinery/light/directional/south, /turf/open/floor/iron/freezer, /area/station/command/heads_quarters/captain/private) @@ -2826,30 +2981,19 @@ /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) -"aQa" = ( -/obj/structure/lattice/catwalk, -/obj/structure/ladder, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) "aQc" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood, /area/station/service/library/printer) -"aQj" = ( -/obj/effect/turf_decal/siding/brown{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/effect/landmark/start/hangover, -/obj/structure/disposalpipe/segment{ +"aQq" = ( +/obj/machinery/light/floor, +/obj/effect/turf_decal/stripes/white/line{ dir = 4 }, /turf/open/floor/iron, -/area/station/commons/dorms) +/area/station/commons/fitness/recreation) "aQu" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -2870,20 +3014,11 @@ /obj/structure/table, /turf/open/floor/iron/dark/textured, /area/station/science/xenobiology) -"aQM" = ( -/obj/structure/extinguisher_cabinet/directional/west, -/obj/effect/turf_decal/siding/brown{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/commons/dorms) -"aQS" = ( -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 4 - }, -/obj/machinery/light/directional/south, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) +"aQO" = ( +/obj/effect/turf_decal/tile/yellow/fourcorners, +/obj/machinery/light/small/directional/south, +/turf/open/floor/iron/dark, +/area/station/engineering/lobby) "aRa" = ( /obj/effect/turf_decal/trimline/red/corner{ dir = 1 @@ -2897,31 +3032,10 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/port) -"aRb" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/general/hidden, -/obj/effect/turf_decal/siding/blue{ - dir = 8 - }, -/obj/machinery/camera/autoname/directional/north, -/turf/open/floor/catwalk_floor, -/area/station/science/server) "aRc" = ( /obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/plasma_output, /turf/open/floor/engine/plasma, /area/station/engineering/atmos/upper) -"aRg" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/abandoned, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"aRs" = ( -/obj/structure/rack, -/obj/effect/spawner/random/techstorage/custom_shuttle, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) "aRy" = ( /obj/structure/railing/corner/end/flip{ dir = 4 @@ -2931,24 +3045,32 @@ dir = 8 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"aSd" = ( -/obj/structure/window/reinforced/tinted/spawner/directional/east, -/obj/machinery/shower/directional/east, -/obj/item/razor, -/turf/open/floor/iron/freezer, -/area/station/commons/dorms) +/area/station/ai/satellite/interior) +"aSc" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/layer2{ + dir = 8 + }, +/turf/open/floor/engine/airless, +/area/station/engineering/atmos/upper) "aSg" = ( /turf/closed/wall, /area/station/command/heads_quarters/cmo) +"aSk" = ( +/obj/machinery/door/airlock/maintenance, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "aSq" = ( /obj/structure/cable, /obj/machinery/airalarm/directional/west, /turf/open/floor/iron/dark/textured_large, /area/station/security/prison) -"aSB" = ( -/turf/open/floor/engine/hull/air, -/area/station/engineering/break_room) "aSD" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -2962,7 +3084,9 @@ /obj/effect/turf_decal/trimline/red/filled/mid_joiner{ dir = 8 }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 8 + }, /area/station/hallway/primary/central) "aSF" = ( /obj/structure/lattice/catwalk, @@ -2972,6 +3096,37 @@ }, /turf/open/openspace, /area/station/command/gateway) +"aSH" = ( +/obj/machinery/light/small/directional/east, +/turf/open/floor/wood, +/area/station/commons/toilet/restrooms) +"aSL" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/table, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard) +"aSP" = ( +/obj/structure/rack, +/obj/item/clothing/ears/earmuffs, +/obj/item/clothing/under/color/red, +/obj/item/clothing/neck/tie/red{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/head/soft/red, +/obj/machinery/airalarm/directional/south, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) +"aSU" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment, +/turf/open/floor/catwalk_floor, +/area/station/cargo/storage) "aSW" = ( /turf/closed/wall, /area/station/service/hydroponics/garden/abandoned) @@ -2980,7 +3135,7 @@ dir = 8 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "aSY" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, @@ -3021,11 +3176,14 @@ /obj/effect/mapping_helpers/airlock/access/any/science/xenobio, /turf/open/floor/iron/dark, /area/station/science/lobby) -"aTH" = ( -/obj/effect/spawner/random/structure/crate, -/obj/structure/window/spawner/directional/west, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +"aTB" = ( +/obj/structure/lattice/catwalk, +/obj/item/toy/plush/lizard_plushie/green{ + name = "Hides-In-Rafters" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/yellow/visible, +/turf/open/openspace, +/area/station/maintenance/aft/upper) "aTS" = ( /obj/structure/table, /obj/item/wrench{ @@ -3038,13 +3196,6 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"aTV" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ - dir = 6 - }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "aTW" = ( /obj/effect/turf_decal/trimline/red/filled/corner, /obj/effect/turf_decal/trimline/red/filled/warning{ @@ -3089,37 +3240,15 @@ }, /turf/open/floor/glass, /area/station/security/brig) -"aUD" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/holopad, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/lobby) -"aUF" = ( -/obj/effect/spawner/random/maintenance, -/obj/structure/rack, -/obj/structure/lattice/catwalk, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) "aUO" = ( /obj/structure/railing{ dir = 4 }, -/obj/effect/turf_decal/siding/wood{ +/obj/effect/turf_decal/stripes{ dir = 4 }, -/obj/structure/table, -/obj/item/storage/toolbox/mechanical{ - pixel_x = -3; - pixel_y = 8 - }, -/obj/item/storage/toolbox/mechanical{ - pixel_x = -3; - pixel_y = 2 - }, -/turf/open/floor/carpet, -/area/station/ai_monitored/command/storage/eva) +/turf/open/floor/iron/textured, +/area/station/command/eva) "aUU" = ( /obj/structure/closet/crate/freezer, /obj/item/food/grown/tomato, @@ -3183,21 +3312,17 @@ /area/station/maintenance/starboard/aft) "aVm" = ( /obj/structure/disposalpipe/segment{ - dir = 10 + dir = 9 }, /turf/open/floor/wood, /area/station/maintenance/starboard/central) "aVy" = ( /obj/structure/sign/directions/security/directional/north{ dir = 2; - pixel_y = 38 + pixel_y = 0 }, -/turf/open/openspace, +/turf/closed/wall/r_wall, /area/station/maintenance/port) -"aVD" = ( -/obj/effect/spawner/random/engineering/tracking_beacon, -/turf/open/floor/iron, -/area/station/engineering/lobby) "aVG" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 @@ -3215,19 +3340,27 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) "aVN" = ( -/turf/closed/wall, -/area/station/command/teleporter) -"aVP" = ( -/obj/machinery/duct, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/turf/open/floor/iron/corner{ + dir = 4 + }, +/area/station/hallway/primary/central) +"aVQ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/restrooms) +/obj/structure/disposalpipe/segment, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "aVT" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/engine/hull/air, /area/station/maintenance/port/fore) +"aVZ" = ( +/obj/structure/cable, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/freezer, +/area/station/engineering/atmos/pumproom) "aWa" = ( /obj/structure/window/reinforced/tinted/frosted/spawner/directional/west, /obj/structure/chair/sofa/left/brown{ @@ -3270,6 +3403,27 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"aWA" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "body"; + name = "body" + }, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"aWE" = ( +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/green/filled/mid_joiner{ + dir = 1 + }, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/turf/open/floor/iron/textured_large, +/area/station/medical/virology) "aWH" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -3279,22 +3433,32 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"aWN" = ( -/obj/effect/turf_decal/trimline/brown/filled/corner{ - dir = 4 +"aWM" = ( +/obj/effect/turf_decal/siding/dark/corner{ + dir = 8 }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"aWN" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/railing/corner{ dir = 8 }, /obj/structure/cable, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, /turf/open/floor/iron, /area/station/cargo/storage) "aWP" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) +"aWU" = ( +/obj/structure/extinguisher_cabinet/directional/north, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "aWV" = ( /turf/closed/wall/r_wall, /area/station/command/heads_quarters/captain/private) @@ -3314,15 +3478,6 @@ /obj/effect/landmark/start/hangover, /turf/open/openspace, /area/station/hallway/secondary/exit/departure_lounge) -"aXn" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/effect/turf_decal/trimline/purple/filled/line{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/showcase/horrific_experiment, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) "aXN" = ( /obj/structure/rack, /obj/item/storage/box/lights/mixed, @@ -3342,6 +3497,12 @@ /obj/structure/reagent_dispensers/wall/peppertank/directional/west, /turf/open/openspace, /area/station/security/checkpoint/customs) +"aXY" = ( +/obj/structure/railing{ + dir = 10 + }, +/turf/open/floor/plating, +/area/station/maintenance/aft) "aXZ" = ( /obj/effect/turf_decal/tile/green/opposingcorners{ dir = 1 @@ -3349,24 +3510,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/command/teleporter) -"aYk" = ( -/obj/structure/easel, -/obj/item/canvas/twentythree_twentythree{ - pixel_x = 3 - }, -/obj/item/canvas/twentythree_twentythree{ - pixel_x = 3 - }, -/obj/item/canvas/twentythree_twentythree{ - pixel_x = 3 - }, -/obj/effect/turf_decal/tile/green/opposingcorners{ - dir = 1 - }, -/obj/machinery/light/directional/east, -/obj/item/radio/intercom/directional/east, -/turf/open/floor/iron/dark, -/area/station/commons/storage/art) "aYm" = ( /obj/structure/cable, /obj/effect/spawner/random/trash/cigbutt, @@ -3375,15 +3518,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/chem_storage) -"aYq" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/spawner/random/bureaucracy/paper, -/obj/structure/fluff/paper/corner, -/obj/structure/fluff/paper/stack{ - dir = 9 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "aYt" = ( /obj/machinery/light/directional/north, /obj/structure/railing{ @@ -3407,6 +3541,13 @@ /obj/machinery/airalarm/directional/south, /turf/open/floor/plating, /area/station/security/execution/education) +"aYF" = ( +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 8 + }, +/obj/structure/closet/athletic_mixed, +/turf/open/floor/iron/dark, +/area/station/commons/fitness/recreation) "aYR" = ( /obj/item/kirbyplants/random, /obj/machinery/light/directional/south, @@ -3419,36 +3560,54 @@ }, /turf/open/floor/wood, /area/station/security/courtroom) +"aYU" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos) +"aZa" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "nay"; + pixel_y = 32 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "aZd" = ( -/obj/effect/turf_decal/siding/green, /obj/effect/spawner/random/engineering/tracking_beacon, -/obj/structure/disposalpipe/segment{ - dir = 10 - }, /mob/living/basic/bot/cleanbot/autopatrol, /obj/machinery/navbeacon{ codes_txt = "patrol;next_patrol=6-Courtroom"; location = "5-Litterbox" }, -/turf/open/floor/iron/dark/smooth_large, +/obj/effect/turf_decal/tile/dark_green, +/obj/effect/turf_decal/tile/neutral/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark, /area/station/hallway/primary/central) "aZf" = ( /obj/effect/turf_decal/tile/bar/opposingcorners, /turf/open/floor/iron, /area/station/maintenance/port/aft) "aZo" = ( -/obj/effect/turf_decal/siding/wood, /obj/machinery/firealarm/directional/south, -/obj/structure/tank_holder/extinguisher, /obj/machinery/light/directional/south, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/stripes, +/obj/structure/tank_dispenser/oxygen{ + pixel_x = -1; + pixel_y = 2 + }, +/turf/open/floor/iron/textured, +/area/station/command/eva) "aZs" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) +"aZy" = ( +/obj/effect/spawner/random/trash/grime, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "aZA" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -3474,6 +3633,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/machinery/firealarm/directional/north, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) "aZG" = ( @@ -3485,14 +3645,6 @@ }, /turf/open/floor/plating, /area/station/medical/office) -"aZQ" = ( -/obj/machinery/atmospherics/pipe/smart/simple/dark/visible, -/obj/machinery/air_sensor/incinerator_tank, -/obj/machinery/atmospherics/pipe/smart/simple/pink/visible/layer2{ - dir = 6 - }, -/turf/open/floor/engine/airless, -/area/station/maintenance/disposal/incinerator) "aZT" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/wood, @@ -3504,18 +3656,10 @@ }, /turf/open/floor/engine, /area/station/engineering/supermatter) -"bag" = ( -/obj/machinery/computer/atmos_control/oxygen_tank, -/obj/effect/turf_decal/tile/blue/half/contrasted{ - dir = 1 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) -"bam" = ( -/obj/machinery/duct, -/obj/structure/cable, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/restrooms) +"bab" = ( +/obj/structure/girder, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "ban" = ( /obj/structure/closet/lasertag/red, /obj/effect/decal/cleanable/dirt, @@ -3527,6 +3671,19 @@ /obj/structure/ladder, /turf/open/openspace, /area/station/medical/medbay/central) +"bau" = ( +/obj/item/radio/intercom/directional/north, +/obj/structure/closet/radiation, +/obj/item/clothing/glasses/meson, +/obj/machinery/firealarm/directional/west, +/obj/machinery/light/small/directional/north, +/turf/open/floor/iron/dark/smooth_corner, +/area/station/engineering/main) +"bav" = ( +/obj/effect/turf_decal/bot, +/obj/structure/sign/warning/fire/directional/east, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos) "baw" = ( /obj/structure/sink/directional/east, /obj/structure/mirror/directional/west, @@ -3535,26 +3692,32 @@ }, /turf/open/floor/iron/freezer, /area/station/commons/toilet/restrooms) +"bax" = ( +/obj/effect/decal/cleanable/plasma, +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos/office) "baA" = ( /obj/machinery/light/directional/north, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 }, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "baD" = ( /obj/structure/cable/layer3, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor/iron_smooth, -/area/station/ai_monitored/turret_protected/aisat/foyer) -"baF" = ( -/obj/structure/reagent_dispensers/plumbed{ - dir = 1 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/area/station/ai/satellite/foyer) "baI" = ( /obj/structure/sign/warning/cold_temp/directional/north, /obj/effect/turf_decal/stripes/line{ @@ -3568,6 +3731,12 @@ /obj/structure/ladder, /turf/open/openspace, /area/station/maintenance/port/fore) +"baY" = ( +/obj/effect/turf_decal/stripes{ + dir = 4 + }, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "bba" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/railing/corner{ @@ -3580,23 +3749,9 @@ /obj/machinery/camera/autoname/directional/west, /turf/open/openspace, /area/station/hallway/primary/central) -"bbm" = ( -/obj/item/clothing/under/color/grey, -/obj/item/clothing/head/cone{ - pixel_x = -4; - pixel_y = -13 - }, -/obj/item/clothing/head/cone{ - pixel_x = -4; - pixel_y = -13 - }, -/obj/structure/rack, -/obj/machinery/camera/autoname/directional/west, -/obj/item/flashlight, -/obj/item/radio/intercom/directional/north, -/obj/item/wrench, -/turf/open/floor/iron, -/area/station/commons/storage/primary) +"bbn" = ( +/turf/closed/wall, +/area/station/commons/dorms/laundry) "bbx" = ( /obj/structure/lattice/catwalk, /turf/open/openspace, @@ -3610,15 +3765,6 @@ /obj/machinery/newscaster/directional/west, /turf/open/floor/iron/dark/smooth_large, /area/station/security/eva) -"bbO" = ( -/obj/item/flashlight/flashdark{ - name = "Envy Flashlight" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "bbV" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/power/apc/auto_name/directional/west, @@ -3626,6 +3772,14 @@ /obj/effect/mapping_helpers/apc/unlocked, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"bbX" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark/smooth_large, +/area/station/engineering/storage/tech) "bbY" = ( /obj/effect/spawner/random/engineering/tracking_beacon, /obj/machinery/navbeacon{ @@ -3657,12 +3811,35 @@ /turf/open/floor/wood/large, /area/station/service/kitchen) "bcg" = ( -/obj/structure/disposalpipe/trunk/multiz/down{ - dir = 1 +/obj/effect/mapping_helpers/airlock/access/all/command/general, +/obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/preopen{ + id = "bridge blast-2"; + name = "Bridge Blast Door" }, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, +/obj/machinery/door/airlock/command/glass{ + name = "Bridge Access"; + id_tag = "innerbridge" + }, +/obj/effect/turf_decal/tile/dark_blue/fourcorners, +/turf/open/floor/iron/dark, /area/station/command/bridge) +"bch" = ( +/obj/effect/spawner/random/structure/closet_maintenance, +/obj/effect/spawner/random/maintenance/three, +/obj/item/circuitboard/machine/cyborgrecharger, +/obj/structure/sign/poster/contraband/energy_swords/directional/north, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/department/crew_quarters/dorms) +"bci" = ( +/obj/machinery/door/airlock/external, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "cargocatwalkmaint" + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/mapping_helpers/airlock/access/all/engineering/external, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "bcl" = ( /obj/effect/turf_decal/siding/dark{ dir = 4 @@ -3671,7 +3848,7 @@ dir = 8 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "bcH" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/table/reinforced, @@ -3683,15 +3860,6 @@ /obj/machinery/airalarm/directional/east, /turf/open/floor/iron/dark, /area/station/command/corporate_showroom) -"bcI" = ( -/obj/machinery/meter{ - name = "Mix Meter" - }, -/obj/machinery/atmospherics/pipe/multiz/violet/visible{ - name = "Mix Multideck Adapter" - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "bcQ" = ( /obj/structure/sign/warning/vacuum/directional/north, /obj/effect/turf_decal/stripes/line{ @@ -3707,10 +3875,6 @@ dir = 8 }, /area/station/hallway/secondary/exit/departure_lounge) -"bcW" = ( -/obj/structure/cable, -/turf/open/floor/carpet, -/area/station/maintenance/starboard/lesser) "bda" = ( /obj/effect/spawner/random/structure/grille, /obj/effect/decal/cleanable/dirt, @@ -3724,11 +3888,14 @@ dir = 1 }, /area/station/science/ordnance/storage) -"bdh" = ( -/obj/effect/turf_decal/stripes/line, -/obj/structure/cable/layer1, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +"bdf" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/closet/athletic_mixed, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "bdi" = ( /obj/machinery/light/directional/south, /obj/structure/rack, @@ -3736,13 +3903,16 @@ /obj/structure/cable, /obj/machinery/light_switch/directional/south, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "bdn" = ( /obj/effect/turf_decal/stripes/end{ dir = 8 }, /turf/open/floor/engine, /area/station/medical/chemistry) +"bdq" = ( +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "bdw" = ( /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -3769,7 +3939,15 @@ }, /obj/structure/sign/poster/official/random/directional/west, /turf/open/floor/carpet/executive, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"bdM" = ( +/obj/machinery/door/poddoor/shutters/radiation/preopen{ + id = "SM_shutters"; + name = "Supermatter Radiation Shutters" + }, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/engineering/supermatter) "bdT" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -3786,28 +3964,55 @@ /obj/machinery/light_switch/directional/east, /turf/open/floor/iron/dark/smooth_large, /area/station/security/lockers) +"bdW" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/light/small/dim/directional/east, +/turf/open/floor/plating, +/area/station/maintenance/central) +"bdX" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/cable, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "bea" = ( /obj/structure/railing{ dir = 5 }, /turf/open/floor/engine/hull/air, /area/station/maintenance/port) -"beb" = ( -/obj/structure/extinguisher_cabinet/directional/south, -/turf/open/floor/iron, -/area/station/commons/dorms) "bec" = ( /obj/machinery/door/airlock/command{ name = "Emergency Communication Console" }, /obj/effect/mapping_helpers/airlock/abandoned, /obj/effect/mapping_helpers/airlock/access/any/command/general, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, /area/station/hallway/secondary/entry) "beg" = ( /turf/closed/wall/r_wall, /area/station/security/prison/safe) +"ber" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/structure/disposalpipe/junction/yjunction{ + dir = 8 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/catwalk_floor/iron, +/area/station/hallway/primary/central) +"bex" = ( +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "beF" = ( /obj/structure/table/wood/fancy, /obj/item/lead_pipe{ @@ -3823,14 +4028,11 @@ }, /turf/open/floor/wood, /area/station/service/abandoned_gambling_den) -"bfc" = ( -/obj/structure/railing{ - dir = 8 - }, -/obj/machinery/duct, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/restrooms) +"beT" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/structure/crate, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central) "bfh" = ( /obj/effect/turf_decal/tile/neutral/opposingcorners{ dir = 1 @@ -3847,6 +4049,12 @@ /obj/structure/sign/poster/official/safety_internals/directional/north, /turf/open/floor/plating, /area/station/maintenance/department/medical) +"bfl" = ( +/obj/structure/flora/bush/fullgrass/style_random, +/obj/structure/flora/bush/ferny/style_random, +/obj/structure/flora/bush/flowers_br/style_random, +/turf/open/floor/grass, +/area/station/commons/dorms) "bfo" = ( /obj/item/storage/backpack{ pixel_x = 5; @@ -3855,12 +4063,9 @@ /turf/open/floor/plating, /area/station/maintenance/port/fore) "bfq" = ( +/obj/effect/turf_decal/tile/purple, /obj/effect/turf_decal/tile/neutral/anticorner/contrasted{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, -/obj/effect/turf_decal/tile/dark_blue{ - dir = 8 + dir = 1 }, /turf/open/floor/iron/dark, /area/station/hallway/primary/central) @@ -3874,34 +4079,76 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron/dark/smooth_large, /area/station/security/interrogation) +"bfC" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) +"bfH" = ( +/obj/machinery/door/airlock/external, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/external, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "bfN" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 1 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/structure/disposalpipe/segment, +/obj/machinery/status_display/ai/directional/west, +/turf/open/floor/iron, +/area/station/cargo/storage) +"bfQ" = ( +/obj/structure/closet/wardrobe/miner, +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/cargo/miningoffice) +"bfY" = ( +/obj/structure/cable, +/obj/machinery/holopad, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) +"bge" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/portable_atmospherics/scrubber, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos) +"bgs" = ( +/obj/item/paper_bin{ + pixel_x = 5; + pixel_y = 4 + }, +/obj/structure/railing{ + dir = 4 + }, /obj/structure/table, -/obj/item/clothing/gloves/cargo_gauntlet{ - pixel_y = 3 +/obj/item/pen{ + pixel_x = 5; + pixel_y = 6 }, -/obj/item/clothing/gloves/cargo_gauntlet{ - pixel_y = 3 +/obj/item/stamp/granted{ + pixel_x = -7; + pixel_y = 2 }, -/obj/item/clothing/gloves/cargo_gauntlet{ - pixel_y = 3 +/turf/open/floor/wood/large, +/area/station/service/library/private) +"bgx" = ( +/obj/structure/cable, +/obj/effect/turf_decal/stripes/line{ + dir = 8 }, -/obj/machinery/newscaster/directional/north, -/turf/open/floor/iron, +/turf/open/floor/iron/textured, /area/station/cargo/storage) -"bgm" = ( -/obj/structure/stairs/south, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"bgA" = ( -/obj/machinery/suit_storage_unit{ - storage_type = /obj/item/clothing/shoes/magboots - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "bgB" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -3909,10 +4156,6 @@ /obj/effect/turf_decal/tile/purple/opposingcorners, /turf/open/floor/iron/dark, /area/station/maintenance/starboard/aft) -"bgE" = ( -/obj/machinery/suit_storage_unit/atmos, -/turf/open/floor/glass/reinforced/plasma, -/area/station/engineering/atmos/project) "bgT" = ( /obj/structure/railing{ dir = 8 @@ -3925,9 +4168,14 @@ /obj/effect/turf_decal/trimline/green/filled/line{ dir = 9 }, -/obj/machinery/vending/assist, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/cobweb, +/obj/structure/table/reinforced, +/obj/machinery/button/door/directional/west{ + id = "Lcommissaryshutter"; + name = "Left Shutter Control"; + pixel_x = 0 + }, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) "bhc" = ( @@ -3953,16 +4201,25 @@ /obj/structure/window/reinforced/spawner/directional/east, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) +"bhy" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/portable_atmospherics/scrubber, +/obj/machinery/light/small/directional/west, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos) "bhJ" = ( /obj/structure/easel, /turf/open/floor/plating, /area/station/maintenance/disposal) -"bhN" = ( -/obj/structure/closet/crate{ - icon_state = "crateopen" +"bhM" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 1 }, -/obj/effect/spawner/random/maintenance, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/iron, +/area/station/cargo/miningoffice) +"bhN" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron, /area/station/cargo/storage) "bhQ" = ( @@ -3978,19 +4235,17 @@ /turf/open/floor/engine/vacuum, /area/station/science/ordnance/burnchamber) "bic" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/station/hallway/secondary/command) +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/disposalpipe/segment, +/turf/open/floor/iron/edge, +/area/station/hallway/primary/central) "bie" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/service/chapel/office) -"bij" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/vending/colavend, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) "bio" = ( /obj/effect/turf_decal/arrows/white{ color = "#F7F707"; @@ -3998,12 +4253,6 @@ }, /turf/open/floor/engine/hull, /area/space/nearstation) -"bit" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron/textured_large, -/area/station/medical/abandoned) "bix" = ( /obj/machinery/camera/autoname/directional/east, /turf/open/floor/engine, @@ -4022,6 +4271,10 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"biI" = ( +/obj/effect/spawner/structure/window, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "biO" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -4073,7 +4326,7 @@ name = "Armory Shutters" }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "biZ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -4088,15 +4341,30 @@ "bjq" = ( /turf/open/floor/plating, /area/station/maintenance/department/science/central) +"bjr" = ( +/obj/structure/girder, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "bjD" = ( /obj/effect/spawner/random/maintenance, /obj/structure/rack, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) +"bjH" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/firealarm/directional/west, +/obj/structure/cable, +/obj/machinery/power/terminal{ + dir = 1 + }, +/turf/open/floor/catwalk_floor, +/area/station/engineering/engine_smes) "bjK" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "bkc" = ( /obj/machinery/light/warm/directional/west, /obj/machinery/computer/mech_bay_power_console{ @@ -4123,7 +4391,24 @@ /obj/structure/rack, /obj/effect/spawner/random/armory/dragnet, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) +"bkk" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/machinery/power/apc/auto_name/directional/south, +/obj/structure/cable, +/turf/open/floor/iron/smooth, +/area/station/engineering/main) +"bkr" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/chair/office{ + dir = 1 + }, +/obj/machinery/light/small/directional/west, +/obj/effect/landmark/start/hangover, +/turf/open/floor/iron/dark/textured_large, +/area/station/commons/dorms) "bkt" = ( /obj/structure/lattice/catwalk, /obj/structure/railing/corner, @@ -4138,6 +4423,19 @@ }, /turf/open/floor/wood, /area/station/security/courtroom) +"bkv" = ( +/obj/structure/railing{ + dir = 5 + }, +/obj/structure/rack, +/obj/item/pipe_dispenser{ + pixel_y = 8 + }, +/obj/item/clothing/glasses/meson/engine{ + pixel_y = 4 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "bkA" = ( /obj/effect/turf_decal/delivery, /obj/effect/spawner/random/entertainment/arcade{ @@ -4145,6 +4443,14 @@ }, /turf/open/floor/iron/dark, /area/station/hallway/secondary/entry) +"bkC" = ( +/obj/machinery/atmospherics/components/binary/pump/on/supply/hidden/layer4{ + dir = 1; + name = "Airlock Supply Pump"; + target_pressure = 300 + }, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "bkD" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/red/opposingcorners{ @@ -4164,18 +4470,13 @@ }, /turf/open/floor/iron/small, /area/station/security/mechbay) -"blb" = ( -/obj/effect/turf_decal/bot, -/obj/structure/sign/warning/fire/directional/east, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/atmos/upper) -"blh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/trunk/multiz{ - dir = 8 - }, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) +"blm" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/disposalpipe/segment, +/turf/open/floor/catwalk_floor, +/area/station/cargo/storage) "bln" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/security/glass{ @@ -4189,13 +4490,15 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/smooth_large, /area/station/security/execution/transfer) -"blq" = ( -/obj/effect/decal/cleanable/glitter, -/obj/effect/decal/cleanable/blood/oil, -/obj/effect/spawner/random/maintenance/two, -/obj/structure/rack, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"bly" = ( +/obj/machinery/portable_atmospherics/canister/nitrogen, +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "blz" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -4237,7 +4540,6 @@ /obj/item/stack/sheet/glass/fifty, /obj/item/stack/sheet/glass/fifty, /obj/item/stack/sheet/glass/fifty, -/obj/machinery/power/apc/auto_name/directional/north, /obj/structure/disposalpipe/segment{ dir = 6 }, @@ -4249,6 +4551,14 @@ /obj/effect/spawner/random/maintenance, /turf/open/floor/iron, /area/station/construction/storage_wing) +"blF" = ( +/turf/closed/wall, +/area/station/maintenance/starboard/aft/upper) +"blI" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/landmark/start/station_engineer, +/turf/open/floor/iron/dark/smooth_large, +/area/station/engineering/storage) "blJ" = ( /obj/effect/turf_decal/stripes/corner, /obj/effect/turf_decal/stripes/line{ @@ -4257,12 +4567,13 @@ /obj/effect/turf_decal/trimline/green/filled/corner, /turf/open/floor/iron/textured_large, /area/station/medical/virology) -"bmc" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ +"blW" = ( +/obj/effect/turf_decal/trimline/purple/filled/line{ dir = 8 }, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) "bmg" = ( /obj/effect/turf_decal/trimline/dark_blue/line{ dir = 4 @@ -4280,7 +4591,12 @@ pixel_y = 4 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"bmw" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/commons/dorms) "bmx" = ( /obj/structure/transport/linear/public, /turf/open/openspace, @@ -4295,11 +4611,12 @@ /obj/effect/mapping_helpers/mail_sorting/service/bar, /obj/effect/mapping_helpers/mail_sorting/service/theater, /obj/structure/cable, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) "bmH" = ( /obj/machinery/barsign{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 1 @@ -4315,10 +4632,13 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood, /area/station/security/courtroom) -"bmO" = ( -/obj/structure/closet/radiation, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) +"bmK" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/light/small/directional/north, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/engineering/lobby) "bmP" = ( /obj/structure/railing{ dir = 8 @@ -4343,6 +4663,13 @@ /obj/effect/spawner/random/structure/closet_maintenance, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"bnh" = ( +/obj/effect/spawner/random/trash/graffiti{ + pixel_y = 32 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/smooth, +/area/station/engineering/main) "bnl" = ( /obj/effect/turf_decal/tile/dark/anticorner/contrasted{ dir = 8 @@ -4372,30 +4699,60 @@ /turf/open/floor/iron/dark/textured_edge{ dir = 1 }, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "bnW" = ( /obj/structure/cable, /obj/machinery/door/airlock/engineering, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/segment, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, /area/station/maintenance/solars/starboard/fore) -"boh" = ( -/obj/item/radio/intercom/directional/east, -/obj/structure/lattice/catwalk, -/turf/open/floor/engine/hull/air, -/area/station/engineering/break_room) "boj" = ( /obj/structure/reagent_dispensers/watertank, /obj/machinery/light_switch/directional/east, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) +"bop" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/chair{ + dir = 1; + pixel_y = -2 + }, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "boq" = ( /obj/item/toy/snappop, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) +"bor" = ( +/obj/structure/safe/floor{ + name = "Critical Supplies Safe" + }, +/obj/item/reagent_containers/cup/glass/bottle/wine_voltaic{ + pixel_y = 5; + pixel_x = 7 + }, +/obj/item/reagent_containers/cup/glass/shaker{ + pixel_y = 6; + pixel_x = -6 + }, +/obj/item/reagent_containers/cup/glass/bottle/vodka{ + pixel_y = 15; + pixel_x = 6 + }, +/obj/item/reagent_containers/cup/glass/bottle/juice/orangejuice{ + pixel_x = -5; + pixel_y = 15 + }, +/obj/item/reagent_containers/cup/glass/flask{ + pixel_x = -6 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/status_display/evac/directional/south, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "bot" = ( /obj/structure/lattice/catwalk, /obj/structure/ladder, @@ -4412,6 +4769,24 @@ /obj/structure/sign/departments/chemistry/directional/south, /turf/open/floor/engine/hull/air, /area/station/medical/medbay/central) +"boF" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/item/clothing/under/costume/seifuku/teal{ + pixel_x = -1; + pixel_y = -9 + }, +/obj/structure/table, +/obj/item/storage/fancy/cigarettes/cigpack_midori{ + pixel_x = 8; + pixel_y = 12 + }, +/obj/item/instrument/piano_synth/headphones{ + pixel_x = 3; + pixel_y = 5 + }, +/obj/structure/sign/poster/contraband/syndicate_pistol/directional/east, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "boP" = ( /obj/item/chair, /obj/machinery/light/small/red/dim/directional/south, @@ -4434,6 +4809,25 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/port) +"boY" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/office) +"bpf" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper{ + dir = 8 + }, +/obj/item/paper/crumpled{ + pixel_x = 2; + pixel_y = 6 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "bpl" = ( /obj/structure/railing{ dir = 8 @@ -4480,12 +4874,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) -"bpB" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer4, -/obj/machinery/portable_atmospherics/canister/air, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "bpK" = ( /turf/closed/wall/r_wall, /area/station/command/heads_quarters/hos) @@ -4493,13 +4881,13 @@ /obj/effect/spawner/random/vending/colavend, /turf/open/floor/wood/large, /area/station/medical/break_room) -"bpZ" = ( -/obj/machinery/portable_atmospherics/canister, -/obj/machinery/light_switch/directional/east, -/obj/effect/mapping_helpers/turn_off_lights_with_lightswitch, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +"bqd" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/structure/cable, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "bqk" = ( /obj/effect/turf_decal/siding/dark/corner, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -4507,7 +4895,7 @@ /turf/open/floor/iron/dark/textured_half{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bqm" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -4524,26 +4912,15 @@ }, /turf/open/floor/wood, /area/station/command/heads_quarters/hos) -"bqv" = ( -/obj/effect/turf_decal/siding, -/obj/effect/turf_decal/trimline/white/line{ - dir = 8; - pixel_x = 8 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/obj/structure/disposalpipe/segment{ - dir = 4 +"bqO" = ( +/obj/structure/chair/office{ + dir = 1 }, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) -"bqA" = ( -/obj/effect/turf_decal/siding/brown, -/obj/structure/table/reinforced, -/obj/item/storage/toolbox/artistic, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +/obj/structure/lattice/catwalk, +/obj/effect/landmark/start/depsec/supply, +/obj/effect/landmark/event_spawn, +/turf/open/openspace, +/area/station/security/checkpoint/supply) "bqR" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -4553,6 +4930,11 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) +"bqU" = ( +/obj/machinery/computer/security/telescreen/minisat/directional/west, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/engineering/transit_tube) "bqV" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -4571,12 +4953,23 @@ /obj/machinery/door/firedoor/heavy, /turf/open/floor/iron/dark, /area/station/engineering/atmos/hfr_room) +"brb" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/hallway/primary/starboard) "brf" = ( /obj/effect/turf_decal/tile/yellow/opposingcorners{ dir = 1 }, /turf/open/floor/iron/dark, /area/station/engineering/storage/tech) +"brh" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/engineering/tank, +/turf/open/floor/iron, +/area/station/maintenance/starboard/central) "brm" = ( /obj/effect/turf_decal/stripes/red/line, /obj/effect/turf_decal/stripes/red/line{ @@ -4591,6 +4984,11 @@ }, /turf/open/floor/plating, /area/station/maintenance/solars/starboard/fore) +"brz" = ( +/obj/effect/spawner/random/structure/closet_maintenance, +/obj/item/clothing/mask/joy, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/aft/upper) "brP" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/firealarm/directional/north, @@ -4623,17 +5021,26 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/white/smooth_edge, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "bsx" = ( /obj/machinery/porta_turret/ai{ dir = 4 }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "bsy" = ( /obj/effect/decal/cleanable/crayon/rune2, /turf/open/floor/plating, /area/station/maintenance/port) +"bsC" = ( +/obj/structure/chair/sofa/right/brown, +/obj/item/pillow, +/obj/item/toy/plush/moth{ + name = "Mender Moff" + }, +/obj/structure/sign/poster/official/get_your_legs/directional/north, +/turf/open/floor/carpet/black, +/area/station/medical/psychology) "bsE" = ( /obj/machinery/door/airlock/external, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -4642,15 +5049,6 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/medical/abandoned) -"bsH" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment{ - dir = 2 - }, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) "bsK" = ( /obj/effect/turf_decal/tile/neutral/opposingcorners{ dir = 1 @@ -4682,10 +5080,6 @@ }, /turf/open/floor/iron/checker, /area/station/service/bar) -"btb" = ( -/obj/machinery/roulette, -/turf/open/floor/engine, -/area/station/engineering/break_room) "btc" = ( /obj/item/paper_bin/carbon, /obj/structure/closet, @@ -4693,10 +5087,6 @@ /obj/item/hand_labeler_refill, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"btj" = ( -/obj/machinery/vending/donksnack, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "btv" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -4737,6 +5127,20 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) +"btU" = ( +/obj/item/bouquet/sunflower{ + pixel_y = 4 + }, +/obj/structure/table/reinforced, +/obj/structure/sign/poster/contraband/atmosia_independence/directional/north{ + desc = "Welcome."; + name = "Welcome." + }, +/obj/item/clothing/glasses/orange{ + pixel_y = 5 + }, +/turf/open/floor/iron/vaporwave, +/area/station/maintenance/starboard/aft/upper) "btV" = ( /obj/machinery/door/poddoor/preopen{ id = "cmoprivacy"; @@ -4773,36 +5177,32 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron/dark, /area/station/medical/chemistry) -"buu" = ( +"bup" = ( /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/stripes/line{ - dir = 10 +/obj/effect/decal/cleanable/crayon{ + icon_state = "nay"; + pixel_y = 32 }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"buA" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 8 +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) +"but" = ( +/obj/structure/closet/crate/bin, +/obj/machinery/button/door/directional/east{ + id = "Cabin6"; + name = "Cabin Bolt Control"; + normaldoorcontrol = 1; + specialfunctions = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/cargo/miningoffice) -"buF" = ( -/obj/effect/turf_decal/stripes/corner, -/obj/effect/turf_decal/stripes/line{ - dir = 9 +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) +"buA" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/table, +/obj/item/megaphone/cargo{ + pixel_y = 3 }, -/turf/open/floor/engine, -/area/station/engineering/atmos/project) -"buP" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/machinery/light_switch/directional/north, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) "buZ" = ( /obj/machinery/door/airlock/security/glass{ id_tag = "outerbrig"; @@ -4829,9 +5229,12 @@ /turf/open/floor/iron/dark/telecomms, /area/station/tcommsat/server) "bvv" = ( -/obj/structure/cable, /obj/effect/landmark/event_spawn, -/turf/open/floor/iron/dark, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/holopad, +/obj/structure/cable, +/turf/open/floor/iron/dark/smooth_large, /area/station/command/gateway) "bvz" = ( /obj/effect/decal/cleanable/dirt, @@ -4840,6 +5243,10 @@ }, /turf/open/floor/plating, /area/station/maintenance/starboard/central) +"bvE" = ( +/obj/effect/spawner/random/trash/botanical_waste, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/aft/upper) "bvG" = ( /obj/item/toy/snappop, /obj/structure/cable, @@ -4856,11 +5263,9 @@ /obj/machinery/light/small/directional/west, /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) -"bvI" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line, -/obj/effect/landmark/event_spawn, -/turf/open/floor/iron/dark, -/area/station/engineering/storage) +"bvJ" = ( +/turf/open/floor/iron/freezer, +/area/station/commons/dorms) "bvN" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -4889,8 +5294,11 @@ /area/station/science/research) "bvY" = ( /obj/machinery/wall_healer/directional/north, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/stripes{ + dir = 9 + }, +/turf/open/floor/iron/textured, +/area/station/command/eva) "bvZ" = ( /obj/structure/railing{ dir = 8 @@ -4898,25 +5306,34 @@ /obj/machinery/door/firedoor/border_only{ dir = 8 }, -/obj/structure/cable, /turf/open/floor/wood, /area/station/commons/toilet/restrooms) -"bwd" = ( -/obj/structure/disposalpipe/segment, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) "bwg" = ( -/obj/structure/bed, -/obj/item/bedsheet/hop, /obj/structure/secure_safe/directional/south, /obj/machinery/airalarm/directional/east, /obj/effect/landmark/start/head_of_personnel, -/turf/open/floor/carpet, +/obj/structure/bed/double, +/obj/item/bedsheet/hop/double, +/turf/open/floor/wood/tile, /area/station/command/heads_quarters/hop) "bwi" = ( /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/hallway/primary/port) +"bwv" = ( +/obj/effect/mapping_helpers/airlock/access/all/security/general, +/obj/machinery/door/airlock/security/glass{ + name = "Security Post - Cargo" + }, +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/tile/red/opposingcorners{ + dir = 1 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/security/checkpoint/supply) "bwx" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -4963,11 +5380,30 @@ req_access = list("medical"); name = "Medbay Reception" }, +/obj/item/folder/white, +/obj/item/folder/blue{ + pixel_y = 3; + pixel_x = -4 + }, +/obj/item/pen, /turf/open/floor/iron/white/textured_large, /area/station/medical/office) "bxd" = ( /turf/closed/wall/r_wall, /area/station/engineering/atmos/hfr_room) +"bxg" = ( +/obj/machinery/camera/autoname/directional/east, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/security/medical) +"bxv" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/closed/wall, +/area/station/maintenance/aft) "bxx" = ( /turf/open/floor/engine/n2o, /area/station/engineering/atmos/upper) @@ -5057,15 +5493,6 @@ /obj/effect/spawner/random/maintenance/two, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"byA" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/hfr_room) "byC" = ( /obj/machinery/button/door/directional/east{ id = "Prison Gate"; @@ -5075,34 +5502,16 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/security/execution/transfer) "byE" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Abandoned Hallway" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/hallway/secondary/construction) -"byJ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/item/tank/internals/oxygen, -/obj/item/clothing/mask/breath, -/obj/machinery/light/small/directional/east, -/obj/structure/table/reinforced, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/obj/structure/lattice/catwalk, +/obj/machinery/vending/games, +/turf/open/openspace, +/area/station/cargo/storage) "byR" = ( -/obj/machinery/door/airlock/command{ - name = "Council Chamber" +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/access/all/command/general, -/obj/machinery/door/firedoor, -/turf/open/floor/carpet, -/area/station/command/bridge) +/turf/open/floor/iron/edge, +/area/station/hallway/primary/central) "byU" = ( /obj/structure/railing{ dir = 4 @@ -5115,9 +5524,29 @@ /obj/machinery/computer/mech_bay_power_console, /turf/open/floor/iron/smooth, /area/station/science/robotics) +"byW" = ( +/obj/structure/cable, +/obj/effect/landmark/start/hangover, +/obj/structure/disposalpipe/segment{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/commons/fitness/recreation) "byY" = ( /turf/open/floor/wood, /area/station/hallway/primary/central) +"bzd" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Medbay Maintenance" + }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/port) "bzk" = ( /obj/structure/extinguisher_cabinet/directional/west, /turf/open/floor/iron/dark, @@ -5153,27 +5582,29 @@ /area/station/maintenance/central) "bzS" = ( /obj/structure/table/wood, -/obj/item/flashlight/lamp/green{ - pixel_x = 1; - pixel_y = 5 +/obj/machinery/recharger{ + pixel_x = -6; + pixel_y = 4 }, -/obj/item/disk/nuclear{ - pixel_x = 1; - pixel_y = -2 +/obj/item/reagent_containers/cup/glass/flask/gold{ + pixel_x = 5 }, -/obj/item/pen/fourcolor{ - pixel_x = -15; - pixel_y = 1 +/obj/item/toy/figure/captain{ + pixel_x = 7; + pixel_y = 10 }, -/obj/machinery/newscaster/directional/north, -/obj/machinery/light/directional/north, -/turf/open/floor/wood, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) "bzV" = ( /obj/structure/lattice/catwalk, /obj/effect/spawner/random/maintenance, /turf/open/openspace, /area/station/hallway/primary/central) +"bAf" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/structure/crate, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "bAh" = ( /obj/machinery/door/airlock/hatch{ name = "MiniSat Foyer" @@ -5184,7 +5615,14 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) +"bAo" = ( +/obj/effect/turf_decal/tile/red/opposingcorners, +/obj/structure/chair/office/light{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "bAq" = ( /obj/effect/turf_decal/trimline/yellow/filled/line, /obj/machinery/computer/shuttle/mining{ @@ -5223,6 +5661,16 @@ /obj/structure/window/reinforced/spawner/directional/north, /turf/open/openspace, /area/station/science/xenobiology) +"bAS" = ( +/obj/structure/chair/office{ + dir = 8 + }, +/obj/effect/landmark/start/station_engineer, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/wood/large, +/area/station/engineering/lobby) "bAW" = ( /turf/open/floor/iron, /area/station/engineering/lobby) @@ -5244,12 +5692,14 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/virology) -"bBu" = ( -/obj/effect/mapping_helpers/burnt_floor, -/obj/structure/cable, -/obj/machinery/light_switch/directional/north, +"bBq" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1 + }, +/obj/effect/turf_decal/siding/yellow, /turf/open/floor/iron, -/area/station/engineering/main) +/area/station/engineering/atmos/upper) "bBv" = ( /obj/effect/turf_decal/box/corners{ dir = 1 @@ -5266,18 +5716,6 @@ dir = 1 }, /area/station/science/robotics) -"bBy" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/turf/open/floor/iron/textured_large, -/area/station/medical/virology) "bBB" = ( /obj/effect/turf_decal/trimline/dark_blue/filled/shrink_ccw{ dir = 1 @@ -5287,26 +5725,45 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/smooth_half, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "bBK" = ( -/obj/effect/landmark/observer_start, /obj/effect/turf_decal/tile/neutral/anticorner/contrasted{ dir = 1 }, -/obj/effect/turf_decal/tile/purple, -/obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark, /area/station/hallway/primary/central) +"bBL" = ( +/obj/structure/table/wood, +/obj/item/clothing/under/misc/burial, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "bBV" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/openspace, /area/station/science/explab) -"bCa" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) +"bBZ" = ( +/obj/machinery/button/flasher{ + id = "hopflash"; + pixel_x = -24; + pixel_y = -4; + dir = 8 + }, +/obj/machinery/button/door/directional/west{ + id = "hop"; + name = "Lockdown Blast Doors"; + pixel_y = 6; + req_access = list("hop") + }, +/obj/machinery/requests_console/directional/north{ + department = "Head of Personnel's Desk"; + name = "Head of Personnel's Requests Console" + }, +/obj/effect/mapping_helpers/requests_console/information, +/obj/effect/mapping_helpers/requests_console/announcement, +/obj/effect/mapping_helpers/requests_console/assistance, +/obj/machinery/modular_computer/preset/id, +/turf/open/floor/wood/tile, +/area/station/command/heads_quarters/hop) "bCb" = ( /obj/machinery/atmospherics/components/binary/pump/on{ dir = 8; @@ -5356,17 +5813,15 @@ /obj/structure/railing{ dir = 4 }, -/obj/effect/turf_decal/siding/red{ +/obj/structure/table/wood, +/obj/effect/turf_decal/siding/wood{ dir = 4 }, -/obj/structure/table, -/obj/item/radio/intercom/directional/west{ - pixel_x = -1 - }, -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 +/obj/item/pen{ + pixel_y = 9; + pixel_x = -4 }, -/turf/open/floor/iron/dark, +/turf/open/floor/wood/large, /area/station/hallway/primary/central) "bCx" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -5377,42 +5832,33 @@ /turf/open/floor/iron, /area/station/hallway/secondary/construction) "bCC" = ( -/obj/machinery/suit_storage_unit/captain, /obj/machinery/status_display/evac/directional/north, -/turf/open/floor/wood, +/obj/structure/table/wood, +/obj/machinery/fax{ + fax_name = "Captain's Office"; + name = "Captain's Fax Machine" + }, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) "bCD" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 1 - }, /obj/structure/sign/directions/command{ - dir = 8; - pixel_y = 38 + dir = 1; + pixel_y = 10 }, -/obj/structure/sign/directions/medical/directional/north{ - dir = 8 +/obj/structure/sign/directions/dorms{ + dir = 1; + pixel_y = 4 }, -/obj/structure/sign/directions/evac/directional/north{ - dir = 8; - pixel_y = 26 +/obj/structure/sign/directions/medical{ + dir = 1; + pixel_y = -2 }, -/turf/open/floor/iron, -/area/station/hallway/primary/starboard) -"bDm" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/welded, -/obj/effect/mapping_helpers/airlock/locked, -/turf/open/floor/plating, -/area/station/maintenance/port) -"bDn" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "N2 to Port" +/obj/structure/sign/directions/evac{ + dir = 1; + pixel_y = -8 }, -/obj/effect/turf_decal/tile/red/fourcorners, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) +/turf/closed/wall, +/area/station/science/lab) "bDq" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment{ @@ -5446,29 +5892,27 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"bDQ" = ( -/obj/machinery/disposal/bin, -/obj/machinery/light/directional/east, -/obj/machinery/newscaster/directional/east, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/wood, -/area/station/commons/dorms) "bDS" = ( /obj/structure/cable, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) +"bEi" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 8 + }, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "bEp" = ( /obj/machinery/firealarm/directional/south, /turf/open/floor/plating, /area/station/engineering/storage_shared) "bEr" = ( -/obj/structure/table/wood, -/obj/item/toy/cards/deck{ - pixel_y = 4 - }, -/obj/item/trash/can{ - pixel_x = -10; - pixel_y = -14 +/obj/structure/railing, +/obj/machinery/conveyor_switch/oneway{ + dir = 1; + id = "mining"; + pixel_y = 10 }, /turf/open/floor/iron/textured, /area/station/cargo/storage) @@ -5482,6 +5926,12 @@ }, /turf/open/floor/iron, /area/station/science/lab) +"bEA" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/landmark/start/hangover, +/turf/open/floor/iron, +/area/station/commons/dorms) "bEB" = ( /obj/machinery/computer/mecha{ dir = 8 @@ -5489,6 +5939,13 @@ /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/security/checkpoint/science) +"bEH" = ( +/obj/effect/turf_decal/trimline/brown/filled/end{ + dir = 1 + }, +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/iron, +/area/station/cargo/miningoffice) "bEI" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -5496,12 +5953,18 @@ /turf/open/floor/iron/textured_large, /area/station/security/prison/rec) "bEJ" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 4 - }, -/obj/machinery/wall_healer/directional/east, -/turf/open/floor/iron, -/area/station/hallway/primary/starboard) +/obj/item/cigbutt, +/obj/effect/turf_decal/bot_white, +/obj/effect/spawner/random/structure/crate, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/iron/dark/textured_large, +/area/station/cargo/storage) +"bEP" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "bEU" = ( /obj/structure/extinguisher_cabinet/directional/west, /obj/machinery/camera/autoname/directional/south, @@ -5513,6 +5976,10 @@ dir = 4 }, /area/station/medical/surgery) +"bEV" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/turf/open/floor/wood, +/area/station/commons/dorms) "bFb" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 4 @@ -5525,15 +5992,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/large, /area/station/hallway/primary/central) -"bFc" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table, -/obj/machinery/microwave{ - pixel_x = -3; - pixel_y = 6 - }, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) "bFe" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -5543,6 +6001,18 @@ }, /turf/open/floor/plating, /area/station/maintenance/port) +"bFl" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/commons/dorms) +"bFm" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/duct, +/turf/open/floor/iron, +/area/station/engineering/lobby) "bFn" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/monitored/air_input, /turf/open/floor/engine/air, @@ -5553,6 +6023,31 @@ /obj/item/surgical_drapes, /turf/open/floor/iron/dark/textured_large, /area/station/maintenance/port) +"bFx" = ( +/obj/structure/table, +/obj/item/storage/toolbox/artistic{ + pixel_x = -1; + pixel_y = 12 + }, +/obj/item/storage/toolbox/mechanical{ + pixel_x = 1; + pixel_y = 5 + }, +/obj/item/paper_bin{ + pixel_x = -6; + pixel_y = -7 + }, +/obj/item/stamp/granted{ + pixel_x = 7; + pixel_y = -1 + }, +/obj/item/stamp/denied{ + pixel_x = 8; + pixel_y = -7 + }, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/wood, +/area/station/service/library/printer) "bFI" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt/dust, @@ -5571,6 +6066,12 @@ /obj/machinery/light/directional/west, /turf/open/floor/iron/dark, /area/station/security/brig) +"bFW" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "bGa" = ( /obj/structure/railing{ dir = 4 @@ -5578,6 +6079,10 @@ /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/science/xenobiology) +"bGe" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "bGh" = ( /obj/effect/turf_decal/trimline/green/filled/line, /obj/effect/turf_decal/trimline/green/filled/mid_joiner, @@ -5600,14 +6105,22 @@ /obj/structure/sign/poster/official/random/directional/east, /turf/open/floor/plating, /area/station/construction/storage_wing) -"bGs" = ( -/obj/item/biopsy_tool{ - pixel_x = -9; - pixel_y = 2 +"bGv" = ( +/obj/structure/closet/crate, +/obj/item/gps, +/obj/item/assembly/timer, +/obj/item/gps, +/obj/item/assembly/signaler, +/obj/item/analyzer{ + pixel_x = 7; + pixel_y = 3 }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/engine, -/area/station/maintenance/starboard/lesser) +/obj/structure/extinguisher_cabinet/directional/west, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/commons/storage/primary) "bGF" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/dirt, @@ -5664,6 +6177,10 @@ pixel_y = 6 }, /obj/structure/lattice/catwalk, +/obj/machinery/camera/directional/south{ + c_tag = "Cargo Bay - Security Post (High)"; + pixel_x = 14 + }, /turf/open/openspace, /area/station/security/checkpoint/supply) "bHn" = ( @@ -5683,7 +6200,7 @@ /turf/open/floor/iron/dark/textured_edge{ dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bHr" = ( /obj/machinery/atmospherics/pipe/smart/manifold/supply/visible, /obj/machinery/computer/security/telescreen/isolation/directional/west{ @@ -5695,30 +6212,44 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/dark/textured, /area/station/science/xenobiology) +"bHC" = ( +/turf/open/floor/iron/stairs{ + dir = 1 + }, +/area/station/maintenance/starboard) "bHG" = ( /obj/effect/turf_decal/tile/yellow/opposingcorners, /obj/effect/decal/cleanable/dirt, /obj/structure/cable, /turf/open/floor/iron, /area/station/engineering/storage_shared) -"bHM" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/broken_floor, -/turf/open/floor/plating/airless, -/area/space/nearstation) +"bHJ" = ( +/obj/structure/closet, +/obj/effect/spawner/random/maintenance/two, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) +"bHL" = ( +/obj/structure/sign/poster/contraband/communist_state/directional/south, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/starboard/central/upper) "bHN" = ( /obj/structure/railing{ dir = 4 }, /turf/open/floor/engine/hull/air, /area/station/maintenance/port) -"bHO" = ( -/obj/machinery/camera/autoname/directional/north, -/turf/open/floor/plating/airless, -/area/station/maintenance/starboard/lesser) "bHV" = ( /turf/closed/wall, /area/station/medical/medbay/lobby) +"bIf" = ( +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 + }, +/obj/item/kirbyplants/random, +/obj/structure/sign/poster/official/random/directional/west, +/turf/open/floor/iron/dark, +/area/station/commons/fitness/recreation) "bIi" = ( /obj/structure/disposalpipe/segment, /turf/open/floor/wood, @@ -5728,12 +6259,25 @@ /obj/machinery/light/floor, /turf/open/floor/iron/textured_large, /area/station/security/prison/rec) +"bIm" = ( +/obj/machinery/airalarm/directional/north, +/obj/machinery/computer/turbine_computer, +/obj/effect/mapping_helpers/airalarm/all_access, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos/upper) "bIp" = ( -/obj/structure/dresser, /obj/machinery/status_display/ai/directional/north, /obj/machinery/airalarm/directional/east, -/turf/open/floor/wood, +/obj/structure/dresser, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) +"bIq" = ( +/obj/machinery/suit_storage_unit{ + storage_type = /obj/item/clothing/shoes/magboots + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "bIF" = ( /obj/machinery/atmospherics/components/binary/pump/layer4, /obj/item/storage/box/matches{ @@ -5784,31 +6328,12 @@ /obj/effect/turf_decal/tile/red/fourcorners, /turf/open/floor/iron/dark, /area/station/security/warden) -"bIP" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 10 - }, -/obj/structure/rack, -/obj/item/book/manual/wiki/engineering_guide{ - pixel_x = -2 - }, -/obj/item/book/manual/wiki/engineering_construction{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/item/book/manual/wiki/engineering_hacking{ - pixel_x = 2; - pixel_y = 3 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage) -"bIS" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +"bIX" = ( /obj/structure/disposalpipe/segment{ - dir = 4 + dir = 5 }, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +/turf/closed/wall, +/area/station/maintenance/aft) "bIZ" = ( /obj/structure/reagent_dispensers/wall/peppertank/directional/east, /obj/effect/turf_decal/tile/red/opposingcorners{ @@ -5834,36 +6359,15 @@ }, /turf/open/floor/iron, /area/station/science/robotics/lab) -"bJs" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/station/commons/dorms) +"bJo" = ( +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/upper) "bJt" = ( /obj/structure/chair{ dir = 8 }, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"bJA" = ( -/obj/effect/turf_decal/tile/red/opposingcorners, -/obj/effect/turf_decal/tile/neutral/opposingcorners{ - dir = 1 - }, -/obj/machinery/meter{ - name = "N2O meter" - }, -/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ - name = "N2O Multideck Adapter"; - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) -"bJB" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "bJJ" = ( /obj/machinery/vending/cigarette, /obj/structure/disposalpipe/segment{ @@ -5878,19 +6382,6 @@ /obj/structure/stairs/north, /turf/open/floor/wood, /area/station/security/courtroom) -"bKb" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/chair/office{ - dir = 1 - }, -/obj/effect/turf_decal/siding/wood{ - dir = 4 - }, -/turf/open/floor/wood, -/area/station/engineering/lobby) "bKd" = ( /obj/effect/turf_decal/siding/dark{ dir = 5 @@ -5899,15 +6390,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"bKh" = ( -/obj/structure/table/glass, -/obj/item/flashlight/flare/candle{ - pixel_x = 9; - pixel_y = 4 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) +/area/station/ai/satellite/interior) "bKj" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, @@ -5923,11 +6406,11 @@ /obj/structure/chair/office{ dir = 8 }, -/obj/machinery/firealarm/directional/south, /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 }, /obj/effect/landmark/start/depsec/supply, +/obj/item/radio/intercom/directional/south, /turf/open/floor/iron/dark, /area/station/security/checkpoint/supply) "bKt" = ( @@ -5945,13 +6428,26 @@ }, /obj/structure/plasticflaps/kitchen, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/satellite) -"bKC" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/cobweb, +/area/station/ai/satellite/maintenance/storage) +"bKw" = ( +/obj/machinery/light/directional/west, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/railing/corner{ + dir = 4 + }, /obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/main) +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) +"bKI" = ( +/obj/machinery/vending/autodrobe, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/commons/locker) "bKK" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -5976,45 +6472,38 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/smooth_large, /area/station/security/brig) -"bKY" = ( -/obj/machinery/requests_console/directional/west, -/obj/effect/mapping_helpers/requests_console/supplies, -/obj/effect/mapping_helpers/requests_console/assistance, -/obj/structure/chair/office, -/obj/effect/turf_decal/trimline/yellow/filled/warning, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) -"bLf" = ( -/obj/structure/flora/bush/fullgrass/style_random, -/obj/structure/flora/bush/ferny/style_random, -/mob/living/basic/pet/cat/space{ - name = "Tomas" - }, -/turf/open/floor/grass, -/area/station/maintenance/starboard/fore) "bLh" = ( /obj/effect/landmark/start/scientist, /turf/open/floor/iron/dark/smooth_large, /area/station/science/lab) +"bLm" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) +"bLp" = ( +/obj/machinery/door/airlock/external, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "space-outpost" + }, +/obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/all/engineering/external, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "bLu" = ( /obj/machinery/light/directional/east, /obj/machinery/camera/autoname/directional/east, /turf/open/floor/iron, /area/station/hallway/primary/aft) +"bLx" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "bLE" = ( /obj/effect/landmark/firealarm_sanity, /turf/open/floor/engine/hull/air, /area/station/hallway/primary/aft) -"bLG" = ( -/obj/structure/table, -/obj/item/petri_dish{ - pixel_x = 4; - pixel_y = 7 - }, -/obj/item/petri_dish, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) "bLL" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/smooth_large, @@ -6025,13 +6514,19 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/port) +"bLP" = ( +/obj/effect/turf_decal/trimline/yellow/filled, +/obj/item/kirbyplants/random/fullysynthetic, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "bMa" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /obj/effect/decal/cleanable/dirt, /obj/machinery/light/small/dim/directional/east, /obj/machinery/button/crematorium{ id = "crematoriumChapel"; - pixel_x = 26 + pixel_x = 26; + dir = 4 }, /obj/machinery/camera/autoname/directional/east, /turf/open/floor/iron/dark, @@ -6044,15 +6539,12 @@ /turf/open/floor/plating, /area/station/security/prison/shower) "bMd" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 4 - }, -/obj/structure/railing{ +/obj/structure/ladder, +/obj/effect/turf_decal/stripes{ dir = 4 }, -/obj/structure/ladder, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/turf/open/floor/iron/textured, +/area/station/command/eva) "bMe" = ( /obj/machinery/door/airlock/external{ name = "Arrival Airlock" @@ -6069,29 +6561,10 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"bMh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/radio/intercom/directional/north, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) "bMi" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/station/cargo/miningoffice) -"bMl" = ( -/obj/structure/table, -/obj/item/stock_parts/subspace/analyzer, -/obj/item/stock_parts/subspace/analyzer, -/obj/item/stock_parts/subspace/analyzer, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 - }, -/obj/machinery/camera/directional/north{ - c_tag = "Telecomms - Storage" - }, -/obj/machinery/light/small/directional/west, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tcomms) "bMo" = ( /obj/machinery/door/airlock/public/glass{ name = "Arrivals Lounge" @@ -6099,18 +6572,32 @@ /obj/machinery/door/firedoor, /turf/open/floor/iron, /area/station/hallway/primary/aft) -"bMq" = ( -/obj/structure/chair/stool/directional/west, -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/start/hangover, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) "bMw" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 1 }, /turf/open/floor/iron/dark, /area/station/security/office) +"bMx" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/upper) +"bMR" = ( +/obj/machinery/power/emitter{ + dir = 4 + }, +/obj/effect/turf_decal/bot{ + dir = 1 + }, +/obj/machinery/camera/autoname/directional/south, +/obj/machinery/firealarm/directional/south, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) +"bNe" = ( +/obj/structure/chair/stool/directional/east, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "bNk" = ( /obj/effect/turf_decal/trimline/green/filled/corner{ dir = 8 @@ -6120,49 +6607,59 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) +"bNl" = ( +/obj/vehicle/ridden/wheelchair, +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "bNt" = ( /turf/closed/wall, /area/station/maintenance/port/greater) -"bNu" = ( -/obj/structure/table, -/obj/item/hand_labeler{ - pixel_y = 7 - }, -/obj/item/camera_film{ - pixel_y = 3 - }, -/obj/machinery/power/apc/auto_name/directional/east, -/obj/structure/cable, -/obj/effect/turf_decal/tile/green/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/commons/storage/art) -"bNC" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/supply/general, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "bNH" = ( /obj/machinery/power/shieldwallgen, /obj/effect/turf_decal/stripes/corner{ dir = 8 }, -/obj/structure/cable, /obj/machinery/firealarm/directional/east, /turf/open/floor/wood, /area/station/command/teleporter) +"bNO" = ( +/obj/machinery/camera/autoname/directional/west, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/iron/dark/small, +/area/station/command/heads_quarters/ce) "bNX" = ( /turf/open/floor/engine, /area/station/engineering/atmos/hfr_room) -"bNY" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +"bOa" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/components/trinary/filter/flipped/critical{ + filter_type = list(/datum/gas/nitrogen) + }, +/obj/effect/turf_decal/stripes/box, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) +"bOb" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters{ + dir = 4; + id = "commissaryshutter"; + name = "Vacant Commissary Shutter" + }, /turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/area/station/commons/vacant_room/office) +"bOf" = ( +/obj/structure/chair/sofa/middle/brown{ + dir = 4 + }, +/obj/machinery/light/small/directional/west, +/obj/effect/landmark/start/hangover, +/obj/structure/sign/poster/official/random/directional/west, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "bOi" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, @@ -6178,6 +6675,14 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/smooth_large, /area/station/tcommsat/server) +"bOt" = ( +/obj/structure/table, +/obj/item/book/manual/wiki/security_space_law{ + pixel_y = 6 + }, +/obj/machinery/camera/autoname/directional/north, +/turf/open/floor/wood, +/area/station/security/courtroom) "bOw" = ( /turf/closed/wall, /area/station/construction/mining/aux_base) @@ -6194,6 +6699,14 @@ /obj/effect/turf_decal/tile/red/fourcorners, /turf/open/floor/iron/dark, /area/station/security/brig) +"bOK" = ( +/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "bOO" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/heat_exchanging/simple, @@ -6209,11 +6722,13 @@ dir = 1 }, /turf/open/floor/iron/checker, -/area/station/ai_monitored/turret_protected/aisat_interior) -"bPj" = ( -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) +/area/station/ai/satellite/interior) +"bPq" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "bPr" = ( /obj/effect/turf_decal/tile/neutral/opposingcorners{ dir = 1 @@ -6222,12 +6737,18 @@ /turf/open/floor/iron/dark, /area/station/medical/chemistry) "bPw" = ( -/obj/structure/rack, -/obj/item/storage/toolbox/emergency, -/obj/effect/spawner/random/maintenance, -/obj/structure/sign/poster/contraband/random/directional/north, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/obj/machinery/status_display/supply{ + pixel_y = 32 + }, +/obj/machinery/disposal/delivery_chute{ + dir = 4 + }, +/obj/structure/window/spawner/directional/south, +/obj/effect/turf_decal/delivery, +/obj/structure/disposalpipe/trunk, +/obj/structure/plasticflaps, +/turf/open/floor/iron/textured_large, +/area/station/cargo/sorting) "bPC" = ( /turf/open/floor/plating, /area/station/maintenance/port/aft) @@ -6261,6 +6782,23 @@ /obj/effect/mapping_helpers/mail_sorting/science/xenobiology, /turf/open/floor/iron/dark/smooth_large, /area/station/science/explab) +"bPO" = ( +/obj/machinery/light/directional/west, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/engineering/transit_tube) +"bPS" = ( +/obj/machinery/duct, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/item/radio/intercom/directional/east, +/obj/structure/cable, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet/restrooms) +"bPT" = ( +/obj/machinery/door/airlock/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/aft) "bPW" = ( /turf/closed/wall, /area/station/commons/fitness/recreation) @@ -6278,15 +6816,16 @@ /obj/item/clothing/mask/breath, /turf/open/floor/wood, /area/station/command/teleporter) -"bQz" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/structure/railing, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "bQC" = ( -/obj/structure/window/reinforced/spawner/directional/south, +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable, +/obj/machinery/door/poddoor/shutters/preopen{ + name = "Cargo Lockdown Shutters"; + id = "cargolockdown"; + dir = 8 + }, /turf/open/floor/plating, -/area/station/maintenance/disposal) +/area/station/security/checkpoint/supply) "bQF" = ( /obj/effect/turf_decal/tile/red/opposingcorners, /obj/structure/closet/secure_closet, @@ -6345,19 +6884,6 @@ }, /turf/open/openspace, /area/station/science/xenobiology) -"bRd" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/camera/autoname/directional/north, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/openspace, -/area/station/engineering/atmos/project) -"bRl" = ( -/obj/structure/table, -/obj/item/clothing/suit/utility/fire/firefighter, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "bRm" = ( /obj/machinery/chem_dispenser, /obj/effect/turf_decal/trimline/yellow/filled/line{ @@ -6368,45 +6894,22 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) -"bRv" = ( -/obj/machinery/holopad, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/wood, -/area/station/service/library/printer) "bRx" = ( /obj/effect/turf_decal/tile/blue/anticorner/contrasted{ dir = 8 }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) -"bRC" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 1 - }, -/obj/machinery/newscaster/directional/north, -/turf/open/floor/iron, -/area/station/engineering/lobby) -"bRD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table, -/obj/item/pai_card{ - pixel_y = 4 - }, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) "bRQ" = ( -/obj/item/cigbutt, -/obj/effect/mapping_helpers/airlock/access/all/supply/qm, -/obj/machinery/door/airlock/mining{ - name = "Quartermaster's Office" +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/effect/turf_decal/bot_white, +/turf/open/floor/iron/dark/textured_large, +/area/station/cargo/storage) "bRT" = ( /obj/machinery/conveyor_switch/oneway{ dir = 8; @@ -6417,26 +6920,14 @@ /turf/open/floor/plating, /area/station/maintenance/disposal) "bRW" = ( -/obj/effect/turf_decal/arrows{ - dir = 1 - }, /obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 + dir = 9 }, -/turf/open/floor/iron/dark, +/turf/open/floor/iron/dark/smooth_corner, /area/station/command/gateway) -"bSe" = ( -/obj/machinery/door/airlock{ - name = "Unisex Showers" - }, -/obj/structure/cable, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/restrooms) +"bSg" = ( +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "bSk" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -6460,6 +6951,10 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/security/eva) +"bSt" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/hallway/secondary/construction) "bSu" = ( /obj/item/paint/red{ pixel_x = -7; @@ -6549,12 +7044,25 @@ /obj/effect/spawner/random/structure/crate_abandoned, /turf/open/floor/iron, /area/station/maintenance/hallway/abandoned_recreation) +"bTl" = ( +/obj/structure/closet/firecloset, +/obj/effect/spawner/random/maintenance, +/obj/structure/sign/warning/electric_shock/directional/north, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "bTo" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 }, /turf/open/floor/iron/dark/textured_large, /area/station/security/prison) +"bTp" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, +/obj/machinery/meter, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "bTq" = ( /obj/structure/chair/sofa/corp, /turf/open/floor/carpet/blue, @@ -6581,11 +7089,11 @@ /turf/open/floor/iron, /area/station/engineering/lobby) "bTU" = ( -/obj/effect/turf_decal/siding/green/corner, /obj/machinery/disposal/bin/tagger, -/obj/structure/disposalpipe/trunk{ +/obj/effect/turf_decal/siding/green{ dir = 4 }, +/obj/structure/disposalpipe/trunk, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "bTW" = ( @@ -6595,25 +7103,10 @@ /obj/structure/sign/poster/official/random/directional/west, /turf/open/floor/plating, /area/station/construction/storage_wing) -"bTZ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=21-Central"; - location = "20-Genetics" - }, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) "bUa" = ( /obj/machinery/computer/dna_console, /turf/open/floor/iron/dark/textured_large, /area/station/science/genetics) -"bUb" = ( -/obj/machinery/camera/autoname/directional/west, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/atmos/upper) "bUf" = ( /obj/effect/turf_decal/trimline/dark/arrow_cw{ dir = 8 @@ -6626,28 +7119,13 @@ dir = 8 }, /area/station/hallway/primary/fore) -"bUp" = ( -/obj/effect/turf_decal/tile/dark_blue/opposingcorners, -/obj/structure/urinal/directional/north, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) -"bUr" = ( -/obj/effect/turf_decal/siding{ - dir = 10 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "bUO" = ( -/obj/machinery/computer/records/security, /obj/structure/cable, /obj/structure/disposalpipe/segment{ dir = 6 }, -/turf/open/floor/carpet, +/obj/machinery/photocopier/prebuilt, +/turf/open/floor/wood/tile, /area/station/command/heads_quarters/hop) "bUQ" = ( /obj/effect/spawner/random/trash/graffiti, @@ -6662,34 +7140,37 @@ /obj/structure/table, /turf/open/floor/plating, /area/station/service/kitchen/abandoned) +"bVq" = ( +/obj/structure/bookcase/random/religion, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "bVs" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/disposalpipe/segment{ dir = 10 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) "bVB" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical) "bVI" = ( -/obj/machinery/requests_console/directional/north{ - department = "Head of Security's Desk"; - name = "Head of Security Requests Console"; - pixel_y = -30 - }, /obj/effect/mapping_helpers/requests_console/information, /obj/effect/mapping_helpers/requests_console/announcement, /obj/effect/mapping_helpers/requests_console/assistance, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 }, +/obj/machinery/requests_console/directional/south{ + department = "Head Of Security's Desk"; + name = "Head Of Security Requests Console" + }, /turf/open/floor/wood, /area/station/command/heads_quarters/hos) "bVK" = ( @@ -6706,11 +7187,11 @@ /turf/open/floor/engine/hull/air, /area/station/science/research) "bVS" = ( -/obj/structure/bookcase/random/reference, -/obj/machinery/power/apc/auto_name/directional/south, -/obj/structure/cable, -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron/edge{ + dir = 8 + }, +/area/station/hallway/primary/central) "bVV" = ( /obj/effect/turf_decal/siding/dark, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -6718,7 +7199,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 4 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bVW" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, @@ -6729,6 +7210,19 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/glass, /area/station/science/zoo) +"bWe" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/firealarm/directional/south, +/turf/open/openspace, +/area/station/engineering/atmos/office) +"bWm" = ( +/obj/machinery/light_switch/directional/east, +/obj/effect/landmark/start/assistant, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/commons/storage/primary) "bWo" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, @@ -6747,13 +7241,7 @@ }, /obj/effect/turf_decal/trimline/dark_blue/mid_joiner, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"bWC" = ( -/obj/effect/mapping_helpers/burnt_floor, -/obj/machinery/light/directional/south, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) +/area/station/ai/satellite/interior) "bWE" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ dir = 5 @@ -6768,11 +7256,16 @@ /obj/structure/window/spawner/directional/east, /turf/open/floor/iron/dark, /area/station/medical/cryo) -"bWQ" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) +"bWR" = ( +/obj/structure/fluff/paper/stack{ + dir = 10 + }, +/obj/structure/sign/flag/nanotrasen/directional/north, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "bWY" = ( /obj/structure/lattice/catwalk, /turf/open/space/basic, @@ -6784,20 +7277,23 @@ name = "Abandoned Arcade" }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/iron/dark, /area/station/maintenance/hallway/abandoned_recreation) -"bXg" = ( -/obj/effect/turf_decal/siding/brown{ - dir = 6 - }, -/obj/effect/turf_decal/siding/brown/corner{ +"bXk" = ( +/obj/machinery/duct, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/fore) +"bXl" = ( +/obj/effect/turf_decal/siding/wood{ dir = 1 }, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) +/obj/effect/spawner/random/trash/cigbutt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/wood/tile, +/area/station/security/detectives_office/private_investigators_office) "bXn" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -6810,20 +7306,11 @@ }, /turf/open/floor/iron/checker, /area/station/service/bar) -"bXp" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/obj/structure/railing{ - dir = 1 - }, -/obj/structure/railing, -/turf/open/openspace, -/area/station/engineering/lobby) "bXt" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 9 - }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/effect/turf_decal/trimline/brown/filled/corner{ + dir = 4 + }, /turf/open/floor/iron, /area/station/cargo/miningoffice) "bXy" = ( @@ -6837,13 +7324,6 @@ "bXA" = ( /turf/closed/wall/r_wall, /area/station/security/warden) -"bXH" = ( -/obj/machinery/camera/autoname/directional/west, -/obj/effect/turf_decal/siding/brown{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/commons/dorms) "bXO" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -6856,6 +7336,12 @@ }, /turf/open/floor/iron/dark, /area/station/science/lobby) +"bYd" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "bYe" = ( /obj/structure/table, /obj/item/paper_bin/carbon{ @@ -6882,6 +7368,15 @@ /obj/structure/cable, /turf/open/floor/catwalk_floor/iron_dark, /area/station/maintenance/port/aft) +"bYt" = ( +/obj/effect/spawner/random/techstorage/ai_all, +/obj/effect/turf_decal/tile/red/opposingcorners{ + dir = 1 + }, +/obj/machinery/camera/autoname/directional/south, +/obj/structure/rack, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "bYz" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/sign/poster/official/anniversary_vintage_reprint/directional/south, @@ -6927,6 +7422,11 @@ /obj/item/radio/intercom/directional/east, /turf/open/floor/iron, /area/station/science/explab) +"bZf" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/landmark/blobstart, +/turf/open/floor/engine, +/area/station/maintenance/starboard) "bZo" = ( /obj/effect/turf_decal/trimline/green/filled/line, /obj/effect/turf_decal/trimline/green/filled/mid_joiner, @@ -6936,16 +7436,29 @@ /obj/machinery/door/window/right/directional/west, /turf/open/floor/iron/dark/textured_large, /area/station/medical/virology) -"bZq" = ( -/obj/machinery/washing_machine, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/white, -/area/station/maintenance/starboard/lesser) "bZs" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 5 }, -/obj/structure/reagent_dispensers/fueltank, +/obj/structure/rack, +/obj/item/gps/mining{ + pixel_x = 6; + pixel_y = 2 + }, +/obj/item/gps/mining, +/obj/item/gps/mining{ + pixel_x = -6; + pixel_y = 2 + }, +/obj/item/pickaxe{ + pixel_x = 5 + }, +/obj/item/shovel{ + pixel_x = -5 + }, +/obj/structure/railing{ + dir = 8 + }, /turf/open/floor/iron, /area/station/cargo/miningoffice) "bZt" = ( @@ -6962,6 +7475,30 @@ }, /turf/open/openspace, /area/station/commons/fitness/recreation) +"bZu" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/red{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ + name = "N2O Multideck Adapter"; + dir = 4 + }, +/obj/machinery/meter{ + name = "N2O meter" + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) +"bZw" = ( +/obj/effect/mapping_helpers/burnt_floor, +/obj/structure/cable, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos/office) "bZx" = ( /obj/structure/table, /obj/item/stock_parts/subspace/transmitter, @@ -6981,7 +7518,7 @@ pixel_y = 2 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "bZD" = ( /obj/structure/disposalpipe/segment, /obj/machinery/computer/crew{ @@ -6992,38 +7529,46 @@ }, /turf/open/floor/holofloor/dark, /area/station/command/heads_quarters/cmo) +"bZI" = ( +/obj/structure/table/wood, +/obj/item/paper/crumpled{ + pixel_x = 2; + pixel_y = 7 + }, +/obj/item/pen{ + pixel_x = -4; + pixel_y = 1 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "bZJ" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/trimline/brown/arrow_ccw{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/hallway/primary/starboard) +"bZK" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 8 + }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, /turf/open/floor/iron, -/area/station/hallway/primary/starboard) +/area/station/cargo/storage) "bZN" = ( /obj/machinery/light/directional/south, /turf/open/openspace, /area/station/science/xenobiology) -"bZQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"bZR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/directional/east, -/obj/machinery/space_heater, -/obj/effect/turf_decal/bot, -/turf/open/floor/iron/smooth, -/area/station/engineering/hallway) -"cac" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/turf/open/floor/catwalk_floor, -/area/station/maintenance/starboard/lesser) "cai" = ( /obj/effect/turf_decal/siding/purple/corner{ dir = 1 @@ -7045,6 +7590,17 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/department/science/central) +"cal" = ( +/obj/machinery/power/apc/auto_name/directional/west, +/obj/structure/cable, +/obj/structure/rack, +/obj/effect/spawner/random/techstorage/engineering_all, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/machinery/light/small/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "cam" = ( /obj/structure/table/wood, /obj/machinery/light_switch, @@ -7064,36 +7620,42 @@ /obj/machinery/door/firedoor, /turf/open/floor/iron/dark, /area/station/medical/medbay/lobby) -"cay" = ( +"caB" = ( +/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/duct, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "caE" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 4 - }, -/obj/machinery/camera/autoname/directional/east, +/obj/structure/disposalpipe/segment, +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) +"caF" = ( +/obj/effect/turf_decal/trimline/green/filled/line, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"caF" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +"caK" = ( /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/spawner/random/structure/steam_vent, /turf/open/floor/plating, -/area/station/maintenance/port/fore) +/area/station/maintenance/starboard/fore/upper) "caO" = ( /obj/structure/table, /turf/open/floor/plating, /area/station/maintenance/disposal) "caQ" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 9 +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/obj/machinery/autolathe, -/obj/structure/sign/poster/official/do_not_question/directional/north, -/obj/machinery/wall_healer/directional/west, -/turf/open/floor/iron, +/obj/effect/turf_decal/bot_white, +/obj/effect/spawner/random/structure/crate, +/turf/open/floor/iron/dark/textured_large, /area/station/cargo/storage) "caS" = ( /obj/structure/railing, @@ -7117,22 +7679,26 @@ /area/station/solars/starboard/fore) "cbm" = ( /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) +"cbn" = ( +/obj/structure/table, +/obj/effect/turf_decal/siding/wood{ + dir = 5 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 5 + }, +/obj/item/modular_computer/laptop/preset/civilian{ + pixel_y = 3 + }, +/turf/open/floor/wood/large, +/area/station/engineering/lobby) "cbo" = ( /obj/item/radio/intercom/directional/south, /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/office) -"cbq" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing/corner/end, -/obj/structure/railing/corner/end{ - pixel_y = 2 - }, -/obj/structure/cable/multilayer/multiz, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) "cbt" = ( /obj/effect/turf_decal/siding/dark/corner, /turf/open/floor/iron/dark/telecomms, @@ -7141,29 +7707,31 @@ /obj/machinery/vending/cigarette, /turf/open/floor/plating, /area/station/maintenance/port) -"cbB" = ( -/obj/machinery/requests_console/directional/west{ - department = "Security"; - name = "Security Requests Console" - }, +"cbA" = ( /obj/structure/table, -/obj/effect/mapping_helpers/requests_console/assistance, -/obj/effect/mapping_helpers/requests_console/supplies, -/obj/machinery/recharger{ - pixel_x = 10; - pixel_y = 8 - }, -/obj/effect/turf_decal/trimline/red/filled/line{ +/obj/machinery/camera/autoname/directional/west, +/obj/machinery/airalarm/directional/west, +/obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 10 }, -/obj/structure/reagent_dispensers/wall/peppertank/directional/south, -/turf/open/floor/iron/dark, -/area/station/security/checkpoint/engineering) +/obj/item/geiger_counter{ + pixel_y = 6; + pixel_x = -3 + }, +/obj/item/radio{ + pixel_x = 4; + pixel_y = 5 + }, +/obj/machinery/light/small/directional/south, +/turf/open/floor/iron, +/area/station/engineering/gravity_generator) "cbC" = ( /obj/machinery/suit_storage_unit/standard_unit, -/obj/machinery/status_display/evac/directional/south, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/siding/dark, +/obj/effect/turf_decal/box, +/obj/structure/sign/poster/official/random/directional/south, +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "cbI" = ( /obj/machinery/vatgrower{ dir = 4 @@ -7185,23 +7753,37 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"cbS" = ( -/obj/structure/flora/bush/fullgrass/style_random, -/obj/structure/flora/bush/ferny/style_random, -/obj/structure/flora/bush/pale/style_random, -/turf/open/floor/grass, -/area/station/maintenance/starboard/fore) "cbT" = ( /turf/closed/wall/r_wall, /area/station/command/heads_quarters/ce) "cbV" = ( +/obj/structure/window/reinforced/spawner/directional/south, /obj/machinery/conveyor{ dir = 8; id = "HoPsToy" }, -/obj/structure/window/reinforced/spawner/directional/south, -/turf/open/floor/carpet, +/obj/machinery/door/window/brigdoor/right/directional/east{ + req_access = list("hop") + }, +/turf/open/floor/iron/dark, /area/station/command/heads_quarters/hop) +"cca" = ( +/obj/structure/table, +/obj/machinery/cell_charger, +/obj/item/stock_parts/power_store/cell/high{ + charge = 100; + maxcharge = 15000 + }, +/obj/item/clothing/glasses/meson{ + pixel_y = 8 + }, +/obj/item/clothing/glasses/meson{ + pixel_y = 8 + }, +/obj/structure/sign/warning/no_smoking/directional/north, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "ccc" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -7245,11 +7827,7 @@ req_access = list("ai_upload") }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) -"ccy" = ( -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/iron/dark/textured_large, -/area/station/maintenance/starboard/aft) +/area/station/ai/upload/chamber) "ccH" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -7267,11 +7845,6 @@ "ccN" = ( /turf/closed/wall, /area/station/medical/surgery) -"ccV" = ( -/obj/effect/mapping_helpers/burnt_floor, -/obj/effect/landmark/event_spawn, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) "ccY" = ( /obj/machinery/door/airlock/medical{ name = "Coroner's Office" @@ -7282,22 +7855,6 @@ /obj/effect/mapping_helpers/airlock/access/all/medical/morgue, /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) -"ccZ" = ( -/obj/effect/turf_decal/siding/brown{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/disposalpipe/junction{ - dir = 8 - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=18-Bathroom"; - location = "17-Dorms" - }, -/turf/open/floor/iron, -/area/station/commons/dorms) "cdc" = ( /turf/closed/wall, /area/station/service/kitchen/coldroom) @@ -7309,9 +7866,15 @@ }, /turf/open/openspace, /area/station/maintenance/port/aft) -"cdi" = ( -/turf/closed/wall, -/area/station/engineering/gravity_generator) +"cdo" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 4 + }, +/obj/machinery/camera/autoname/directional/east, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/engineering/lobby) "cdq" = ( /obj/effect/turf_decal/weather/dirt{ dir = 8 @@ -7329,22 +7892,14 @@ /obj/effect/landmark/event_spawn, /turf/open/floor/glass/reinforced, /area/station/service/library) -"cdP" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/effect/decal/cleanable/crayon{ - icon_state = "revolution"; - name = "graffiti"; - paint_colour = "#FF0000"; - pixel_y = 32 +"cdJ" = ( +/obj/structure/cable, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"cea" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/obj/machinery/holopad, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "ceb" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/wood, @@ -7357,9 +7912,6 @@ "ceh" = ( /obj/structure/chair, /obj/item/radio/intercom/directional/north, -/obj/structure/disposalpipe/segment{ - dir = 6 - }, /turf/open/floor/wood, /area/station/maintenance/starboard/central) "cel" = ( @@ -7375,17 +7927,6 @@ }, /turf/open/floor/iron/dark, /area/station/science/cytology) -"cer" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper/stack{ - desc = "A stack of various papers, absolutely unreadable due to scorch marks and aging."; - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "ces" = ( /obj/structure/toilet{ dir = 8; @@ -7401,12 +7942,23 @@ /obj/machinery/newscaster/directional/north, /turf/open/floor/iron/freezer, /area/station/commons/toilet/restrooms) -"ceB" = ( -/obj/structure/chair/comfy{ +"cet" = ( +/obj/structure/lattice/catwalk, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) +"ceC" = ( +/obj/machinery/camera/autoname/directional/north, +/obj/machinery/door/firedoor/heavy, +/obj/effect/turf_decal/trimline/dark_red/filled/warning{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark_red/filled/warning{ + dir = 8 + }, +/turf/open/floor/iron/dark/textured_half{ dir = 1 }, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/lesser) +/area/station/cargo/storage) "ceG" = ( /turf/closed/wall/r_wall, /area/station/security/checkpoint/customs) @@ -7466,20 +8018,6 @@ /obj/machinery/light/dim/directional/south, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/commissary) -"cfs" = ( -/obj/machinery/button/elevator{ - id = "catwalk_engi"; - pixel_y = -24 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8; - pixel_x = -2 - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "cfx" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -7497,38 +8035,12 @@ /obj/machinery/door/firedoor, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) -"cfI" = ( -/obj/structure/cable, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/item/radio/intercom/directional/west, +"cfS" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/engineering/storage_shared) -"cfP" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 4 - }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/stripes/corner, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"cfQ" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/spawner/random/structure/steam_vent, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"cfT" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 4 - }, -/obj/machinery/light/warm/directional/east, /turf/open/floor/iron, -/area/station/engineering/lobby) +/area/station/cargo/storage) "cgg" = ( /obj/effect/decal/remains/human, /obj/item/clothing/head/utility/hardhat/welding/atmos{ @@ -7544,39 +8056,75 @@ /obj/structure/extinguisher_cabinet/directional/east, /turf/open/floor/iron/small, /area/station/security/mechbay) +"cgG" = ( +/obj/structure/chair/pew/right{ + dir = 4 + }, +/obj/effect/landmark/start/hangover, +/turf/open/floor/carpet, +/area/station/maintenance/starboard) +"cgI" = ( +/obj/machinery/atmospherics/pipe/smart/simple/pink/visible/layer2{ + dir = 1 + }, +/obj/machinery/door/airlock/public/glass/incinerator/atmos_interior, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 1 + }, +/obj/effect/mapping_helpers/airlock/locked, +/obj/machinery/atmospherics/pipe/smart/simple/dark/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/effect/landmark/navigate_destination/incinerator, +/turf/open/floor/engine, +/area/station/engineering/atmos/upper) "cgK" = ( /obj/structure/cable, /turf/closed/wall, /area/station/maintenance/solars/port/aft) "cgX" = ( -/obj/structure/window/reinforced/spawner/directional/south, -/obj/structure/ladder, /obj/machinery/camera/autoname/directional/east, -/turf/open/floor/iron/dark, -/area/station/command/heads_quarters/qm) +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 6 + }, +/obj/structure/railing, +/obj/item/multitool{ + pixel_x = -8; + pixel_y = 3 + }, +/obj/structure/table, +/obj/item/storage/box/lights/mixed{ + pixel_x = 4; + pixel_y = 11 + }, +/obj/item/hand_labeler_refill{ + pixel_x = 7; + pixel_y = -2 + }, +/turf/open/floor/iron, +/area/station/cargo/storage) "chb" = ( /obj/item/vending_refill/coffee, /turf/open/floor/plating, /area/station/maintenance/disposal) -"chc" = ( -/obj/machinery/door/airlock/atmos/glass{ - name = "Atmospherics" - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/upper) "chd" = ( /obj/structure/ladder, /obj/effect/turf_decal/bot, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "chf" = ( /obj/machinery/holopad, /turf/open/floor/iron/dark, /area/station/security/office) +"chg" = ( +/obj/structure/lattice, +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/turf/open/openspace, +/area/station/maintenance/starboard/upper) "chr" = ( /obj/machinery/holopad, /turf/open/floor/wood/tile, @@ -7586,23 +8134,16 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"chz" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 +"chv" = ( +/turf/open/floor/iron/stairs{ + dir = 1 }, -/obj/effect/spawner/structure/window/reinforced/tinted, +/area/station/maintenance/aft) +"chz" = ( +/obj/effect/spawner/random/structure/closet_maintenance, +/obj/effect/spawner/random/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/central) -"chG" = ( -/obj/effect/mapping_helpers/burnt_floor, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) -"chI" = ( -/obj/effect/landmark/start/hangover, -/obj/machinery/light_switch/directional/north, -/turf/open/floor/glass, -/area/station/commons/fitness/recreation) "chO" = ( /obj/structure/table/glass, /obj/item/reagent_containers/cup/glass/coffee{ @@ -7618,36 +8159,18 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/turf_decal/arrows{ - dir = 1 - }, /obj/machinery/power/apc/auto_name/directional/east, /obj/structure/cable, /obj/machinery/light/directional/east, -/turf/open/floor/iron/dark, -/area/station/command/gateway) -"chR" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Mix Bypass" - }, -/obj/effect/turf_decal/trimline/blue, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"chU" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Crew Quarters Access" - }, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 2 +/turf/open/floor/iron/dark/smooth_edge{ + dir = 4 }, -/obj/effect/landmark/navigate_destination/dorms, -/turf/open/floor/iron/edge, -/area/station/commons/dorms) +/area/station/command/gateway) +"chV" = ( +/obj/effect/decal/cleanable/dirt, +/obj/item/toy/basketball, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "chX" = ( /obj/machinery/camera/directional/south{ c_tag = "Science - Xenobiology Big Pen Top"; @@ -7655,11 +8178,6 @@ }, /turf/open/openspace, /area/station/science/xenobiology) -"chZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "cib" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -7667,26 +8185,37 @@ /obj/structure/disposalpipe/segment{ dir = 2 }, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) "cif" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/wood, +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) "cil" = ( /obj/item/radio/intercom/directional/south, /turf/closed/wall/r_wall, /area/station/engineering/main) -"ciS" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 4 +"ciN" = ( +/obj/effect/turf_decal/siding{ + dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/maintenance/port) +/obj/effect/turf_decal/trimline/white/line, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) +"ciT" = ( +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "cjb" = ( /obj/structure/frame/computer{ anchored = 1 @@ -7711,16 +8240,47 @@ /turf/open/floor/wood/large, /area/station/medical/psychology) "cjE" = ( -/obj/machinery/computer/rdconsole, +/obj/machinery/computer/rdconsole/unlocked, /turf/open/floor/wood, /area/station/command/heads_quarters/rd) -"cjL" = ( -/obj/machinery/computer/station_alert{ +"cjQ" = ( +/obj/item/clothing/under/color/grey, +/obj/item/clothing/head/cone{ + pixel_x = -4; + pixel_y = -13 + }, +/obj/item/clothing/head/cone{ + pixel_x = -4; + pixel_y = -13 + }, +/obj/structure/rack, +/obj/machinery/camera/autoname/directional/west, +/obj/item/flashlight, +/obj/item/radio/intercom/directional/north, +/obj/item/wrench, +/obj/effect/turf_decal/tile/yellow{ dir = 1 }, -/obj/item/radio/intercom/directional/east, -/turf/open/floor/engine, -/area/station/command/heads_quarters/ce) +/turf/open/floor/iron, +/area/station/commons/storage/primary) +"cjW" = ( +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/green/filled/mid_joiner{ + dir = 8 + }, +/obj/structure/disposalpipe/segment{ + dir = 2 + }, +/obj/structure/cable, +/turf/open/floor/iron/textured_large, +/area/station/medical/virology) +"cjY" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/item/kirbyplants/random, +/turf/open/floor/iron, +/area/station/engineering/lobby) "cjZ" = ( /obj/machinery/computer/security/telescreen/cmo/directional/north, /obj/effect/landmark/start/chief_medical_officer, @@ -7741,13 +8301,19 @@ }, /turf/open/floor/holofloor/dark, /area/station/command/heads_quarters/cmo) +"cka" = ( +/obj/structure/frame, +/obj/structure/sign/poster/contraband/shamblers_juice/directional/east, +/turf/open/floor/eighties, +/area/station/maintenance/department/crew_quarters/dorms) "ckd" = ( /obj/machinery/suit_storage_unit/standard_unit, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 +/obj/effect/turf_decal/siding/dark{ + dir = 6 }, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/box, +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "cke" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 4 @@ -7760,10 +8326,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) -"ckn" = ( -/obj/machinery/light/floor, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) "ckp" = ( /obj/machinery/chem_master/condimaster{ name = "CondiMaster Neo" @@ -7774,6 +8336,14 @@ /obj/machinery/hydroponics/soil, /turf/open/misc/sandy_dirt, /area/station/service/hydroponics/garden/abandoned) +"ckF" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 1 + }, +/obj/structure/cable, +/obj/structure/closet/firecloset, +/turf/open/floor/iron, +/area/station/engineering/lobby) "ckG" = ( /obj/structure/table, /obj/item/clothing/glasses/sunglasses/big{ @@ -7796,7 +8366,9 @@ /area/station/hallway/primary/port) "ckZ" = ( /obj/structure/cable, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 1 + }, /area/station/hallway/primary/central) "cla" = ( /obj/effect/turf_decal/trimline/red/filled/line{ @@ -7824,38 +8396,30 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"clh" = ( -/obj/effect/mapping_helpers/broken_floor, +"clk" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/fluff/paper/stack{ - dir = 9 - }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/filingcabinet/chestdrawer, -/obj/item/folder/yellow, -/obj/item/hand_labeler_refill{ - pixel_x = -1 - }, -/obj/structure/fluff/paper{ - dir = 1 - }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, +/area/station/maintenance/starboard/central) +"clq" = ( +/obj/structure/sign/warning/vacuum/directional/north, +/turf/open/floor/plating/airless, /area/station/maintenance/starboard/aft) "cly" = ( -/obj/machinery/light/directional/south, -/turf/open/floor/plating, +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/loading_area/red{ + dir = 4 + }, +/turf/open/floor/iron/dark/smooth_edge{ + dir = 8 + }, /area/station/cargo/storage) "clB" = ( /obj/structure/lattice/catwalk, /obj/machinery/light/directional/west, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) -"clF" = ( -/obj/structure/table, -/obj/effect/spawner/random/bureaucracy/paper, -/obj/structure/sign/poster/contraband/the_big_gas_giant_truth/directional/west, -/turf/open/floor/wood, -/area/station/commons/dorms) +/area/station/ai/satellite/chamber) "clG" = ( /obj/effect/turf_decal/siding/dark{ dir = 8 @@ -7871,20 +8435,26 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "clT" = ( /obj/item/geiger_counter, /turf/open/floor/plating, /area/station/maintenance/port/greater) +"clX" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 1 + }, +/obj/structure/lattice/catwalk, +/turf/open/space/basic, +/area/space/nearstation) "clZ" = ( -/obj/effect/spawner/random/vending/colavend, -/obj/machinery/airalarm/directional/south, -/turf/open/floor/wood, -/area/station/command/meeting_room/council) -"cme" = ( -/obj/effect/spawner/random/structure/crate, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "cmf" = ( /obj/item/radio/intercom/directional/north, /turf/open/openspace, @@ -7896,11 +8466,20 @@ /turf/open/floor/iron, /area/station/science/robotics/lab) "cmp" = ( -/obj/effect/turf_decal/siding/white/corner{ - dir = 8 +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/structure/chair/office/light{ + dir = 4 }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/hallway/primary/central) +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"cmt" = ( +/obj/structure/table, +/obj/structure/sign/poster/contraband/energy_swords/directional/north, +/obj/item/clothing/head/costume/tv_head{ + pixel_y = 8 + }, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/department/crew_quarters/dorms) "cmK" = ( /obj/structure/flora/bush/fullgrass/style_random, /obj/structure/flora/bush/pale/style_random, @@ -7920,10 +8499,6 @@ /obj/machinery/door/firedoor, /turf/open/floor/iron, /area/station/service/chapel) -"cmO" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/closed/wall, -/area/station/maintenance/starboard/lesser) "cmS" = ( /turf/closed/wall/r_wall, /area/station/security/mechbay) @@ -7935,15 +8510,26 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood, /area/station/security/courtroom) +"cmW" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "cnw" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, /turf/open/openspace, /area/station/hallway/primary/starboard) +"cny" = ( +/obj/structure/window/reinforced/spawner/directional/east, +/obj/structure/closet/emcloset, +/obj/effect/turf_decal/tile/dark_blue/fourcorners, +/turf/open/floor/iron/dark, +/area/station/engineering/transit_tube) "cnL" = ( -/obj/effect/turf_decal/siding/white{ - dir = 10 +/obj/effect/turf_decal/siding/blue{ + dir = 8 }, +/obj/effect/turf_decal/arrows, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "cnP" = ( @@ -7952,6 +8538,22 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/smooth_large, /area/station/security/lockers) +"cnT" = ( +/obj/machinery/firealarm/directional/south, +/obj/machinery/modular_computer/preset/cargochat/engineering{ + dir = 1 + }, +/obj/machinery/requests_console/directional/west{ + name = "Engineering Requests Console" + }, +/obj/effect/mapping_helpers/requests_console/supplies, +/obj/effect/mapping_helpers/requests_console/assistance, +/turf/open/floor/wood/large, +/area/station/engineering/lobby) +"cnU" = ( +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "coc" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/curtain/bounty, @@ -7970,13 +8572,6 @@ /obj/structure/railing/corner, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) -"cot" = ( -/obj/machinery/atmospherics/components/trinary/filter/layer2{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "cox" = ( /obj/structure/railing, /obj/machinery/door/firedoor/border_only, @@ -8016,6 +8611,16 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/textured_large, /area/station/security/prison) +"cpl" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/commons/fitness/recreation) "cps" = ( /obj/machinery/newscaster/directional/west, /obj/structure/hedge, @@ -8023,29 +8628,21 @@ /turf/open/floor/wood/large, /area/station/medical/break_room) "cpy" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 +/obj/structure/chair/comfy/black{ + dir = 4 }, -/turf/open/floor/carpet, -/area/station/command/bridge) +/turf/open/floor/carpet/executive, +/area/station/command/meeting_room/council) "cpA" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/smooth_large, /area/station/science/ordnance/storage) -"cpD" = ( -/obj/structure/table, -/obj/effect/spawner/random/entertainment/musical_instrument, -/obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/broken_floor, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"cpE" = ( -/obj/structure/table/wood, -/obj/item/storage/fancy/candle_box{ - pixel_y = 5 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) +"cpF" = ( +/obj/item/cigbutt, +/obj/machinery/light/small/directional/east, +/obj/structure/sign/clock/directional/east, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "cpG" = ( /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 @@ -8059,17 +8656,18 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/science/cytology) -"cpN" = ( -/obj/machinery/firealarm/directional/south, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) "cpQ" = ( -/obj/structure/chair{ - dir = 1 +/obj/machinery/airalarm/directional/north, +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 2 + }, +/obj/structure/sign/clock/directional/west, +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 9 }, -/obj/machinery/light/directional/west, /turf/open/floor/iron, -/area/station/hallway/secondary/exit/departure_lounge) +/area/station/cargo/miningoffice) "cqe" = ( /obj/effect/landmark/start/medical_doctor, /obj/effect/turf_decal/siding/dark_blue{ @@ -8167,7 +8765,7 @@ /turf/open/floor/iron/white/smooth_edge{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "crh" = ( /obj/structure/flora/bush/pale/style_random, /obj/structure/flora/bush/ferny/style_random, @@ -8190,16 +8788,10 @@ /area/station/service/library/private) "crk" = ( /obj/machinery/door/firedoor, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) -"crn" = ( -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 4 +/turf/open/floor/iron/edge{ + dir = 1 }, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/area/station/hallway/primary/central) "crs" = ( /obj/structure/lattice/catwalk, /obj/structure/window/reinforced/spawner/directional/south, @@ -8213,18 +8805,10 @@ /obj/machinery/door/firedoor, /turf/open/floor/iron/dark/herringbone, /area/station/commons/lounge) -"crE" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"crG" = ( -/obj/machinery/door/airlock/maintenance, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +"crP" = ( +/obj/effect/spawner/random/engineering/tank, /turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/area/station/maintenance/department/crew_quarters/dorms) "crS" = ( /obj/structure/sign/poster/contraband/atmosia_independence/directional/north{ desc = "The captain is expressely FORBIDDEN here. Only those who took from him are allowed."; @@ -8245,11 +8829,12 @@ /turf/open/floor/engine, /area/station/service/hydroponics) "csb" = ( -/obj/machinery/door/poddoor/shutters{ - id = "qm_cargobay"; - name = "Cargo Bay Shutters" - }, /obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/shutters/window{ + dir = 8; + name = "Cargo Bay Shutters"; + id = "qm_cargobay" + }, /turf/open/floor/plating, /area/station/cargo/storage) "csd" = ( @@ -8290,6 +8875,10 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/wood, /area/station/hallway/secondary/service) +"csr" = ( +/obj/structure/stairs/east, +/turf/open/floor/iron, +/area/station/commons/dorms) "cst" = ( /obj/effect/turf_decal/trimline/red/filled/mid_joiner{ dir = 1 @@ -8318,7 +8907,7 @@ /turf/open/floor/iron/dark/textured_edge{ dir = 4 }, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "csC" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 8 @@ -8330,19 +8919,13 @@ /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) "csE" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "cargounload" +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 8 }, -/obj/effect/turf_decal/trimline/brown/filled/corner{ +/obj/effect/spawner/random/maintenance, +/obj/effect/turf_decal/trimline/brown/filled/warning{ dir = 4 }, -/obj/machinery/conveyor_switch/oneway{ - id = "cargounload"; - name = "Unloading Conveyor"; - pixel_x = -13; - pixel_y = -4 - }, /turf/open/floor/iron, /area/station/cargo/storage) "csF" = ( @@ -8363,39 +8946,21 @@ /obj/effect/mapping_helpers/airlock/access/all/supply/general, /turf/open/floor/plating, /area/station/cargo/storage) -"csN" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ - dir = 10 - }, -/obj/structure/railing/corner{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/openspace, -/area/station/engineering/lobby) -"csP" = ( -/obj/structure/sign/poster/contraband/grey_tide/directional/north, -/obj/structure/rack, -/obj/item/storage/toolbox/electrical{ - pixel_y = -2 - }, -/obj/item/storage/box/shipping{ - pixel_x = -11; - pixel_y = 6 +"csS" = ( +/obj/machinery/disposal/delivery_chute{ + dir = 8; + name = "Outside Cargo" }, -/obj/item/clothing/head/cone{ - pixel_x = -4; - pixel_y = -13 +/obj/effect/turf_decal/delivery, +/obj/structure/window/spawner/directional/north, +/obj/structure/window/spawner/directional/south, +/obj/structure/disposalpipe/trunk{ + dir = 8 }, -/turf/open/floor/iron, -/area/station/commons/storage/primary) -"csS" = ( -/obj/structure/disposalpipe/segment, -/obj/effect/spawner/structure/window/reinforced/tinted, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/obj/structure/sign/departments/cargo/directional/east, +/obj/structure/plasticflaps, +/turf/open/floor/iron/textured_large, +/area/station/cargo/sorting) "csW" = ( /obj/machinery/door/firedoor/border_only{ dir = 4 @@ -8422,20 +8987,6 @@ dir = 8 }, /area/station/hallway/primary/fore) -"cth" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/decal/cleanable/crayon{ - icon_state = "body"; - name = "body"; - pixel_y = 7 - }, -/obj/effect/decal/cleanable/blood/old, -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "ctl" = ( /obj/structure/table/wood, /obj/effect/decal/cleanable/dirt, @@ -8446,6 +8997,9 @@ "ctm" = ( /obj/machinery/light/directional/west, /obj/structure/sign/departments/aiupload/directional/west, +/obj/effect/turf_decal/trimline/dark/arrow_cw{ + dir = 8 + }, /turf/open/floor/iron, /area/station/hallway/primary/aft) "ctE" = ( @@ -8463,6 +9017,12 @@ }, /turf/open/floor/iron/dark, /area/station/security/brig) +"ctL" = ( +/obj/machinery/holopad, +/obj/structure/disposalpipe/segment, +/obj/structure/cable, +/turf/open/floor/iron/dark/small, +/area/station/command/heads_quarters/ce) "ctN" = ( /obj/structure/reagent_dispensers/watertank, /turf/open/floor/plating, @@ -8480,31 +9040,29 @@ /area/station/maintenance/port/aft) "cud" = ( /obj/machinery/conveyor{ - dir = 4; + dir = 1; id = "cargoload" }, -/obj/effect/turf_decal/trimline/brown/filled/line, +/obj/effect/turf_decal/stripes/end, /turf/open/floor/iron, /area/station/cargo/storage) +"cuL" = ( +/obj/effect/turf_decal/siding/dark{ + dir = 5 + }, +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "cuQ" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /turf/open/floor/iron/dark, /area/station/science/lobby) -"cuT" = ( -/obj/machinery/light/directional/east, -/obj/structure/railing{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 5 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) "cuY" = ( /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 4 + }, /area/station/hallway/primary/central) "cvj" = ( /obj/machinery/door/airlock/external{ @@ -8513,6 +9071,15 @@ /obj/effect/landmark/navigate_destination/dockescpod, /turf/open/floor/plating, /area/station/hallway/secondary/entry) +"cvq" = ( +/obj/structure/table/wood, +/obj/item/phone{ + desc = "Supposedly a direct line to Nanotrasen Central Command. It's not even plugged in."; + pixel_x = -3; + pixel_y = 5 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "cvH" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -8520,6 +9087,12 @@ /obj/structure/cable, /turf/open/floor/iron/dark/textured_large, /area/station/security/prison) +"cvM" = ( +/obj/structure/chair/pew/left{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/station/maintenance/starboard) "cvP" = ( /turf/closed/wall/r_wall, /area/station/command/meeting_room/council) @@ -8541,6 +9114,16 @@ }, /turf/open/floor/iron/checker, /area/station/service/bar/backroom) +"cwe" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/engineering/lobby) "cwf" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -8560,7 +9143,9 @@ /area/station/hallway/secondary/entry) "cwq" = ( /obj/structure/extinguisher_cabinet/directional/east, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 4 + }, /area/station/hallway/primary/central) "cwu" = ( /obj/structure/filingcabinet, @@ -8569,6 +9154,22 @@ }, /turf/open/floor/iron/dark, /area/station/security/checkpoint/science) +"cwy" = ( +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 1 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) +"cwA" = ( +/obj/structure/sign/directions/engineering/directional/east{ + dir = 1; + pixel_x = 0 + }, +/turf/closed/wall, +/area/station/maintenance/starboard/central) "cwL" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/closed/wall, @@ -8624,6 +9225,16 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"cxs" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Storage Room" + }, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 1 + }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/port) "cxD" = ( /obj/effect/turf_decal/trimline/blue/filled/end{ dir = 1 @@ -8646,19 +9257,6 @@ /obj/structure/sign/poster/contraband/missing_gloves, /turf/closed/wall, /area/station/maintenance/port) -"cxL" = ( -/obj/structure/railing{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet/black, -/area/station/service/library/private) -"cxQ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron, -/area/station/commons/dorms) "cxU" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, @@ -8672,8 +9270,12 @@ }, /obj/structure/rack, /obj/effect/spawner/random/armory/disablers, +/obj/machinery/camera/motion{ + c_tag = "Armory - Internal"; + dir = 8 + }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "cyd" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/bodycontainer/crematorium{ @@ -8694,6 +9296,14 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) +"cyD" = ( +/obj/structure/sign/poster/official/random/directional/north, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) "cyG" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -8729,32 +9339,19 @@ /obj/structure/sign/eyechart/directional/east, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"cyN" = ( -/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ - dir = 8 - }, -/obj/machinery/meter, -/obj/effect/turf_decal/stripes/corner, -/obj/effect/turf_decal/stripes/line{ - dir = 8; - pixel_x = -2 - }, +"cyO" = ( +/obj/machinery/field/generator, +/obj/effect/turf_decal/bot_white, /turf/open/floor/engine, -/area/station/engineering/supermatter/room) +/area/station/engineering/supermatter/room/upper) "cyT" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, /area/station/maintenance/hallway/abandoned_recreation) -"cyW" = ( -/obj/effect/turf_decal/tile/blue/half/contrasted{ - dir = 1 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "czk" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -8763,6 +9360,7 @@ "czp" = ( /obj/machinery/light/floor, /obj/structure/cat_house, +/obj/effect/turf_decal/siding/green, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "czs" = ( @@ -8802,6 +9400,10 @@ dir = 1 }, /area/station/hallway/secondary/entry) +"czx" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "czF" = ( /obj/structure/railing/corner{ dir = 1 @@ -8810,13 +9412,17 @@ dir = 1 }, /obj/structure/cable, -/obj/effect/turf_decal/tile/green/opposingcorners{ - dir = 1 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/effect/turf_decal/trimline/dark_blue/filled/corner{ + dir = 1 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) +"czG" = ( +/obj/machinery/duct, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "czK" = ( /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/service/kitchen, @@ -8837,18 +9443,9 @@ name = "\improper APLU \"Cargostormer 3\"" }, /obj/effect/decal/cleanable/dirt, +/obj/machinery/firealarm/directional/east, /turf/open/floor/iron/recharge_floor, /area/station/cargo/warehouse) -"cAc" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/structure/railing/corner/end, -/obj/structure/railing{ - dir = 8 - }, -/obj/machinery/light/directional/east, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/storage_shared) "cAh" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/curtain/cloth, @@ -8871,14 +9468,6 @@ /obj/machinery/light/directional, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) -"cAv" = ( -/obj/effect/turf_decal/trimline/purple/filled/line{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) "cAz" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -8892,18 +9481,23 @@ /obj/effect/turf_decal/tile/red/fourcorners, /turf/open/floor/iron/dark, /area/station/security/brig) +"cAG" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/camera/autoname/directional/north, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "cAH" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 8 }, -/obj/structure/table/reinforced, -/obj/machinery/microwave/engineering, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/floor/iron/textured, /area/station/cargo/storage) -"cAI" = ( -/obj/structure/fireaxecabinet/directional/east, -/turf/open/floor/glass/reinforced/plasma, -/area/station/engineering/atmos/project) "cAM" = ( /obj/structure/railing{ dir = 8 @@ -8923,18 +9517,13 @@ /turf/open/floor/iron, /area/station/hallway/primary/port) "cAW" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "HoPsToy" - }, -/obj/structure/window/reinforced/spawner/directional/south, -/obj/machinery/door/firedoor/border_only{ - dir = 4 - }, -/obj/machinery/door/window/brigdoor/right/directional/east{ - req_access = list("hop") +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/siding/wood{ + dir = 9 }, -/turf/open/floor/carpet, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) "cBc" = ( /obj/effect/turf_decal/siding/wood, @@ -8973,10 +9562,36 @@ /obj/machinery/firealarm/directional/east, /turf/open/floor/wood, /area/station/service/library/printer) -"cBu" = ( -/obj/structure/sign/warning/vacuum/directional/north, -/turf/open/floor/plating/airless, -/area/station/maintenance/starboard/lesser) +"cBl" = ( +/obj/effect/decal/cleanable/glitter, +/obj/effect/decal/cleanable/blood/oil, +/obj/effect/spawner/random/maintenance/two, +/obj/structure/rack, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"cBs" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/abandoned, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/aft) +"cBv" = ( +/obj/machinery/power/emitter/prototype{ + desc = "Hell yeah."; + dir = 4; + name = "Betsy" + }, +/obj/effect/turf_decal/delivery/white{ + color = "#52B4E9" + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "cBA" = ( /obj/machinery/door/poddoor/preopen{ id = "Prison Gate"; @@ -9010,6 +9625,14 @@ }, /turf/open/floor/iron/dark, /area/station/commons/storage/art) +"cBF" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/disposalpipe/junction/yjunction{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "cBT" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -9032,14 +9655,24 @@ }, /turf/open/floor/holofloor/dark, /area/station/command/heads_quarters/cmo) -"cBY" = ( -/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ - dir = 9 +"cBU" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/obj/effect/mapping_helpers/airlock/access/all/supply/qm, +/obj/machinery/door/airlock/mining{ + name = "Quartermaster's Office" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) +"cCb" = ( +/obj/machinery/duct, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet/restrooms) "cCj" = ( /obj/machinery/door/firedoor/border_only{ dir = 4 @@ -9068,6 +9701,22 @@ }, /turf/open/floor/iron/dark/diagonal, /area/station/service/theater) +"cCo" = ( +/obj/structure/lattice/catwalk, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/openspace, +/area/station/maintenance/starboard/upper) +"cCp" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ + dir = 4; + initialize_directions = 4 + }, +/obj/effect/turf_decal/bot_red, +/obj/structure/sign/warning/hot_temp/directional/west, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos/office) "cCq" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 10 @@ -9078,11 +9727,6 @@ }, /turf/open/floor/iron/dark/textured, /area/station/construction/mining/aux_base) -"cCr" = ( -/obj/structure/table/wood/poker, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) "cCt" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -9098,12 +9742,6 @@ }, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"cCv" = ( -/obj/structure/cable, -/obj/structure/lattice/catwalk, -/obj/structure/sign/poster/contraband/random/directional/west, -/turf/open/water, -/area/station/maintenance/starboard/fore) "cCx" = ( /obj/structure/stairs/west, /obj/structure/railing, @@ -9112,29 +9750,15 @@ }, /turf/open/floor/plating, /area/station/maintenance/port) -"cCA" = ( -/obj/effect/landmark/event_spawn, -/obj/machinery/bookbinder, -/turf/open/floor/wood, -/area/station/service/library/printer) -"cCI" = ( -/obj/machinery/door/airlock/external, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "cCM" = ( /turf/open/openspace, /area/station/engineering/lobby) "cCN" = ( -/obj/effect/turf_decal/trimline/brown/filled/line, -/obj/structure/chair/sofa/left/brown{ - dir = 1 - }, /obj/machinery/newscaster/directional/south, -/obj/effect/landmark/start/shaft_miner, +/obj/machinery/conveyor{ + dir = 8; + id = "mining" + }, /turf/open/floor/iron/textured, /area/station/cargo/storage) "cCX" = ( @@ -9153,6 +9777,15 @@ /obj/machinery/light/directional/east, /turf/open/floor/iron, /area/station/science/robotics/lab) +"cDd" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/chair{ + dir = 8; + pixel_y = -2 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "cDq" = ( /obj/machinery/chem_master, /obj/structure/sign/warning/secure_area/directional/west, @@ -9172,30 +9805,18 @@ /obj/structure/cable, /turf/open/floor/iron/textured_large, /area/station/security/prison) -"cDA" = ( -/obj/effect/spawner/random/trash/janitor_supplies, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "cDB" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/holopad, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/surgery) -"cDC" = ( -/obj/machinery/power/apc/auto_name/directional/north, -/obj/structure/cable, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ +"cDF" = ( +/obj/machinery/camera/autoname/directional/south, +/obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tcomms) -"cDU" = ( -/obj/effect/turf_decal/bot, -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/machinery/light/directional/west, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/atmos/upper) +/turf/open/floor/iron/freezer, +/area/station/engineering/atmos/pumproom) "cDY" = ( /obj/machinery/light/small/directional/west, /obj/structure/rack, @@ -9227,13 +9848,23 @@ }, /turf/open/floor/iron, /area/station/engineering/storage_shared) -"cEf" = ( -/obj/structure/chair/pew/right{ - dir = 4 +"cEj" = ( +/obj/structure/table/reinforced, +/obj/item/stamp/denied{ + pixel_x = 7; + pixel_y = 8 }, -/obj/effect/landmark/start/hangover, -/turf/open/floor/carpet, -/area/station/maintenance/starboard/lesser) +/obj/item/stamp/granted{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/radio/intercom/directional/north, +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 1 + }, +/obj/machinery/camera/autoname/directional/north, +/turf/open/floor/iron, +/area/station/cargo/storage) "cEm" = ( /obj/structure/rack, /obj/item/storage/box/gloves{ @@ -9242,11 +9873,6 @@ /obj/item/storage/box/disks, /turf/open/floor/iron/dark/textured_large, /area/station/science/genetics) -"cEn" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/holopad, -/turf/open/floor/plating, -/area/station/engineering/storage_shared) "cEH" = ( /obj/structure/table, /obj/item/stock_parts/power_store/cell/high{ @@ -9270,11 +9896,21 @@ /turf/open/floor/wood, /area/station/command/teleporter) "cER" = ( -/obj/effect/turf_decal/tile/brown{ +/obj/effect/turf_decal/siding/green{ dir = 1 }, -/turf/open/floor/iron/dark, +/obj/effect/turf_decal/plaque{ + icon_state = "L11" + }, +/turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) +"cET" = ( +/obj/effect/turf_decal/trimline/red/filled/line{ + dir = 9 + }, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/security/checkpoint/engineering) "cFa" = ( /turf/open/openspace, /area/station/service/kitchen) @@ -9286,14 +9922,6 @@ /obj/effect/mapping_helpers/airlock/access/any/science/ordnance, /turf/open/floor/engine, /area/station/science/ordnance/burnchamber) -"cFc" = ( -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/showcase/horrific_experiment, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) "cFp" = ( /obj/structure/urinal/directional/east, /obj/effect/decal/cleanable/dirt, @@ -9346,6 +9974,13 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood, /area/station/maintenance/hallway/abandoned_recreation) +"cFN" = ( +/obj/effect/turf_decal/siding{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "cFY" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 @@ -9371,17 +10006,25 @@ }, /area/station/hallway/secondary/exit/departure_lounge) "cGp" = ( -/obj/machinery/light/directional/north, -/turf/open/floor/plating, -/area/station/cargo/storage) +/obj/docking_port/stationary{ + dir = 4; + dwidth = 3; + height = 8; + name = "Cargo Bay"; + shuttle_id = "cargo_home"; + width = 13 + }, +/obj/effect/turf_decal/caution/stand_clear{ + dir = 4 + }, +/turf/open/floor/engine/hull, +/area/space/nearstation) "cGB" = ( /obj/machinery/light/directional/east, /obj/machinery/camera/autoname/directional/east, -/obj/machinery/button/door/directional/south{ - id = "lawyer_shutters"; +/obj/machinery/button/door/directional/east{ name = "law office shutter control"; - pixel_x = 24; - pixel_y = 7 + id = "lawyer_shutters" }, /turf/open/floor/carpet, /area/station/service/lawoffice) @@ -9412,29 +10055,21 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"cGS" = ( -/obj/structure/sign/warning/radiation/rad_area, -/turf/closed/wall/r_wall, -/area/station/engineering/hallway) -"cHp" = ( -/obj/structure/lattice/catwalk, -/obj/structure/table, -/turf/open/openspace, -/area/station/hallway/secondary/exit/departure_lounge) -"cHq" = ( -/obj/structure/table, -/obj/item/clothing/gloves/color/orange, -/obj/item/storage/box/mousetraps{ - pixel_x = 3; - pixel_y = 3 +"cHt" = ( +/obj/effect/landmark/start/quartermaster, +/obj/structure/chair/office{ + dir = 8 }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) "cHv" = ( /obj/structure/cable/multilayer/multiz, /turf/open/floor/plating, /area/station/maintenance/solars/port/aft) +"cHx" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "cHz" = ( /obj/structure/chair/sofa/left/brown, /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -9444,14 +10079,6 @@ /obj/structure/extinguisher_cabinet/directional/north, /turf/open/floor/iron, /area/station/science/breakroom) -"cHC" = ( -/obj/structure/railing, -/obj/structure/flora/bush/fullgrass/style_random, -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/turf/open/floor/grass, -/area/station/hallway/primary/starboard) "cHD" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -9464,39 +10091,40 @@ /obj/structure/closet/toolcloset, /turf/open/floor/wood, /area/station/commons/storage/tools) -"cHK" = ( -/obj/effect/decal/remains/human, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/turf_decal/trimline/purple/filled/line{ - dir = 1 - }, -/obj/structure/frame/computer{ - anchored = 1; - dir = 8 +"cHL" = ( +/obj/structure/lattice/catwalk, +/obj/effect/turf_decal/stripes/line{ + dir = 4 }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "cHP" = ( -/obj/machinery/computer/atmos_alert{ +/obj/effect/turf_decal/tile/dark_blue/half/contrasted{ dir = 1 }, -/obj/machinery/power/apc/auto_name/directional/south, -/obj/structure/cable, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/machinery/camera/autoname/directional/south, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/effect/turf_decal/trimline/dark_blue/filled/line, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/obj/item/radio/intercom/directional/south, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "cHS" = ( -/obj/machinery/disposal/delivery_chute{ - dir = 8 +/obj/item/dest_tagger{ + pixel_x = 8; + pixel_y = 8 }, -/obj/effect/turf_decal/trimline/brown/filled, -/obj/structure/disposalpipe/trunk{ - dir = 1 +/obj/item/dest_tagger{ + pixel_x = -6; + pixel_y = 8 }, -/obj/structure/railing, -/turf/open/floor/iron, +/obj/machinery/power/apc/auto_name/directional/east, +/obj/item/dest_tagger, +/obj/item/clothing/head/soft{ + pixel_x = 2; + pixel_y = 2 + }, +/obj/structure/cable, +/obj/structure/table, +/turf/open/floor/iron/dark/textured, /area/station/cargo/sorting) "cHZ" = ( /obj/effect/turf_decal/tile/red/half/contrasted, @@ -9507,17 +10135,12 @@ /area/station/medical/morgue) "cIl" = ( /obj/machinery/disposal/bin, -/obj/machinery/camera/autoname/directional/south, /obj/machinery/light/directional/south, /obj/structure/disposalpipe/trunk{ dir = 1 }, -/turf/open/floor/wood, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) -"cIp" = ( -/obj/item/binoculars, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/lesser) "cIq" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment{ @@ -9569,48 +10192,12 @@ specific_transport_id = "catwalk_ai" }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) -"cIH" = ( -/obj/machinery/light/directional/east, -/obj/structure/railing, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/station/engineering/storage) -"cIN" = ( -/obj/structure/table/reinforced, -/obj/item/stamp/denied{ - pixel_x = 7; - pixel_y = 8 - }, -/obj/item/stamp{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/radio/intercom/directional/north, -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 1 - }, -/obj/machinery/camera/autoname/directional/north, -/turf/open/floor/iron, -/area/station/cargo/storage) +/area/station/ai/satellite/chamber) "cIT" = ( /obj/structure/lattice/catwalk, /obj/effect/spawner/random/trash/grille_or_waste, /turf/open/openspace, /area/station/maintenance/port/aft) -"cIX" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/obj/effect/decal/cleanable/blood/footprints{ - dir = 8 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"cJb" = ( -/obj/item/trash/can, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/port) "cJk" = ( /obj/effect/turf_decal/trimline/dark_blue/filled/shrink_cw, /obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, @@ -9619,7 +10206,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/white/smooth_half, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "cJp" = ( /obj/item/kirbyplants/random, /obj/machinery/light/dim/directional/east, @@ -9656,11 +10243,6 @@ /obj/machinery/newscaster/directional/east, /turf/open/floor/wood, /area/station/security/detectives_office) -"cJE" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/iron, -/area/station/commons/storage/primary) "cJI" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -9671,25 +10253,28 @@ /turf/closed/wall/r_wall, /area/station/security/prison) "cJK" = ( -/obj/structure/cable, -/obj/effect/turf_decal/trimline/brown/filled/warning{ - dir = 1 +/turf/open/floor/iron/dark/textured, +/area/station/cargo/sorting) +"cJZ" = ( +/obj/structure/chair/pew/right{ + dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/cargo/sorting) -"cJU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper{ - dir = 8 +/obj/effect/landmark/start/hangover, +/turf/open/floor/wood, +/area/station/maintenance/starboard) +"cKa" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/door/airlock{ + id_tag = "Cabin7"; + name = "Cabin 7" }, -/obj/item/paper/crumpled{ - pixel_x = 2; - pixel_y = 6 +/obj/effect/turf_decal/siding/wood{ + dir = 8 }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) +/turf/open/floor/iron/dark/textured, +/area/station/commons/dorms) "cKc" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -9710,7 +10295,9 @@ /obj/effect/turf_decal/trimline/red/filled/corner{ dir = 4 }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 1 + }, /area/station/hallway/primary/central) "cKs" = ( /obj/effect/decal/cleanable/dirt, @@ -9724,22 +10311,19 @@ /obj/effect/decal/cleanable/generic, /turf/open/floor/wood, /area/station/service/abandoned_gambling_den) +"cKK" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 8 + }, +/turf/open/openspace, +/area/station/commons/dorms) "cKO" = ( /obj/structure/chair, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/landmark/start/prisoner, /turf/open/floor/iron/textured_large, /area/station/security/prison/rec) -"cKR" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron, -/area/station/science/lobby) "cKX" = ( /obj/machinery/smartfridge, /obj/effect/turf_decal/tile/green/full, @@ -9767,10 +10351,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"cLq" = ( -/obj/structure/grille/broken, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "cLF" = ( /obj/structure/cable, /obj/effect/turf_decal/trimline/red/filled/line, @@ -9782,47 +10362,25 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"cLP" = ( -/obj/structure/table/wood, -/obj/item/radio/intercom{ - broadcasting = 1; - dir = 8; - listening = 0; - name = "Station Intercom (Court)" - }, -/obj/structure/cable, -/turf/open/floor/carpet, -/area/station/security/courtroom) "cLQ" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/engineering/storage/tcomms) -"cLV" = ( -/obj/structure/table, -/obj/machinery/cell_charger{ - pixel_y = 9 - }, -/obj/item/stock_parts/power_store/cell/high{ - charge = 100; - maxcharge = 15000 - }, -/obj/item/stack/cable_coil, -/obj/item/stack/cable_coil, -/obj/item/stock_parts/power_store/cell/high{ - charge = 100; - maxcharge = 15000 - }, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 - }, -/obj/machinery/light/directional/north, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) "cMb" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/stairs/north, /turf/open/floor/iron, /area/station/hallway/secondary/construction) +"cMj" = ( +/obj/machinery/vending/clothing, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/commons/locker) "cMq" = ( /obj/effect/turf_decal/stripes/line, /obj/structure/disposalpipe/segment{ @@ -9838,6 +10396,16 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/service/chapel) +"cME" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 9 + }, +/obj/structure/cable, +/obj/machinery/modular_computer/preset/engineering{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/engine_smes) "cMI" = ( /obj/structure/cable, /obj/effect/turf_decal/trimline/red/filled/line{ @@ -9847,24 +10415,30 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/smooth_large, /area/station/security/processing) -"cMW" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/components/binary/valve/digital{ - dir = 8; - name = "Waste Release" +"cMJ" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 1 }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"cMR" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/iron/large, +/area/station/engineering/lobby) "cMY" = ( /obj/effect/turf_decal/box/white{ color = "#9FED58" }, /turf/open/floor/engine, /area/station/engineering/atmos/hfr_room) -"cNl" = ( -/obj/effect/spawner/random/structure/tank_holder, +"cNf" = ( +/obj/structure/rack, +/obj/effect/spawner/random/maintenance, +/obj/structure/sign/warning/vacuum/directional/north, /turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/area/station/maintenance/aft) "cNq" = ( /obj/structure/table/wood, /obj/item/book/bible{ @@ -9873,11 +10447,12 @@ /obj/item/radio/intercom/directional/north, /turf/open/floor/iron/dark, /area/station/service/chapel) -"cNt" = ( -/obj/structure/sign/warning/radiation/rad_area, -/obj/structure/cable, -/turf/closed/wall/r_wall, -/area/station/engineering/main) +"cNr" = ( +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "cNu" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -9892,20 +10467,13 @@ /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plating, /area/station/maintenance/hallway/abandoned_recreation) -"cNH" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/sign/poster/contraband/random/directional/east, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"cNO" = ( +"cNK" = ( +/obj/machinery/atmospherics/pipe/smart/simple/orange/visible, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/lattice/catwalk, -/turf/open/water, -/area/station/maintenance/starboard/fore) +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "cNS" = ( /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 @@ -9925,6 +10493,12 @@ /obj/item/storage/box/lights/mixed, /turf/open/floor/plating, /area/station/maintenance/starboard/central) +"cOj" = ( +/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/plasma{ + dir = 8 + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "cOm" = ( /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/iron/freezer, @@ -9941,12 +10515,35 @@ /obj/structure/lattice/catwalk, /turf/open/space/basic, /area/station/solars/starboard/fore) +"cOz" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/fore) +"cOE" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/hallway/secondary/construction) +"cOJ" = ( +/obj/machinery/computer/slot_machine{ + pixel_y = 2 + }, +/obj/effect/decal/cleanable/glitter, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "cOP" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/glass, /area/station/maintenance/port) +"cOR" = ( +/obj/effect/spawner/structure/window/reinforced/plasma, +/obj/machinery/door/firedoor/heavy, +/turf/open/floor/plating, +/area/station/engineering/supermatter/room) "cOS" = ( /obj/item/radio/intercom/directional/north, /obj/machinery/camera/directional/north{ @@ -9961,6 +10558,7 @@ dir = 4 }, /obj/machinery/camera/autoname/directional/west, +/obj/machinery/newscaster/directional/south, /turf/open/floor/iron/freezer, /area/station/command/heads_quarters/captain/private) "cPk" = ( @@ -9980,6 +10578,15 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/textured_large, /area/station/medical/virology) +"cPr" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 6 + }, +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 1 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "cPz" = ( /obj/structure/railing{ dir = 4 @@ -9995,20 +10602,27 @@ }, /turf/open/floor/iron, /area/station/science/robotics/lab) -"cPW" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, +"cPB" = ( +/obj/structure/flora/tree/palm/style_random, +/turf/open/floor/iron/vaporwave, +/area/station/maintenance/starboard/aft/upper) +"cPD" = ( +/obj/effect/turf_decal/trimline/white/corner{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, /obj/structure/disposalpipe/segment{ - dir = 6 + dir = 4 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "cPX" = ( /obj/item/radio/intercom/directional/east, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/carpet/black, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "cPY" = ( /obj/machinery/door/airlock/research{ name = "Research and Development Lab" @@ -10029,6 +10643,24 @@ /obj/structure/chair/comfy/black, /turf/open/floor/glass, /area/station/security/brig) +"cQd" = ( +/obj/structure/table/glass, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/button/door/directional/east{ + id = "officecommissarydoor"; + name = "Office Door Lock"; + normaldoorcontrol = 1; + pixel_x = 0; + specialfunctions = 4 + }, +/turf/open/floor/iron/dark, +/area/station/commons/vacant_room/office) +"cQi" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/engineering/atmos/office) "cQu" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/door/airlock/maintenance, @@ -10037,6 +10669,13 @@ /obj/effect/mapping_helpers/airlock/access/all/service/general, /turf/open/floor/plating, /area/station/maintenance/hallway/abandoned_recreation) +"cQv" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "cQF" = ( /obj/effect/mapping_helpers/airlock/access/all/service/kitchen, /obj/machinery/door/firedoor, @@ -10054,11 +10693,12 @@ /turf/open/openspace, /area/station/maintenance/port/fore) "cRa" = ( -/obj/effect/turf_decal/siding/red, -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 +/obj/effect/turf_decal/siding/wood{ + dir = 10 }, -/turf/open/floor/iron/dark, +/obj/item/kirbyplants/random, +/obj/structure/railing, +/turf/open/floor/wood/large, /area/station/hallway/primary/central) "cRb" = ( /obj/structure/disposalpipe/segment{ @@ -10080,9 +10720,6 @@ /obj/machinery/firealarm/directional/west, /turf/open/floor/iron/dark, /area/station/security/checkpoint/science) -"cRk" = ( -/turf/open/floor/wood, -/area/station/commons/fitness/recreation) "cRn" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 @@ -10094,7 +10731,6 @@ /turf/open/floor/iron/dark, /area/station/security/brig) "cRL" = ( -/obj/machinery/status_display/evac/directional/north, /turf/open/floor/iron/stairs/medium{ dir = 8 }, @@ -10110,6 +10746,7 @@ /obj/structure/disposalpipe/sorting/mail{ dir = 8 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/storage) "cRX" = ( @@ -10122,16 +10759,15 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) +"cRZ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/sign/warning/radiation/rad_area/directional/south, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "cSf" = ( -/obj/effect/turf_decal/trimline/brown/filled/line, -/obj/machinery/airalarm/directional/south, -/obj/machinery/conveyor{ - dir = 8; - id = "mining" - }, -/obj/structure/railing{ - dir = 1 - }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron, /area/station/cargo/miningoffice) "cSg" = ( @@ -10145,16 +10781,11 @@ /obj/structure/lattice, /turf/open/space/basic, /area/space/nearstation) -"cSq" = ( -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5, -/obj/effect/turf_decal/tile/blue/half/contrasted{ - dir = 1 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +"cSs" = ( +/obj/effect/spawner/structure/window, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "cSt" = ( /obj/effect/turf_decal/trimline/red/filled/warning{ dir = 1 @@ -10189,6 +10820,16 @@ }, /turf/open/floor/iron/dark, /area/station/command/teleporter) +"cSD" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron, +/area/station/science/research) "cSF" = ( /obj/structure/chair/office{ dir = 8 @@ -10222,7 +10863,11 @@ /obj/structure/disposalpipe/junction/flip{ dir = 8 }, -/turf/open/floor/carpet, +/obj/structure/cable, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) "cSW" = ( /obj/structure/chair{ @@ -10250,18 +10895,20 @@ }, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"cTv" = ( -/obj/effect/turf_decal/trimline/white/line{ - dir = 8 +"cTk" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/dark/smooth_half, +/area/station/service/library) +"cTo" = ( +/obj/machinery/computer/cargo{ + dir = 1 }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/obj/structure/disposalpipe/segment{ - dir = 4 +/obj/effect/turf_decal/trimline/brown/arrow_ccw{ + dir = 1 }, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) +/obj/effect/turf_decal/tile/brown/fourcorners, +/turf/open/floor/iron, +/area/station/cargo/storage) "cTJ" = ( /obj/structure/table/reinforced, /obj/effect/spawner/random/maintenance/two, @@ -10274,22 +10921,12 @@ }, /turf/open/floor/plating, /area/station/construction/storage_wing) -"cTM" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/engineering/lobby) "cTR" = ( /obj/effect/turf_decal/trimline/yellow/warning{ dir = 1 }, /turf/open/floor/engine/hull, /area/space/nearstation) -"cTS" = ( -/obj/effect/spawner/random/engineering/tank, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/aft) "cTU" = ( /obj/effect/turf_decal/trimline/dark_blue/filled/corner{ dir = 4 @@ -10308,14 +10945,6 @@ /obj/effect/turf_decal/siding/wood, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"cTX" = ( -/obj/machinery/door/airlock/highsecurity{ - name = "Secure Tech Storage" - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/tech_storage, -/obj/effect/mapping_helpers/airlock/access/all/command/general, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) "cTZ" = ( /obj/effect/mapping_helpers/burnt_floor, /obj/machinery/portable_atmospherics/canister/air, @@ -10324,21 +10953,21 @@ dir = 1 }, /turf/open/floor/iron/checker, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "cUf" = ( /obj/structure/closet/emcloset, /turf/open/floor/plating, /area/station/maintenance/port) -"cUo" = ( -/obj/effect/turf_decal/siding{ - dir = 1 +"cUj" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 9 }, -/obj/effect/turf_decal/trimline/white/corner, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) +"cUl" = ( +/obj/structure/cable, +/turf/open/floor/iron/textured_edge, +/area/station/command/gateway) "cUp" = ( /obj/structure/table, /obj/item/clothing/suit/jacket/straight_jacket{ @@ -10368,11 +10997,6 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"cUA" = ( -/obj/machinery/camera/autoname/directional/north, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "cUJ" = ( /obj/effect/turf_decal/stripes/line{ dir = 10 @@ -10415,6 +11039,11 @@ /obj/effect/decal/cleanable/confetti, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"cVq" = ( +/obj/effect/spawner/random/structure/crate, +/obj/structure/sign/poster/contraband/hacking_guide/directional/south, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "cVr" = ( /obj/structure/chair/comfy/black{ dir = 1 @@ -10441,27 +11070,56 @@ /obj/structure/reagent_dispensers/wall/peppertank/directional/north, /turf/open/floor/iron/dark, /area/station/security/interrogation) -"cVH" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/lattice/catwalk, -/obj/structure/disposalpipe/segment{ - dir = 5 +"cVQ" = ( +/obj/structure/easel, +/obj/item/canvas/twentythree_twentythree{ + pixel_x = 3 }, +/obj/item/canvas/twentythree_twentythree{ + pixel_x = 3 + }, +/obj/item/canvas/twentythree_twentythree{ + pixel_x = 3 + }, +/obj/effect/turf_decal/tile/green/opposingcorners{ + dir = 1 + }, +/obj/item/radio/intercom/directional/east, +/turf/open/floor/iron/dark, +/area/station/commons/storage/art) +"cVW" = ( +/obj/structure/lattice/catwalk, +/obj/effect/landmark/start/hangover, /turf/open/openspace, -/area/station/maintenance/starboard/aft) -"cVN" = ( -/obj/effect/turf_decal/siding/brown{ - dir = 8 +/area/station/maintenance/starboard/upper) +"cWb" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/engineering/storage) +"cWc" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Medbay Maintenance" }, -/turf/open/floor/iron, -/area/station/commons/dorms) +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/port) "cWd" = ( -/obj/structure/chair/comfy/brown{ - dir = 1 +/obj/structure/table/wood, +/obj/item/clipboard{ + pixel_x = 7; + pixel_y = 11 }, -/obj/effect/landmark/start/captain, -/turf/open/floor/carpet, +/obj/item/pinpointer/nuke{ + pixel_x = -7; + pixel_y = 5 + }, +/obj/effect/turf_decal/siding/wood/end, +/obj/item/disk/nuclear{ + pixel_x = 1; + pixel_y = -2 + }, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) "cWg" = ( /obj/structure/railing{ @@ -10495,7 +11153,17 @@ /obj/effect/turf_decal/siding/dark, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) +"cWr" = ( +/obj/structure/lattice/catwalk, +/obj/item/phone{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/structure/table, +/obj/machinery/airalarm/directional/south, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "cWt" = ( /obj/effect/turf_decal/siding/wood/corner{ dir = 8 @@ -10508,6 +11176,11 @@ dir = 8 }, /area/station/commons/lounge) +"cWu" = ( +/obj/structure/broken_flooring/singular/directional/south, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "cWF" = ( /obj/effect/turf_decal/tile/yellow/opposingcorners{ dir = 1 @@ -10517,14 +11190,10 @@ }, /turf/open/floor/iron/dark, /area/station/engineering/storage/tcomms) -"cWG" = ( -/obj/machinery/vending/cola/pwr_game, -/turf/open/floor/wood, -/area/station/commons/dorms) "cWL" = ( /obj/structure/lattice/catwalk, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "cWN" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -10533,15 +11202,6 @@ /obj/effect/decal/cleanable/blood/old, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"cWS" = ( -/obj/effect/turf_decal/siding/brown, -/obj/structure/closet/lasertag/red, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) -"cWU" = ( -/turf/closed/wall/r_wall, -/area/station/maintenance/starboard/aft) "cWW" = ( /obj/effect/turf_decal/trimline/red/arrow_ccw{ dir = 1 @@ -10563,6 +11223,14 @@ /obj/item/bedsheet/cmo/double, /turf/open/floor/carpet/cyan, /area/station/command/heads_quarters/cmo) +"cXf" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/turf/open/floor/engine/hull, +/area/station/maintenance/starboard/upper) "cXj" = ( /obj/structure/table/reinforced/rglass, /obj/machinery/fax{ @@ -10571,19 +11239,24 @@ }, /turf/open/floor/glass, /area/station/security/brig) -"cXw" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +"cXk" = ( +/obj/structure/closet/emcloset, +/obj/machinery/airalarm/directional/west, +/obj/machinery/light/small/directional/north, +/turf/open/floor/plating, +/area/station/engineering/atmos/office) +"cXm" = ( +/obj/effect/landmark/carpspawn, +/obj/structure/lattice, +/turf/open/space/basic, +/area/space/nearstation) +"cXF" = ( +/obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, -/obj/structure/disposalpipe/junction/yjunction{ - dir = 4 - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=7-Gateway"; - location = "6-Courtroom" - }, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) +/obj/machinery/camera/autoname/directional/north, +/obj/machinery/washing_machine, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "cXM" = ( /obj/effect/mapping_helpers/airlock/access/all/service/general, /obj/machinery/door/airlock/maintenance{ @@ -10592,6 +11265,14 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"cXO" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/closet/firecloset, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "cXV" = ( /obj/machinery/vending/cigarette, /obj/machinery/firealarm/directional/east, @@ -10605,6 +11286,10 @@ /obj/effect/mapping_helpers/airlock/access/all/supply/general, /turf/open/floor/plating, /area/station/cargo/storage) +"cYn" = ( +/obj/effect/spawner/random/structure/girder, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "cYo" = ( /obj/structure/table, /obj/item/reagent_containers/condiment/enzyme{ @@ -10628,21 +11313,6 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) -"cYq" = ( -/obj/structure/table/reinforced, -/obj/item/flashlight{ - pixel_y = 14 - }, -/obj/item/storage/toolbox/mechanical, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"cYx" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "cYB" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/lattice/catwalk, @@ -10661,7 +11331,7 @@ /obj/structure/ladder, /obj/effect/turf_decal/delivery, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "cYT" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 10 @@ -10678,6 +11348,13 @@ dir = 1 }, /area/station/science/lab) +"cZg" = ( +/obj/machinery/atmospherics/components/binary/pump{ + name = "Freezer to Loop" + }, +/obj/effect/turf_decal/trimline/yellow, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "cZh" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 1 @@ -10703,6 +11380,11 @@ /obj/structure/window/reinforced/spawner/directional/east, /turf/open/openspace, /area/station/command/heads_quarters/rd) +"cZn" = ( +/obj/structure/musician/piano, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard/upper) "cZo" = ( /obj/structure/disposalpipe/segment{ dir = 9 @@ -10714,12 +11396,42 @@ /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/maintenance/port) +"cZr" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/cable, +/turf/open/floor/engine, +/area/station/engineering/supermatter) +"cZz" = ( +/obj/structure/cable, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/blood/footprints{ + dir = 8 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"cZD" = ( +/obj/machinery/door/airlock{ + name = "Emergency Storage" + }, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "cZE" = ( /obj/effect/turf_decal/tile/dark/half/contrasted{ dir = 8 }, /turf/open/floor/iron/dark, /area/station/hallway/primary/central) +"cZI" = ( +/obj/structure/cable, +/turf/closed/wall, +/area/station/maintenance/starboard/fore/upper) "cZN" = ( /obj/structure/railing{ dir = 4 @@ -10742,13 +11454,11 @@ dir = 8 }, /area/station/science/ordnance/storage) -"daw" = ( -/obj/structure/lattice/catwalk, -/obj/structure/filingcabinet, -/obj/effect/spawner/random/bureaucracy/paper, -/obj/effect/spawner/random/bureaucracy/paper, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) +"dal" = ( +/obj/structure/table/reinforced, +/obj/item/flashlight/lamp, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "dax" = ( /obj/effect/turf_decal/siding/wood{ dir = 8 @@ -10758,37 +11468,9 @@ /obj/structure/cable, /turf/open/floor/wood/large, /area/station/hallway/secondary/service) -"daz" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "daC" = ( /turf/open/openspace, -/area/station/ai_monitored/turret_protected/aisat_interior) -"daE" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/yellow/filled/corner, -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 4 - }, -/obj/machinery/light/directional/north, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) -"daQ" = ( -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/area/station/ai/satellite/interior) "daW" = ( /obj/structure/ladder, /obj/structure/sign/poster/contraband/space_cola/directional/north, @@ -10849,22 +11531,22 @@ }, /turf/open/floor/wood, /area/station/service/lawoffice) -"dbT" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 6 +"dch" = ( +/obj/structure/chair/office{ + dir = 1 }, -/obj/structure/lattice/catwalk, -/turf/open/space/basic, -/area/space/nearstation) -"dcv" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/wood/tile, -/area/station/security/detectives_office/private_investigators_office) +/obj/structure/sign/poster/contraband/pwr_game/directional/west, +/obj/machinery/light/small/directional/west, +/obj/effect/landmark/start/hangover, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "dcE" = ( /turf/open/space/basic, /area/space) +"dcO" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine, +/area/station/maintenance/starboard) "dde" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -10885,16 +11567,13 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/science/zoo) -"ddw" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Chapel Office Maintenance" - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 +"ddu" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 8 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/turf/open/openspace, +/area/station/engineering/lobby) "ddz" = ( /obj/effect/turf_decal/siding/white, /obj/item/kirbyplants/organic/plant21{ @@ -10904,45 +11583,42 @@ /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) -"ddM" = ( -/obj/structure/cable, +"ddI" = ( /obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/trash/bin, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/extinguisher_cabinet/directional/west, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/burnt_floor, /turf/open/floor/iron, -/area/station/engineering/storage_shared) -"ddW" = ( -/obj/structure/railing, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard/fore) "dea" = ( /obj/machinery/door/window/left/directional/west{ name = "Gateway Chamber" }, -/turf/open/floor/wood, +/turf/open/floor/iron/dark, /area/station/command/gateway) "deg" = ( -/obj/structure/cable, -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 1 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark/textured, /area/station/cargo/sorting) "dej" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 1 +/obj/effect/turf_decal/trimline/brown/filled/corner{ + dir = 4 }, -/obj/structure/closet/secure_closet/miner, -/obj/machinery/camera/directional/north{ - c_tag = "Cargo Bay - Mining" +/obj/effect/turf_decal/trimline/brown/arrow_ccw{ + dir = 10 }, -/obj/machinery/light/directional/north, /turf/open/floor/iron, -/area/station/cargo/miningoffice) +/area/station/hallway/primary/starboard) +"dep" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/cargo/storage) "dex" = ( /obj/structure/railing/corner{ dir = 1 @@ -10955,6 +11631,10 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"dey" = ( +/obj/item/radio/intercom/directional/south, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "deC" = ( /obj/structure/ladder, /obj/effect/decal/cleanable/dirt, @@ -10972,9 +11652,8 @@ /turf/open/floor/engine/hull/air, /area/station/maintenance/port) "deJ" = ( -/obj/effect/turf_decal/siding/green/corner{ - dir = 4 - }, +/obj/effect/turf_decal/siding/white, +/obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "deR" = ( @@ -11010,11 +11689,18 @@ /turf/open/openspace, /area/station/hallway/primary/central) "dft" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/vending/cigarette, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/iron, -/area/station/maintenance/starboard/central) +/obj/machinery/light_switch/directional/north, +/obj/structure/sign/clock/directional/east, +/obj/machinery/suit_storage_unit/mining/eva, +/obj/effect/turf_decal/siding/dark/end{ + dir = 1 + }, +/turf/open/floor/carpet/orange, +/area/station/command/heads_quarters/qm) +"dfy" = ( +/obj/effect/spawner/random/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "dfC" = ( /obj/item/paper_bin{ pixel_x = -6; @@ -11042,21 +11728,12 @@ /obj/structure/flora/bush/flowers_br/style_random, /turf/open/floor/grass, /area/station/hallway/secondary/entry) -"dfG" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "dfK" = ( /obj/machinery/door/airlock/maintenance{ name = "Medbay Maintenance" }, -/obj/effect/mapping_helpers/airlock/unres, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical) "dfL" = ( @@ -11066,11 +11743,6 @@ /obj/effect/turf_decal/bot, /turf/open/floor/iron, /area/station/maintenance/port/aft) -"dfO" = ( -/obj/structure/lattice/catwalk, -/obj/structure/sign/flag/nanotrasen/directional/north, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) "dfR" = ( /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -11085,6 +11757,15 @@ /obj/effect/turf_decal/box/white, /turf/open/floor/iron/dark/textured_corner, /area/station/science/ordnance/storage) +"dgl" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "dgy" = ( /obj/structure/closet/firecloset, /obj/effect/turf_decal/trimline/purple/filled/line, @@ -11099,18 +11780,13 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/carpet/black, /area/station/medical/psychology) -"dgR" = ( -/obj/structure/table/reinforced, -/obj/structure/railing/corner{ - dir = 1 - }, -/obj/item/toy/crayon/spraycan, -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/obj/machinery/light/directional/west, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +"dhf" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/closet, +/obj/item/surgicaldrill, +/obj/effect/spawner/random/maintenance/three, +/turf/open/floor/iron/white, +/area/station/maintenance/starboard) "dho" = ( /obj/effect/turf_decal/siding/wood{ dir = 9 @@ -11129,6 +11805,10 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/commissary) +"dht" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "dhx" = ( /obj/effect/spawner/random/vending/colavend, /obj/effect/turf_decal/siding/wood{ @@ -11136,13 +11816,15 @@ }, /turf/open/floor/wood, /area/station/service/abandoned_gambling_den) -"dhL" = ( -/obj/effect/turf_decal/siding/brown, -/obj/structure/railing, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron, +"dhy" = ( +/obj/machinery/atmospherics/pipe/layer_manifold/supply/hidden{ + dir = 8 + }, +/turf/closed/wall/r_wall, +/area/station/engineering/atmos/upper) +"dhZ" = ( +/obj/structure/lattice, +/turf/open/openspace, /area/station/commons/dorms) "dic" = ( /obj/effect/turf_decal/trimline/dark_blue/corner{ @@ -11150,7 +11832,7 @@ }, /obj/machinery/light/directional/west, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "dig" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 8 @@ -11193,7 +11875,7 @@ }, /obj/effect/turf_decal/siding/dark/corner, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "dir" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -11242,14 +11924,6 @@ }, /turf/open/floor/iron/dark, /area/station/maintenance/starboard/aft) -"diE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment{ - dir = 9 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) "diJ" = ( /obj/effect/turf_decal/stripes/line, /obj/structure/railing{ @@ -11266,16 +11940,14 @@ /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) "diP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/firealarm/directional/south, /obj/item/cigbutt, -/mob/living/simple_animal/bot/mulebot{ - name = "Old Yeller" - }, -/obj/effect/turf_decal/delivery, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=4"; - location = "Cargo Storage" +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/bot, +/obj/machinery/suit_storage_unit/industrial/loader, +/obj/machinery/button/door/directional/south{ + id = "qm_warehouse"; + name = "Warehouse Shutters"; + pixel_x = -6 }, /turf/open/floor/iron/dark/textured, /area/station/cargo/warehouse) @@ -11292,6 +11964,10 @@ /obj/structure/closet/secure_closet/engineering_electrical, /turf/open/floor/iron/smooth, /area/station/engineering/main) +"djn" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/dark/textured_large, +/area/station/medical/storage) "djt" = ( /obj/structure/chair/comfy/black{ dir = 8 @@ -11314,13 +11990,10 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"djE" = ( -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "djG" = ( /obj/structure/lattice/catwalk, /obj/machinery/light_switch/directional/east, +/obj/machinery/firealarm/directional/south, /turf/open/openspace, /area/station/security/checkpoint/supply) "djL" = ( @@ -11330,6 +12003,20 @@ /obj/machinery/door/firedoor, /turf/open/floor/iron, /area/station/hallway/secondary/construction) +"djM" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/filingcabinet, +/obj/effect/spawner/random/bureaucracy/paper, +/obj/effect/spawner/random/bureaucracy/paper, +/turf/open/floor/iron/dark/textured_large, +/area/station/maintenance/aft/upper) +"djX" = ( +/obj/effect/spawner/random/maintenance, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/upper) +"dkb" = ( +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "dkd" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 8 @@ -11338,9 +12025,14 @@ /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) "dkm" = ( +/obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, -/turf/closed/wall/r_wall, -/area/station/command/meeting_room/council) +/obj/machinery/door/poddoor/preopen{ + id = "bridge blast"; + name = "Bridge Blast Door" + }, +/turf/open/floor/plating, +/area/station/command/bridge) "dko" = ( /obj/structure/disposalpipe/sorting/mail{ dir = 8 @@ -11363,7 +12055,7 @@ /obj/machinery/light/directional/west, /obj/effect/spawner/random/armory/barrier_grenades/six, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "dkz" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -11376,25 +12068,12 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/port) -"dkN" = ( -/obj/machinery/atmospherics/pipe/smart/simple/green/visible, -/obj/machinery/light/directional/east, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "dkO" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/carpet, /area/station/security/courtroom) -"dkQ" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "dkY" = ( /obj/machinery/disposal/bin, /obj/machinery/light/directional/north, @@ -11420,14 +12099,6 @@ /obj/structure/disposalpipe/segment, /turf/open/openspace, /area/station/hallway/secondary/construction) -"dlk" = ( -/obj/structure/lattice, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) -"dll" = ( -/obj/machinery/microwave, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "dlo" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -11435,6 +12106,28 @@ "dlt" = ( /turf/open/floor/plating/airless, /area/station/maintenance/starboard/aft) +"dlv" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) +"dlx" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/iron/edge{ + dir = 1 + }, +/area/station/hallway/primary/central) +"dlK" = ( +/obj/item/radio/intercom/directional/west, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 + }, +/obj/structure/chair/stool/directional/east, +/obj/machinery/camera/autoname/directional/west, +/turf/open/floor/iron/dark, +/area/station/commons/fitness/recreation) "dlW" = ( /obj/effect/turf_decal/bot, /obj/effect/turf_decal/caution/stand_clear, @@ -11448,16 +12141,48 @@ /obj/effect/landmark/start/depsec/science, /turf/open/floor/iron/dark, /area/station/security/checkpoint/science) -"dmn" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/chair{ +"dmj" = ( +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/yellow/filled/corner, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) +"dmk" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 1 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/obj/structure/railing{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/engineering/lobby) +"dmn" = ( +/obj/machinery/light/warm/dim/directional/east, +/obj/effect/turf_decal/stripes{ + dir = 4 + }, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "dmp" = ( /turf/open/floor/wood, /area/station/command/corporate_showroom) +"dmC" = ( +/obj/item/wrench, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/landmark/event_spawn, +/turf/open/floor/plating, +/area/station/commons/dorms) +"dmI" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/engineering/lobby) "dmJ" = ( /obj/structure/table/wood, /obj/item/radio/intercom, @@ -11484,35 +12209,36 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"dnb" = ( -/obj/machinery/camera/directional/north{ - c_tag = "Engineering - Showers" - }, -/obj/structure/closet/radiation, -/obj/item/clothing/glasses/meson, -/turf/open/floor/iron/dark/smooth_corner{ - dir = 8 - }, -/area/station/engineering/main) "dnj" = ( /obj/effect/spawner/random/structure/grille, /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"dno" = ( +/obj/machinery/conveyor{ + dir = 4; + id = "garbage" + }, +/obj/machinery/light/very_dim/directional/south, +/obj/effect/turf_decal/stripes/red/box, +/turf/open/floor/plating, +/area/station/maintenance/disposal) +"dns" = ( +/obj/effect/turf_decal/trimline/purple/filled/line{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) "dnx" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/all/security/court, /turf/open/floor/engine/hull/air, /area/station/maintenance/port) -"dnC" = ( -/obj/structure/chair/office, -/obj/effect/turf_decal/trimline/yellow/filled/warning, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "dnE" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -11530,6 +12256,21 @@ /obj/structure/cable, /turf/open/floor/carpet, /area/station/command/corporate_showroom) +"dnJ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/duct, +/turf/open/floor/catwalk_floor/iron, +/area/station/commons/dorms) +"dnK" = ( +/obj/machinery/atmospherics/pipe/layer_manifold/cyan/visible, +/obj/machinery/meter, +/turf/closed/wall/r_wall, +/area/station/engineering/atmos) "dnM" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, @@ -11541,15 +12282,6 @@ /obj/structure/disposalpipe/segment, /turf/open/openspace, /area/station/medical/abandoned) -"dnO" = ( -/obj/structure/sign/warning/secure_area/directional/south, -/obj/structure/chair{ - dir = 4; - pixel_y = -2 - }, -/obj/item/binoculars, -/turf/open/floor/plating/airless, -/area/station/maintenance/starboard/lesser) "dnW" = ( /obj/effect/spawner/random/structure/chair_maintenance, /turf/open/floor/plating, @@ -11611,12 +12343,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) -"doH" = ( -/obj/item/trash/can{ - pixel_x = 3 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "doK" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -11626,11 +12352,13 @@ }, /turf/open/floor/iron, /area/station/engineering/lobby) -"doL" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/closed/wall, -/area/station/maintenance/starboard/fore) +"doM" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/upper) "doO" = ( /obj/machinery/light/directional/north, /obj/machinery/airalarm/directional/north, @@ -11638,19 +12366,16 @@ /obj/machinery/cell_charger{ pixel_y = 3 }, -/obj/item/stock_parts/power_store/cell/high{ - charge = 100; - maxcharge = 15000; - pixel_y = 8 - }, /obj/item/stock_parts/power_store/cell/high{ charge = 100; maxcharge = 15000; pixel_y = 3 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/stripes{ + dir = 1 + }, +/turf/open/floor/iron/textured, +/area/station/command/eva) "dpo" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -11674,10 +12399,9 @@ dir = 6 }, /obj/machinery/computer/shuttle/mining{ - dir = 1; - req_access = null + dir = 8 }, -/obj/effect/decal/cleanable/dirt, +/obj/machinery/status_display/evac/directional/south, /turf/open/floor/iron, /area/station/cargo/miningoffice) "dpR" = ( @@ -11725,16 +12449,6 @@ /obj/structure/extinguisher_cabinet/directional/north, /turf/open/floor/iron/dark, /area/station/science/lobby) -"dqo" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/yellow/filled/corner, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "dqB" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -11744,19 +12458,13 @@ dir = 1 }, /obj/machinery/light/small/directional/south, -/obj/structure/closet/crate, -/obj/effect/spawner/random/maintenance, +/obj/effect/turf_decal/bot, /turf/open/floor/iron/dark/textured, /area/station/cargo/warehouse) "dqC" = ( /obj/effect/spawner/structure/window/reinforced/tinted, /turf/open/floor/plating, /area/station/security/interrogation) -"dqF" = ( -/obj/effect/spawner/random/maintenance, -/obj/structure/table, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) "dqH" = ( /obj/structure/table, /obj/item/gun/grenadelauncher{ @@ -11774,7 +12482,14 @@ /obj/machinery/light_switch/directional/north, /obj/machinery/light/directional/north, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) +"dqI" = ( +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "dqJ" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -11796,6 +12511,14 @@ /obj/machinery/camera/autoname/directional/west, /turf/open/openspace, /area/station/hallway/primary/aft) +"dqZ" = ( +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/aft/upper) +"dra" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "drb" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 8 @@ -11803,6 +12526,22 @@ /obj/machinery/vending/cigarette, /turf/open/floor/iron, /area/station/hallway/primary/starboard) +"drg" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/machinery/button/door/directional/south{ + id = "evashutter"; + name = "E.V.A. Storage Shutter Control"; + req_access = list("command") + }, +/turf/open/floor/iron/edge, +/area/station/hallway/primary/central) +"dri" = ( +/obj/structure/sign/poster/contraband/missing_gloves/directional/east, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/port/aft) "drk" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -11813,24 +12552,19 @@ /turf/open/floor/plating, /area/station/construction/storage_wing) "drn" = ( -/obj/effect/turf_decal/tile/red/opposingcorners{ +/obj/structure/chair/plastic{ dir = 1 }, -/turf/open/floor/iron/dark, +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/obj/machinery/camera/autoname/directional/west, +/turf/open/floor/wood/large, /area/station/hallway/primary/central) "drt" = ( /obj/structure/sign/poster/official/fruit_bowl/directional/north, /turf/open/floor/iron/white/smooth_large, /area/station/security/prison) -"drA" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/barricade/wooden/crude, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 1 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "drC" = ( /turf/open/floor/iron/stairs/medium{ dir = 8 @@ -11838,7 +12572,7 @@ /area/station/hallway/secondary/service) "drI" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -11863,19 +12597,9 @@ }, /turf/open/floor/iron/checker, /area/station/service/bar) -"drW" = ( -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5{ - dir = 9 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "drX" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/storage/eva) -"dsg" = ( -/obj/structure/table/wood, -/turf/open/floor/carpet, -/area/station/maintenance/starboard/lesser) +/area/station/command/eva) "dso" = ( /obj/structure/stairs/east, /obj/structure/railing, @@ -11894,7 +12618,7 @@ "dsx" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "dsD" = ( /obj/effect/turf_decal/siding/dark, /obj/effect/turf_decal/trimline/dark_blue/warning{ @@ -11906,11 +12630,16 @@ /obj/machinery/telecomms/broadcaster/preset_left, /turf/open/floor/iron/dark/textured_large, /area/station/tcommsat/server) -"dsR" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"dsN" = ( +/obj/machinery/door/airlock{ + name = "Unisex Showers" + }, +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/obj/structure/fluff/shower_drain, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet/restrooms) "dsV" = ( /obj/structure/chair/comfy/beige{ dir = 8 @@ -11922,21 +12651,11 @@ /obj/structure/lattice, /turf/open/openspace, /area/station/hallway/primary/central) -"dsY" = ( -/obj/structure/lattice, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) -"dtj" = ( -/obj/machinery/light/directional/south, -/obj/machinery/shower/directional/east, -/obj/structure/fluff/shower_drain, -/turf/open/floor/iron/dark/smooth_corner{ - dir = 4 - }, -/area/station/engineering/main) +"dsZ" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/heater, +/obj/effect/turf_decal/bot_red, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "dtn" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -11954,25 +12673,14 @@ dir = 1 }, /area/station/science/cytology) -"dto" = ( -/obj/structure/table/reinforced, -/obj/item/flashlight/lamp, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"dtu" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Holodeck Door" - }, -/obj/effect/turf_decal/trimline/neutral/filled/line{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/neutral/filled/line, -/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ - cycle_id = "holodeck" +"dtv" = ( +/obj/machinery/camera/directional/north{ + c_tag = "Atmospherics - Air Supply"; + name = "atmospherics camera" }, -/obj/machinery/door/firedoor, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +/obj/machinery/light/small/directional/north, +/turf/open/floor/engine/air, +/area/station/engineering/atmos/upper) "dtx" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -11980,12 +12688,14 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/central) -"dtC" = ( -/obj/structure/disposalpipe/segment{ - dir = 5 +"dtL" = ( +/obj/structure/extinguisher_cabinet/directional/west, +/obj/machinery/computer/security{ + dir = 4 }, -/turf/open/openspace, -/area/station/engineering/lobby) +/obj/effect/turf_decal/tile/red/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "dtO" = ( /obj/effect/turf_decal/trimline/dark_green/filled/line{ dir = 4 @@ -11994,10 +12704,23 @@ /turf/open/floor/iron/dark, /area/station/science/cytology) "dtP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/warning/vacuum/directional/east, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/obj/structure/sign/directions/medical/directional/east{ + dir = 2; + pixel_y = 9; + pixel_x = 0 + }, +/obj/structure/sign/directions/science/directional/east{ + dir = 2; + pixel_y = 3; + pixel_x = 0 + }, +/obj/structure/sign/directions/security/directional/east{ + dir = 2; + pixel_y = -3; + pixel_x = 0 + }, +/turf/closed/wall, +/area/station/commons/vacant_room/office) "dtR" = ( /obj/effect/decal/cleanable/food/egg_smudge{ pixel_x = -7; @@ -12005,6 +12728,16 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"dtT" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/effect/decal/cleanable/blood/oil, +/obj/item/cigbutt{ + pixel_x = -12; + pixel_y = 11 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "dua" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -12014,18 +12747,19 @@ /obj/structure/table, /turf/open/openspace, /area/station/construction/storage_wing) -"dux" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/turf_decal/siding/brown/corner{ +"duf" = ( +/obj/machinery/computer/station_alert, +/obj/effect/turf_decal/siding/wood{ dir = 1 }, -/turf/open/floor/iron, -/area/station/commons/dorms) +/turf/open/floor/wood/large, +/area/station/engineering/lobby) +"duw" = ( +/obj/structure/rack, +/obj/item/circuitboard/computer/holodeck, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "duz" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 6 @@ -12058,53 +12792,64 @@ /obj/machinery/firealarm/directional/south, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) +"duC" = ( +/obj/structure/lattice, +/turf/open/openspace, +/area/station/maintenance/starboard/aft/upper) "duE" = ( -/obj/machinery/light_switch/directional/west{ - pixel_x = -24; - pixel_y = 27 +/obj/effect/turf_decal/siding/wood{ + dir = 1 }, -/obj/structure/cable, -/turf/open/floor/carpet, +/obj/effect/turf_decal/siding/wood/corner{ + dir = 8 + }, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) -"duQ" = ( -/obj/structure/sign/warning/vacuum/external/directional/east, -/obj/machinery/light/directional/west, -/obj/effect/mapping_helpers/burnt_floor, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) +"duG" = ( +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 8 + }, +/obj/effect/decal/remains/human, +/obj/effect/decal/cleanable/blood/old, +/obj/machinery/duct, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) "dvn" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /turf/open/floor/iron, /area/station/science/research) +"dvr" = ( +/obj/machinery/firealarm/directional/east, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/layer_manifold/cyan/visible, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "dvs" = ( /obj/structure/sign/poster/contraband/random/directional/north, -/obj/item/storage/bag/trash/filled, /turf/open/floor/plating, /area/station/maintenance/disposal) -"dvu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table/wood, -/obj/effect/spawner/random/bureaucracy/paper, -/obj/item/pen/red{ - pixel_x = -5; - pixel_y = 5 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 +"dvt" = ( +/obj/machinery/door/airlock{ + name = "Emergency Storage" }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/aft) "dvw" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden, /turf/open/floor/iron/dark, /area/station/science/ordnance) "dvK" = ( /obj/effect/turf_decal/trimline/brown/filled/line, -/obj/machinery/computer/security/mining{ - dir = 1 - }, -/obj/machinery/light/small/directional/south, -/obj/machinery/airalarm/directional/south, +/obj/effect/decal/cleanable/dirt, +/obj/effect/landmark/start/shaft_miner, +/obj/machinery/light/directional/south, /turf/open/floor/iron, /area/station/cargo/miningoffice) "dvL" = ( @@ -12148,14 +12893,6 @@ }, /turf/open/floor/iron/dark, /area/station/security/checkpoint/science) -"dwq" = ( -/obj/structure/ladder, -/obj/structure/railing{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/box, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) "dwB" = ( /obj/structure/cable, /obj/structure/closet/syndicate{ @@ -12180,6 +12917,35 @@ }, /turf/open/floor/iron/dark/textured, /area/station/science/xenobiology) +"dwQ" = ( +/obj/effect/spawner/structure/window/reinforced/plasma, +/turf/open/floor/plating, +/area/station/engineering/supermatter/room/upper) +"dwU" = ( +/obj/structure/cable, +/obj/machinery/door/poddoor/preopen{ + id = "ceprivacy"; + name = "Chief Engineers Privacy Shutters" + }, +/obj/effect/spawner/structure/window/reinforced/plasma, +/turf/open/floor/plating, +/area/station/engineering/supermatter/room/upper) +"dwY" = ( +/obj/structure/table, +/obj/item/clothing/under/costume/seifuku/tan{ + pixel_x = -14; + pixel_y = -2 + }, +/obj/item/trash/boritos{ + pixel_x = 1; + pixel_y = 9 + }, +/obj/item/clothing/glasses/sunglasses/gar/orange{ + pixel_x = 4 + }, +/obj/structure/sign/poster/contraband/energy_swords/directional/north, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/department/crew_quarters/dorms) "dxf" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -12187,20 +12953,6 @@ }, /turf/open/openspace, /area/station/hallway/secondary/exit/departure_lounge) -"dxh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/poster/contraband/random/directional/north, -/obj/structure/lattice/catwalk, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) -"dxv" = ( -/obj/machinery/atmospherics/pipe/multiz/orange/visible{ - dir = 8 - }, -/obj/machinery/meter, -/obj/structure/railing/corner, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "dxx" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -12225,40 +12977,33 @@ }, /turf/open/floor/iron/dark, /area/station/science/xenobiology) -"dxL" = ( -/obj/machinery/button/door/directional/south{ - id = "ceprivacy"; - name = "Privacy Shutters Control"; - pixel_y = -2; - pixel_x = -7 - }, -/obj/machinery/button/door/directional/west{ - id = "transitlockdown"; - name = "Transit Tube Lockdown"; - pixel_x = 7; - pixel_y = -2 - }, -/obj/machinery/button/door{ - id = "securestoragecw"; - name = "Secure Storage"; - pixel_y = 8 - }, -/obj/structure/table/reinforced/rglass, -/turf/open/floor/engine, -/area/station/command/heads_quarters/ce) "dxN" = ( /obj/effect/turf_decal/trimline/purple/filled/corner, /obj/structure/extinguisher_cabinet/directional/south, /turf/open/floor/iron, /area/station/hallway/secondary/construction) +"dxQ" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/openspace, +/area/station/engineering/lobby) +"dxU" = ( +/obj/effect/mapping_helpers/burnt_floor, +/obj/machinery/airalarm/directional/north, +/turf/open/floor/iron, +/area/station/maintenance/starboard/fore) "dyd" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/science/xenobiology) -"dyg" = ( -/obj/effect/landmark/event_spawn, -/turf/open/openspace, -/area/station/security/detectives_office) "dyi" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -12279,6 +13024,11 @@ /obj/machinery/suit_storage_unit/engine, /turf/open/floor/iron/dark, /area/station/engineering/engine_smes) +"dyu" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/item/spear, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "dyx" = ( /obj/machinery/door/airlock/public/glass{ name = "Farewell Room" @@ -12305,31 +13055,18 @@ }, /turf/open/floor/engine/hull, /area/space/nearstation) -"dyG" = ( -/obj/item/pickaxe{ - pixel_x = -5; - pixel_y = -7 - }, -/obj/structure/cable, -/turf/open/floor/catwalk_floor, -/area/station/maintenance/starboard/fore) +"dyM" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/turf/open/floor/iron, +/area/station/engineering/atmos/upper) "dyN" = ( /turf/open/openspace, /area/station/command/heads_quarters/rd) -"dyQ" = ( -/obj/item/radio/intercom/directional/east, -/obj/effect/landmark/firealarm_sanity, -/turf/open/floor/wood, -/area/station/commons/toilet/restrooms) "dyS" = ( -/obj/structure/chair/office{ - dir = 1 - }, /obj/effect/turf_decal/trimline/green/filled/line{ dir = 1 }, /obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/start/hangover, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) @@ -12344,6 +13081,11 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/smooth_large, /area/station/security/brig) +"dzn" = ( +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/machinery/door/airlock/maintenance, +/turf/open/floor/plating/airless, +/area/station/maintenance/aft/upper) "dzo" = ( /mob/living/basic/spider/giant/tarantula{ name = "Mr Johnson" @@ -12352,15 +13094,20 @@ /obj/effect/decal/cleanable/blood/xeno, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"dzt" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/junction/yjunction{ +"dzw" = ( +/turf/open/floor/wood/large, +/area/station/engineering/lobby) +"dzx" = ( +/obj/effect/turf_decal/stripes/red/line{ + dir = 1 + }, +/obj/machinery/digital_clock/directional/north, +/obj/effect/turf_decal/siding/red{ + dir = 1 + }, +/turf/open/floor/iron/textured_edge{ dir = 1 }, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) -"dzx" = ( -/turf/open/floor/iron/dark, /area/station/command/gateway) "dzH" = ( /obj/machinery/camera/autoname/directional/north, @@ -12368,14 +13115,11 @@ /obj/machinery/light/directional/east, /turf/open/floor/engine, /area/station/engineering/atmos/hfr_room) -"dzI" = ( -/turf/open/openspace, -/area/station/maintenance/starboard/fore) "dzK" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "dzP" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -12405,23 +13149,13 @@ /turf/open/floor/iron/dark/textured_large, /area/station/medical/virology) "dAV" = ( -/obj/effect/turf_decal/trimline/brown/filled/line, -/obj/item/radio/intercom/directional/south, -/obj/machinery/conveyor{ - dir = 8; - id = "mining" - }, -/obj/machinery/bouldertech/refinery/smelter, -/obj/structure/railing{ - dir = 1 +/obj/structure/sign/poster/random/directional/south, +/obj/item/kirbyplants/random, +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 6 }, /turf/open/floor/iron, -/area/station/cargo/miningoffice) -"dAW" = ( -/obj/structure/sink/directional/east, -/obj/structure/mirror/directional/west, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/restrooms) +/area/station/cargo/storage) "dAY" = ( /obj/machinery/door/firedoor/heavy, /obj/machinery/door/airlock/highsecurity{ @@ -12431,11 +13165,6 @@ /obj/effect/turf_decal/stripes/end{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/locked, -/obj/effect/mapping_helpers/airlock_note_placer{ - note_info = "Access with authorization only. The Controlled Hazard Chamber is designed to withstand incidents you cannot. Essential safety equipment has been provided to ensure your work may continue without compromising station integrity"; - note_name = "Projects" - }, /turf/open/floor/engine, /area/station/medical/chemistry) "dBd" = ( @@ -12444,10 +13173,6 @@ /obj/effect/spawner/random/structure/musician/piano/random_piano, /turf/open/floor/iron/dark/diagonal, /area/station/service/theater) -"dBe" = ( -/obj/item/kirbyplants/photosynthetic, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "dBk" = ( /obj/effect/turf_decal/siding/wood{ dir = 4 @@ -12461,6 +13186,14 @@ "dBm" = ( /turf/closed/wall, /area/station/hallway/primary/central) +"dBo" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/engineering/lobby) "dBp" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/line{ @@ -12485,6 +13218,13 @@ /obj/effect/turf_decal/trimline/blue/filled/mid_joiner, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/chem_storage) +"dBz" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 8 + }, +/turf/open/openspace, +/area/station/medical/virology) "dBB" = ( /obj/structure/lattice/catwalk, /obj/item/stack/rods, @@ -12495,10 +13235,15 @@ /obj/effect/spawner/random/structure/barricade, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"dBG" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/iron/dark, -/area/station/engineering/lobby) +"dBE" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/duct, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/structure/cable, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet/restrooms) "dBM" = ( /obj/effect/turf_decal/siding/dark{ dir = 8 @@ -12510,7 +13255,7 @@ /turf/open/floor/iron/dark/textured_half{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "dCg" = ( /obj/effect/turf_decal/arrows/red{ dir = 4; @@ -12534,12 +13279,16 @@ /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/service/library) -"dCE" = ( -/obj/effect/turf_decal/siding/brown/end{ +"dCs" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 10 + }, +/obj/effect/turf_decal/siding/yellow{ dir = 4 }, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) +/turf/open/floor/iron, +/area/station/engineering/atmos/upper) "dCY" = ( /obj/machinery/door/firedoor, /turf/open/floor/engine/hull/air, @@ -12550,17 +13299,26 @@ /obj/machinery/light/directional/east, /turf/open/floor/iron/dark/textured_large, /area/station/security/prison) -"dDf" = ( -/obj/machinery/camera/autoname/directional/south, -/obj/effect/landmark/event_spawn, -/turf/open/floor/glass, -/area/station/medical/medbay/central) -"dDq" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +"dDg" = ( /obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, /turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/area/station/maintenance/starboard) +"dDx" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/smart/manifold4w/yellow/visible, +/turf/open/openspace, +/area/station/maintenance/aft/upper) +"dDG" = ( +/obj/effect/decal/cleanable/dirt, +/obj/item/cigbutt{ + pixel_x = -12; + pixel_y = 15 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "dDL" = ( /obj/structure/lattice, /turf/open/space/openspace, @@ -12571,10 +13329,6 @@ /obj/effect/turf_decal/tile/red/fourcorners, /turf/open/floor/iron/dark, /area/station/security/brig) -"dDV" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "dEk" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, @@ -12610,6 +13364,10 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) +"dEr" = ( +/obj/effect/spawner/random/structure/closet_maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "dEu" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment{ @@ -12649,11 +13407,6 @@ }, /turf/open/floor/engine, /area/station/engineering/atmos/hfr_room) -"dEX" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "dEY" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -12687,11 +13440,6 @@ }, /turf/open/openspace, /area/station/maintenance/port/aft) -"dFo" = ( -/obj/structure/rack, -/obj/effect/spawner/random/maintenance/two, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "dFt" = ( /obj/structure/stairs/north, /turf/open/floor/iron, @@ -12716,15 +13464,11 @@ /turf/open/floor/plating, /area/station/maintenance/starboard/aft) "dGi" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Abandoned Hallway" - }, -/obj/machinery/door/firedoor, /obj/effect/turf_decal/trimline/brown/filled/corner{ dir = 4 }, /turf/open/floor/iron, -/area/station/hallway/secondary/construction) +/area/station/hallway/primary/starboard) "dGu" = ( /obj/structure/frame/computer{ anchored = 1 @@ -12739,8 +13483,9 @@ /obj/effect/turf_decal/siding/blue{ dir = 1 }, +/obj/machinery/camera/autoname/directional/north, /turf/open/openspace, -/area/station/command/bridge) +/area/station/command/meeting_room/council) "dGy" = ( /obj/structure/cable, /obj/machinery/power/apc/auto_name/directional/east, @@ -12752,10 +13497,6 @@ }, /turf/open/floor/iron/dark, /area/station/medical/medbay/lobby) -"dGM" = ( -/obj/effect/mapping_helpers/broken_floor, -/turf/open/floor/eighties, -/area/station/maintenance/starboard/fore) "dGQ" = ( /obj/machinery/door/airlock/engineering/glass{ name = "Primary Tool Storage" @@ -12764,36 +13505,18 @@ /obj/effect/landmark/navigate_destination/tools, /turf/open/floor/iron, /area/station/commons/storage/primary) -"dGS" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 1 - }, -/obj/machinery/camera/directional/north{ - c_tag = "Engineering - Shared Storage" +"dGX" = ( +/obj/structure/showcase/machinery/oldpod{ + desc = "An old NT branded sleeper, decommissioned after the lead acetate incident. None of the functional machinery remains inside."; + name = "decommissioned sleeper" }, -/turf/open/floor/iron, -/area/station/engineering/lobby) -"dHb" = ( -/obj/structure/table/reinforced, /obj/effect/decal/cleanable/dirt, -/obj/item/encryptionkey/headset_service{ - pixel_y = 5 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"dHh" = ( -/obj/machinery/door/airlock{ - name = "Emergency Storage" - }, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/spawner/random/maintenance, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard) +"dGY" = ( +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/main) "dHm" = ( /obj/machinery/door/airlock/virology{ name = "Abandoned Bathroom" @@ -12802,39 +13525,32 @@ /turf/open/floor/iron/freezer, /area/station/maintenance/port) "dHq" = ( -/obj/effect/spawner/structure/window, -/obj/machinery/door/poddoor/shutters{ - id = "commissaryshutter"; - name = "Vacant Commissary Shutter" - }, -/obj/effect/turf_decal/tile/dark_green/fourcorners, -/turf/open/floor/iron/dark, -/area/station/commons/vacant_room/office) -"dHC" = ( -/obj/structure/table/reinforced, -/obj/item/flashlight, -/obj/item/pipe_dispenser, -/obj/item/analyzer, -/obj/item/storage/toolbox/mechanical, -/obj/item/pipe_dispenser, /obj/effect/turf_decal/stripes/line{ - dir = 9 + dir = 4 }, -/obj/item/pipe_dispenser{ - pixel_y = 8 +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"dHK" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/lattice/catwalk, -/obj/structure/sign/poster/contraband/singletank_bomb/directional/east, -/obj/structure/disposalpipe/segment{ - dir = 9 +/turf/open/floor/iron/dark/smooth_edge{ + dir = 4 }, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) +/area/station/command/gateway) +"dHx" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) +"dHD" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/effect/turf_decal/trimline/purple/filled/line{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/upper) "dHL" = ( /turf/closed/wall, /area/station/maintenance/central) @@ -12845,11 +13561,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"dHS" = ( -/obj/structure/closet/secure_closet/personal/cabinet, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/commons/dorms) "dIt" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -12894,12 +13605,14 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/wood, /area/station/service/cafeteria) -"dJn" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 9 +"dJp" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 1 }, -/turf/open/floor/iron, -/area/station/engineering/lobby) +/turf/open/floor/plating/airless, +/area/station/maintenance/starboard/aft/upper) "dJt" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -12912,17 +13625,13 @@ /turf/open/floor/iron, /area/station/engineering/storage_shared) "dJC" = ( -/obj/machinery/door/airlock/mining{ - name = "Cargo Bay" +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/loading_area/red{ + dir = 4 }, -/obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/access/all/supply/general, -/obj/machinery/door/poddoor/shutters/preopen{ - name = "Cargo Bay Shutters"; - id = "qm_cargobay"; +/turf/open/floor/iron/dark/smooth_edge{ dir = 8 }, -/turf/open/floor/plating, /area/station/cargo/storage) "dJE" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -12937,19 +13646,26 @@ "dJF" = ( /obj/structure/railing/corner, /obj/effect/landmark/event_spawn, -/turf/open/floor/carpet, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/effect/turf_decal/siding/wood/corner, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) +"dJH" = ( +/obj/machinery/door/airlock/command{ + name = "Auxiliary E.V.A. Storage" + }, +/obj/effect/mapping_helpers/airlock/abandoned, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "dJJ" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 }, /turf/open/floor/engine, /area/station/service/hydroponics) -"dJR" = ( -/obj/effect/spawner/random/structure/girder, -/obj/effect/spawner/structure/electrified_grille, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "dJV" = ( /obj/machinery/camera/autoname/directional/east, /obj/machinery/vending/cigarette, @@ -12962,15 +13678,6 @@ "dJW" = ( /turf/open/floor/glass/reinforced/airless, /area/station/solars/starboard/aft) -"dKa" = ( -/obj/structure/table/wood, -/obj/item/reagent_containers/cup/soda_cans/cola{ - pixel_x = -4; - pixel_y = 9 - }, -/obj/item/cigbutt, -/turf/open/floor/wood, -/area/station/commons/dorms) "dKq" = ( /obj/structure/mirror/directional/north, /obj/structure/sink/directional/south, @@ -13029,10 +13736,11 @@ /area/station/commons/storage/art) "dKD" = ( /obj/structure/filingcabinet, -/obj/item/radio/intercom/directional/south, /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 }, +/obj/machinery/power/apc/auto_name/directional/south, +/obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/checkpoint/supply) "dKG" = ( @@ -13042,22 +13750,38 @@ }, /turf/open/floor/iron/dark, /area/station/service/chapel) +"dKH" = ( +/turf/open/floor/iron/dark, +/area/station/engineering/transit_tube) "dKL" = ( -/obj/structure/window/reinforced/spawner/directional/south, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/window/reinforced/spawner/directional/west, /obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/command/heads_quarters/qm) +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 10 + }, +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/cargo/storage) +"dKM" = ( +/obj/machinery/holopad, +/obj/machinery/camera/autoname/directional/west, +/obj/machinery/status_display/evac/directional/west, +/turf/open/floor/engine, +/area/station/engineering/atmos/hfr_room) "dKN" = ( /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "dKT" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 4 +/obj/machinery/conveyor{ + id = "mining" }, -/obj/structure/chair/sofa/middle/brown{ +/obj/structure/railing{ dir = 8 }, /turf/open/floor/iron/textured, @@ -13095,15 +13819,11 @@ }, /turf/open/floor/iron, /area/station/cargo/storage) -"dLO" = ( -/obj/machinery/door/airlock/maintenance{ - name = "CE's Maintenance Access" - }, -/obj/effect/mapping_helpers/airlock/access/any/engineering/construction, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/engineering/lobby) +"dLS" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "dLU" = ( /obj/machinery/door/airlock/maintenance{ name = "Research Maintenance" @@ -13139,20 +13859,19 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark, /area/station/medical/medbay/lobby) -"dMp" = ( -/obj/effect/decal/cleanable/cobweb, -/obj/structure/closet/emcloset, -/turf/open/floor/plating/airless, -/area/station/maintenance/starboard/lesser) -"dMJ" = ( -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 10 +"dMG" = ( +/obj/machinery/door/airlock/maintenance, +/obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 }, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/machinery/light/directional/north, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/obj/structure/disposalpipe/segment{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "dMK" = ( /obj/structure/table/wood, /obj/item/instrument/guitar{ @@ -13192,10 +13911,10 @@ /turf/open/floor/iron, /area/station/hallway/primary/port) "dNc" = ( -/obj/item/kirbyplants/random, -/obj/machinery/power/apc/auto_name/directional/north, -/obj/structure/cable, -/turf/open/floor/wood, +/obj/effect/turf_decal/siding/wood/corner, +/obj/machinery/camera/autoname/directional/west, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) "dNj" = ( /obj/structure/cable, @@ -13217,16 +13936,12 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/service) -"dNu" = ( -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) -"dNw" = ( -/obj/effect/spawner/random/structure/closet_maintenance, -/obj/effect/spawner/random/maintenance/three, -/obj/item/circuitboard/machine/cyborgrecharger, -/obj/structure/sign/poster/contraband/energy_swords/directional/north, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/fore) +"dNx" = ( +/obj/structure/ladder, +/obj/effect/turf_decal/stripes/box, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos/office) "dNA" = ( /obj/machinery/door/airlock{ id_tag = "courtlockdown"; @@ -13237,20 +13952,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood, /area/station/security/courtroom) -"dNL" = ( -/obj/item/bouquet/sunflower{ - pixel_y = 4 - }, -/obj/structure/table/reinforced, -/obj/structure/sign/poster/contraband/atmosia_independence/directional/north{ - desc = "Welcome."; - name = "Welcome." - }, -/obj/item/clothing/glasses/orange{ - pixel_y = 5 - }, -/turf/open/floor/iron/vaporwave, -/area/station/maintenance/starboard/lesser) "dNP" = ( /turf/open/floor/wood, /area/station/command/heads_quarters/rd) @@ -13276,7 +13977,9 @@ dir = 8 }, /obj/machinery/camera/autoname/directional/west, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 8 + }, /area/station/hallway/primary/central) "dNW" = ( /obj/machinery/modular_computer/preset/civilian, @@ -13314,11 +14017,6 @@ /obj/structure/sign/poster/contraband/random/directional/west, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"dOl" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing, -/turf/open/openspace, -/area/station/engineering/break_room) "dOm" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -13329,19 +14027,36 @@ }, /turf/open/openspace, /area/station/commons/fitness/recreation) -"dOq" = ( -/obj/structure/cable, -/turf/open/floor/catwalk_floor, -/area/station/maintenance/starboard/lesser) +"dOC" = ( +/obj/item/toy/cards/deck{ + pixel_y = 4 + }, +/obj/structure/table, +/obj/item/food/hotcrossbun{ + pixel_x = 10; + pixel_y = 12 + }, +/turf/open/floor/iron/large, +/area/station/engineering/lobby) +"dOE" = ( +/obj/structure/closet/emcloset, +/obj/effect/landmark/start/hangover, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 + }, +/obj/machinery/wall_healer/directional/west, +/turf/open/floor/iron/dark, +/area/station/commons/fitness/recreation) "dOH" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ +/obj/effect/turf_decal/trimline/brown/filled/corner{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/trimline/brown/filled/warning{ dir = 4 }, -/obj/item/pushbroom, -/obj/structure/rack, -/obj/machinery/light/directional/east, -/obj/machinery/status_display/supply{ - pixel_x = 32 +/obj/machinery/door/firedoor/border_only{ + dir = 1 }, /turf/open/floor/iron, /area/station/cargo/storage) @@ -13357,6 +14072,51 @@ /obj/machinery/light/directional/south, /turf/open/openspace, /area/station/cargo/storage) +"dPj" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/computer/atmos_alert, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/turf/open/floor/iron/checker, +/area/station/engineering/atmos/upper) +"dPl" = ( +/turf/open/floor/glass/airless, +/area/station/maintenance/aft) +"dPq" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper/stack, +/obj/structure/fluff/paper/stack{ + dir = 1 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) +"dPv" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/commons/storage/primary) +"dPC" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) +"dPM" = ( +/obj/item/kirbyplants/random, +/obj/machinery/button/door/directional/east{ + id = "Cabin3"; + name = "Cabin Bolt Control"; + normaldoorcontrol = 1; + specialfunctions = 4 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) "dPP" = ( /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/disposalpipe/trunk{ @@ -13367,23 +14127,17 @@ }, /turf/open/floor/engine, /area/station/science/xenobiology) -"dPQ" = ( -/obj/structure/railing, -/turf/open/openspace, -/area/station/engineering/storage_shared) "dPR" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/hallway/secondary/entry) -"dQb" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/turf_decal/bot, -/obj/machinery/atmospherics/components/unary/thermomachine/heater{ +"dQk" = ( +/obj/structure/lattice, +/obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/turf/open/openspace, +/area/station/maintenance/starboard/upper) "dQx" = ( /obj/structure/railing{ dir = 4 @@ -13394,13 +14148,23 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"dQz" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/closet, +/obj/item/storage/box/lights/mixed, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "dQM" = ( /obj/effect/turf_decal/tile/yellow/opposingcorners, /turf/open/floor/iron/dark, /area/station/medical/chemistry) "dQP" = ( /obj/machinery/camera/autoname/directional/north, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 1 + }, /area/station/hallway/primary/central) "dQQ" = ( /obj/effect/turf_decal/siding/dark/corner{ @@ -13415,7 +14179,7 @@ dir = 4 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "dQV" = ( /obj/machinery/holopad, /turf/open/floor/iron, @@ -13441,18 +14205,21 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat/teleporter) -"dRk" = ( -/obj/effect/turf_decal/siding/blue/corner{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/station/command/bridge) +/area/station/ai/satellite/teleporter) "dRl" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/smooth, /area/station/science/robotics) +"dRx" = ( +/obj/effect/turf_decal/trimline/red/filled/line{ + dir = 1 + }, +/obj/structure/cable, +/obj/effect/landmark/start/depsec/engineering, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/security/checkpoint/engineering) "dRU" = ( /obj/structure/table/wood, /obj/effect/spawner/random/maintenance, @@ -13472,6 +14239,12 @@ /obj/structure/cable, /turf/open/floor/grass, /area/station/hallway/secondary/entry) +"dSq" = ( +/obj/structure/railing/corner/end/flip{ + dir = 8 + }, +/turf/open/floor/plating, +/area/station/maintenance/aft) "dSs" = ( /obj/machinery/portable_atmospherics/pump, /obj/effect/turf_decal/stripes/line{ @@ -13481,6 +14254,14 @@ /obj/structure/extinguisher_cabinet/directional/west, /turf/open/floor/iron/dark/smooth_large, /area/station/science/ordnance) +"dSu" = ( +/obj/structure/cable, +/obj/effect/landmark/start/hangover, +/obj/effect/turf_decal/stripes/white/line{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "dSA" = ( /obj/structure/railing{ dir = 1 @@ -13503,27 +14284,25 @@ /obj/structure/ladder, /turf/open/floor/engine/hull/air, /area/station/maintenance/port) -"dSX" = ( -/obj/effect/decal/cleanable/dirt, +"dSY" = ( +/obj/structure/railing{ + dir = 8 + }, /obj/effect/spawner/random/maintenance, -/obj/effect/decal/cleanable/blood/oil, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"dTb" = ( -/obj/structure/table, -/obj/effect/spawner/random/food_or_drink/booze, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard/aft/upper) +"dTa" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "dTc" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 }, /turf/open/floor/iron, /area/station/science/research) -"dTi" = ( -/obj/effect/spawner/random/maintenance, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/lesser) "dTo" = ( /obj/structure/chair/pew{ dir = 8 @@ -13540,6 +14319,12 @@ /obj/machinery/firealarm/directional/east, /turf/open/floor/iron, /area/station/science/robotics/lab) +"dTs" = ( +/obj/machinery/duct, +/obj/effect/spawner/random/structure/grille, +/obj/effect/spawner/random/structure/barricade, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "dTv" = ( /obj/structure/table/reinforced, /obj/machinery/newscaster/directional/east, @@ -13552,6 +14337,14 @@ "dTL" = ( /turf/closed/wall, /area/station/commons/locker) +"dTQ" = ( +/obj/structure/table, +/obj/effect/turf_decal/tile/dark_blue/fourcorners, +/obj/effect/turf_decal/siding/dark{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/transit_tube) "dTT" = ( /obj/structure/railing{ dir = 4 @@ -13563,16 +14356,25 @@ }, /turf/open/openspace, /area/station/science/xenobiology) +"dTX" = ( +/obj/machinery/computer/mech_bay_power_console, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/item/cigbutt{ + pixel_x = -12; + pixel_y = 2 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "dUb" = ( /turf/open/openspace, /area/station/hallway/primary/central) "dUe" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 4 - }, -/obj/machinery/airalarm/directional/east, -/turf/open/floor/iron, -/area/station/hallway/primary/starboard) +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/catwalk_floor, +/area/station/cargo/storage) "dUo" = ( /obj/effect/turf_decal/trimline/dark_blue/filled/warning{ dir = 1 @@ -13581,7 +14383,7 @@ /obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured_edge, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "dUw" = ( /obj/effect/turf_decal/siding/blue/corner{ dir = 1 @@ -13591,29 +14393,10 @@ }, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"dUG" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/effect/decal/cleanable/dirt, -/obj/item/reagent_containers/cup/soda_cans/monkey_energy{ - pixel_x = 8; - pixel_y = 16 - }, -/obj/item/stock_parts/power_store/cell/high{ - charge = 100; - maxcharge = 15000; - pixel_y = 6 - }, -/obj/item/cigbutt{ - pixel_x = -11; - pixel_y = 15 - }, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) -"dUH" = ( -/obj/machinery/vending/cola/pwr_game, -/turf/open/floor/eighties, -/area/station/engineering/lobby) +"dUK" = ( +/obj/structure/disposalpipe/segment, +/turf/open/openspace, +/area/station/maintenance/starboard/upper) "dUN" = ( /obj/machinery/door/poddoor/shutters/window{ dir = 4; @@ -13623,7 +14406,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/red/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "dUP" = ( /obj/structure/flora/bush/pale/style_random, /obj/structure/flora/bush/ferny/style_random, @@ -13658,13 +14441,13 @@ /obj/machinery/airalarm/directional/east, /turf/open/floor/iron/dark, /area/station/security/checkpoint/science) -"dVg" = ( -/obj/item/kirbyplants/random, -/obj/effect/turf_decal/trimline/yellow/filled/warning/corner{ +"dVd" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ dir = 1 }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/turf/open/openspace, +/area/station/commons/dorms) "dVh" = ( /obj/effect/turf_decal/trimline/yellow/arrow_cw{ dir = 8 @@ -13703,6 +14486,18 @@ }, /turf/open/floor/wood/large, /area/station/service/library) +"dVq" = ( +/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ + dir = 8 + }, +/obj/machinery/meter, +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/sign/warning/directional/north, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "dVs" = ( /obj/effect/turf_decal/siding/dark{ dir = 5 @@ -13750,11 +14545,12 @@ }, /turf/open/floor/plating, /area/station/hallway/secondary/entry) -"dWg" = ( -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ +"dWe" = ( +/obj/structure/railing{ dir = 4 }, -/turf/open/floor/iron/smooth, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/catwalk_floor/iron_dark, /area/station/engineering/atmos/upper) "dWi" = ( /obj/machinery/door/airlock/maintenance{ @@ -13762,19 +14558,12 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical) -"dWj" = ( -/obj/effect/spawner/random/decoration/showcase, -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/turf/open/floor/plating, -/area/station/maintenance/port) "dWp" = ( /obj/effect/turf_decal/siding/blue{ dir = 1 @@ -13807,19 +14596,17 @@ }, /turf/open/floor/iron, /area/station/maintenance/port/aft) -"dWM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table, -/obj/item/reagent_containers/cup/beaker, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) "dXh" = ( -/obj/effect/turf_decal/plaque{ - icon_state = "L10" +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/tile/dark_green/fourcorners, +/obj/machinery/door/poddoor/shutters{ + dir = 1; + id = "Lcommissaryshutter"; + name = "Vacant Commissary Shutter" }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/hallway/primary/central) +/turf/open/floor/iron/dark, +/area/station/commons/vacant_room/office) "dXi" = ( /obj/machinery/vending/cigarette, /turf/open/floor/engine/hull, @@ -13845,14 +14632,32 @@ /obj/structure/railing/corner{ dir = 4 }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/openspace, -/area/station/command/bridge) +/area/station/command/meeting_room/council) +"dXq" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/light/directional/north, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) +"dXu" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/obj/machinery/duct, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central) "dXy" = ( /turf/open/floor/plating, /area/station/maintenance/starboard/fore) "dXA" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/all/engineering/aux_base, /turf/open/floor/plating, /area/station/maintenance/port/aft) @@ -13861,13 +14666,9 @@ /obj/structure/cable, /turf/open/floor/iron/textured_large, /area/station/security/prison) -"dXD" = ( -/obj/structure/cable, -/obj/effect/spawner/random/trash/graffiti, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/maintenance/port) +"dXE" = ( +/turf/open/floor/wood, +/area/station/maintenance/aft) "dXM" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -13877,12 +14678,6 @@ }, /turf/open/floor/iron/dark, /area/station/security/warden) -"dXN" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "dXP" = ( /obj/structure/chair/stool/bar/directional/west, /obj/effect/landmark/start/hangover, @@ -13924,11 +14719,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/wood/large, /area/station/hallway/primary/central) -"dYl" = ( -/obj/structure/weightmachine/weightlifter, -/obj/machinery/airalarm/directional/north, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "dYq" = ( /obj/structure/lattice/catwalk, /obj/structure/railing/corner, @@ -13962,13 +14752,18 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"dZs" = ( -/obj/effect/mapping_helpers/broken_floor, -/obj/structure/fluff/paper/stack{ - dir = 4 +"dZn" = ( +/obj/machinery/button/door/incinerator_vent_atmos_aux{ + pixel_y = 24 }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) +/obj/machinery/button/door/incinerator_vent_atmos_main{ + pixel_y = 40 + }, +/obj/machinery/button/ignition/incinerator/atmos{ + pixel_y = 9 + }, +/turf/closed/wall/r_wall, +/area/station/engineering/atmos/upper) "dZv" = ( /obj/structure/railing{ dir = 6 @@ -13989,7 +14784,7 @@ name = "AI Satellite Teleporter room" }, /turf/open/floor/catwalk_floor/iron_smooth, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "dZA" = ( /obj/machinery/light/floor, /turf/open/floor/carpet/black, @@ -14009,11 +14804,28 @@ /obj/structure/closet/crate/wooden/toy, /turf/open/floor/wood/large, /area/station/service/theater_dressing) +"dZI" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable, +/turf/open/floor/wood, +/area/station/maintenance/starboard) +"dZJ" = ( +/obj/structure/lattice, +/obj/structure/sign/warning/directional/south, +/turf/open/space/basic, +/area/space/nearstation) "dZM" = ( /obj/structure/girder/reinforced, /obj/structure/grille, /turf/open/floor/plating, /area/station/maintenance/port/greater) +"dZS" = ( +/obj/structure/sign/warning/radiation/rad_area/directional/east, +/obj/effect/spawner/random/engineering/atmospherics_portable, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/fore) "dZZ" = ( /obj/machinery/atmospherics/components/unary/passive_vent{ dir = 1; @@ -14036,6 +14848,10 @@ "eaj" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, +/obj/machinery/door/poddoor/preopen{ + id = "bridge blast"; + name = "Bridge Blast Door" + }, /turf/open/floor/plating, /area/station/hallway/secondary/command) "eak" = ( @@ -14046,36 +14862,15 @@ dir = 8 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "eao" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/left/directional/east{ - name = "Cargo Desk"; - req_access = list("shipping") - }, -/obj/effect/turf_decal/tile/brown/fourcorners, -/turf/open/floor/iron, +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/arrows, +/turf/open/floor/iron/dark/textured_large, /area/station/cargo/sorting) "eap" = ( /turf/closed/wall, /area/station/hallway/secondary/entry) -"eas" = ( -/obj/machinery/wall_healer/directional/east, -/obj/machinery/camera/autoname/directional/east, -/obj/effect/turf_decal/trimline/blue/filled/line{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/security/medical) -"eaw" = ( -/obj/effect/turf_decal/siding/brown, -/obj/effect/turf_decal/siding/brown/corner{ - dir = 1 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) "eaL" = ( /obj/structure/table/reinforced, /obj/structure/displaycase/forsale{ @@ -14099,8 +14894,22 @@ /area/station/science/lobby) "eaM" = ( /obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters{ + dir = 8; + id = "commissaryshutter"; + name = "Vacant Commissary Shutter" + }, /turf/open/floor/plating, /area/station/commons/vacant_room/office) +"eaN" = ( +/obj/effect/turf_decal/trimline/white/line{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "eaO" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, @@ -14110,15 +14919,13 @@ /obj/item/hemostat, /turf/open/floor/iron/white, /area/station/maintenance/hallway/abandoned_recreation) -"eaT" = ( -/obj/effect/turf_decal/siding/wood{ +"eaU" = ( +/obj/machinery/camera/autoname/directional/east, +/obj/effect/turf_decal/tile/yellow{ dir = 4 }, -/obj/item/cigbutt, -/obj/effect/landmark/start/hangover, -/obj/machinery/camera/autoname/directional/south, -/turf/open/floor/wood, -/area/station/commons/fitness/recreation) +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "eaV" = ( /turf/closed/wall/r_wall, /area/station/engineering/supermatter/room) @@ -14127,42 +14934,27 @@ /obj/item/flashlight/lamp, /turf/open/floor/plating, /area/station/security/detectives_office/private_investigators_office) -"ebA" = ( -/obj/structure/chair/sofa/left/brown{ - dir = 8 +"ebK" = ( +/obj/structure/table/reinforced/rglass, +/obj/item/assembly/flash/handheld{ + pixel_x = 7; + pixel_y = 2 }, -/obj/item/cigbutt{ - pixel_x = -8; - pixel_y = 4 +/obj/machinery/recharger{ + pixel_y = 3 }, -/obj/structure/sign/poster/contraband/kudzu/directional/east, -/turf/open/floor/eighties, -/area/station/maintenance/starboard/fore) -"ebC" = ( -/obj/effect/turf_decal/siding/brown, -/obj/structure/easel, -/obj/item/canvas/twentythree_twentythree, -/obj/item/canvas/twentythree_twentythree, -/obj/item/canvas/twentythree_twentythree, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) -"ebD" = ( -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/item/cigarette/cigar{ + pixel_x = -6; + pixel_y = 5 }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +/obj/effect/turf_decal/tile/red/opposingcorners, +/obj/structure/window/reinforced/spawner/directional/south, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "ebL" = ( /obj/machinery/atmospherics/components/tank, /turf/open/floor/iron/dark/textured_corner, /area/station/science/ordnance/storage) -"ebM" = ( -/obj/structure/rack, -/obj/item/circuitboard/computer/holodeck, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "ebO" = ( /obj/effect/turf_decal/trimline/brown/filled/warning{ dir = 4 @@ -14173,10 +14965,6 @@ /obj/structure/grille, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"ebS" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet, -/area/station/ai_monitored/command/storage/eva) "ebY" = ( /obj/effect/turf_decal/tile/purple, /obj/effect/turf_decal/tile/purple{ @@ -14201,10 +14989,6 @@ /obj/effect/spawner/random/engineering/tracking_beacon, /turf/open/floor/iron/dark, /area/station/science/ordnance) -"ech" = ( -/obj/machinery/camera/autoname/directional/west, -/turf/open/openspace, -/area/station/commons/dorms) "ecu" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -14227,6 +15011,19 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) +"ecz" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/machinery/firealarm/directional/west{ + pixel_y = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/light_switch/directional/west{ + pixel_y = -6 + }, +/turf/open/floor/iron, +/area/station/engineering/storage_shared) "ecB" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/purple/filled/corner{ @@ -14244,7 +15041,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/white/smooth_corner, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "ecJ" = ( /obj/effect/turf_decal/siding/thinplating_new/light{ dir = 4 @@ -14262,10 +15059,6 @@ /obj/effect/mapping_helpers/burnt_floor, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"ecP" = ( -/obj/effect/spawner/random/structure/grille, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "ecS" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, @@ -14298,51 +15091,28 @@ /area/station/science/lobby) "edf" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"edl" = ( -/obj/structure/lattice/catwalk, -/obj/effect/spawner/random/engineering/atmospherics_portable, -/turf/open/water, -/area/station/maintenance/port/fore) -"eds" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/landmark/start/hangover, -/obj/structure/disposalpipe/segment{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/yellow/arrow_ccw{ - dir = 6 - }, -/obj/effect/turf_decal/trimline/yellow/arrow_ccw{ - dir = 6 - }, -/turf/open/floor/iron/corner{ - dir = 1 - }, -/area/station/hallway/secondary/exit/departure_lounge) -"edu" = ( -/obj/machinery/camera/autoname/directional/north, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/cable/layer1, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +"edm" = ( +/obj/effect/spawner/random/trash/mess, +/turf/open/floor/eighties, +/area/station/maintenance/department/crew_quarters/dorms) "edz" = ( /obj/effect/turf_decal/plaque{ - icon_state = "L11" - }, -/obj/effect/turf_decal/siding/green{ - dir = 1 + icon_state = "L12" }, +/obj/effect/turf_decal/siding/white, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) +"edC" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/effect/turf_decal/siding/yellow, +/turf/open/floor/iron, +/area/station/engineering/atmos/upper) "edJ" = ( /obj/effect/landmark/start/assistant, /obj/structure/disposalpipe/segment{ @@ -14355,32 +15125,45 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured_large, /area/station/security/prison) -"edY" = ( -/obj/effect/turf_decal/stripes/line{ +"edR" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ dir = 1 }, -/obj/structure/table/reinforced, -/obj/item/clothing/glasses/meson/engine, -/obj/item/clothing/glasses/meson/engine, -/obj/item/clothing/glasses/meson/engine, -/obj/item/clothing/glasses/meson{ - pixel_y = 8 - }, -/obj/item/clothing/glasses/meson{ - pixel_y = 8 - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +/turf/open/openspace, +/area/station/maintenance/starboard/upper) "eeb" = ( /obj/structure/chair/greyscale, /obj/effect/landmark/start/hangover, /turf/open/floor/glass/reinforced, /area/station/hallway/secondary/construction) +"eeg" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) +"eeh" = ( +/obj/machinery/camera/autoname/directional/west, +/obj/item/radio/intercom/directional/west, +/obj/effect/turf_decal/stripes/box, +/obj/structure/ladder, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "eej" = ( /obj/structure/secure_safe/directional/south, /obj/effect/turf_decal/siding/wood, /turf/open/floor/carpet/orange, /area/station/command/heads_quarters/ce) +"eel" = ( +/obj/machinery/shower/directional/south, +/obj/structure/sink/directional/east, +/obj/structure/mirror/directional/west, +/obj/item/mail/junkmail{ + pixel_y = -6; + pixel_x = 4 + }, +/turf/open/floor/iron/freezer, +/area/station/commons/dorms) "een" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -14404,14 +15187,24 @@ /obj/machinery/wall_healer/directional/east, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) +"eeE" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/trimline/green/filled/corner{ + dir = 1 + }, +/obj/structure/disposalpipe/segment{ + dir = 2 + }, +/turf/open/floor/iron/textured_large, +/area/station/medical/virology) "eeH" = ( /obj/machinery/door/airlock/maintenance{ name = "Medbay Maintenance" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical) "eeN" = ( @@ -14421,11 +15214,38 @@ }, /turf/open/floor/iron/dark/telecomms, /area/station/tcommsat/server) +"eeO" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/stripes/white/line{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "eeW" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood, /area/station/hallway/secondary/service) +"efc" = ( +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/department/crew_quarters/dorms) +"efg" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/machinery/light/small/directional/north, +/obj/structure/table, +/obj/machinery/status_display/evac/directional/north, +/obj/item/paper_bin{ + pixel_x = -5; + pixel_y = 6 + }, +/obj/item/pen{ + pixel_y = 5 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "efh" = ( /obj/item/cigbutt{ pixel_x = -9; @@ -14452,10 +15272,13 @@ /turf/open/floor/wood, /area/station/command/heads_quarters/hos) "efC" = ( -/obj/effect/turf_decal/siding/red{ - dir = 8 +/obj/structure/table/wood, +/obj/effect/turf_decal/siding/wood{ + dir = 1 }, -/turf/open/floor/iron/dark, +/obj/item/paper_bin/bundlenatural, +/obj/item/pen, +/turf/open/floor/wood/large, /area/station/hallway/primary/central) "efD" = ( /obj/structure/extinguisher_cabinet/directional/east, @@ -14485,27 +15308,40 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/science/ordnance) +"efM" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/engineering/storage) "efN" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 1 }, -/obj/machinery/button/elevator{ - id = "catwalk_sec"; - pixel_y = 25 - }, /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/obj/machinery/button/elevator/directional/north{ + id = "catwalk_sec" + }, /turf/open/floor/iron/dark, /area/station/security/brig) -"efZ" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/station/engineering/atmos/project) +"efQ" = ( +/obj/structure/railing/corner, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/upper) "ega" = ( /obj/effect/spawner/random/maintenance, /turf/open/floor/plating/airless, /area/space/nearstation) +"egg" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/duct, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "egi" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -14515,7 +15351,7 @@ /turf/open/floor/iron/dark/textured_half{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "egk" = ( /obj/item/trash/candy, /obj/structure/cable, @@ -14524,23 +15360,21 @@ }, /turf/open/floor/plating, /area/station/maintenance/port) -"egp" = ( -/obj/effect/turf_decal/tile/neutral/half/contrasted{ +"ego" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/trunk/multiz{ dir = 4 }, -/obj/effect/turf_decal/tile/purple/half/contrasted{ - dir = 8 +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"egp" = ( +/obj/effect/turf_decal/tile/neutral/half/contrasted{ + dir = 1 }, /turf/open/floor/iron/dark, /area/station/hallway/primary/central) -"egr" = ( -/obj/structure/lattice/catwalk, -/obj/item/clothing/shoes/wheelys/rollerskates{ - pixel_x = 3; - pixel_y = -5 - }, -/turf/open/openspace, -/area/station/maintenance/starboard/fore) "egw" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/railing/corner{ @@ -14551,6 +15385,12 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/hallway/primary/central) +"egA" = ( +/obj/structure/table, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "egD" = ( /obj/structure/table/reinforced, /turf/open/floor/engine/vacuum, @@ -14565,6 +15405,17 @@ /obj/machinery/firealarm/directional/south, /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) +"egH" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron, +/area/station/science/lobby) "egK" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -14601,7 +15452,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ehi" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/public/glass{ @@ -14609,12 +15460,14 @@ }, /turf/open/floor/engine/hull/air, /area/station/hallway/primary/aft) -"ehO" = ( -/obj/item/trash/can{ - pixel_x = -8 +"ehu" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 }, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/lesser) +/obj/effect/turf_decal/caution/stand_clear, +/turf/open/floor/engine, +/area/station/engineering/atmos/upper) "ehX" = ( /obj/effect/spawner/random/trash/garbage{ spawn_scatter_radius = 1 @@ -14627,10 +15480,13 @@ /turf/open/floor/iron/kitchen_coldroom/freezerfloor, /area/station/service/kitchen/coldroom) "ehZ" = ( -/obj/effect/turf_decal/siding/blue{ +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/siding/blue/corner{ dir = 1 }, -/obj/machinery/light/directional/south, +/obj/effect/turf_decal/arrows{ + dir = 8 + }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "eia" = ( @@ -14648,27 +15504,18 @@ dir = 4 }, /area/station/hallway/primary/fore) -"eij" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "eis" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/trash/grime, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"eiG" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible, -/turf/open/space/basic, -/area/space/nearstation) +"eiu" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/dark/smooth_large, +/area/station/science/explab) "eiW" = ( /obj/item/beacon, /turf/open/floor/engine/vacuum, @@ -14679,7 +15526,18 @@ /obj/item/paper_bin, /obj/item/pen, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) +"ejc" = ( +/obj/structure/cable, +/obj/structure/sign/nanotrasen{ + pixel_y = 32; + dir = 1 + }, +/obj/effect/turf_decal/stripes/white/corner{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "ejh" = ( /obj/effect/turf_decal/stripes/asteroid/corner, /obj/effect/spawner/random/engineering/atmospherics_portable, @@ -14688,13 +15546,25 @@ "ejo" = ( /turf/closed/wall, /area/station/science/xenobiology/hallway) -"ejA" = ( -/obj/machinery/space_heater, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +"ejz" = ( +/obj/machinery/computer/shuttle/mining{ + dir = 8 + }, +/obj/effect/turf_decal/tile/brown/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"ejB" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper{ + dir = 4 + }, +/obj/structure/fluff/paper/stack{ + dir = 8 + }, +/obj/structure/filingcabinet/chestdrawer, +/obj/effect/spawner/random/bureaucracy/paper, +/turf/open/floor/wood, +/area/station/maintenance/aft) "ejP" = ( /obj/effect/turf_decal/siding/dark{ dir = 6 @@ -14703,7 +15573,7 @@ dir = 1 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ejQ" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 @@ -14759,22 +15629,20 @@ }, /turf/open/floor/engine/hull, /area/space/nearstation) -"eku" = ( -/obj/structure/table/reinforced, -/obj/item/stack/sheet/iron{ - amount = 30 +"ekw" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/duct, +/obj/effect/turf_decal/siding/wood{ + dir = 8 }, -/obj/item/stack/sheet/glass/fifty, -/obj/effect/decal/cleanable/cobweb, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"ekB" = ( -/obj/structure/bed, -/obj/structure/window/reinforced/tinted/spawner/directional/south, -/obj/effect/spawner/random/bedsheet, -/turf/open/floor/wood, +/turf/open/floor/iron/dark/smooth_large, /area/station/commons/dorms) +"ekH" = ( +/obj/effect/spawner/random/maintenance, +/obj/structure/toilet, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "ekL" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -14816,16 +15684,11 @@ name = "Inner Maintenance" }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, /area/station/construction/storage_wing) -"els" = ( -/obj/effect/turf_decal/trimline/green/filled/line, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) "elw" = ( /obj/structure/disposalpipe/segment{ dir = 9 @@ -14865,13 +15728,19 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) +"elH" = ( +/obj/machinery/door/airlock/engineering/glass{ + name = "Catwalk Access" + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "elO" = ( /obj/structure/chair/sofa/corp/corner{ dir = 4 }, /obj/item/radio/intercom/directional/north, /turf/open/floor/carpet/executive, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "elP" = ( /obj/effect/turf_decal/bot_white{ color = "#52B4E9" @@ -14894,26 +15763,40 @@ /obj/structure/table, /turf/open/floor/engine/hull/air, /area/station/construction/storage_wing) +"emb" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/duct, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) +"emd" = ( +/obj/effect/landmark/start/atmospheric_technician, +/turf/open/floor/glass/plasma, +/area/station/engineering/atmos/upper) "emh" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 10 }, -/obj/structure/table/reinforced, -/obj/item/storage/photo_album/qm, -/obj/structure/extinguisher_cabinet/directional/south, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment, /turf/open/floor/iron/textured, /area/station/cargo/storage) "emj" = ( -/obj/docking_port/stationary{ - dir = 4; - dwidth = 3; - height = 8; - name = "Cargo Bay"; - shuttle_id = "cargo_home"; - width = 13 +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/arrows/red{ + dir = 4 }, -/turf/open/floor/engine/hull, -/area/space/nearstation) +/obj/effect/turf_decal/arrows/red{ + dir = 8 + }, +/turf/open/floor/iron/dark/textured, +/area/station/cargo/storage) "emn" = ( /obj/structure/table/reinforced/rglass, /obj/effect/turf_decal/trimline/blue/filled/line{ @@ -14956,19 +15839,14 @@ /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) "emH" = ( -/obj/effect/turf_decal/tile/neutral/half/contrasted{ +/obj/effect/turf_decal/tile/neutral/anticorner/contrasted{ + dir = 4 + }, +/obj/effect/turf_decal/tile/dark_blue{ dir = 8 }, -/obj/structure/disposalpipe/segment, -/obj/effect/turf_decal/tile/dark_green, /turf/open/floor/iron/dark, /area/station/hallway/primary/central) -"emL" = ( -/obj/effect/turf_decal/siding/brown/end{ - dir = 1 - }, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) "emM" = ( /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -14978,20 +15856,15 @@ /turf/open/floor/iron, /area/station/science/robotics/lab) "emR" = ( -/obj/structure/chair/office{ - dir = 1 - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ +/obj/effect/turf_decal/bot_white, +/obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/effect/landmark/start/quartermaster, -/turf/open/floor/iron, -/area/station/command/heads_quarters/qm) -"emS" = ( -/obj/effect/spawner/random/structure/closet_maintenance, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/iron/dark/textured_large, +/area/station/cargo/storage) "ene" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -15002,6 +15875,18 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/white, /area/station/medical/medbay/central) +"enk" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/structure/railing/corner/end{ + pixel_y = 2 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "eny" = ( /obj/structure/table, /obj/item/stack/sheet/glass/fifty{ @@ -15010,17 +15895,17 @@ /obj/machinery/firealarm/directional/west, /turf/open/floor/wood, /area/station/commons/storage/tools) +"enA" = ( +/obj/structure/lattice/catwalk, +/obj/effect/spawner/random/bureaucracy/paper, +/turf/open/openspace, +/area/station/maintenance/aft/upper) "enE" = ( /obj/effect/turf_decal/siding/green/corner{ dir = 1 }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) -"enK" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/obj/machinery/firealarm/directional/north, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "enN" = ( /obj/structure/urinal/directional/east, /obj/effect/decal/cleanable/dirt/dust, @@ -15034,6 +15919,11 @@ /obj/structure/grille, /turf/open/floor/plating, /area/station/maintenance/hallway/abandoned_recreation) +"enY" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "eoe" = ( /obj/vehicle/ridden/atv{ dir = 4; @@ -15064,6 +15954,11 @@ }, /turf/open/floor/iron/white, /area/station/maintenance/hallway/abandoned_recreation) +"eot" = ( +/obj/structure/girder, +/obj/structure/grille, +/turf/open/floor/plating, +/area/station/maintenance/aft/upper) "eoF" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/decoration/paint, @@ -15083,6 +15978,15 @@ /obj/effect/spawner/random/maintenance, /turf/open/floor/plating, /area/station/maintenance/port) +"eoN" = ( +/obj/structure/lattice/catwalk, +/obj/structure/table, +/obj/item/stack/rods{ + pixel_y = 3 + }, +/obj/structure/sign/poster/contraband/lizard/directional/south, +/turf/open/openspace, +/area/station/maintenance/department/crew_quarters/dorms) "epi" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -15108,14 +16012,25 @@ /turf/open/floor/iron/dark/textured_half{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat/teleporter) -"epE" = ( -/obj/structure/flora/bush/fullgrass/style_random, -/obj/structure/flora/bush/ferny/style_random, -/obj/structure/flora/bush/flowers_br/style_random, -/obj/effect/landmark/event_spawn, -/turf/open/floor/grass, -/area/station/commons/dorms) +/area/station/ai/satellite/teleporter) +"epn" = ( +/obj/machinery/door/airlock/public/glass{ + name = "Chapel Office" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 1 + }, +/turf/open/floor/wood, +/area/station/maintenance/starboard) +"epv" = ( +/obj/structure/lattice, +/obj/structure/sign/warning/hot_temp/directional/south, +/turf/open/space/basic, +/area/space/nearstation) +"epH" = ( +/turf/open/floor/plating, +/area/station/maintenance/aft/upper) "epR" = ( /obj/effect/turf_decal/trimline/dark_blue/line{ dir = 4 @@ -15130,7 +16045,7 @@ dir = 8 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "epY" = ( /obj/structure/plaque/static_plaque/golden/commission/efficiency{ pixel_y = 32 @@ -15151,6 +16066,7 @@ pixel_x = 3; pixel_y = 9 }, +/obj/effect/turf_decal/siding/green, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "eqi" = ( @@ -15173,11 +16089,6 @@ /obj/structure/closet/emcloset/anchored, /turf/open/floor/plating, /area/station/engineering/storage_shared) -"eqp" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/power/apc/auto_name/directional/west, -/turf/open/floor/carpet/black, -/area/station/service/library/private) "eqt" = ( /obj/machinery/camera/autoname/directional/south, /turf/open/openspace, @@ -15189,13 +16100,21 @@ /obj/effect/turf_decal/siding/dark/corner, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "eqx" = ( /obj/structure/railing{ dir = 6 }, /turf/open/floor/engine/hull/air, /area/station/maintenance/port/aft) +"eqR" = ( +/obj/effect/turf_decal/trimline/red/filled/line{ + dir = 5 + }, +/obj/structure/cable, +/obj/effect/landmark/start/depsec/engineering, +/turf/open/floor/iron/dark, +/area/station/security/checkpoint/engineering) "eqU" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/green/filled/line{ @@ -15217,40 +16136,17 @@ }, /turf/open/floor/wood/large, /area/station/hallway/primary/central) -"eri" = ( -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/turf_decal/caution/stand_clear, -/turf/open/floor/engine, -/area/station/engineering/atmos/project) -"erj" = ( -/obj/structure/stairs/south, -/turf/open/floor/iron/stairs{ - dir = 1 - }, -/area/station/maintenance/starboard/lesser) "erp" = ( -/obj/structure/lattice, -/obj/machinery/camera/directional/west, -/turf/open/openspace, -/area/station/hallway/primary/central) -"err" = ( -/obj/structure/sign/poster/official/no_erp/directional/north, -/turf/open/floor/iron/dark, -/area/station/commons/dorms) -"ers" = ( -/obj/structure/chair/comfy/brown{ - dir = 4 - }, -/obj/machinery/status_display/evac/directional/west, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, /obj/structure/cable, -/turf/open/floor/carpet, -/area/station/security/courtroom) +/turf/open/floor/iron/dark, +/area/station/command/bridge) "eru" = ( /obj/structure/stairs/east, /obj/structure/railing, +/obj/machinery/newscaster/directional/east, /turf/open/floor/iron/stairs/medium{ dir = 8 }, @@ -15272,7 +16168,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -15285,11 +16181,6 @@ /obj/structure/fake_stairs/directional/east, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"erI" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/bookcase/random/religion, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) "erM" = ( /obj/machinery/vending/autodrobe, /obj/item/clothing/head/cone{ @@ -15310,32 +16201,36 @@ }, /turf/open/floor/wood/large, /area/station/service/theater_dressing) +"erV" = ( +/obj/machinery/door/airlock/engineering{ + name = "Engine Room" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "atmoslowersm" + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/supermatter/room) "esb" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 }, /turf/open/floor/iron/dark, /area/station/security/medical) -"esk" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/yellow/filled/corner, -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ - dir = 6 +"esr" = ( +/obj/effect/decal/cleanable/dirt, +/obj/item/skub{ + pixel_x = 7; + pixel_y = 18 }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) -"esn" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/obj/structure/sign/warning/electric_shock/directional/west, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/fore) +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "esu" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/burnt_floor, @@ -15351,19 +16246,20 @@ }, /turf/open/floor/iron/dark, /area/station/hallway/secondary/construction) +"esD" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/spawner/random/structure/steam_vent, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "esH" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/medical) -"esK" = ( -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 4 - }, -/obj/machinery/camera/autoname/directional/north, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "esR" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -15383,16 +16279,6 @@ /obj/effect/turf_decal/tile/blue/full, /turf/open/floor/iron/white, /area/station/medical/storage) -"etf" = ( -/obj/machinery/door/airlock{ - id_tag = "Cabin7"; - name = "Cabin 1" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/station/commons/dorms) "etl" = ( /obj/structure/table/wood, /obj/item/paper_bin{ @@ -15410,28 +16296,26 @@ pixel_y = 3 }, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "etp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/cobweb, -/obj/structure/table, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/iron, -/area/station/maintenance/starboard/central) -"etu" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/poddoor/shutters{ - id = "abandoned_kitchen"; - name = "Kitchen Shudders" +/obj/effect/turf_decal/stripes{ + dir = 1 }, -/obj/item/rag, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "etN" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/orange/visible, /obj/machinery/atmospherics/pipe/heat_exchanging/junction/layer4, /turf/closed/wall/r_wall, /area/station/science/ordnance/burnchamber) +"etQ" = ( +/obj/machinery/door/airlock/virology/glass{ + name = "Malpractice Tower" + }, +/obj/effect/turf_decal/tile/green/full, +/obj/effect/mapping_helpers/airlock/access/all/medical/virology, +/turf/open/floor/iron/dark/textured_large, +/area/station/medical/virology) "etU" = ( /obj/structure/lattice/catwalk, /obj/structure/closet/crate/cardboard, @@ -15451,6 +16335,24 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/security/detectives_office/private_investigators_office) +"euu" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 9 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/structure/cable, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) +"eux" = ( +/obj/machinery/camera/directional/north{ + c_tag = "Atmospherics - co2 Cell"; + name = "atmospherics camera" + }, +/obj/machinery/light/small/directional/north, +/turf/open/floor/engine/plasma, +/area/station/engineering/atmos/upper) "euD" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, @@ -15458,19 +16360,17 @@ "euG" = ( /turf/closed/wall, /area/station/cargo/bitrunning/den) +"euH" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/structure/stairs/south, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "euI" = ( /obj/effect/spawner/random/trash/moisture_trap, /turf/open/floor/carpet, /area/station/maintenance/starboard/aft) -"euN" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 1 - }, -/obj/effect/spawner/random/trash/cigbutt, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/wood/tile, -/area/station/security/detectives_office/private_investigators_office) "eva" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/sign/poster/official/random/directional/west, @@ -15492,13 +16392,6 @@ /obj/effect/mapping_helpers/airlock/access/any/science/xenobio, /turf/open/floor/iron, /area/station/science/xenobiology/hallway) -"evv" = ( -/obj/machinery/atmospherics/components/trinary/mixer/airmix/flipped/layer5{ - dir = 8; - name = "air mixer" - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "evC" = ( /obj/effect/turf_decal/trimline/yellow/arrow_cw{ dir = 8 @@ -15510,25 +16403,13 @@ dir = 8 }, /area/station/hallway/secondary/exit/departure_lounge) -"evH" = ( -/obj/structure/broken_flooring/singular/directional/east, -/obj/machinery/space_heater, -/obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) -"evO" = ( -/turf/closed/wall/r_wall, -/area/station/maintenance/starboard/lesser) -"ewf" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 +"ewg" = ( +/obj/structure/disposalpipe/segment{ + dir = 9 }, -/obj/machinery/airalarm/directional/east, -/obj/machinery/camera/autoname/directional/east, -/turf/open/floor/iron, -/area/station/engineering/gravity_generator) +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "ewi" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -15544,7 +16425,7 @@ pixel_x = 6 }, /turf/open/floor/grass, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ewl" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -15558,17 +16439,16 @@ }, /turf/open/openspace, /area/station/maintenance/port/aft) -"ewm" = ( -/obj/structure/window/reinforced/plasma/spawner/directional/south, -/obj/machinery/power/energy_accumulator/tesla_coil/anchored{ - cable_layer = 1 - }, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ - dir = 6 +"ewt" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 8 }, -/obj/structure/cable/layer1, -/turf/open/floor/engine, -/area/station/engineering/supermatter) +/turf/open/floor/iron/edge, +/area/station/hallway/primary/central) +"ewu" = ( +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/aft/upper) "ewA" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -15578,7 +16458,7 @@ }, /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "ewD" = ( /turf/closed/wall, /area/station/service/cafeteria) @@ -15586,21 +16466,6 @@ /obj/effect/turf_decal/bot, /turf/open/floor/engine, /area/station/engineering/atmos/hfr_room) -"ewK" = ( -/obj/machinery/power/turbine/inlet_compressor{ - dir = 8 - }, -/turf/open/floor/engine, -/area/station/maintenance/disposal/incinerator) -"ewY" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 1 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "exb" = ( /obj/structure/lattice/catwalk, /obj/machinery/door/firedoor, @@ -15618,6 +16483,14 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/construction) +"exk" = ( +/obj/effect/turf_decal/trimline/yellow/filled/warning{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/engineering/lobby) "exn" = ( /obj/effect/turf_decal/tile/yellow/half/contrasted{ dir = 8 @@ -15637,30 +16510,27 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/science/lab) -"exM" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/spawner/random/maintenance, -/obj/structure/cable, -/obj/item/stack/rods/two, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"exS" = ( -/obj/structure/railing{ +"exr" = ( +/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ + name = "N2 Multideck Adapter"; dir = 8 }, -/obj/structure/table/glass, -/obj/machinery/digital_clock/directional/south, -/obj/effect/turf_decal/tile/blue{ - dir = 8 +/obj/machinery/meter{ + name = "N2 meter" }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) -"exV" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/obj/effect/turf_decal/tile/red/half{ + dir = 1 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) +"exS" = ( +/obj/effect/turf_decal/tile/dark_blue{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/line, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "exY" = ( /obj/item/storage/box/evidence{ pixel_x = 7; @@ -15677,42 +16547,75 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"eyg" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper/stack, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "eys" = ( /obj/effect/turf_decal/trimline/red/filled/line, /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/office) +"eyC" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "eyD" = ( /obj/structure/toilet/greyscale{ pixel_y = 17 }, /turf/open/floor/iron/white/smooth_large, /area/station/security/prison) -"eza" = ( -/obj/structure/lattice/catwalk, -/obj/structure/ladder, -/obj/structure/railing{ - dir = 6 +"eyP" = ( +/obj/effect/turf_decal/tile/blue/opposingcorners{ + dir = 1 }, -/turf/open/openspace, -/area/station/commons/dorms) -"ezm" = ( +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/holopad, -/turf/open/floor/wood/parquet, -/area/station/command/heads_quarters/qm) +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/dark, +/area/station/medical/medbay/lobby) +"eyQ" = ( +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/structure/urinal/directional/north, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard/upper) +"ezh" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"ezm" = ( +/obj/structure/sign/poster/random/directional/south, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "ezq" = ( /obj/structure/reflector/single/anchored{ dir = 5 }, /turf/open/floor/iron/dark/textured, /area/station/engineering/supermatter/room) +"ezt" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/engineering/lobby) +"ezz" = ( +/obj/structure/lattice/catwalk, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/aft/upper) "ezE" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -15723,12 +16626,6 @@ /obj/effect/turf_decal/trimline/yellow/filled/line, /turf/open/floor/iron, /area/station/engineering/lobby) -"ezL" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, -/turf/open/floor/iron, -/area/station/commons/dorms) "ezP" = ( /obj/structure/training_machine, /obj/machinery/airalarm/directional/east, @@ -15737,16 +16634,11 @@ }, /turf/open/floor/engine, /area/station/science/auxlab/firing_range) -"ezT" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 - }, -/turf/open/floor/iron, -/area/station/commons/dorms) "ezW" = ( /obj/effect/turf_decal/trimline/brown/filled/corner{ dir = 1 }, +/obj/structure/disposalpipe/segment, /turf/open/floor/iron, /area/station/cargo/storage) "ezX" = ( @@ -15757,33 +16649,35 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"eAd" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, +"ezY" = ( +/obj/structure/sign/warning/fire/directional/south, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) +"eAg" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/turf/open/floor/carpet/royalblue, +/area/station/command/heads_quarters/captain/private) +"eAh" = ( /obj/structure/railing{ - dir = 5 + dir = 1 }, -/obj/structure/railing/corner{ - dir = 8 +/obj/structure/disposalpipe/segment{ + dir = 4 }, +/obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/engineering/lobby) -"eAg" = ( -/obj/structure/table/wood, -/obj/item/clipboard{ - pixel_x = 7; - pixel_y = 11 - }, -/obj/machinery/recharger{ - pixel_x = -6; - pixel_y = 4 +"eAl" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 4 }, -/obj/item/toy/figure/captain{ - pixel_x = 7; - pixel_y = 10 +/obj/structure/railing{ + dir = 4 }, -/turf/open/floor/carpet, -/area/station/command/heads_quarters/captain/private) +/turf/open/floor/iron, +/area/station/engineering/lobby) "eAH" = ( /obj/effect/spawner/random/trash/garbage, /turf/open/floor/plating, @@ -15812,18 +16706,6 @@ }, /turf/open/openspace, /area/station/medical/medbay/central) -"eAP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet, -/obj/item/surgicaldrill, -/obj/effect/spawner/random/maintenance/three, -/turf/open/floor/iron/white, -/area/station/maintenance/starboard/lesser) -"eAT" = ( -/obj/structure/lattice/catwalk, -/obj/effect/spawner/random/engineering/tank, -/turf/open/water, -/area/station/maintenance/port/fore) "eAV" = ( /obj/structure/railing/corner/end{ dir = 4 @@ -15842,27 +16724,29 @@ "eBc" = ( /obj/structure/table/reinforced/rglass, /turf/open/floor/carpet/executive, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "eBd" = ( /obj/structure/disposalpipe/segment, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"eBf" = ( -/obj/machinery/meter, -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ - dir = 8 - }, -/turf/closed/wall/r_wall, -/area/station/maintenance/disposal/incinerator) +"eBi" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/fore) +"eBo" = ( +/turf/open/floor/iron, +/area/station/commons/locker) "eBt" = ( /obj/structure/tank_dispenser/oxygen{ pixel_x = -1; pixel_y = 2 }, /obj/structure/window/reinforced/spawner/directional/west, -/turf/open/floor/carpet, +/turf/open/floor/carpet/purple, /area/station/command/gateway) "eBu" = ( /obj/structure/flora/bush/flowers_br/style_random, @@ -15894,6 +16778,12 @@ }, /turf/open/floor/iron/dark, /area/station/medical/medbay/central) +"eBF" = ( +/obj/structure/chair/plastic{ + dir = 1 + }, +/turf/open/floor/engine/hull/air, +/area/station/commons/fitness/recreation) "eBP" = ( /obj/structure/cable, /obj/structure/mirror/broken/directional/west, @@ -15908,26 +16798,32 @@ /obj/structure/cable, /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) +"eBX" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/oven, +/obj/structure/disposalpipe/segment, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard) "eBZ" = ( /obj/effect/spawner/random/structure/closet_empty/crate, /turf/open/floor/iron/checker, /area/station/maintenance/hallway/abandoned_recreation) -"eCu" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/effect/turf_decal/trimline/purple/filled/line{ - dir = 1 - }, -/obj/structure/frame/computer{ - anchored = 1; - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) +"eCa" = ( +/obj/structure/frame/machine/secured, +/obj/effect/turf_decal/trimline/yellow/filled/line, +/turf/open/floor/iron/dark, +/area/station/engineering/storage_shared) "eCy" = ( /obj/structure/lattice, /turf/open/floor/engine/hull, /area/space/nearstation) +"eCA" = ( +/obj/effect/turf_decal/siding/brown/corner, +/obj/structure/railing/corner, +/obj/structure/disposalpipe/segment, +/obj/effect/landmark/start/hangover, +/turf/open/floor/iron, +/area/station/commons/dorms) "eCD" = ( /obj/item/kirbyplants/random, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -15938,21 +16834,18 @@ /obj/effect/landmark/event_spawn, /turf/open/floor/iron/dark, /area/station/service/chapel/office) +"eCF" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing/corner{ + dir = 4 + }, +/turf/open/openspace, +/area/station/commons/dorms) "eCM" = ( /obj/structure/table/reinforced, /obj/effect/spawner/random/exotic/technology, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"eCO" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper/stack{ - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "eCV" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/structure/closet_maintenance, @@ -15961,7 +16854,7 @@ "eDj" = ( /obj/machinery/camera/autoname/motion/directional/north, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "eDl" = ( /obj/item/clothing/head/cone{ pixel_x = -7; @@ -15983,6 +16876,13 @@ /obj/effect/landmark/start/detective, /turf/open/floor/carpet, /area/station/security/detectives_office) +"eDI" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/duct, +/turf/open/floor/iron, +/area/station/commons/dorms) "eDO" = ( /obj/machinery/telecomms/bus/preset_four, /obj/effect/turf_decal/tile/yellow/fourcorners, @@ -15994,13 +16894,39 @@ /obj/effect/landmark/start/chief_engineer, /turf/open/floor/carpet/orange, /area/station/command/heads_quarters/ce) +"eEf" = ( +/obj/structure/railing, +/obj/structure/table/wood, +/obj/item/folder/yellow{ + pixel_x = 4; + pixel_y = 6 + }, +/obj/item/folder/blue{ + pixel_x = -9; + pixel_y = 1 + }, +/obj/item/folder/red{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/folder{ + pixel_x = 2 + }, +/obj/item/taperecorder{ + pixel_x = -13; + pixel_y = 5 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/wood/large, +/area/station/service/library/private) "eEi" = ( /obj/structure/ladder, /obj/machinery/light_switch/directional/south, /turf/open/floor/circuit/green{ luminosity = 2 }, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "eEv" = ( /turf/open/floor/plating, /area/station/maintenance/starboard/aft) @@ -16022,10 +16948,14 @@ }, /turf/open/floor/iron/dark/textured, /area/station/science/xenobiology) -"eEN" = ( -/obj/effect/spawner/random/engineering/atmospherics_portable, +"eER" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/closet/athletic_mixed, +/obj/structure/disposalpipe/segment{ + dir = 9 + }, /turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/area/station/maintenance/starboard) "eES" = ( /obj/item/food/pie/cream, /obj/structure/closet/crate/coffin, @@ -16042,25 +16972,23 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/commissary) -"eEW" = ( -/obj/machinery/light/directional/north, -/obj/structure/lattice/catwalk, +"eFk" = ( +/obj/effect/turf_decal/tile/blue/opposingcorners{ + dir = 1 + }, +/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/openspace, -/area/station/engineering/atmos/project) -"eFm" = ( -/obj/structure/closet/radiation, -/obj/machinery/light/directional/west, -/turf/open/floor/engine, -/area/station/engineering/atmos/hfr_room) +/obj/structure/disposalpipe/segment, +/turf/open/floor/iron/white, +/area/station/medical/medbay/central) "eFq" = ( -/obj/machinery/door/airlock/command{ - name = "Captain's Quarters" +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 }, -/obj/effect/mapping_helpers/airlock/access/all/command/captain, -/turf/open/floor/carpet, -/area/station/command/heads_quarters/captain/private) +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "eFs" = ( /obj/machinery/hydroponics/constructable, /obj/effect/turf_decal/bot, @@ -16072,6 +17000,11 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/checker, /area/station/maintenance/hallway/abandoned_recreation) +"eFE" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/barricade/wooden/crude, +/turf/open/floor/plating, +/area/station/maintenance/aft/upper) "eFJ" = ( /obj/item/kirbyplants/photosynthetic, /obj/effect/turf_decal/trimline/dark_blue/filled/line{ @@ -16082,7 +17015,7 @@ }, /obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "eGc" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -16102,15 +17035,11 @@ /area/station/security/checkpoint/customs) "eGk" = ( /obj/structure/sign/plaques/kiddie/perfect_drone{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/openspace, /area/station/command/corporate_showroom) -"eGq" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/camera/autoname/directional/east, -/turf/open/openspace, -/area/station/engineering/break_room) "eGs" = ( /obj/machinery/airalarm/directional/west, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -16136,13 +17065,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"eGE" = ( -/obj/machinery/airalarm/directional/north, -/obj/effect/turf_decal/trimline/yellow/filled/end{ - dir = 8 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "eGM" = ( /obj/effect/turf_decal/siding/wood{ dir = 4 @@ -16196,24 +17118,11 @@ }, /turf/open/openspace, /area/station/hallway/primary/central) -"eHz" = ( -/obj/effect/mapping_helpers/broken_floor, -/obj/item/clothing/under/costume/seifuku/teal{ - pixel_x = -1; - pixel_y = -9 - }, -/obj/structure/table, -/obj/item/storage/fancy/cigarettes/cigpack_midori{ - pixel_x = 8; - pixel_y = 12 - }, -/obj/item/instrument/piano_synth/headphones{ - pixel_x = 3; - pixel_y = 5 - }, -/obj/structure/sign/poster/contraband/syndicate_pistol/directional/east, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +"eHF" = ( +/obj/structure/ladder, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/starboard/upper) "eHO" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/structure/broken_flooring/pile/always_floorplane/directional/west, @@ -16229,7 +17138,17 @@ pixel_y = 6 }, /turf/open/floor/iron/white/textured_half, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"eHZ" = ( +/obj/effect/mapping_helpers/airlock/access/any/engineering/general, +/obj/machinery/door/airlock/engineering/glass{ + name = "Shared Engineering Storage" + }, +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/storage) "eIh" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -16263,6 +17182,11 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) +"eIq" = ( +/obj/effect/spawner/random/structure/crate, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/aft/upper) "eIs" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -16307,15 +17231,27 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/wood, /area/station/maintenance/hallway/abandoned_recreation) +"eIN" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "eIO" = ( /turf/open/floor/iron/dark, /area/station/hallway/secondary/entry) -"eIR" = ( -/obj/machinery/airalarm/directional/north, +"eIQ" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/directional/north, -/turf/open/floor/wood, -/area/station/commons/dorms) +/obj/structure/chair/sofa/left/brown{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"eJa" = ( +/obj/structure/disposalpipe/segment{ + dir = 8 + }, +/turf/open/floor/iron/dark/textured, +/area/station/cargo/sorting) "eJb" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -16330,6 +17266,31 @@ /obj/machinery/door/firedoor, /turf/open/floor/iron/dark, /area/station/security/checkpoint/medical) +"eJp" = ( +/obj/machinery/status_display/evac/directional/north, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted, +/obj/effect/landmark/start/hangover, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) +"eJx" = ( +/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ + dir = 4 + }, +/obj/structure/railing/corner{ + dir = 1 + }, +/obj/effect/turf_decal/siding/dark/corner{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"eJS" = ( +/obj/machinery/holopad, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "eJX" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 4 @@ -16340,77 +17301,38 @@ /obj/machinery/camera/autoname/directional/east, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"eJZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/firecloset, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) -"eKc" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/spawner/random/trash/moisture_trap, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "eKh" = ( /obj/machinery/atmospherics/pipe/layer_manifold/scrubbers/hidden, /turf/closed/wall, /area/station/medical/cryo) +"eKq" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 4; + name = "Port to Engine" + }, +/obj/effect/turf_decal/trimline/brown, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "eKz" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/smooth_large, /area/station/commons/lounge) -"eKF" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 - }, -/obj/structure/table, -/obj/item/clothing/shoes/magboots{ - desc = "Magnetic boots, for the solar enthusiasts. Idential to a regular magboot in everything but soul."; - name = "Solars' Magboots"; - pixel_x = -1; - pixel_y = 4 - }, -/obj/item/grenade/chem_grenade/smart_metal_foam{ - pixel_x = 4; - pixel_y = 0 - }, -/obj/item/grenade/chem_grenade/smart_metal_foam, -/obj/item/crowbar, -/obj/item/clothing/shoes/magboots, -/obj/item/clothing/shoes/magboots, -/obj/item/clothing/gloves/color/yellow{ - pixel_x = 0; - pixel_y = 3 - }, -/obj/item/clothing/ears/earmuffs{ - pixel_x = -3; - pixel_y = -2 - }, -/obj/item/clothing/gloves/color/yellow, -/obj/item/clothing/gloves/color/yellow, -/obj/item/clothing/ears/earmuffs{ - pixel_x = -5; - pixel_y = 6 - }, -/obj/machinery/camera/autoname/directional/west, -/obj/machinery/airalarm/directional/west, -/turf/open/floor/iron/dark, -/area/station/engineering/engine_smes) -"eKH" = ( -/obj/effect/turf_decal/tile/neutral/opposingcorners{ +"eKA" = ( +/obj/structure/lattice/catwalk, +/obj/effect/turf_decal/stripes/line, +/obj/structure/railing{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/airalarm/directional/north, -/turf/open/floor/iron/dark, -/area/station/medical/chemistry) +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) +"eKL" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light/small/broken/directional/east, +/obj/structure/bed/maint, +/obj/effect/landmark/start/hangover, +/obj/structure/sign/clock/directional/east, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "eKW" = ( /obj/structure/railing, /obj/effect/turf_decal/tile/red/opposingcorners{ @@ -16433,17 +17355,6 @@ /obj/effect/landmark/start/security_officer, /turf/open/floor/iron/dark/smooth_large, /area/station/security/lockers) -"eLh" = ( -/obj/machinery/door/airlock/atmos/glass{ - name = "Atmospherics" - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/atmos/project) "eLl" = ( /obj/machinery/door/airlock/command{ name = "Captain's Office" @@ -16453,7 +17364,8 @@ /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/all/command/captain, /obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, +/obj/machinery/door/firedoor, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) "eLp" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -16469,6 +17381,16 @@ "eLU" = ( /turf/closed/wall/r_wall, /area/station/command/gateway) +"eLV" = ( +/obj/item/storage/toolbox/artistic, +/obj/item/storage/toolbox/artistic, +/obj/structure/rack, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 + }, +/obj/machinery/newscaster/directional/west, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) "eMa" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 @@ -16484,6 +17406,11 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) +"eMf" = ( +/obj/structure/sign/poster/contraband/random/directional/west, +/obj/effect/spawner/random/structure/closet_maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "eMi" = ( /obj/machinery/door/airlock/public/glass{ name = "Arrivals Lounge" @@ -16504,12 +17431,6 @@ /obj/item/radio/intercom/directional/east, /turf/open/floor/iron/dark/textured, /area/station/science/xenobiology) -"eMo" = ( -/obj/structure/table, -/obj/machinery/camera/autoname/directional/west, -/obj/structure/sign/departments/aisat/directional/south, -/turf/open/floor/iron/dark, -/area/station/engineering/transit_tube) "eME" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, /obj/structure/table, @@ -16536,10 +17457,30 @@ /obj/effect/landmark/navigate_destination/sec, /turf/open/floor/plating, /area/station/security/brig) +"eMN" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/crayon{ + icon_state = "revolution"; + name = "graffiti"; + paint_colour = "#FF0000"; + pixel_y = 32 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "eNb" = ( /obj/effect/spawner/random/trash, /turf/open/floor/plating, /area/station/maintenance/port) +"eNg" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 4 + }, +/turf/open/openspace, +/area/station/commons/dorms) "eNz" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -16553,14 +17494,6 @@ }, /turf/open/floor/iron/dark, /area/station/security/warden) -"eND" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/chair/sofa/right/brown{ - dir = 4 - }, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) "eNE" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 10 @@ -16571,6 +17504,26 @@ /obj/machinery/light/directional/south, /turf/open/floor/iron, /area/station/hallway/primary/port) +"eNH" = ( +/obj/item/bedsheet/qm/double, +/obj/structure/bed/double, +/obj/effect/landmark/start/quartermaster, +/obj/item/stack/spacecash/c10{ + pixel_x = -5 + }, +/obj/item/toy/plush/lizard_plushie/greyscale{ + name = "Steals-The-Crates"; + pixel_y = 7 + }, +/obj/structure/cable, +/obj/effect/turf_decal/siding/dark{ + dir = 8 + }, +/obj/effect/turf_decal/siding/dark{ + dir = 4 + }, +/turf/open/floor/carpet/orange, +/area/station/command/heads_quarters/qm) "eNO" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -16605,13 +17558,6 @@ /mob/living/basic/pet/dog/pug/mcgriff, /turf/open/floor/iron/dark, /area/station/security/warden) -"eNY" = ( -/obj/structure/table/reinforced, -/obj/structure/disposalpipe/segment{ - dir = 8 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "eOa" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -16619,17 +17565,22 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron, /area/station/cargo/storage) -"eOh" = ( -/obj/structure/cable, -/turf/open/floor/wood, -/area/station/commons/toilet/restrooms) -"eOn" = ( -/obj/item/cigbutt{ - pixel_x = -11; - pixel_y = -5 +"eOf" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/area/station/maintenance/starboard/fore/upper) +"eOh" = ( +/obj/effect/turf_decal/tile/dark_blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/dark_blue, +/obj/machinery/newscaster/directional/north, +/turf/open/floor/iron/white, +/area/station/hallway/secondary/entry) "eOo" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, @@ -16654,16 +17605,6 @@ /obj/machinery/chem_master, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) -"eOy" = ( -/obj/structure/sign/clock/directional/west, -/obj/structure/chair/office{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/yellow/filled/warning{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "eOA" = ( /obj/effect/turf_decal/tile/dark_green{ dir = 4 @@ -16677,25 +17618,22 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/textured, /area/station/medical/virology) -"eOB" = ( -/obj/structure/flora/bush/jungle{ - pixel_y = -7 - }, -/obj/structure/flora/bush/fullgrass/style_random, -/obj/structure/ladder, -/turf/open/floor/grass, -/area/station/maintenance/starboard/fore) "eOG" = ( /obj/effect/mapping_helpers/damaged_window, /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/security/detectives_office/private_investigators_office) -"eOM" = ( -/obj/structure/broken_flooring/corner/directional/west, -/obj/effect/decal/cleanable/dirt, +"eOH" = ( /obj/effect/decal/cleanable/dirt, +/obj/structure/chair{ + dir = 1; + pixel_y = -2 + }, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, /turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) +/area/station/maintenance/starboard) "eOS" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/sign/poster/official/random/directional/south, @@ -16715,35 +17653,38 @@ /obj/effect/turf_decal/tile/purple/full, /turf/open/floor/iron/dark/smooth_large, /area/station/security/brig) -"ePM" = ( -/obj/structure/railing, -/obj/effect/decal/cleanable/dirt, +"ePz" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/transit_tube/station/dispenser/flipped{ + dir = 1 + }, +/obj/effect/turf_decal/tile/dark_blue/fourcorners, +/obj/effect/turf_decal/siding/dark{ + dir = 8 + }, /turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) +/area/station/engineering/transit_tube) +"ePI" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "ePT" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/door/airlock/medical, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"ePX" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/light/directional/south, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/hfr_room) -"eQg" = ( -/obj/effect/spawner/random/vending/snackvend, -/obj/machinery/firealarm/directional/east, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "eQj" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -16779,29 +17720,21 @@ /obj/effect/turf_decal/tile/neutral, /turf/open/floor/iron/dark, /area/station/hallway/primary/central) +"eQC" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/reagent_dispensers/beerkeg, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard) "eQF" = ( /turf/open/floor/iron, /area/station/commons/storage/primary) -"eQO" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment{ - dir = 2 - }, -/obj/machinery/light/directional/west, -/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, -/obj/machinery/door/airlock/atmos/glass{ - name = "Atmospherics" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) -"eQW" = ( -/obj/effect/turf_decal/stripes/box, -/obj/structure/ladder, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +"eQZ" = ( +/obj/item/radio/intercom/directional/south, +/obj/structure/closet/crate/trashcart/laundry, +/obj/effect/spawner/random/clothing/costume, +/obj/effect/spawner/random/clothing/backpack, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "eRb" = ( /obj/machinery/door/airlock/external{ name = "Labor Camp Shuttle Airlock" @@ -16812,37 +17745,29 @@ /obj/effect/mapping_helpers/airlock/access/all/security/brig, /turf/open/floor/iron/dark/smooth_large, /area/station/security/processing) -"eRd" = ( -/obj/effect/turf_decal/tile/neutral/anticorner/contrasted{ - dir = 1 +"eRc" = ( +/obj/machinery/vending/cigarette, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 }, -/obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark, -/area/station/hallway/primary/central) -"eRg" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Chapel Office Maintenance" - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 +/area/station/commons/fitness/recreation) +"eRd" = ( +/obj/effect/turf_decal/siding/green{ + dir = 1 }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) -"eRm" = ( -/obj/machinery/disposal/bin, -/obj/machinery/light/directional/east, -/obj/machinery/newscaster/directional/east, -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/trunk{ - dir = 8 +/obj/effect/turf_decal/plaque{ + icon_state = "L7" }, -/turf/open/floor/plating, -/area/station/commons/dorms) +/obj/effect/landmark/observer_start, +/turf/open/floor/iron/dark/smooth_large, +/area/station/hallway/primary/central) "eRs" = ( -/obj/effect/turf_decal/siding/green, -/obj/structure/disposalpipe/segment{ - dir = 4 +/obj/effect/turf_decal/siding/green{ + dir = 1 + }, +/obj/effect/turf_decal/plaque{ + icon_state = "L5" }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) @@ -16868,17 +17793,16 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/security/processing) "eRC" = ( -/obj/structure/table, -/obj/item/rag{ - pixel_x = 2; - pixel_y = 5 - }, -/obj/item/reagent_containers/cup/bucket{ - pixel_x = -7; - pixel_y = 12 +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/conveyor_switch/oneway{ + dir = 8; + id = "HoPsToy"; + name = "Loading Conveyor"; + pixel_y = 8 }, -/obj/structure/window/reinforced/spawner/directional/east, -/turf/open/floor/wood, +/turf/open/floor/wood/tile, /area/station/command/heads_quarters/hop) "eRE" = ( /obj/structure/displaycase/labcage, @@ -16902,6 +17826,14 @@ }, /turf/open/floor/iron/dark, /area/station/security/warden) +"eRO" = ( +/obj/machinery/atmospherics/components/binary/pump{ + name = "Port to Engine"; + dir = 8 + }, +/obj/effect/turf_decal/trimline/brown, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "eRT" = ( /obj/effect/turf_decal/trimline/blue/filled/corner{ dir = 4 @@ -16928,13 +17860,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/construction/storage_wing) -"eSh" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 1 - }, -/obj/structure/closet/radiation, -/turf/open/floor/iron, -/area/station/engineering/lobby) +"eSk" = ( +/obj/structure/railing/corner, +/obj/structure/railing, +/obj/structure/lattice/catwalk, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "eSm" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -16958,20 +17889,34 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"eSK" = ( -/obj/structure/disposalpipe/sorting/mail{ - dir = 1 +"eSG" = ( +/obj/effect/turf_decal/siding, +/obj/effect/turf_decal/trimline/white/line{ + dir = 8; + pixel_x = 8 }, -/obj/effect/mapping_helpers/mail_sorting/supply/disposals, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) -"eSO" = ( -/obj/structure/sign/warning/electric_shock/directional/north, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) +"eSI" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/manifold/scrubbers/visible{ dir = 8 }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/obj/effect/turf_decal/siding/yellow, +/turf/open/floor/iron, +/area/station/engineering/atmos/upper) +"eSK" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/iron/dark/textured, +/area/station/cargo/sorting) "eSV" = ( /obj/structure/railing/corner, /obj/effect/turf_decal/siding/brown/corner, @@ -16982,18 +17927,29 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"eSW" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line, +"eSY" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/lattice/catwalk, /obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/lobby) +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "eTe" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood, /area/station/command/heads_quarters/hos) +"eTi" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/engineering/atmos/hfr_room) +"eTm" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/machinery/wall_healer/directional/south, +/obj/machinery/camera/autoname/directional/east, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "eTr" = ( /obj/machinery/door/airlock/grunge{ name = "Under The Stairs" @@ -17001,21 +17957,11 @@ /obj/effect/mapping_helpers/airlock/abandoned, /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/iron, /area/station/maintenance/department/medical) -"eTt" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/openspace, -/area/station/engineering/atmos/project) "eTD" = ( /obj/machinery/vending/medical, /obj/effect/turf_decal/bot_white{ @@ -17047,14 +17993,20 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/station/service/cafeteria) +"eTP" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing, +/obj/structure/railing{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/openspace, +/area/station/engineering/lobby) "eTY" = ( /turf/open/floor/iron/freezer, /area/station/maintenance/port) -"eTZ" = ( -/obj/machinery/light_switch/directional/east, -/obj/effect/landmark/start/assistant, -/turf/open/floor/iron, -/area/station/commons/storage/primary) "eUa" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -17065,22 +18017,6 @@ }, /turf/open/floor/iron/dark/textured, /area/station/science/xenobiology) -"eUh" = ( -/obj/item/tank/internals/emergency_oxygen/engi{ - pixel_x = 5; - pixel_y = -3 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"eUl" = ( -/obj/structure/window/reinforced/spawner/directional/east, -/obj/machinery/firealarm/directional/north, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/transit_tube) "eUr" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -17118,6 +18054,10 @@ }, /turf/open/floor/iron/white, /area/station/medical/medbay/central) +"eUT" = ( +/obj/effect/spawner/random/engineering/tank, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/aft/upper) "eUV" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -17190,12 +18130,6 @@ }, /turf/open/floor/plating, /area/station/medical/pharmacy) -"eVu" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "eVx" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/siding/wood/corner{ @@ -17204,12 +18138,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"eVy" = ( -/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ - dir = 5 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "eVF" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -17232,16 +18160,47 @@ /obj/effect/spawner/random/maintenance/two, /turf/open/floor/wood/tile, /area/station/maintenance/port/aft) +"eVY" = ( +/obj/structure/cable, +/obj/item/stack/sticky_tape{ + pixel_x = 12; + pixel_y = 14 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "!"; + pixel_x = 2; + pixel_y = 29 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "!"; + pixel_x = -5; + pixel_y = 27 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "eWb" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/wood, /area/station/service/lawoffice) -"eWq" = ( -/obj/structure/cable, -/turf/closed/wall/r_wall, -/area/station/engineering/atmos/project) +"eWc" = ( +/obj/machinery/light_switch/directional/east, +/obj/effect/turf_decal/stripes{ + dir = 6 + }, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) +"eWn" = ( +/obj/machinery/door/airlock/highsecurity{ + name = "Secure Tech Storage" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/tech_storage, +/obj/effect/mapping_helpers/airlock/access/all/command/general, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/storage/tech) "eWt" = ( /obj/machinery/airalarm/directional/east, /obj/machinery/portable_atmospherics/canister/oxygen, @@ -17258,6 +18217,13 @@ /obj/effect/turf_decal/tile/purple/opposingcorners, /turf/open/floor/iron/dark, /area/station/maintenance/starboard/aft) +"eWD" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/engineering/lobby) "eWJ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -17268,6 +18234,13 @@ /obj/machinery/camera/autoname/directional/east, /turf/open/openspace, /area/station/science/genetics) +"eWS" = ( +/obj/effect/spawner/random/structure/chair_flipped{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/plating, +/area/station/security/detectives_office/private_investigators_office) "eWU" = ( /obj/machinery/holopad, /turf/open/floor/iron/dark/textured_large, @@ -17277,22 +18250,24 @@ /obj/effect/turf_decal/trimline/yellow/warning, /turf/open/floor/engine/hull, /area/space/nearstation) +"eWZ" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/machinery/camera/autoname/directional/west, +/obj/structure/railing{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/airalarm/directional/west, +/turf/open/floor/iron, +/area/station/engineering/storage_shared) "eXe" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 8 }, /turf/open/floor/iron/dark, /area/station/science/lobby) -"eXf" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/obj/structure/cable/layer1, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "eXp" = ( /obj/effect/turf_decal/stripes/corner{ dir = 8 @@ -17361,16 +18336,38 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/dark/textured_half, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) +"eXJ" = ( +/obj/machinery/computer/apc_control{ + dir = 1 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/turf_decal/siding/yellow{ + dir = 9 + }, +/turf/open/floor/engine, +/area/station/command/heads_quarters/ce) "eXS" = ( /obj/effect/turf_decal/tile/blue/anticorner/contrasted, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) -"eYe" = ( -/obj/structure/displaycase/captain{ - pixel_y = 5 +"eXT" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 8 }, -/turf/open/floor/carpet, +/obj/structure/table, +/obj/machinery/fax{ + fax_name = "Quartermaster's Office"; + name = "Quartermaster's Fax Machine" + }, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) +"eYe" = ( +/obj/item/kirbyplants/random, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) "eYm" = ( /obj/effect/turf_decal/stripes/line{ @@ -17396,11 +18393,12 @@ }, /turf/open/floor/iron/dark, /area/station/science/ordnance) -"eYH" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/lattice/catwalk, -/turf/open/space/basic, -/area/space/nearstation) +"eYN" = ( +/obj/structure/chair/office{ + dir = 3 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/security/checkpoint/engineering) "eYP" = ( /obj/structure/showcase/machinery/tv/broken, /turf/open/floor/plating, @@ -17413,11 +18411,12 @@ fair_market_price = 0; name = "\improper Jim Norton's Quebecois Coffee" }, -/obj/structure/disposalpipe/broken{ - dir = 8 - }, /turf/open/floor/plating, /area/station/maintenance/starboard/central) +"eZk" = ( +/obj/effect/spawner/random/trash/cigbutt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "eZt" = ( /obj/effect/turf_decal/siding/wood{ dir = 4 @@ -17448,10 +18447,13 @@ /turf/open/floor/iron/white, /area/station/medical/medbay/central) "eZF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/firecloset, -/turf/open/floor/iron, -/area/station/maintenance/starboard/central) +/obj/machinery/airalarm/directional/north, +/obj/effect/turf_decal/siding/wood{ + dir = 5 + }, +/obj/structure/tank_holder/extinguisher, +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) "eZL" = ( /obj/structure/lattice/catwalk, /obj/structure/railing/corner{ @@ -17489,6 +18491,47 @@ }, /turf/open/floor/iron/dark, /area/station/medical/chemistry) +"eZU" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 8 + }, +/obj/structure/table, +/obj/item/clothing/shoes/magboots{ + desc = "Magnetic boots, for the solar enthusiasts. Idential to a regular magboot in everything but soul."; + name = "Solars' Magboots"; + pixel_x = -1; + pixel_y = 4 + }, +/obj/item/grenade/chem_grenade/smart_metal_foam{ + pixel_x = 4; + pixel_y = 0 + }, +/obj/item/grenade/chem_grenade/smart_metal_foam, +/obj/item/crowbar, +/obj/item/clothing/shoes/magboots, +/obj/item/clothing/shoes/magboots, +/obj/item/clothing/gloves/color/yellow{ + pixel_x = 0; + pixel_y = 3 + }, +/obj/item/clothing/ears/earmuffs{ + pixel_x = -3; + pixel_y = -2 + }, +/obj/item/clothing/gloves/color/yellow, +/obj/item/clothing/gloves/color/yellow, +/obj/machinery/camera/autoname/directional/west, +/obj/item/clothing/ears/earmuffs{ + pixel_x = -5; + pixel_y = 6 + }, +/obj/item/tank/jetpack{ + pixel_y = 4 + }, +/obj/machinery/light/directional/west, +/obj/machinery/newscaster/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/engine_smes) "fai" = ( /obj/effect/turf_decal/stripes/corner{ dir = 8 @@ -17509,15 +18552,6 @@ }, /turf/open/floor/plating, /area/station/engineering/supermatter/room) -"faw" = ( -/obj/machinery/atmospherics/pipe/bridge_pipe/green/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/components/binary/pump/on{ - name = "Air to Distro" - }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "fbe" = ( /obj/structure/bed, /obj/item/bedsheet/ce, @@ -17547,6 +18581,10 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) +"fbq" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/wood/large, +/area/station/hallway/primary/central) "fbu" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/monitored/oxygen_input, /turf/open/floor/engine/o2, @@ -17587,24 +18625,8 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) -"fct" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 4 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, -/obj/effect/mapping_helpers/mail_sorting/engineering/ce_office, -/obj/structure/disposalpipe/sorting/mail{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/hallway/primary/starboard) "fcw" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/blue/full, @@ -17626,15 +18648,6 @@ "fcK" = ( /turf/closed/wall/r_wall, /area/station/security/detectives_office/private_investigators_office) -"fcT" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 4 - }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "fdb" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -17656,23 +18669,27 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"fdz" = ( +/obj/effect/turf_decal/siding/purple/corner{ + dir = 4 + }, +/obj/effect/turf_decal/siding/purple/corner, +/obj/effect/turf_decal/siding/purple{ + dir = 8 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron, +/area/station/science/lab) "fdE" = ( /obj/effect/spawner/random/medical/two_percent_xeno_egg_spawner, /turf/open/floor/engine, /area/station/science/xenobiology) -"fdI" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper{ - dir = 4 - }, -/obj/structure/fluff/paper/stack{ - dir = 5 - }, -/obj/structure/filingcabinet/chestdrawer, -/obj/effect/spawner/random/bureaucracy/paper, -/obj/item/camera_film, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "fdJ" = ( /obj/effect/turf_decal/stripes/line, /obj/structure/railing{ @@ -17689,6 +18706,12 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) +"fdN" = ( +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/textured, +/area/station/commons/dorms) "fdT" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -17698,12 +18721,16 @@ }, /turf/open/floor/glass, /area/station/science/zoo) -"fdY" = ( -/obj/effect/turf_decal/tile/dark/half{ - dir = 1 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +"fdV" = ( +/obj/effect/turf_decal/trimline/green/filled/line, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) +"fef" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/urinal/directional/north, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "fei" = ( /obj/machinery/door/airlock/research{ glass = 1; @@ -17731,30 +18758,21 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/ai) -"feR" = ( -/obj/effect/spawner/random/trash/grime, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"ffj" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 6 +/area/station/ai/satellite/chamber) +"feM" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible, +/obj/machinery/camera/autoname/directional/east, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) +"ffg" = ( +/obj/effect/turf_decal/trimline/red/filled/line{ + dir = 4 }, -/turf/open/floor/iron, -/area/station/hallway/primary/starboard) -"ffn" = ( -/obj/machinery/vending/assist, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 +/obj/structure/chair/office{ + dir = 3 }, /turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) +/area/station/security/checkpoint/engineering) "ffp" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -17762,9 +18780,19 @@ }, /turf/open/floor/iron/dark, /area/station/security/checkpoint/customs) -"ffr" = ( -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/fore) +"ffs" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/thermomachine/freezer/layer2{ + dir = 4 + }, +/obj/effect/turf_decal/bot_red, +/obj/effect/turf_decal/siding/dark{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "ffC" = ( /obj/machinery/atmospherics/components/trinary/mixer/flipped{ dir = 8 @@ -17772,11 +18800,13 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/iron/dark/textured_half, /area/station/science/ordnance/storage) -"ffI" = ( -/obj/item/statuebust, -/obj/machinery/light/cold/no_nightlight/directional/west, -/turf/open/floor/iron/vaporwave, -/area/station/maintenance/starboard/lesser) +"ffE" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/obj/structure/closet/firecloset, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "ffN" = ( /obj/structure/stairs/north, /turf/open/floor/wood, @@ -17791,10 +18821,6 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron, /area/station/science/lab) -"ffR" = ( -/obj/machinery/airalarm/directional/east, -/turf/open/floor/iron, -/area/station/commons/dorms) "ffT" = ( /obj/structure/railing/corner/end/flip, /obj/effect/turf_decal/stripes/corner, @@ -17816,19 +18842,9 @@ "fgd" = ( /obj/structure/table/glass, /obj/effect/decal/cleanable/dirt, -/obj/machinery/button/door/directional/west{ - id = "commissaryshutter"; - name = "Office Shutter Control"; - pixel_x = 0 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) -"fgg" = ( -/obj/structure/lattice, -/obj/effect/spawner/random/maintenance, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) "fgq" = ( /obj/machinery/vending/cigarette, /turf/open/floor/iron, @@ -17838,10 +18854,6 @@ /obj/machinery/light/directional/south, /turf/open/floor/iron/dark/smooth_large, /area/station/security/execution/transfer) -"fgx" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "fgz" = ( /obj/machinery/door/airlock{ name = "Law Office" @@ -17861,7 +18873,7 @@ "fgH" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -17881,17 +18893,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"fha" = ( -/obj/structure/chair/sofa/middle/brown{ - dir = 4 - }, -/turf/open/floor/wood, -/area/station/commons/dorms) -"fhd" = ( -/obj/machinery/shieldgen, -/obj/effect/turf_decal/bot_white, -/turf/open/floor/engine, -/area/station/engineering/break_room) "fhf" = ( /obj/machinery/door/airlock/maintenance{ name = "Security Maintenance" @@ -17918,6 +18919,10 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/wood/large, /area/station/hallway/secondary/service) +"fht" = ( +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "fhw" = ( /obj/structure/table/reinforced/rglass, /obj/item/reagent_containers/cup/glass/mug/nanotrasen{ @@ -17925,15 +18930,7 @@ pixel_y = 4 }, /turf/open/floor/carpet/executive, -/area/station/ai_monitored/turret_protected/aisat_interior) -"fhA" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 1 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/ai/satellite/interior) "fhF" = ( /obj/effect/turf_decal/siding/dark/corner{ dir = 8 @@ -17945,7 +18942,7 @@ dir = 4 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "fhJ" = ( /turf/open/floor/engine/hull/air, /area/station/hallway/secondary/entry) @@ -18004,6 +19001,17 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) +"fiZ" = ( +/obj/structure/showcase/machinery/oldpod{ + desc = "An old NT branded sleeper, decommissioned after the lead acetate incident. None of the functional machinery remains inside."; + name = "decommissioned sleeper" + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/light_construct/directional/east{ + dir = 1 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "fjc" = ( /obj/effect/turf_decal/trimline/dark_blue/corner{ dir = 8 @@ -18022,15 +19030,49 @@ dir = 8 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "fji" = ( /turf/open/floor/carpet/executive, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"fjl" = ( +/obj/structure/railing, +/obj/machinery/door/firedoor/border_only, +/obj/structure/closet/crate/medical, +/obj/item/paper_bin{ + pixel_x = -6; + pixel_y = 4 + }, +/obj/item/stamp/granted{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/stamp/denied{ + pixel_x = 4; + pixel_y = -2 + }, +/obj/effect/spawner/random/maintenance, +/obj/item/pen/red{ + pixel_y = 10 + }, +/obj/structure/curtain/cloth/fancy/mechanical{ + name = "Psychologist's Office Curtains"; + id = "psychpriv" + }, +/turf/open/floor/wood/large, +/area/station/medical/psychology) "fjn" = ( /obj/effect/spawner/random/structure/closet_maintenance, /obj/effect/spawner/random/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"fjo" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/light/floor, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "fjp" = ( /obj/item/survivalcapsule, /obj/item/pickaxe/mini, @@ -18044,7 +19086,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) "fjv" = ( /obj/effect/turf_decal/trimline/red/warning{ @@ -18052,12 +19094,19 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/security/office) -"fjy" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner{ +"fjz" = ( +/obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/iron, -/area/station/engineering/lobby) +/turf/closed/wall, +/area/station/maintenance/starboard/central) +"fjO" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "fjP" = ( /obj/structure/lattice/catwalk, /obj/item/clothing/accessory/clown_enjoyer_pin{ @@ -18080,10 +19129,10 @@ name = "Abandoned Room" }, /obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/iron/dark/textured_large, /area/station/maintenance/port) "fjY" = ( @@ -18094,16 +19143,16 @@ }, /turf/open/floor/iron/textured, /area/station/security/brig) -"fke" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/simple/orange/visible, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) -"fkh" = ( -/obj/structure/ladder, +"fkd" = ( +/obj/structure/sign/warning/directional/west, +/obj/structure/lattice, +/turf/open/space/basic, +/area/space/nearstation) +"fki" = ( /obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/trash/grille_or_waste, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard/central) "fko" = ( /obj/structure/table, /obj/item/storage/medkit/brute{ @@ -18113,9 +19162,9 @@ /turf/open/floor/iron/kitchen, /area/station/maintenance/port/aft) "fkp" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/carpet, -/area/station/command/heads_quarters/captain/private) +/obj/machinery/newscaster/directional/east, +/turf/open/floor/wood, +/area/station/hallway/primary/central) "fkr" = ( /obj/structure/sign/poster/contraband/random/directional/north, /turf/open/floor/plating, @@ -18164,20 +19213,6 @@ /obj/machinery/camera/autoname/directional/west, /turf/open/openspace, /area/station/hallway/primary/central) -"fkP" = ( -/obj/item/kirbyplants/synthetic/plant26{ - pixel_x = 10; - pixel_y = 18 - }, -/obj/item/kirbyplants/synthetic/plant27{ - pixel_x = 13; - pixel_y = 5 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/light/small/directional/north, -/turf/open/floor/iron/dark/textured_large, -/area/station/medical/morgue) "fkX" = ( /obj/effect/spawner/random/engineering/atmospherics_portable, /turf/open/floor/plating, @@ -18212,7 +19247,7 @@ dir = 1 }, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "flH" = ( /obj/effect/turf_decal/trimline/yellow/arrow_cw{ dir = 8 @@ -18225,6 +19260,16 @@ dir = 8 }, /area/station/hallway/secondary/exit/departure_lounge) +"flK" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/structure/railing{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "flS" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/siding/wood{ @@ -18233,6 +19278,12 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"flU" = ( +/obj/structure/table, +/obj/effect/spawner/random/bureaucracy/paper, +/obj/structure/sign/poster/contraband/the_big_gas_giant_truth/directional/south, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "flY" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -18267,17 +19318,24 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"fmq" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/mapping_helpers/broken_floor, +/turf/open/floor/plating, +/area/station/maintenance/aft) +"fms" = ( +/obj/structure/cable/multilayer/multiz, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/starboard/central/upper) "fmw" = ( /obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ dir = 4 }, /turf/open/floor/engine, /area/station/engineering/supermatter/room) -"fmN" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing, -/turf/open/openspace, -/area/station/commons/dorms) "fmO" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, @@ -18300,15 +19358,14 @@ /obj/structure/cable, /turf/closed/wall, /area/station/security/interrogation) -"fnp" = ( -/obj/machinery/door/airlock/external, -/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ - cycle_id = "space-outpost" +"fno" = ( +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 1 }, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/external, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "fnv" = ( /obj/machinery/porta_turret/ai{ dir = 4 @@ -18317,17 +19374,23 @@ dir = 10 }, /turf/open/floor/engine/hull/reinforced/air, -/area/station/ai_monitored/turret_protected/ai) -"fnD" = ( -/obj/machinery/door/airlock/maintenance{ - name = "CE's Maintenance Access" - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/access/any/engineering/construction, -/turf/open/floor/plating, +/area/station/ai/satellite/chamber) +"fnF" = ( +/obj/machinery/duct, +/turf/open/floor/iron/large, /area/station/engineering/lobby) +"fnH" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted{ + dir = 8 + }, +/obj/effect/landmark/start/hangover, +/turf/open/floor/iron/dark, +/area/station/commons/locker) "fnT" = ( /obj/structure/lattice/catwalk, /obj/structure/sign/poster/contraband/random/directional/east, @@ -18342,18 +19405,6 @@ }, /turf/open/openspace, /area/station/construction/storage_wing) -"fnW" = ( -/obj/item/stack/sheet/iron{ - amount = 34 - }, -/obj/item/stack/rods{ - amount = 23 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "fnY" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -18372,6 +19423,12 @@ }, /turf/open/floor/wood/large, /area/station/service/kitchen) +"foi" = ( +/obj/machinery/light/small/directional/west, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/effect/landmark/start/hangover, +/turf/open/floor/iron, +/area/station/commons/dorms) "foj" = ( /obj/effect/spawner/random/structure/steam_vent, /turf/open/floor/plating, @@ -18386,8 +19443,28 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 4 + }, /area/station/hallway/primary/central) +"fop" = ( +/obj/machinery/power/smes{ + charge = 5e+006 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/sign/warning/radiation/rad_area/directional/north, +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 5 + }, +/turf/open/floor/iron, +/area/station/engineering/gravity_generator) +"for" = ( +/obj/structure/cable, +/obj/effect/spawner/random/trash/graffiti, +/turf/open/floor/plating, +/area/station/maintenance/port) "fou" = ( /obj/structure/cable, /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -18401,19 +19478,6 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/iron, /area/station/science/research) -"foH" = ( -/obj/effect/turf_decal/loading_area, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/disposal/incinerator) -"foJ" = ( -/obj/machinery/meter/monitored/distro_loop, -/obj/machinery/atmospherics/pipe/layer_manifold/scrubbers/visible/layer2{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/station/engineering/atmos/pumproom) "foN" = ( /obj/effect/spawner/random/structure/grille, /turf/open/floor/plating, @@ -18424,13 +19488,6 @@ }, /turf/open/floor/circuit/green/telecomms/mainframe, /area/station/tcommsat/server) -"foZ" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ - dir = 10 - }, -/turf/open/openspace, -/area/station/engineering/break_room) "fpe" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 8 @@ -18443,6 +19500,10 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) +"fpf" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "fpj" = ( /obj/structure/closet/firecloset/full, /turf/open/floor/plating, @@ -18482,13 +19543,12 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) -"fpz" = ( -/obj/structure/lattice/catwalk, -/obj/structure/chair{ - dir = 1 +"fpw" = ( +/obj/machinery/firealarm/directional/east, +/turf/open/floor/iron/edge{ + dir = 4 }, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) +/area/station/hallway/primary/central) "fpB" = ( /obj/structure/table, /obj/item/storage/photo_album/prison, @@ -18517,12 +19577,6 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/space_hut) -"fpM" = ( -/obj/structure/table, -/obj/machinery/firealarm/directional/west, -/obj/effect/spawner/random/clothing/gloves, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) "fpN" = ( /obj/effect/turf_decal/trimline/yellow/warning{ dir = 1 @@ -18530,12 +19584,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/engine/hull, /area/space/nearstation) -"fpZ" = ( -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ - dir = 5 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "fqc" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -18547,22 +19595,12 @@ }, /turf/open/floor/wood, /area/station/service/library/printer) -"fqj" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/decal/cleanable/blood/oil, -/obj/item/cigbutt{ - pixel_x = 8; - pixel_y = -2 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "fqn" = ( /obj/structure/stairs/east, /turf/open/floor/iron/stairs/medium{ dir = 8 }, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "fqr" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/vending/cola/shamblers, @@ -18622,26 +19660,48 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron, /area/station/cargo/storage) -"fro" = ( -/obj/machinery/computer/records/security{ - dir = 4 +"frc" = ( +/obj/structure/chair/sofa/middle/brown, +/obj/item/clothing/under/costume/seifuku/red{ + pixel_y = -7 }, +/obj/item/clothing/head/costume/crown{ + pixel_x = 10; + pixel_y = 8 + }, +/obj/structure/sign/poster/official/pda_ad/directional/north, +/turf/open/floor/eighties, +/area/station/maintenance/department/crew_quarters/dorms) +"fro" = ( /obj/effect/turf_decal/siding/blue{ dir = 1 }, -/obj/item/radio/intercom/directional/west, -/obj/effect/turf_decal/tile/red/opposingcorners, /obj/machinery/light/directional/west, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 9 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 8 + }, +/obj/structure/bookcase/random/reference, +/obj/item/book/manual/wiki/surgery{ + pixel_x = -14; + pixel_y = 6 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "fry" = ( -/obj/effect/turf_decal/siding/wood, -/obj/structure/railing, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 }, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/stripes{ + dir = 2 + }, +/turf/open/floor/iron/textured, +/area/station/command/eva) "frB" = ( /obj/structure/railing/corner{ dir = 1 @@ -18684,6 +19744,12 @@ /obj/structure/sign/poster/random/directional/south, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"frN" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 + }, +/turf/open/floor/iron/large, +/area/station/engineering/lobby) "frP" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -18698,6 +19764,18 @@ /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, /area/station/security/execution/transfer) +"frT" = ( +/obj/machinery/atmospherics/pipe/multiz/purple/visible{ + dir = 8; + name = "mix to recycle multi-deck adapter" + }, +/obj/effect/turf_decal/tile/purple/opposingcorners, +/obj/effect/turf_decal/tile/neutral/opposingcorners{ + dir = 1 + }, +/obj/effect/turf_decal/box/white, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "frY" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/machinery/airalarm/directional/north, @@ -18705,24 +19783,13 @@ /turf/open/floor/circuit/green{ luminosity = 2 }, -/area/station/ai_monitored/command/nuke_storage) -"fsf" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +/area/station/command/vault) "fsj" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/burnt_floor, /obj/machinery/light/directional/south, /turf/open/floor/plating, /area/station/engineering/storage_shared) -"fso" = ( -/obj/machinery/duct, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "fsw" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -18738,6 +19805,15 @@ /obj/effect/landmark/navigate_destination/research, /turf/open/floor/iron/dark, /area/station/science/lobby) +"fsy" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/red{ + dir = 4 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "fsM" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, @@ -18756,7 +19832,7 @@ name = "Warden's Place" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "fsO" = ( /obj/structure/rack, /obj/item/storage/crayons{ @@ -18777,6 +19853,18 @@ /obj/structure/closet/secure_closet/security/science, /turf/open/openspace, /area/station/security/checkpoint/science) +"fsW" = ( +/obj/machinery/atmospherics/pipe/smart/simple/dark/visible, +/obj/machinery/air_sensor/incinerator_tank, +/obj/machinery/atmospherics/pipe/smart/simple/pink/visible/layer2{ + dir = 6 + }, +/turf/open/floor/engine/airless, +/area/station/engineering/atmos/upper) +"fsX" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "ftk" = ( /obj/structure/table, /obj/item/stock_parts/micro_laser, @@ -18801,33 +19889,16 @@ /area/station/construction/storage_wing) "ftA" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/service/kitchen/abandoned) -"ftF" = ( -/obj/effect/turf_decal/bot, -/obj/machinery/portable_atmospherics/scrubber, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/atmos/upper) "ftG" = ( /obj/machinery/portable_atmospherics/canister/nitrogen, /turf/open/floor/engine/n2, /area/station/engineering/atmos/upper) -"ftK" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper/corner{ - dir = 8 - }, -/obj/structure/fluff/paper/stack{ - dir = 4 - }, -/obj/structure/filingcabinet/chestdrawer, -/obj/effect/spawner/random/bureaucracy/paper, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "ftR" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment{ @@ -18848,17 +19919,10 @@ /obj/machinery/door/airlock/maintenance{ name = "Storage Room" }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron/dark/smooth_large, /area/station/maintenance/port) -"fus" = ( -/obj/machinery/computer/slot_machine{ - pixel_y = 2 - }, -/obj/effect/decal/cleanable/vomit/old, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "fut" = ( /obj/machinery/door/airlock/research{ name = "Testing Labs" @@ -18884,18 +19948,34 @@ /obj/machinery/camera/autoname/directional/south, /turf/open/floor/glass, /area/station/hallway/secondary/entry) -"fuU" = ( -/obj/machinery/firealarm/directional/east, -/obj/structure/reagent_dispensers/foamtank, -/obj/effect/turf_decal/bot, -/turf/open/floor/iron/smooth, -/area/station/engineering/hallway) +"fuV" = ( +/obj/machinery/camera/directional/north{ + c_tag = "Atmospherics - co2 Cell"; + name = "atmospherics camera" + }, +/obj/machinery/light/small/directional/north, +/turf/open/floor/engine/n2o, +/area/station/engineering/atmos/upper) "fuW" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 }, /turf/open/floor/carpet, /area/station/service/chapel) +"fva" = ( +/obj/structure/table, +/obj/item/clothing/suit/utility/fire/firefighter, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"fvb" = ( +/obj/structure/table, +/obj/structure/bedsheetbin{ + pixel_y = 6 + }, +/obj/structure/extinguisher_cabinet/directional/south, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "fve" = ( /obj/structure/chair, /obj/effect/turf_decal/tile/dark_blue{ @@ -18904,14 +19984,6 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"fvg" = ( -/obj/machinery/light/directional/east, -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/openspace, -/area/station/engineering/atmos/project) "fvh" = ( /obj/structure/chair/office{ dir = 4 @@ -18934,7 +20006,7 @@ /turf/open/floor/iron/dark/textured_edge{ dir = 4 }, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "fvk" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -18942,38 +20014,6 @@ /obj/structure/window/spawner/directional/north, /turf/open/floor/wood, /area/station/service/library) -"fvu" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/obj/machinery/vending/wardrobe/engi_wardrobe, -/obj/machinery/light/directional/north, -/turf/open/floor/iron/smooth, -/area/station/engineering/main) -"fvG" = ( -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/machinery/door/airlock/maintenance_hatch, -/turf/open/floor/plating/airless, -/area/station/maintenance/starboard/aft) -"fvM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/trash/can{ - pixel_x = -8 - }, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) -"fwd" = ( -/obj/machinery/atmospherics/pipe/multiz/scrubbers/visible/layer2{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/multiz/supply/visible/layer4{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "fwn" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -18997,25 +20037,26 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/science/lab) "fwq" = ( -/obj/machinery/firealarm/directional/east, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) +/obj/machinery/door/airlock/public/glass{ + name = "Crew Quarters Access" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/iron, +/area/station/commons/dorms) +"fwv" = ( +/obj/effect/turf_decal/tile/blue/opposingcorners{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/white, +/area/station/medical/office) "fwx" = ( /obj/machinery/airalarm/directional/east, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) -"fwz" = ( -/obj/item/kirbyplants/fern{ - pixel_x = -3; - pixel_y = 18 - }, -/obj/structure/sign/flag/nanotrasen/directional/north, -/obj/structure/fluff/paper/stack, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) +/area/station/ai/satellite/chamber) "fwB" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, @@ -19041,6 +20082,10 @@ /turf/open/floor/wood, /area/station/command/teleporter) "fwP" = ( +/obj/machinery/door/window/brigdoor/right/directional/north{ + req_access = list("command"); + name = "Conference Room" + }, /turf/open/floor/iron/stairs/medium{ dir = 1 }, @@ -19052,12 +20097,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/textured_corner, -/area/station/ai_monitored/turret_protected/aisat_interior) -"fxc" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark/textured_large, -/area/station/medical/virology) +/area/station/ai/satellite/interior) "fxi" = ( /obj/machinery/door/airlock/public/glass{ name = "Vault Storage" @@ -19067,11 +20107,17 @@ /obj/structure/cable, /obj/effect/landmark/navigate_destination/vault, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) -"fxp" = ( -/obj/effect/spawner/random/vending/snackvend, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/area/station/command/vault) +"fxL" = ( +/obj/structure/table, +/obj/item/toy/gun{ + pixel_x = 1; + pixel_y = 1 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/mapping_helpers/broken_floor, +/turf/open/floor/wood, +/area/station/maintenance/aft) "fxS" = ( /obj/structure/railing{ dir = 8 @@ -19118,6 +20164,18 @@ /obj/item/kirbyplants/random/fullysynthetic, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"fyo" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/hallway/primary/starboard) "fyp" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/smartfridge/drying, @@ -19127,12 +20185,6 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) -"fyw" = ( -/obj/machinery/newscaster/directional/north, -/obj/structure/cable, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "fyx" = ( /obj/structure/rack, /obj/effect/turf_decal/tile/red/opposingcorners, @@ -19147,48 +20199,13 @@ /obj/item/poster/random_contraband, /turf/open/floor/iron/dark, /area/station/maintenance/port) -"fyz" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/junction/yjunction, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=9-Bridge"; - location = "8-Kitchen" - }, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) -"fyD" = ( -/obj/structure/cable, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"fyH" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing/corner{ - dir = 8 - }, -/obj/structure/railing/corner, -/obj/structure/railing{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/openspace, -/area/station/engineering/lobby) "fyY" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 1 - }, -/obj/structure/table/wood/fancy/orange, -/obj/item/gun/energy/recharge/kinetic_accelerator{ - name = "the QM's Accelerator"; - pixel_y = 6 +/obj/machinery/conveyor{ + id = "cargounload" }, -/obj/item/cigbutt, -/obj/item/radio/intercom/directional/north, -/turf/open/floor/iron, -/area/station/command/heads_quarters/qm) +/obj/structure/sign/departments/cargo/directional/north, +/turf/open/floor/iron/dark/textured, +/area/station/cargo/storage) "fzd" = ( /obj/structure/ladder, /turf/open/floor/plating, @@ -19199,42 +20216,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"fzl" = ( -/obj/structure/table, -/obj/item/clothing/suit/hazardvest{ - pixel_x = -13; - pixel_y = 3 - }, -/obj/item/clothing/suit/hazardvest{ - pixel_y = 4 - }, -/obj/item/clothing/suit/hazardvest{ - pixel_x = 10; - pixel_y = 3 - }, -/obj/item/clothing/head/cone{ - pixel_x = -10; - pixel_y = -11 - }, -/obj/item/clothing/head/cone{ - pixel_x = -10; - pixel_y = -11 - }, -/obj/item/clothing/head/cone{ - pixel_x = -10; - pixel_y = -11 - }, -/obj/item/clothing/head/cone{ - pixel_x = -10; - pixel_y = -11 - }, -/obj/item/clothing/head/cone{ - pixel_x = -10; - pixel_y = -11 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/area/station/ai/satellite/interior) "fzv" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -19277,13 +20259,6 @@ }, /turf/open/floor/iron/dark, /area/station/science/xenobiology) -"fzS" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ - dir = 1 - }, -/turf/open/openspace, -/area/station/engineering/lobby) "fzT" = ( /obj/effect/turf_decal/siding/purple{ dir = 4 @@ -19308,30 +20283,14 @@ dir = 8 }, /area/station/hallway/primary/central) -"fAb" = ( -/obj/machinery/computer/atmos_control/nocontrol/incinerator{ - dir = 8 - }, -/obj/machinery/airlock_controller/incinerator_atmos{ - pixel_x = 32; - pixel_y = 0 - }, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "fAl" = ( /turf/closed/wall/r_wall, /area/station/science/lab) -"fAB" = ( -/obj/effect/turf_decal/stripes/corner, -/obj/effect/turf_decal/trimline/green/filled/corner{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ - dir = 2 - }, -/turf/open/floor/iron/textured_large, -/area/station/medical/virology) +"fAD" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/camera/autoname/directional/north, +/turf/open/floor/plating/airless, +/area/station/maintenance/starboard/aft) "fAI" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -19342,10 +20301,6 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"fAV" = ( -/obj/effect/spawner/random/structure/closet_maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "fAW" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/structure/cable, @@ -19365,14 +20320,10 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"fBn" = ( -/obj/item/clothing/head/utility/hardhat/red{ - pixel_x = -3; - pixel_y = 11 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"fBs" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/turf/open/floor/iron, +/area/station/engineering/storage_shared) "fBB" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -19380,6 +20331,11 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/wood, /area/station/service/library/printer) +"fBI" = ( +/obj/machinery/portable_atmospherics/canister/nitrous_oxide, +/obj/effect/turf_decal/bot, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos) "fBQ" = ( /obj/structure/sign/directions/upload, /turf/closed/wall, @@ -19393,18 +20349,18 @@ }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"fBT" = ( +/obj/machinery/duct, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet/restrooms) "fBU" = ( /obj/machinery/photocopier/prebuilt, /obj/structure/sign/clock/directional/east, /turf/open/floor/wood/large, /area/station/medical/psychology) -"fBX" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) "fBY" = ( /obj/effect/turf_decal/trimline/green/filled/line, /obj/structure/table, @@ -19418,11 +20374,6 @@ /obj/machinery/airalarm/directional/north, /turf/open/floor/plating, /area/station/engineering/supermatter/room) -"fCe" = ( -/obj/structure/ladder, -/obj/structure/lattice/catwalk, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) "fCk" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -19433,19 +20384,30 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"fCp" = ( -/obj/machinery/meter{ - name = "Mixed Air Tank In" +"fCx" = ( +/obj/machinery/power/emitter{ + dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5, -/turf/closed/wall/r_wall, -/area/station/engineering/atmos/upper) +/obj/effect/turf_decal/bot{ + dir = 1 + }, +/obj/structure/extinguisher_cabinet/directional/south, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "fCL" = ( /obj/structure/lattice/catwalk, /obj/structure/rack, /obj/effect/spawner/random/maintenance/five, /turf/open/openspace, /area/station/hallway/secondary/entry) +"fCM" = ( +/obj/effect/landmark/start/hangover, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"fCQ" = ( +/obj/effect/spawner/random/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "fCV" = ( /turf/closed/wall/r_wall, /area/station/science/robotics/lab) @@ -19467,11 +20429,14 @@ dir = 4 }, /obj/machinery/door/firedoor, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) "fDd" = ( /obj/machinery/firealarm/directional/south, -/turf/open/floor/iron/large, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 + }, +/turf/open/floor/iron/edge, /area/station/hallway/primary/central) "fDk" = ( /obj/effect/turf_decal/trimline/blue/filled/line, @@ -19506,6 +20471,10 @@ /obj/structure/cable, /turf/open/openspace, /area/station/hallway/primary/central) +"fDH" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/wood, +/area/station/commons/dorms) "fDQ" = ( /obj/structure/railing{ dir = 8 @@ -19519,6 +20488,16 @@ }, /turf/open/floor/iron, /area/station/science/research) +"fDV" = ( +/obj/structure/table, +/obj/machinery/firealarm/directional/west, +/obj/effect/spawner/random/clothing/gloves, +/obj/item/reagent_containers/cup/soda_cans/cola{ + pixel_x = -4; + pixel_y = 9 + }, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "fEc" = ( /obj/machinery/door/airlock/public/glass{ name = "Community Center" @@ -19526,6 +20505,14 @@ /obj/machinery/door/firedoor, /turf/open/floor/wood, /area/station/service/library) +"fEf" = ( +/obj/structure/closet/secure_closet/medical3, +/obj/effect/turf_decal/bot_white{ + color = "#52B4E9" + }, +/obj/machinery/newscaster/directional/south, +/turf/open/floor/iron/dark/textured_large, +/area/station/medical/storage) "fEs" = ( /obj/effect/turf_decal/stripes/line{ dir = 10 @@ -19533,23 +20520,18 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/science/ordnance/storage) "fEA" = ( -/obj/structure/reagent_dispensers/wall/peppertank/directional/east, -/obj/machinery/airalarm/directional/north, -/obj/structure/tank_holder/extinguisher, /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 }, +/obj/machinery/requests_console/directional/north{ + department = "Security"; + name = "Security Requests Console" + }, +/obj/effect/mapping_helpers/requests_console/assistance, +/obj/effect/mapping_helpers/requests_console/supplies, +/obj/structure/closet/secure_closet/security/cargo, /turf/open/floor/iron/dark, /area/station/security/checkpoint/supply) -"fEO" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "fEQ" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 9 @@ -19572,15 +20554,6 @@ /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plating, /area/station/maintenance/port) -"fEU" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment{ - dir = 9 - }, -/turf/open/floor/iron, -/area/station/science/research) "fEW" = ( /obj/structure/sign/poster/random/directional/east, /turf/open/floor/plating, @@ -19597,7 +20570,7 @@ /obj/machinery/door/airlock/medical{ name = "Abandoned Room" }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/iron/textured_large, /area/station/maintenance/department/medical) "fFm" = ( @@ -19616,6 +20589,7 @@ dir = 8 }, /obj/effect/turf_decal/trimline/blue/filled/mid_joiner, +/obj/machinery/newscaster/directional/west, /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) "fFq" = ( @@ -19625,7 +20599,7 @@ "fFA" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "fFE" = ( /obj/effect/turf_decal/tile/neutral/opposingcorners{ dir = 1 @@ -19638,6 +20612,13 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron/dark, /area/station/medical/chemistry) +"fFF" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/cable, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "fFG" = ( /obj/structure/table/reinforced, /obj/item/book/manual/wiki/security_space_law{ @@ -19647,6 +20628,20 @@ /obj/machinery/light/directional/north, /turf/open/openspace, /area/station/security/checkpoint/science) +"fFN" = ( +/obj/structure/table/reinforced, +/obj/item/stack/sheet/iron{ + amount = 30 + }, +/obj/item/stack/sheet/glass/fifty, +/obj/effect/decal/cleanable/cobweb, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) +"fGg" = ( +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/starboard/aft/upper) "fGj" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment{ @@ -19672,39 +20667,73 @@ /obj/machinery/light/directional/west, /turf/open/floor/iron/textured_large, /area/station/medical/virology) +"fGn" = ( +/obj/structure/sign/warning/radiation/rad_area/directional/north, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "fGo" = ( /obj/structure/lattice, /obj/structure/window/reinforced/spawner/directional/east, /turf/open/space/openspace, /area/space/nearstation) -"fGD" = ( -/obj/machinery/firealarm/directional/east, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/upper) -"fGL" = ( -/obj/structure/disposaloutlet{ - dir = 4 +"fGI" = ( +/obj/structure/closet/crate/engineering{ + name = "Basic Materials" }, -/obj/effect/turf_decal/trimline/brown/filled, -/obj/structure/disposalpipe/trunk, -/obj/structure/railing{ - dir = 10 +/obj/item/stock_parts/power_store/cell/high, +/obj/item/stock_parts/power_store/cell/high, +/obj/item/electronics/airlock, +/obj/item/electronics/airlock, +/obj/item/electronics/airlock, +/obj/effect/turf_decal/delivery/white{ + color = "#52B4E9" }, -/obj/machinery/status_display/supply{ - pixel_y = 32 +/obj/item/stack/rods{ + amount = 50 }, -/turf/open/floor/iron, +/obj/item/stack/sheet/glass{ + amount = 50 + }, +/obj/item/stack/sheet/iron{ + amount = 50 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) +"fGL" = ( +/obj/structure/disposalpipe/segment, +/obj/effect/turf_decal/bot/right, +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=4"; + location = "Cargo Storage4" + }, +/mob/living/simple_animal/bot/mulebot{ + name = "Old Yeller" + }, +/turf/open/floor/iron/recharge_floor, /area/station/cargo/sorting) -"fGM" = ( -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) -"fGT" = ( -/obj/structure/lattice/catwalk, -/obj/effect/spawner/random/bureaucracy/paper, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) +"fGQ" = ( +/obj/structure/broken_flooring/corner/directional/east, +/obj/effect/decal/cleanable/dirt, +/obj/effect/mapping_helpers/burnt_floor, +/obj/machinery/airalarm/directional/north, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) +"fGU" = ( +/obj/effect/turf_decal/tile/blue/opposingcorners{ + dir = 1 + }, +/obj/effect/turf_decal/siding/blue/corner{ + dir = 8 + }, +/obj/structure/cable, +/turf/open/floor/iron/white, +/area/station/medical/medbay/central) +"fHb" = ( +/obj/machinery/atmospherics/pipe/smart/manifold/purple/visible{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "fHc" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 8 @@ -19730,25 +20759,6 @@ }, /turf/open/floor/iron/dark, /area/station/medical/medbay/lobby) -"fHg" = ( -/obj/structure/sign/poster/contraband/missing_gloves/directional/east, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/maintenance/port/aft) -"fHi" = ( -/obj/machinery/mech_bay_recharge_port, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) -"fHk" = ( -/obj/effect/spawner/random/entertainment/arcade{ - dir = 4 - }, -/turf/open/floor/eighties, -/area/station/engineering/lobby) "fHp" = ( /obj/structure/table/wood, /obj/machinery/airalarm/directional/west, @@ -19760,6 +20770,12 @@ /obj/machinery/camera/autoname/directional/north, /turf/open/openspace, /area/station/hallway/secondary/entry) +"fHO" = ( +/obj/effect/turf_decal/trimline/yellow/corner{ + dir = 4 + }, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "fHR" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -19775,7 +20791,9 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/turf/open/floor/carpet, +/turf/open/floor/iron/edge{ + dir = 4 + }, /area/station/hallway/primary/central) "fIf" = ( /obj/structure/cable, @@ -19785,15 +20803,12 @@ }, /turf/open/floor/wood/large, /area/station/medical/break_room) -"fIg" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "fIh" = ( /obj/effect/mapping_helpers/ianbirthday, -/turf/open/floor/carpet, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) "fIl" = ( /obj/structure/lattice/catwalk, @@ -19846,12 +20861,10 @@ /obj/machinery/firealarm/directional/south, /turf/open/floor/iron/dark, /area/station/service/hydroponics) -"fJc" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/layer2{ - dir = 8 - }, -/turf/open/floor/engine/airless, -/area/station/maintenance/disposal/incinerator) +"fIS" = ( +/obj/structure/sign/departments/medbay/alt/directional/west, +/turf/open/floor/iron/stairs/medium, +/area/station/medical/medbay/central) "fJx" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -19892,12 +20905,15 @@ "fJL" = ( /turf/closed/wall/r_wall, /area/station/security/checkpoint/engineering) -"fJN" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +"fJY" = ( +/obj/structure/transport/linear{ + radial_travel = 0 + }, +/obj/structure/railing/corner/end{ + dir = 8 + }, +/turf/open/openspace, +/area/station/engineering/atmos/upper) "fKi" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -19911,38 +20927,27 @@ /obj/structure/cable, /turf/open/floor/wood, /area/station/hallway/secondary/construction) -"fKm" = ( -/obj/machinery/meter{ - name = "C02 meter" +"fKl" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/power/terminal{ + dir = 1 }, -/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ - name = "CO2 Multideck Adapter"; - dir = 8 +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 4 }, -/obj/effect/turf_decal/tile/dark/fourcorners, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) +/turf/open/floor/iron, +/area/station/engineering/gravity_generator) "fKA" = ( /obj/structure/sign/departments/chemistry/directional/south, /turf/open/floor/engine/hull/air, /area/station/medical/medbay/central) -"fKJ" = ( -/obj/machinery/atmospherics/pipe/layer_manifold/supply/hidden{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/station/maintenance/starboard/aft) "fKO" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/newscaster/directional/west, /turf/open/floor/plating, /area/station/medical/virology) -"fKS" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating/airless, -/area/station/maintenance/starboard/lesser) "fLb" = ( /obj/effect/turf_decal/trimline/yellow/filled/warning{ dir = 1 @@ -19954,24 +20959,20 @@ /turf/open/openspace, /area/station/science/xenobiology) "fLr" = ( -/turf/open/floor/iron/large, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 + }, +/turf/open/floor/iron/edge, /area/station/hallway/primary/central) "fLs" = ( -/obj/structure/railing{ - dir = 4 - }, -/obj/structure/table/glass, -/obj/item/radio/off{ - pixel_x = 3; - pixel_y = 5 - }, -/obj/machinery/recharger{ - pixel_y = 3 - }, -/obj/effect/turf_decal/tile/yellow, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/dark_blue{ + dir = 8 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "fLv" = ( /obj/effect/turf_decal/siding/dark{ dir = 6 @@ -19985,13 +20986,6 @@ /obj/machinery/telecomms/broadcaster/preset_right, /turf/open/floor/iron/dark/textured_large, /area/station/tcommsat/server) -"fLC" = ( -/obj/structure/railing{ - dir = 1 - }, -/obj/machinery/vending/cigarette, -/turf/open/floor/wood, -/area/station/commons/toilet/restrooms) "fLX" = ( /obj/structure/table/reinforced, /obj/item/storage/crayons{ @@ -20002,17 +20996,33 @@ /obj/item/poster/random_contraband, /turf/open/floor/plating, /area/station/maintenance/port) -"fMe" = ( -/obj/structure/barricade/sandbags, +"fMd" = ( /obj/structure/lattice/catwalk, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/railing{ + dir = 8 + }, +/obj/structure/disposalpipe/junction/flip{ + dir = 2 + }, /turf/open/openspace, -/area/station/maintenance/starboard/aft) +/area/station/medical/abandoned) "fMl" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/cobweb, /obj/item/kirbyplants/random/fullysynthetic, /turf/open/floor/wood, /area/station/maintenance/hallway/abandoned_recreation) +"fMr" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/chair/sofa/right/brown{ + dir = 4 + }, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "fMu" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 4 @@ -20029,6 +21039,15 @@ /obj/effect/spawner/random/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) +"fMH" = ( +/turf/closed/wall, +/area/station/maintenance/department/crew_quarters/dorms) +"fMS" = ( +/obj/effect/turf_decal/stripes/white/line{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "fNe" = ( /obj/effect/turf_decal/trimline/red/warning{ dir = 1 @@ -20048,13 +21067,16 @@ /obj/structure/cable, /turf/open/floor/engine/hull/air, /area/station/maintenance/port) -"fNp" = ( -/obj/machinery/holopad, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) +"fNn" = ( +/obj/structure/chair/sofa/corner/brown, +/obj/effect/spawner/random/maintenance, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/cargo/storage) +"fNr" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "fNw" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/railing/corner{ @@ -20066,18 +21088,18 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/white, /area/station/maintenance/department/medical) +"fNx" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 2 + }, +/obj/effect/turf_decal/bot, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "fNB" = ( -/obj/structure/cable, -/turf/closed/wall/r_wall, -/area/station/maintenance/central) -"fNG" = ( -/obj/structure/safe/floor, -/obj/item/food/fortunecookie, -/obj/item/lead_pipe, -/obj/item/reagent_containers/hypospray/medipen/methamphetamine, -/obj/item/clothing/glasses/sunglasses, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/obj/machinery/door/firedoor, +/turf/open/floor/iron/edge, +/area/station/hallway/primary/central) "fNL" = ( /obj/structure/railing{ dir = 1 @@ -20085,6 +21107,11 @@ /obj/structure/showcase/machinery/cloning_pod, /turf/open/floor/wood, /area/station/command/corporate_showroom) +"fNP" = ( +/obj/structure/lattice/catwalk, +/obj/structure/sign/departments/maint/directional/west, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "fNS" = ( /obj/structure/lattice/catwalk, /obj/structure/table/reinforced, @@ -20092,6 +21119,13 @@ /obj/machinery/light/directional/north, /turf/open/openspace, /area/station/security/checkpoint/customs) +"fNW" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/iron/dark/textured, +/area/station/cargo/sorting) "fNX" = ( /obj/machinery/cell_charger, /obj/structure/table, @@ -20105,15 +21139,12 @@ }, /obj/effect/turf_decal/siding/dark, /turf/open/floor/iron/white/textured_half, -/area/station/ai_monitored/turret_protected/aisat_interior) -"fNZ" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/closet, -/obj/item/storage/box/lights/mixed, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/ai/satellite/interior) +"fNY" = ( +/obj/machinery/duct, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) "fOb" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/preopen{ @@ -20122,6 +21153,15 @@ }, /turf/open/floor/plating, /area/station/command/heads_quarters/hop) +"fOc" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/railing, +/obj/machinery/duct, +/obj/machinery/light/warm/directional/north, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) "fOe" = ( /obj/structure/railing{ dir = 1 @@ -20137,9 +21177,28 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"fOM" = ( -/obj/effect/spawner/structure/window/reinforced/plasma, -/turf/open/floor/engine, +"fOs" = ( +/obj/structure/railing/corner, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) +"fOF" = ( +/obj/item/kirbyplants/random, +/obj/machinery/camera/autoname/directional/east, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 8 + }, +/obj/structure/sign/poster/official/random/directional/east, +/turf/open/floor/iron/dark, +/area/station/commons/fitness/recreation) +"fOY" = ( +/obj/machinery/shower/directional/east, +/obj/structure/fluff/shower_drain, +/obj/machinery/light/small/directional/south, +/turf/open/floor/iron/dark/smooth_corner{ + dir = 4 + }, /area/station/engineering/main) "fPb" = ( /obj/effect/turf_decal/siding/thinplating/dark{ @@ -20149,20 +21208,43 @@ /turf/open/floor/wood, /area/station/service/library) "fPf" = ( -/obj/effect/landmark/event_spawn, +/obj/structure/chair/sofa/middle/brown{ + dir = 8 + }, +/obj/structure/lattice/catwalk, +/obj/effect/landmark/start/bitrunner, /turf/open/openspace, /area/station/cargo/storage) -"fPi" = ( -/obj/machinery/atmospherics/pipe/smart/simple/green/visible, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) -"fPl" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +"fPn" = ( +/obj/structure/table, +/obj/item/clothing/head/cone{ + pixel_x = -4; + pixel_y = 4 + }, +/obj/item/clothing/head/cone{ + pixel_x = -4; + pixel_y = 4 + }, +/obj/item/clothing/head/cone{ + pixel_x = -4; + pixel_y = 4 + }, +/obj/item/folder/yellow{ + pixel_x = 4 + }, +/turf/open/floor/iron/large, +/area/station/engineering/lobby) +"fPo" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Auxiliary Tech Storage" + }, +/obj/effect/mapping_helpers/airlock/abandoned, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 1 + }, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "fPs" = ( /obj/structure/lattice/catwalk, /obj/machinery/power/tracker, @@ -20184,6 +21266,13 @@ /obj/machinery/holopad, /turf/open/floor/iron/white, /area/station/medical/medbay/central) +"fPv" = ( +/obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ + dir = 1 + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/engineering/atmos/upper) "fPy" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 4 @@ -20213,6 +21302,10 @@ }, /turf/open/floor/plating, /area/station/security/brig) +"fPN" = ( +/obj/effect/turf_decal/stripes/line, +/turf/closed/wall/r_wall, +/area/station/engineering/supermatter/room/upper) "fPR" = ( /obj/structure/closet/secure_closet/hos, /obj/item/clothing/glasses/hud/security/sunglasses/gars, @@ -20220,36 +21313,14 @@ /obj/machinery/light_switch/directional/east, /turf/open/floor/carpet/royalblack, /area/station/command/heads_quarters/hos) -"fPT" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/simple/green/visible, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "fPX" = ( +/obj/item/kirbyplants/random, /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 10 }, -/obj/structure/rack, -/obj/item/gps/mining{ - pixel_x = 6; - pixel_y = 2 - }, -/obj/item/gps/mining{ - pixel_x = -6; - pixel_y = 2 - }, -/obj/item/gps/mining, -/obj/item/shovel{ - pixel_x = -5 - }, -/obj/item/pickaxe{ - pixel_x = 5 - }, +/obj/structure/sign/poster/random/directional/south, /turf/open/floor/iron, -/area/station/cargo/miningoffice) +/area/station/cargo/storage) "fQb" = ( /obj/effect/turf_decal/trimline/red/warning{ dir = 8 @@ -20258,7 +21329,14 @@ /area/station/security/office) "fQp" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) +"fQG" = ( +/obj/structure/toilet{ + dir = 4 + }, +/obj/machinery/light/small/directional/west, +/turf/open/floor/iron/freezer, +/area/station/commons/dorms) "fQI" = ( /obj/structure/table, /obj/machinery/cell_charger{ @@ -20270,22 +21348,21 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/science/explab) "fQL" = ( -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/fore) "fQQ" = ( /obj/machinery/vending/games, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) -"fQR" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/simple/dark/visible{ - dir = 4 +"fQT" = ( +/obj/effect/turf_decal/trimline/yellow/filled/corner, +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 8 }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "fRd" = ( /obj/effect/turf_decal/siding/dark_blue{ dir = 4 @@ -20293,12 +21370,6 @@ /obj/machinery/light/floor, /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) -"fRe" = ( -/obj/structure/railing/corner/end/flip{ - dir = 8 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "fRg" = ( /obj/machinery/atmospherics/pipe/layer_manifold/supply/hidden{ dir = 4 @@ -20314,16 +21385,35 @@ /obj/effect/mapping_helpers/airlock/locked, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"fRE" = ( -/obj/machinery/computer/security/qm{ +"fRo" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/general/hidden, +/obj/effect/turf_decal/siding/blue{ dir = 4 }, -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 8 +/obj/machinery/light/small/directional/north, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/catwalk_floor{ + initial_gas_mix = "n2=100;TEMP=80" }, -/obj/machinery/newscaster/directional/west, -/turf/open/floor/iron, -/area/station/command/heads_quarters/qm) +/area/station/science/server) +"fRy" = ( +/obj/machinery/light/directional/south, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) +"fRE" = ( +/obj/effect/turf_decal/bot_white, +/obj/effect/spawner/random/structure/crate, +/obj/machinery/light/warm/dim/directional/west, +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/iron/dark/textured, +/area/station/cargo/storage) "fRG" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -20381,10 +21471,10 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/aft) "fSg" = ( @@ -20397,7 +21487,7 @@ /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/bed/medical/emergency, /obj/item/storage/medkit/regular, -/turf/open/floor/wood, +/turf/open/floor/iron/dark, /area/station/command/gateway) "fSm" = ( /obj/structure/cable, @@ -20412,7 +21502,7 @@ /turf/open/floor/iron/white/textured_corner{ dir = 4 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "fSO" = ( /obj/structure/lattice/catwalk, /obj/structure/light_construct/directional/east{ @@ -20426,9 +21516,18 @@ /obj/structure/sign/poster/contraband/shamblers_juice/directional/north, /turf/open/floor/catwalk_floor/iron_dark, /area/station/cargo/bitrunning/den) +"fTa" = ( +/obj/effect/turf_decal/tile/yellow/fourcorners, +/turf/open/floor/iron/dark, +/area/station/engineering/lobby) "fTf" = ( -/obj/effect/turf_decal/siding/wood, -/turf/open/floor/wood, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/siding/wood{ + dir = 6 + }, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) "fTi" = ( /turf/open/floor/carpet/royalblack, @@ -20454,6 +21553,18 @@ /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/iron/smooth, /area/station/science/robotics) +"fTu" = ( +/turf/open/floor/engine/hull/air, +/area/station/maintenance/aft/upper) +"fTw" = ( +/obj/machinery/door/airlock/engineering/glass{ + name = "Supermatter Engine Room" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/obj/machinery/door/firedoor/heavy, +/obj/structure/cable, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "fTx" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/glass, @@ -20471,10 +21582,11 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/service/cafeteria) -"fTF" = ( -/obj/structure/sign/warning/radiation, -/turf/closed/wall/r_wall, -/area/station/engineering/main) +"fTC" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "fTM" = ( /obj/structure/chair, /obj/effect/turf_decal/tile/dark_blue{ @@ -20491,39 +21603,22 @@ /obj/structure/sign/departments/aisat/directional/north, /obj/machinery/light/directional/north, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) -"fTZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) +/area/station/ai/satellite/foyer) +"fTV" = ( +/turf/closed/wall/r_wall, +/area/station/maintenance/starboard/central/upper) "fUb" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment, /obj/structure/cable, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) -"fUd" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/plating, -/area/station/security/detectives_office/private_investigators_office) -"fUg" = ( -/obj/machinery/space_heater, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"fUh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"fUc" = ( +/obj/structure/table/wood, +/obj/item/food/grown/harebell, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "fUi" = ( /obj/structure/lattice/catwalk, /obj/item/stack/cable_coil/thirty, @@ -20538,12 +21633,18 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/science/genetics) -"fUu" = ( +"fUr" = ( +/obj/machinery/door/airlock/atmos/glass{ + name = "Atmospherics" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/smart/simple/orange/visible, +/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/plating/airless, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "fUv" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -20553,19 +21654,16 @@ }, /turf/open/floor/wood, /area/station/hallway/secondary/service) -"fUE" = ( -/obj/machinery/vending/clothing, -/obj/machinery/status_display/evac/directional/east, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) -"fUJ" = ( -/obj/machinery/computer/security/telescreen/entertainment/directional/east, -/turf/open/floor/wood, -/area/station/commons/dorms) +"fUy" = ( +/obj/machinery/duct, +/obj/structure/rack, +/obj/machinery/light_switch/directional/south, +/obj/effect/spawner/random/trash/soap, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet/restrooms) "fUL" = ( /obj/machinery/computer/rdservercontrol, /obj/machinery/airalarm/directional/east, -/obj/effect/mapping_helpers/airalarm/tlv_cold_room, /turf/open/floor/iron/dark, /area/station/science/server) "fUM" = ( @@ -20587,17 +21685,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/science/xenobiology/hallway) -"fVa" = ( -/obj/effect/landmark/event_spawn, -/obj/machinery/light_switch/directional/west, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) -"fVd" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/catwalk_floor, -/area/station/engineering/main) "fVh" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -20607,16 +21694,6 @@ }, /turf/open/floor/engine/hull/air, /area/station/science/research) -"fVj" = ( -/obj/machinery/door/airlock{ - id_tag = "Cabin6"; - name = "Cabin 2" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/station/commons/dorms) "fVk" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -20626,10 +21703,11 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"fVn" = ( -/obj/effect/mapping_helpers/broken_floor, -/turf/open/floor/iron, -/area/station/engineering/storage_shared) +"fVp" = ( +/obj/structure/girder/reinforced, +/obj/effect/spawner/random/structure/grille, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "fVq" = ( /obj/effect/turf_decal/trimline/dark_blue/filled/warning{ dir = 1 @@ -20641,7 +21719,7 @@ /turf/open/floor/iron/white/smooth_half{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "fVs" = ( /obj/structure/chair{ dir = 1 @@ -20652,23 +21730,13 @@ /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) "fVx" = ( -/obj/structure/table/wood, -/obj/item/hand_labeler{ - pixel_x = 3; - pixel_y = 10 - }, -/obj/item/stack/package_wrap{ - pixel_x = -7; - pixel_y = 4 - }, -/obj/item/stamp/denied{ - pixel_x = -15; - pixel_y = 11 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, +/obj/effect/turf_decal/siding/wood/corner{ + dir = 8 + }, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) "fVC" = ( /obj/structure/chair/stool/bar/directional/west, @@ -20683,11 +21751,17 @@ "fVD" = ( /turf/closed/wall, /area/station/maintenance/solars/port/aft) -"fVM" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, +"fVE" = ( +/obj/structure/table/glass, /obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/button/door/directional/west{ + id = "commissaryshutter"; + name = "Office Shutter Control"; + pixel_x = 0 + }, +/turf/open/floor/iron/dark, +/area/station/commons/vacant_room/office) "fVQ" = ( /obj/structure/table/reinforced, /obj/machinery/door/window/brigdoor/left/directional/east{ @@ -20698,6 +21772,13 @@ /obj/effect/turf_decal/tile/red/fourcorners, /turf/open/floor/iron/dark, /area/station/security/checkpoint/customs) +"fVR" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/simple/orange/visible, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "fVX" = ( /obj/structure/table, /obj/machinery/door/poddoor/shutters/preopen{ @@ -20707,14 +21788,11 @@ }, /turf/open/floor/plating, /area/station/service/kitchen/abandoned) -"fWc" = ( -/obj/structure/closet/secure_closet/personal, -/obj/item/clothing/suit/hooded/wintercoat, -/obj/item/clothing/shoes/winterboots, -/obj/machinery/status_display/ai/directional/south, -/obj/effect/spawner/random/clothing/backpack, -/turf/open/floor/iron, -/area/station/commons/dorms) +"fWe" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/rack, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central) "fWt" = ( /obj/effect/turf_decal/trimline/yellow/arrow_ccw{ dir = 4 @@ -20727,11 +21805,18 @@ dir = 4 }, /area/station/hallway/primary/fore) -"fWz" = ( -/obj/machinery/holopad, -/obj/machinery/camera/autoname/directional/west, -/turf/open/floor/engine, -/area/station/engineering/atmos/hfr_room) +"fWy" = ( +/obj/effect/spawner/random/entertainment/arcade{ + dir = 1 + }, +/obj/machinery/digital_clock/directional/south, +/turf/open/floor/iron, +/area/station/hallway/secondary/exit/departure_lounge) +"fWB" = ( +/obj/machinery/washing_machine, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "fWG" = ( /obj/structure/cable/layer3, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -20740,7 +21825,7 @@ dir = 1 }, /turf/open/floor/iron/checker, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "fWI" = ( /obj/structure/girder, /obj/effect/spawner/random/structure/grille, @@ -20750,6 +21835,10 @@ /obj/effect/spawner/random/engineering/tank, /turf/open/floor/plating, /area/station/maintenance/port/greater) +"fWL" = ( +/obj/structure/ladder, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "fWQ" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -20768,7 +21857,7 @@ "fWW" = ( /obj/machinery/flasher/directional/south, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "fWY" = ( /turf/closed/wall, /area/station/service/bar) @@ -20792,14 +21881,13 @@ }, /turf/open/floor/wood, /area/station/service/abandoned_gambling_den) -"fXp" = ( -/obj/machinery/light/floor, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +"fXr" = ( +/turf/open/floor/glass, +/area/station/maintenance/starboard/aft/upper) "fXB" = ( /obj/machinery/status_display/evac/directional/north, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "fXD" = ( /obj/effect/spawner/random/trash/crushed_can, /obj/structure/broken_flooring/side/always_floorplane/directional/east, @@ -20812,15 +21900,21 @@ /obj/effect/mapping_helpers/broken_machine, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"fXG" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 +"fXF" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper/corner{ + dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/lobby) +/obj/structure/fluff/paper/stack{ + dir = 4 + }, +/obj/structure/filingcabinet, +/obj/effect/spawner/random/bureaucracy/paper, +/obj/item/folder/yellow{ + pixel_y = -6 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "fXJ" = ( /obj/structure/table/reinforced, /obj/item/binoculars, @@ -20848,34 +21942,39 @@ }, /turf/open/floor/iron, /area/station/science/robotics) -"fXO" = ( -/obj/structure/table, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "fXP" = ( /turf/closed/wall, /area/station/hallway/primary/aft) -"fXT" = ( -/obj/effect/turf_decal/trimline/white/line{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) "fXW" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/firealarm/directional/north, /turf/open/floor/iron/textured_large, /area/station/medical/abandoned) +"fYa" = ( +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 8 + }, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, +/obj/machinery/door/airlock/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/port) "fYd" = ( /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, /area/station/maintenance/port/greater) +"fYo" = ( +/obj/structure/sign/directions/dorms{ + dir = 1; + pixel_y = 4 + }, +/obj/structure/sign/directions/evac/directional/north{ + dir = 8; + pixel_y = -5 + }, +/turf/closed/wall, +/area/station/commons/locker) "fYq" = ( /obj/machinery/atmospherics/components/binary/pump{ dir = 4; @@ -20884,13 +21983,23 @@ /obj/effect/turf_decal/trimline/neutral, /turf/open/floor/engine, /area/station/engineering/supermatter/room) -"fYt" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/visible, -/turf/open/floor/iron/freezer, -/area/station/engineering/atmos/pumproom) "fYu" = ( /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) +"fYy" = ( +/obj/machinery/requests_console/directional/south{ + department = "Engineering"; + name = "Engineering Requests Console" + }, +/obj/effect/mapping_helpers/requests_console/supplies, +/obj/effect/mapping_helpers/requests_console/assistance, +/obj/machinery/pipedispenser, +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/turf/open/floor/iron/checker, +/area/station/engineering/atmos/upper) "fYF" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -20900,20 +22009,44 @@ }, /turf/open/floor/iron/white, /area/station/medical/medbay/central) +"fYG" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "fYH" = ( -/obj/structure/table, -/obj/structure/sign/poster/contraband/energy_swords/directional/north, -/obj/item/clothing/head/costume/tv_head{ - pixel_y = 8 +/obj/effect/turf_decal/trimline/green/filled/line, +/obj/effect/turf_decal/trimline/green/filled/mid_joiner, +/turf/open/floor/iron/dark/textured_large, +/area/station/medical/virology) +"fYR" = ( +/obj/structure/railing{ + dir = 1 }, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/fore) +/obj/structure/lattice/catwalk, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "fYS" = ( /obj/structure/disposalpipe/trunk/multiz{ dir = 4 }, /turf/closed/wall, /area/station/service/lawoffice) +"fZb" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/chair{ + dir = 8; + pixel_y = -2 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "fZc" = ( /obj/effect/turf_decal/siding/red{ dir = 4 @@ -20927,20 +22060,29 @@ /turf/open/floor/wood, /area/station/security/courtroom) "fZg" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/wood/parquet, -/area/station/command/heads_quarters/qm) +/obj/machinery/holopad, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) +"fZh" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/table/wood, +/obj/item/stamp/granted{ + pixel_x = -5; + pixel_y = 11 + }, +/obj/item/stamp/denied{ + pixel_x = 7 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "fZn" = ( /obj/effect/spawner/random/trash/food_packaging, /obj/effect/decal/cleanable/greenglow, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"fZq" = ( -/obj/structure/closet/secure_closet/personal/cabinet, -/obj/item/clothing/head/costume/foilhat, -/turf/open/floor/wood, -/area/station/commons/dorms) "fZy" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/railing{ @@ -20948,13 +22090,6 @@ }, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"fZB" = ( -/obj/structure/window/reinforced/plasma/spawner/directional/east, -/obj/machinery/modular_computer/preset/engineering{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "fZD" = ( /obj/effect/turf_decal/trimline/dark_green/filled/line{ dir = 5 @@ -20978,24 +22113,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron, /area/station/science/research) -"fZP" = ( -/obj/structure/chair{ - dir = 4; - pixel_y = -2 - }, -/obj/structure/disposalpipe/segment{ - dir = 8 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"fZR" = ( -/obj/effect/spawner/random/structure/tank_holder, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/engineering/main) "gaa" = ( /obj/effect/turf_decal/tile/yellow/opposingcorners{ dir = 1 @@ -21009,42 +22126,6 @@ }, /turf/open/water/jungle, /area/station/science/genetics) -"gaf" = ( -/obj/effect/turf_decal/trimline/yellow/warning{ - dir = 1 - }, -/turf/open/floor/engine/hull/reinforced, -/area/space/nearstation) -"gaj" = ( -/obj/effect/turf_decal/trimline/red, -/obj/effect/turf_decal/trimline/red/mid_joiner{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/red/mid_joiner, -/obj/effect/turf_decal/trimline/red/mid_joiner{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/red/mid_joiner{ - dir = 4 - }, -/obj/item/cigbutt{ - pixel_x = 7; - pixel_y = 14 - }, -/obj/item/cigbutt{ - pixel_x = 1; - pixel_y = 1 - }, -/obj/item/cigbutt{ - pixel_x = -5; - pixel_y = 6 - }, -/obj/item/cigbutt{ - pixel_x = -9; - pixel_y = -2 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "gal" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -21054,11 +22135,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/lab) -"gav" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "gaE" = ( /obj/structure/extinguisher_cabinet/directional/south, /turf/open/floor/iron/dark/smooth_large, @@ -21119,6 +22195,24 @@ }, /turf/open/floor/holofloor/dark, /area/station/command/heads_quarters/cmo) +"gbo" = ( +/obj/effect/spawner/random/entertainment/arcade{ + dir = 8 + }, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/commons/fitness/recreation) +"gbw" = ( +/obj/item/cigbutt, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/machinery/duct, +/obj/effect/turf_decal/siding/wood{ + dir = 9 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) "gby" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -21128,10 +22222,11 @@ /area/station/security/interrogation) "gbE" = ( /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/cargo/storage) "gbH" = ( @@ -21150,6 +22245,12 @@ }, /turf/open/floor/iron/dark, /area/station/maintenance/starboard/fore) +"gbN" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/light/directional/north, +/obj/machinery/status_display/ai/directional/north, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "gbR" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, @@ -21158,6 +22259,18 @@ /obj/machinery/firealarm/directional/south, /turf/open/floor/iron, /area/station/security/prison/mess) +"gcb" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper/corner{ + dir = 8 + }, +/obj/structure/fluff/paper/stack{ + dir = 4 + }, +/obj/structure/filingcabinet/chestdrawer, +/obj/effect/spawner/random/bureaucracy/paper, +/turf/open/floor/wood, +/area/station/maintenance/aft) "gcc" = ( /obj/structure/table/reinforced, /obj/item/paper_bin{ @@ -21181,27 +22294,11 @@ /turf/open/floor/iron/dark, /area/station/security/checkpoint/science) "gcf" = ( -/obj/structure/table/glass, -/obj/machinery/cell_charger{ - pixel_x = -2; - pixel_y = 11 - }, -/obj/item/assembly/signaler{ - pixel_x = -9; - pixel_y = 4 - }, -/obj/item/stock_parts/power_store/cell/high{ - charge = 100; - maxcharge = 15000; - pixel_x = -1; - pixel_y = 9 - }, -/obj/item/food/chocolatebar{ - pixel_x = 6; - pixel_y = -3 +/obj/structure/chair/comfy/beige{ + dir = 4 }, -/turf/open/floor/carpet, -/area/station/command/bridge) +/turf/open/floor/carpet/executive, +/area/station/command/meeting_room/council) "gch" = ( /obj/machinery/door/airlock/virology/glass{ name = "Entrance to Malpractice Tower" @@ -21231,16 +22328,18 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) -"gcm" = ( -/obj/effect/turf_decal/siding/brown, -/obj/structure/chair/sofa/corp{ +"gco" = ( +/obj/machinery/computer/security/telescreen/minisat/directional/south{ + name = "AI Ministat Camera Monitor" + }, +/obj/effect/turf_decal/trimline/red/filled/line, +/obj/machinery/modular_computer/preset/engineering{ dir = 1 }, -/obj/effect/landmark/start/assistant, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +/turf/open/floor/iron/dark, +/area/station/security/checkpoint/engineering) "gct" = ( /obj/effect/turf_decal/box/white, /turf/open/floor/engine, @@ -21254,6 +22353,10 @@ /obj/effect/turf_decal/trimline/purple/filled/mid_joiner, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) +"gcx" = ( +/obj/machinery/light/floor, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "gcE" = ( /obj/effect/turf_decal/stripes/line{ dir = 9 @@ -21271,8 +22374,19 @@ /obj/effect/turf_decal/trimline/green/filled/line, /obj/structure/table/reinforced, /obj/effect/decal/cleanable/dirt, +/obj/machinery/camera/autoname/directional/south, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) +"gcT" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/duct, +/obj/structure/railing/corner{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "gde" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /obj/structure/cable, @@ -21287,6 +22401,17 @@ /obj/structure/cable/multilayer/multiz, /turf/open/floor/plating, /area/station/maintenance/starboard/central) +"gdt" = ( +/obj/structure/window/spawner/directional/east, +/obj/structure/disposaloutlet, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/obj/machinery/light/very_dim/directional/north, +/obj/structure/plasticflaps, +/obj/effect/turf_decal/stripes/red/box, +/turf/open/floor/plating, +/area/station/maintenance/disposal) "gdu" = ( /obj/item/toy/plush/moth{ name = "Stockpile Sammy"; @@ -21318,21 +22443,24 @@ /obj/effect/turf_decal/tile/purple/opposingcorners, /turf/open/floor/iron/dark, /area/station/maintenance/starboard/aft) -"gdP" = ( -/obj/structure/lattice/catwalk, -/obj/effect/spawner/random/trash/garbage{ - spawn_scatter_radius = 1 - }, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) "gdS" = ( /obj/machinery/light/small/directional/east, /turf/open/floor/engine/hull/air, /area/station/maintenance/port) -"gef" = ( -/obj/structure/chair/office, -/turf/open/floor/iron, -/area/station/engineering/lobby) +"gdW" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 6 + }, +/obj/machinery/meter{ + name = "O2 meter" + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) +"ged" = ( +/obj/structure/closet/secure_closet/atmospherics, +/obj/structure/fireaxecabinet/directional/south, +/turf/open/floor/glass/plasma, +/area/station/engineering/atmos/upper) "gei" = ( /obj/structure/railing{ dir = 4 @@ -21344,15 +22472,6 @@ /obj/structure/railing/corner, /turf/open/floor/engine/hull, /area/space/nearstation) -"gex" = ( -/obj/structure/railing, -/obj/structure/flora/bush/fullgrass/style_random, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/light/warm/directional/west, -/turf/open/floor/grass, -/area/station/hallway/primary/starboard) "geA" = ( /obj/effect/turf_decal/siding/red/corner, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -21367,19 +22486,12 @@ /obj/machinery/door/poddoor/incinerator_ordmix, /turf/open/floor/engine/vacuum, /area/station/science/ordnance/burnchamber) -"geE" = ( -/obj/structure/closet/crate/secure/engineering{ - name = "Advanced Materials" - }, -/obj/item/stack/sheet/plasteel, -/obj/item/stack/sheet/mineral/plasma{ - amount = 30 - }, -/obj/effect/turf_decal/delivery/white{ - color = "#52B4E9" +"geJ" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 6 }, -/turf/open/floor/engine, -/area/station/engineering/break_room) +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "geK" = ( /turf/open/floor/iron, /area/station/cargo/storage) @@ -21416,12 +22528,19 @@ /obj/structure/sign/poster/contraband/microwave/directional/south, /turf/open/floor/plating, /area/station/maintenance/port/greater) +"gfd" = ( +/obj/machinery/light/small/directional/north, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "gfh" = ( /obj/structure/railing{ dir = 4 }, /turf/open/floor/engine/hull/air, /area/station/maintenance/port/aft) +"gfi" = ( +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "gfo" = ( /obj/effect/turf_decal/trimline/red/filled/corner{ dir = 4 @@ -21431,17 +22550,6 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/port) -"gfs" = ( -/obj/machinery/airalarm/directional/north, -/obj/structure/cable, -/obj/machinery/computer/turbine_computer, -/obj/effect/mapping_helpers/airalarm/all_access, -/obj/machinery/atmospherics/pipe/smart/simple/dark/visible{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "gfz" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/disposalpipe/segment, @@ -21463,7 +22571,8 @@ "gfG" = ( /obj/machinery/light/directional/west, /obj/structure/sign/painting/library{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/glass/reinforced, /area/station/service/library) @@ -21490,46 +22599,24 @@ }, /turf/open/floor/iron/textured_large, /area/station/medical/virology) -"ggj" = ( -/obj/machinery/door/airlock/engineering/glass{ - name = "Primary Tool Storage" - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/landmark/navigate_destination/tools, -/obj/machinery/door/firedoor, -/turf/open/floor/iron, -/area/station/commons/storage/primary) "ggl" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 1 }, -/obj/machinery/button/elevator{ - id = "catwalk_sec"; - pixel_y = 25 - }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, /obj/machinery/camera/autoname/directional/north, +/obj/machinery/button/elevator/directional/north{ + id = "catwalk_sec" + }, /turf/open/floor/iron/dark, /area/station/security/brig) -"ggp" = ( -/obj/structure/bed, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/spawner/random/medical/memeorgans, -/turf/open/floor/iron/white, -/area/station/maintenance/starboard/lesser) "ggq" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/turf_decal/tile/bar/opposingcorners, -/obj/effect/mapping_helpers/airlock/unres, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/iron, /area/station/maintenance/port/aft) "ggt" = ( @@ -21541,42 +22628,55 @@ /obj/structure/lattice/catwalk, /obj/structure/ladder, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) +"ggA" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "SM_Outside_shutters"; + name = "Outside Shutters"; + dir = 1 + }, +/obj/effect/spawner/structure/window/reinforced/plasma, +/turf/open/floor/plating, +/area/station/engineering/supermatter/room) +"ggD" = ( +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard/upper) "ggE" = ( /obj/machinery/porta_turret/ai{ dir = 4 }, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ggH" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 }, +/obj/effect/landmark/start/depsec/supply, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/checkpoint/supply) -"ggJ" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ - dir = 8 +"ggK" = ( +/obj/effect/turf_decal/siding, +/obj/effect/turf_decal/trimline/white/line{ + dir = 1 }, -/obj/machinery/status_display/evac/directional/east, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/openspace, -/area/station/medical/virology) -"ggN" = ( -/obj/effect/turf_decal/stripes/line, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/turf/open/floor/wood/large, -/area/station/service/theater_dressing) +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "ggQ" = ( /obj/structure/sign/poster/contraband/random/directional/north, +/obj/structure/disposalpipe/segment{ + dir = 10 + }, /turf/open/floor/plating, /area/station/maintenance/starboard/central) "ggR" = ( @@ -21588,19 +22688,15 @@ /obj/machinery/light/floor, /turf/open/floor/iron/white, /area/station/medical/office) -"ggW" = ( -/obj/machinery/light/directional/west, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) "ggX" = ( -/obj/structure/cable/multilayer/multiz, -/obj/machinery/firealarm/directional/east, +/obj/effect/landmark/event_spawn, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/engineering/hallway) +/area/station/engineering/engine_smes) "ghb" = ( /obj/machinery/light/directional/east, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "ghe" = ( /obj/structure/table, /obj/item/pen/fountain{ @@ -21634,12 +22730,28 @@ /turf/open/floor/iron/dark/diagonal, /area/station/service/theater) "ghA" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ - dir = 6 +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/turf/open/floor/iron/edge{ + dir = 4 }, -/turf/open/openspace, /area/station/hallway/primary/central) +"ghI" = ( +/obj/structure/table, +/obj/item/stock_parts/subspace/analyzer, +/obj/item/stock_parts/subspace/analyzer, +/obj/item/stock_parts/subspace/analyzer, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/machinery/camera/directional/north{ + c_tag = "Telecomms - Storage" + }, +/obj/machinery/light/small/directional/west, +/obj/machinery/status_display/ai/directional/north, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tcomms) "ghO" = ( /obj/item/coin/antagtoken, /obj/item/coin/antagtoken{ @@ -21668,11 +22780,12 @@ /turf/open/floor/iron/dark, /area/station/science/lobby) "ghZ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 - }, /obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/catwalk_floor, /area/station/cargo/storage) "gie" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ @@ -21692,7 +22805,7 @@ name = "Armory" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "gih" = ( /obj/effect/turf_decal/tile/neutral/opposingcorners{ dir = 1 @@ -21712,13 +22825,11 @@ }, /turf/open/floor/iron/dark, /area/station/medical/chemistry) -"gim" = ( -/obj/machinery/computer/slot_machine{ - pixel_y = 2 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) +"gij" = ( +/obj/machinery/duct, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "gir" = ( /obj/effect/decal/cleanable/blood/old, /obj/structure/disposalpipe/trunk/multiz{ @@ -21732,33 +22843,57 @@ }, /turf/open/floor/carpet/black, /area/station/service/theater) -"giB" = ( -/obj/machinery/camera/directional/east{ - c_tag = "Secure Tech Storage" - }, -/obj/item/radio/intercom/directional/east, -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) "giE" = ( -/obj/structure/railing{ +/obj/effect/turf_decal/siding/blue{ dir = 8 }, -/obj/effect/turf_decal/siding/blue{ +/obj/structure/railing{ dir = 8 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 8 + }, +/obj/structure/cable, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) +"giG" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 8 + }, +/obj/structure/railing/corner{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/engineering/lobby) +"gjd" = ( +/obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ + dir = 6 + }, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) +"gji" = ( +/obj/machinery/atmospherics/pipe/smart/manifold/pink/visible, +/obj/item/radio/intercom/directional/south, /turf/open/floor/iron/dark, -/area/station/command/bridge) -"giT" = ( -/obj/machinery/camera/autoname/directional/south, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) -"gjb" = ( -/turf/closed/wall/r_wall, -/area/station/engineering/hallway) +/area/station/engineering/atmos/upper) +"gjj" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/dark/textured_large, +/area/station/medical/morgue) "gjn" = ( /obj/item/kirbyplants/random, /obj/machinery/airalarm/directional/south, @@ -21790,20 +22925,11 @@ "gjH" = ( /turf/open/openspace, /area/station/hallway/secondary/service) -"gjM" = ( -/obj/structure/fluff/paper/stack, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) -"gjU" = ( -/obj/effect/spawner/structure/window, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/wood, -/area/station/security/courtroom) +"gjR" = ( +/obj/machinery/light_switch/directional/west, +/obj/structure/reagent_dispensers/water_cooler, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "gjW" = ( /obj/effect/decal/cleanable/food/tomato_smudge, /obj/effect/decal/cleanable/dirt/dust, @@ -21813,29 +22939,17 @@ /obj/structure/railing{ dir = 8 }, -/obj/machinery/conveyor{ - dir = 4; - id = "cargoload" - }, -/obj/structure/closet/crate, -/obj/effect/spawner/random/maintenance, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/item/toy/figure/cargotech, -/obj/item/toy/figure/cargotech, -/obj/effect/turf_decal/trimline/brown/filled/line, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/cargo/storage) -"gki" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/obj/structure/disposalpipe/junction/yjunction{ +/obj/effect/turf_decal/trimline/brown/filled/corner{ dir = 8 }, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/cargo/storage) "gkn" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -21851,7 +22965,22 @@ dir = 1 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"gkB" = ( +/obj/machinery/door/airlock/highsecurity{ + name = "Bridge Escape" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/door/firedoor, +/obj/structure/cable, +/obj/effect/turf_decal/tile/dark_blue/fourcorners, +/obj/effect/mapping_helpers/airlock/access/all/command/general, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "gkN" = ( /obj/structure/closet/crate/trashcart/filled, /obj/effect/spawner/random/maintenance, @@ -21861,21 +22990,6 @@ /obj/effect/landmark/start/botanist, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) -"gkP" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "CO2 to Port" - }, -/obj/effect/turf_decal/tile/dark/fourcorners, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) -"gkW" = ( -/obj/machinery/shower/directional/west, -/obj/structure/fluff/shower_drain, -/turf/open/floor/iron/dark/smooth_corner{ - dir = 1 - }, -/area/station/engineering/main) "gla" = ( /obj/structure/railing/corner{ dir = 4 @@ -21899,10 +23013,6 @@ }, /turf/open/floor/glass, /area/station/service/kitchen) -"gll" = ( -/obj/effect/landmark/event_spawn, -/turf/open/openspace, -/area/station/science/research) "glm" = ( /obj/structure/ladder, /obj/structure/lattice/catwalk, @@ -21914,7 +23024,20 @@ dir = 1 }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) +"glw" = ( +/obj/effect/turf_decal/siding, +/obj/effect/turf_decal/trimline/white/corner{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "glz" = ( /turf/open/floor/iron/chapel{ dir = 1 @@ -21924,6 +23047,10 @@ /obj/machinery/light/directional/south, /turf/open/floor/iron, /area/station/hallway/primary/starboard) +"glF" = ( +/obj/effect/spawner/random/structure/steam_vent, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "glH" = ( /obj/effect/spawner/structure/window, /obj/structure/disposalpipe/trunk/multiz{ @@ -21931,22 +23058,9 @@ }, /turf/open/floor/plating, /area/station/medical/cryo) -"glJ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/effect/turf_decal/trimline/yellow/filled/corner, -/turf/open/floor/iron/dark, -/area/station/engineering/storage) "glL" = ( /turf/closed/wall/mineral/plastitanium, /area/space/nearstation) -"glN" = ( -/obj/machinery/camera/preset/ordnance{ - c_tag = "Cannon's exit" - }, -/turf/open/floor/plating/airless, -/area/station/maintenance/starboard/lesser) "glU" = ( /obj/machinery/door/airlock/mining{ name = "Cargo Bay" @@ -21955,19 +23069,10 @@ /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/supply/general, /obj/effect/turf_decal/tile/brown/fourcorners, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/storage) -"gmc" = ( -/obj/machinery/duct, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/restrooms) "gmd" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 8 @@ -22036,16 +23141,22 @@ /obj/structure/extinguisher_cabinet/directional/east, /turf/open/floor/iron/dark, /area/station/science/lobby) -"gmh" = ( -/obj/effect/spawner/random/engineering/tracking_beacon, -/obj/machinery/status_display/evac/directional/north, -/turf/open/floor/iron/dark, -/area/station/commons/dorms) +"gmq" = ( +/obj/machinery/light/small/directional/north, +/turf/open/floor/iron, +/area/station/engineering/lobby) "gmt" = ( /obj/item/clothing/head/wig/random, /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating/airless, /area/space/nearstation) +"gmu" = ( +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "gmy" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -22057,10 +23168,21 @@ }, /turf/open/openspace, /area/station/construction/storage_wing) +"gmD" = ( +/turf/closed/wall/r_wall, +/area/station/engineering/supermatter/room/upper) "gmE" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/hallway/primary/central) +"gmF" = ( +/obj/structure/lattice/catwalk, +/obj/item/clothing/shoes/wheelys/rollerskates{ + pixel_x = 3; + pixel_y = -5 + }, +/turf/open/openspace, +/area/station/maintenance/department/crew_quarters/dorms) "gmJ" = ( /obj/structure/reagent_dispensers/watertank, /turf/open/floor/iron/smooth_large, @@ -22086,35 +23208,37 @@ /turf/open/floor/iron, /area/station/science/xenobiology/hallway) "gnf" = ( -/obj/structure/window/reinforced/spawner/directional/east, -/obj/effect/turf_decal/tile/red/opposingcorners{ +/obj/structure/chair/plastic{ dir = 1 }, -/turf/open/floor/iron/dark, +/turf/open/floor/wood/large, /area/station/hallway/primary/central) -"gng" = ( -/obj/structure/window/reinforced/plasma/spawner/directional/west, -/turf/open/space/openspace, -/area/space/nearstation) "gnk" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"gnm" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/office) "gnp" = ( /obj/structure/showcase/machinery/tv, /obj/structure/table, /turf/open/floor/plating, /area/station/maintenance/port/greater) "gnt" = ( -/obj/structure/cable, -/obj/structure/railing/corner/end/flip{ - dir = 8 - }, -/obj/structure/railing/corner/end{ - dir = 4 +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/effect/turf_decal/trimline/dark_blue/filled/line, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "gnu" = ( /obj/effect/turf_decal/tile/bar/opposingcorners, /obj/effect/decal/cleanable/dirt, @@ -22123,10 +23247,6 @@ }, /turf/open/floor/iron, /area/station/maintenance/port/aft) -"gnw" = ( -/obj/structure/ladder, -/turf/open/floor/iron/dark, -/area/station/commons/dorms) "gnx" = ( /obj/structure/table/reinforced, /obj/machinery/recharger{ @@ -22151,7 +23271,7 @@ /obj/effect/mapping_helpers/airlock/access/any/command/minisat, /obj/effect/mapping_helpers/airlock/access/any/engineering/tcoms, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "gnK" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /turf/closed/wall/r_wall, @@ -22169,24 +23289,6 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"gnU" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/mapping_helpers/airlock/abandoned, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) -"gnV" = ( -/obj/structure/cable, -/obj/effect/landmark/start/assistant, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/junction/flip{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/dark/arrow_ccw, -/obj/effect/turf_decal/trimline/dark/arrow_ccw, -/turf/open/floor/iron, -/area/station/hallway/secondary/exit/departure_lounge) "gnY" = ( /obj/structure/railing{ dir = 4 @@ -22226,7 +23328,7 @@ name = "Private Channel" }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "got" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/burnt_floor, @@ -22243,19 +23345,15 @@ dir = 8 }, /area/station/cargo/storage) -"goI" = ( -/obj/effect/turf_decal/trimline/green/filled/line, -/obj/effect/turf_decal/trimline/green/filled/mid_joiner, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark/textured_large, -/area/station/medical/virology) -"goM" = ( -/obj/machinery/atmospherics/pipe/smart/simple/pink/visible/layer2{ - dir = 1 +"goK" = ( +/obj/machinery/suit_storage_unit/standard_unit, +/obj/machinery/status_display/ai/directional/south, +/obj/effect/turf_decal/siding/dark{ + dir = 10 }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/obj/effect/turf_decal/box, +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "goN" = ( /obj/machinery/light/directional/south, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -22273,10 +23371,6 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) -"goU" = ( -/obj/structure/cable/layer1, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "goW" = ( /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/effect/decal/cleanable/dirt, @@ -22285,6 +23379,21 @@ }, /turf/open/floor/wood, /area/station/hallway/primary/central) +"gpb" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 8 + }, +/obj/structure/reagent_dispensers/watertank/high, +/obj/structure/cable, +/obj/machinery/power/apc/auto_name/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/engine_smes) +"gpd" = ( +/obj/structure/railing{ + dir = 8 + }, +/turf/open/floor/carpet/black, +/area/station/service/library/private) "gpk" = ( /obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ dir = 1 @@ -22311,6 +23420,14 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) +"gpD" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 1 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "gpI" = ( /obj/effect/turf_decal/trimline/blue/filled/line, /obj/effect/turf_decal/bot, @@ -22324,8 +23441,13 @@ id = "qm_cargobay"; dir = 8 }, +/obj/structure/cable, /turf/open/floor/plating, /area/station/security/checkpoint/supply) +"gpS" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/hallway/primary/fore) "gpT" = ( /obj/machinery/door/airlock/grunge{ name = "Morgue" @@ -22334,9 +23456,11 @@ /turf/open/floor/iron/dark/small, /area/station/medical/morgue) "gpU" = ( -/obj/effect/spawner/structure/window, -/turf/open/floor/plating, -/area/station/commons/dorms) +/obj/structure/closet/emcloset, +/turf/open/floor/iron/edge{ + dir = 8 + }, +/area/station/hallway/primary/central) "gqa" = ( /obj/structure/mop_bucket/janitorialcart{ dir = 8 @@ -22349,19 +23473,17 @@ }, /turf/open/floor/iron/checker, /area/station/service/janitor) -"gqb" = ( -/obj/structure/cable, -/obj/machinery/power/terminal{ - dir = 1 +"gqc" = ( +/obj/structure/table/reinforced/rglass, +/obj/machinery/fax{ + fax_name = "Chief Engineer's Office"; + name = "Chief Engineer's Fax Machine" }, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) -"gqh" = ( -/obj/item/cigbutt, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/obj/structure/disposalpipe/trunk/multiz, -/turf/open/floor/wood, -/area/station/commons/dorms) +/obj/effect/turf_decal/siding/yellow/end{ + dir = 8 + }, +/turf/open/floor/engine, +/area/station/command/heads_quarters/ce) "gqj" = ( /obj/machinery/door/airlock/wood{ name = "Curator Office" @@ -22370,16 +23492,24 @@ /obj/machinery/door/firedoor, /turf/open/floor/wood/large, /area/station/hallway/secondary/service) +"gql" = ( +/obj/machinery/atmospherics/pipe/multiz/orange/visible{ + dir = 8 + }, +/obj/machinery/meter, +/obj/structure/railing/corner, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "gqn" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/disposalpipe/segment{ dir = 4 }, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/hallway/abandoned_recreation) "gqp" = ( @@ -22389,20 +23519,26 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) +"gqv" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/iron, +/area/station/hallway/primary/starboard) "gqz" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple/layer4{ dir = 5 }, /turf/open/space/openspace, /area/space/nearstation) +"gqH" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/machinery/light/small/directional/west, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos) "gqI" = ( /obj/structure/disposalpipe/segment, /turf/closed/wall, /area/station/security/warden) -"gqM" = ( -/obj/effect/spawner/random/trash/cigbutt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "gqT" = ( /obj/structure/railing{ dir = 8 @@ -22411,11 +23547,19 @@ dir = 4 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "grb" = ( /obj/machinery/light/small/directional/west, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) +"grc" = ( +/obj/effect/turf_decal/siding/blue{ + dir = 8 + }, +/turf/open/floor/catwalk_floor{ + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/station/science/server) "grd" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -22426,13 +23570,11 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/lab) -"gro" = ( -/obj/structure/cable/layer1, -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +"grm" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/closet/emcloset, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "grr" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -22440,11 +23582,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/security/execution/transfer) -"grx" = ( -/obj/effect/spawner/random/structure/closet_maintenance, -/obj/item/clothing/mask/joy, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/aft) "grJ" = ( /obj/item/kirbyplants/random, /obj/structure/sign/poster/official/random/directional/south, @@ -22458,6 +23595,13 @@ /obj/machinery/light/directional/east, /turf/open/floor/iron/dark/textured_large, /area/station/security/prison) +"gsd" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "gse" = ( /turf/open/floor/wood, /area/station/hallway/secondary/service) @@ -22476,18 +23620,6 @@ }, /turf/open/floor/iron, /area/station/engineering/lobby) -"gtd" = ( -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"gti" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 4 - }, -/obj/structure/sign/directions/supply/directional/east{ - dir = 2 - }, -/turf/open/floor/iron, -/area/station/hallway/primary/starboard) "gtk" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/railing{ @@ -22495,6 +23627,17 @@ }, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"gtm" = ( +/obj/structure/disposalpipe/segment{ + dir = 2 + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "atmosmaintedge" + }, +/turf/open/floor/plating, +/area/station/engineering/atmos) "gtq" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -22502,6 +23645,17 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/wood/tile, /area/station/science/robotics) +"gts" = ( +/obj/structure/sign/poster/official/random/directional/south, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 + }, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/structure/chair/comfy/beige{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "gtt" = ( /obj/structure/railing{ dir = 8 @@ -22511,9 +23665,6 @@ }, /turf/open/floor/engine/hull, /area/space/nearstation) -"gtw" = ( -/turf/open/floor/engine/hull/reinforced/air, -/area/station/engineering/atmos/project) "gty" = ( /obj/structure/railing, /obj/effect/turf_decal/trimline/purple/filled/line, @@ -22531,6 +23682,15 @@ /obj/structure/bed, /turf/open/floor/plating, /area/station/security/execution/education) +"gtC" = ( +/obj/effect/turf_decal/trimline/yellow/warning{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/yellow/mid_joiner{ + dir = 4 + }, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "gtO" = ( /obj/structure/disposalpipe/segment, /turf/open/floor/wood, @@ -22550,28 +23710,20 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"gtW" = ( -/obj/structure/table/wood, -/obj/item/book/bible{ - pixel_y = 4 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) "gtZ" = ( /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/siding/wood, /obj/machinery/firealarm/directional/west, /turf/open/floor/wood, /area/station/hallway/primary/central) -"gug" = ( -/obj/machinery/door/airlock{ - name = "Unisex Restrooms" +"guh" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 8 }, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/restrooms) +/obj/structure/reagent_dispensers/fueltank, +/obj/machinery/airalarm/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/engine_smes) "guk" = ( /obj/effect/landmark/start/scientist, /turf/open/floor/iron/dark, @@ -22588,7 +23740,7 @@ /obj/structure/cable, /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, /area/station/maintenance/port) "gup" = ( @@ -22600,18 +23752,12 @@ }, /turf/open/floor/iron, /area/station/science/research) -"guy" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "guD" = ( /obj/effect/turf_decal/siding/dark{ dir = 1 }, /turf/open/floor/iron/dark/textured_half, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "guO" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, @@ -22625,14 +23771,12 @@ "guV" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment, -/obj/effect/landmark/event_spawn, -/obj/machinery/conveyor_switch/oneway{ - dir = 1; - id = "mining" +/obj/structure/cable, +/obj/structure/disposalpipe/junction{ + dir = 1 }, /turf/open/floor/iron, -/area/station/cargo/miningoffice) +/area/station/cargo/storage) "gvb" = ( /obj/machinery/light/directional/west, /obj/structure/cable, @@ -22655,23 +23799,19 @@ /obj/item/radio/intercom/prison/directional/west, /turf/open/floor/iron/freezer, /area/station/security/prison/shower) -"gvk" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) +"gvi" = ( +/obj/effect/spawner/structure/window/reinforced/plasma, +/obj/structure/cable, +/turf/open/floor/catwalk_floor, +/area/station/engineering/atmos/office) "gvI" = ( /obj/effect/turf_decal/stripes/end, /turf/open/floor/iron/dark/smooth_large, /area/station/science/ordnance/storage) -"gvK" = ( -/obj/structure/lattice/catwalk, -/obj/structure/holosign/barrier/engineering, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/openspace, -/area/station/engineering/atmos/project) +"gvM" = ( +/obj/structure/closet/firecloset, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "gvR" = ( /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable, @@ -22691,6 +23831,17 @@ /obj/structure/cable, /turf/open/floor/iron/textured_large, /area/station/security/prison) +"gwk" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/disposalpipe/trunk/multiz{ + dir = 4 + }, +/obj/machinery/door/poddoor/preopen{ + id = "capshut" + }, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/command/heads_quarters/captain/private) "gwD" = ( /obj/item/stack/ore/gold{ pixel_x = -8; @@ -22710,11 +23861,21 @@ "gwK" = ( /turf/open/floor/engine/hull/air, /area/station/security/courtroom) -"gxi" = ( -/obj/effect/turf_decal/stripes/box, -/obj/structure/ladder, +"gwN" = ( +/obj/effect/spawner/random/vending/snackvend, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 + }, +/obj/machinery/power/apc/auto_name/directional/west, +/obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/area/station/commons/fitness/recreation) +"gxb" = ( +/obj/structure/table/reinforced, +/obj/item/binoculars, +/obj/item/binoculars, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "gxl" = ( /obj/effect/turf_decal/siding/wood{ dir = 5 @@ -22739,7 +23900,9 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/corner{ + dir = 8 + }, /area/station/hallway/primary/central) "gyc" = ( /obj/structure/table/wood, @@ -22757,6 +23920,8 @@ dir = 1 }, /obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/storage) "gyh" = ( @@ -22767,6 +23932,11 @@ /obj/machinery/light/directional/south, /turf/open/floor/iron/dark, /area/station/medical/chemistry) +"gyi" = ( +/obj/structure/dresser, +/obj/machinery/newscaster/directional/south, +/turf/open/floor/wood, +/area/station/commons/dorms) "gym" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -22796,6 +23966,15 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) +"gyr" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/structure/table, +/obj/effect/turf_decal/trimline/purple/filled/line{ + dir = 5 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/upper) "gys" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/bed{ @@ -22807,8 +23986,13 @@ /area/station/security/brig) "gyw" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/carpet, -/area/station/command/bridge) +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/dark_blue/anticorner/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "gyz" = ( /obj/machinery/camera/autoname/directional/west, /turf/open/floor/plating, @@ -22895,29 +24079,27 @@ /turf/open/floor/plating, /area/station/maintenance/hallway/abandoned_recreation) "gzt" = ( -/obj/structure/table/wood, -/obj/item/folder/blue{ - pixel_x = 6; - pixel_y = -3 - }, -/obj/item/paper_bin{ - pixel_x = -5; - pixel_y = 9 - }, -/obj/item/pen/fountain/captain{ - pixel_y = -6 - }, -/obj/item/stamp/denied{ - pixel_x = 8; - pixel_y = 10 +/obj/effect/landmark/start/captain, +/obj/structure/chair/comfy/black{ + dir = 8 }, -/turf/open/floor/carpet, +/obj/effect/turf_decal/siding/wood/end, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) "gzH" = ( /obj/item/kirbyplants/photosynthetic, /obj/effect/turf_decal/siding/dark, /turf/open/floor/iron/white/textured_half, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"gzJ" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/security/detectives_office/private_investigators_office) "gAa" = ( /obj/machinery/modular_computer/preset/id{ dir = 1 @@ -22930,6 +24112,9 @@ "gAb" = ( /obj/structure/chair/office, /obj/effect/landmark/start/station_engineer, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/floor/iron, /area/station/engineering/lobby) "gAd" = ( @@ -22941,52 +24126,35 @@ "gAf" = ( /turf/closed/wall/r_wall, /area/station/hallway/secondary/entry) +"gAh" = ( +/obj/structure/bed/double, +/obj/effect/spawner/random/bedsheet/double, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "gAl" = ( /obj/item/restraints/legcuffs/beartrap/prearmed, /turf/open/floor/plating, /area/station/maintenance/port) -"gAq" = ( -/obj/machinery/camera/directional/north{ - c_tag = "Atmospherics - co2 Cell"; - name = "atmospherics camera" - }, -/turf/open/floor/engine/n2o, -/area/station/engineering/atmos/upper) -"gAt" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/chair{ - dir = 8; - pixel_y = -2 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) -"gAy" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/lattice/catwalk, -/turf/open/water, -/area/station/maintenance/starboard/fore) -"gAC" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/trimline/red/filled/line{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/security/checkpoint/engineering) +"gAz" = ( +/obj/effect/spawner/random/structure/crate, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central) "gAI" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/smooth_large, /area/station/science/ordnance/storage) -"gAM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +"gAS" = ( +/obj/item/ammo_casing/spent{ + pixel_x = -11; + pixel_y = -5 + }, +/obj/item/ammo_casing/spent{ + pixel_x = -6; + pixel_y = 2 + }, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard/central/upper) "gAT" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/effect/turf_decal/trimline/red/warning{ @@ -23028,11 +24196,11 @@ /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark/textured_large, /area/station/medical/storage) -"gBf" = ( -/obj/structure/lattice/catwalk, -/obj/item/stack/rods, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) +"gBe" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper/stack, +/turf/open/floor/wood, +/area/station/maintenance/aft) "gBg" = ( /obj/structure/flora/rock/pile, /obj/structure/flora/bush/jungle/b/style_2, @@ -23052,12 +24220,39 @@ /obj/effect/spawner/random/maintenance/four, /turf/open/floor/plating, /area/station/construction/storage_wing) +"gBr" = ( +/obj/machinery/airalarm/directional/north, +/obj/structure/extinguisher_cabinet/directional/west, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) +"gBu" = ( +/obj/structure/closet/crate/bin, +/obj/machinery/button/door/directional/east{ + id = "Cabin7"; + name = "Cabin Bolt Control"; + normaldoorcontrol = 1; + specialfunctions = 4 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) "gBA" = ( /obj/machinery/camera/directional/south{ c_tag = "Science - Xenobiology Big Pen" }, /turf/open/floor/engine, /area/station/science/xenobiology) +"gBC" = ( +/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ + name = "O2 Multideck Adapter"; + dir = 2 + }, +/obj/machinery/meter{ + name = "O2 meter" + }, +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/effect/turf_decal/box/white, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "gBE" = ( /obj/structure/chair/sofa/right/brown{ dir = 8 @@ -23076,11 +24271,17 @@ /turf/open/floor/iron, /area/station/hallway/primary/port) "gBG" = ( -/obj/machinery/computer/communications{ - dir = 1 +/obj/machinery/firealarm/directional/east, +/obj/machinery/modular_computer/preset/id{ + dir = 8 }, -/obj/machinery/newscaster/directional/south, -/turf/open/floor/carpet, +/obj/machinery/button/door/directional/south{ + id = "capshut"; + name = "Captain Shutters"; + pixel_x = -6; + pixel_y = -28 + }, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) "gBR" = ( /obj/structure/lattice/catwalk, @@ -23095,39 +24296,17 @@ }, /turf/open/openspace, /area/station/command/gateway) -"gBV" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8; - pixel_x = -2 - }, -/obj/effect/turf_decal/stripes/corner, -/turf/open/floor/engine, -/area/station/engineering/break_room) -"gBY" = ( -/obj/structure/window/reinforced/spawner/directional/east, -/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, -/turf/open/floor/iron/freezer, -/area/station/engineering/atmos/pumproom) -"gCa" = ( -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 10 - }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) -"gCn" = ( -/obj/structure/lattice, -/obj/item/toy/figure/ninja{ - name = "Space Ninja"; - desc = "How did he get there??"; - pixel_x = -8; - pixel_y = 7 +"gBZ" = ( +/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/co2{ + dir = 8 }, -/turf/open/space/basic, -/area/space/nearstation) -"gCv" = ( -/obj/structure/ladder, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) +"gCu" = ( +/obj/structure/broken_flooring/side/directional/east, +/obj/machinery/light_switch/directional/north, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/engineering/storage_shared) "gCx" = ( /obj/structure/table/reinforced/rglass, /obj/item/megaphone/sec{ @@ -23146,23 +24325,6 @@ /obj/effect/mapping_helpers/airlock/access/any/security/maintenance, /turf/open/floor/plating, /area/station/security/interrogation) -"gCL" = ( -/obj/structure/table, -/obj/item/book/manual/wiki/atmospherics, -/obj/machinery/requests_console/directional/south{ - department = "Engineering"; - name = "Engineering Requests Console" - }, -/obj/effect/mapping_helpers/requests_console/supplies, -/obj/effect/mapping_helpers/requests_console/assistance, -/turf/open/floor/engine/hull/reinforced/air, -/area/station/engineering/atmos/project) -"gCQ" = ( -/obj/machinery/shower/directional/east, -/obj/effect/decal/cleanable/dirt, -/obj/item/radio/intercom/directional/north, -/turf/open/floor/iron/freezer, -/area/station/commons/dorms) "gCU" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -23172,11 +24334,37 @@ /area/station/security/prison) "gDc" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/structure/disposalpipe/trunk/multiz{ - dir = 1 +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/obj/machinery/door/poddoor/preopen{ + id = "capshut" }, +/obj/structure/cable, /turf/open/floor/plating, /area/station/command/heads_quarters/captain/private) +"gDe" = ( +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plating, +/area/station/maintenance/aft) +"gDk" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/turf/open/floor/iron/checker, +/area/station/engineering/atmos/upper) +"gDo" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/spawner/random/structure/steam_vent, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "gDs" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -23232,6 +24420,16 @@ }, /turf/open/floor/iron, /area/station/science/research) +"gDZ" = ( +/obj/machinery/door/airlock/maintenance, +/obj/structure/disposalpipe/segment, +/obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 1 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "gEb" = ( /obj/machinery/firealarm/directional/west, /obj/effect/turf_decal/tile/dark_blue{ @@ -23270,12 +24468,6 @@ /obj/machinery/grill, /turf/open/floor/iron, /area/station/service/kitchen/abandoned) -"gEE" = ( -/obj/structure/chair/pew/left{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/station/maintenance/starboard/lesser) "gEN" = ( /obj/machinery/porta_turret/ai{ dir = 4 @@ -23284,27 +24476,7 @@ dir = 5 }, /turf/open/floor/engine/hull/reinforced/air, -/area/station/ai_monitored/turret_protected/ai) -"gER" = ( -/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 9 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) -"gEZ" = ( -/obj/item/toy/cards/deck{ - pixel_y = 4 - }, -/obj/structure/table, -/obj/item/food/hotcrossbun{ - pixel_x = 10; - pixel_y = 12 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) +/area/station/ai/satellite/chamber) "gFa" = ( /obj/structure/table/reinforced, /obj/item/plant_analyzer, @@ -23326,15 +24498,6 @@ /obj/structure/closet/emcloset, /turf/open/floor/iron/dark, /area/station/hallway/secondary/entry) -"gFk" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) "gFm" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -23351,21 +24514,12 @@ /obj/machinery/status_display/evac/directional/south, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"gFp" = ( -/obj/structure/cable, -/obj/machinery/door/airlock/engineering{ - name = "Engine Room" - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, -/turf/open/floor/iron/smooth, -/area/station/engineering/hallway) "gFt" = ( /obj/structure/bodycontainer/morgue{ dir = 1 }, /obj/machinery/light/small/directional/south, +/obj/machinery/newscaster/directional/south, /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) "gFx" = ( @@ -23375,23 +24529,27 @@ /turf/open/floor/iron/dark, /area/station/security/brig) "gFB" = ( -/obj/structure/closet/secure_closet/security/cargo, -/obj/machinery/light_switch/directional/north, -/obj/machinery/camera/directional/north{ - c_tag = "Cargo Bay - Security Post (Low)" - }, /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 }, +/obj/structure/cable, +/obj/machinery/airalarm/directional/north, /turf/open/floor/iron/dark, /area/station/security/checkpoint/supply) +"gFF" = ( +/obj/machinery/mech_bay_recharge_port, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/maintenance/starboard/aft/upper) "gFI" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/camera/autoname/directional/south{ network = list("minisat") }, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "gFU" = ( /obj/machinery/airalarm/directional/west, /obj/effect/turf_decal/trimline/blue/filled/line, @@ -23403,20 +24561,6 @@ /obj/machinery/status_display/ai/directional/south, /turf/open/floor/iron/dark, /area/station/security/medical) -"gFW" = ( -/obj/machinery/duct, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"gGc" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/storage_shared) -"gGl" = ( -/turf/open/floor/iron/stairs{ - dir = 1 - }, -/area/station/maintenance/starboard/lesser) "gGx" = ( /obj/structure/railing/corner{ dir = 1 @@ -23427,10 +24571,6 @@ /obj/machinery/airalarm/directional/north, /turf/open/floor/iron/dark, /area/station/science/cytology) -"gGB" = ( -/obj/structure/cable, -/turf/closed/wall, -/area/station/maintenance/starboard/fore) "gGF" = ( /obj/structure/railing/corner, /obj/effect/turf_decal/siding/wood/corner, @@ -23497,12 +24637,6 @@ /obj/effect/mapping_helpers/airlock/access/all/science/xenobio, /turf/open/floor/iron/dark, /area/station/science/xenobiology) -"gHH" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/delivery, -/obj/machinery/icecream_vat, -/turf/open/floor/iron, -/area/station/maintenance/starboard/central) "gHJ" = ( /obj/structure/table, /obj/machinery/requests_console/directional/west{ @@ -23559,17 +24693,28 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark, /area/station/service/chapel/office) +"gIz" = ( +/obj/item/statuebust, +/turf/open/floor/iron/vaporwave, +/area/station/maintenance/starboard/aft/upper) "gIE" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/commons/storage/art) -"gIN" = ( -/obj/machinery/airalarm/directional/south, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ +"gIQ" = ( +/obj/effect/spawner/structure/window/reinforced/plasma, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "SM_Outside_shutters"; + name = "Outside Shutters"; dir = 1 }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) +/turf/open/floor/plating, +/area/station/engineering/supermatter/room) +"gIR" = ( +/obj/structure/cable, +/obj/machinery/power/apc/auto_name/directional/east, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "gJg" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/junction{ dir = 8 @@ -23586,11 +24731,13 @@ }, /turf/open/space/basic, /area/space/nearstation) -"gJi" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/camera/autoname/directional/north, -/turf/open/openspace, -/area/station/maintenance/starboard/fore) +"gJm" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "gJp" = ( /obj/machinery/firealarm/directional/north, /obj/effect/turf_decal/trimline/dark_blue/filled/line, @@ -23600,18 +24747,28 @@ /obj/item/kirbyplants/organic/plant10, /turf/open/floor/holofloor/dark, /area/station/command/heads_quarters/cmo) -"gJT" = ( -/obj/structure/rack, -/obj/item/clothing/glasses/meson, -/obj/item/geiger_counter, -/obj/item/clothing/head/utility/radiation, -/obj/item/clothing/suit/utility/radiation, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +"gJv" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ + dir = 8 }, -/obj/machinery/firealarm/directional/north, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5{ + dir = 4 + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) +"gJw" = ( +/obj/effect/spawner/random/maintenance, +/obj/effect/decal/cleanable/blood/oil, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) +"gJY" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/security/checkpoint/engineering) "gKa" = ( /obj/machinery/airalarm/directional/east, /obj/effect/turf_decal/tile/dark_blue{ @@ -23620,62 +24777,37 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"gKk" = ( -/obj/item/stack/sticky_tape{ - pixel_x = 8; - pixel_y = 14 - }, -/obj/structure/table, -/obj/item/stack/sticky_tape{ - pixel_x = -4; - pixel_y = 11 - }, -/obj/item/screwdriver, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "gKo" = ( /obj/structure/flora/bush/flowers_br/style_random, /obj/structure/flora/bush/fullgrass/style_random, /turf/open/floor/grass, /area/station/hallway/secondary/entry) -"gKs" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 1 - }, -/obj/machinery/camera/autoname/directional/north, -/obj/structure/table/reinforced, -/obj/item/storage/belt/utility, -/obj/item/storage/belt/utility, -/obj/machinery/airalarm/directional/north, -/turf/open/floor/iron/dark, -/area/station/engineering/storage) -"gKu" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/trimline/yellow/filled/line, -/obj/structure/sign/warning/radiation/rad_area/directional/south, +"gKq" = ( +/obj/structure/grille/broken, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"gKw" = ( +/obj/structure/lattice, +/obj/structure/sign/warning/hot_temp/directional/north, +/turf/open/space/basic, +/area/space/nearstation) +"gKE" = ( +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/structure/window/reinforced/spawner/directional/east, /turf/open/floor/iron/dark, -/area/station/maintenance/starboard/fore) -"gKL" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) +/area/station/command/bridge) "gKN" = ( /obj/machinery/holopad/secure{ pixel_y = -1 }, /mob/living/simple_animal/bot/secbot/beepsky/armsky, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/security/armory) -"gKO" = ( -/obj/structure/chair/pew/right{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/landmark/start/hangover, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) +/area/station/security/armory) +"gKT" = ( +/obj/machinery/portable_atmospherics/canister/air, +/obj/machinery/light/small/directional/south, +/turf/open/floor/iron/freezer, +/area/station/engineering/atmos/pumproom) "gKX" = ( /obj/machinery/portable_atmospherics/canister/anesthetic_mix, /obj/effect/turf_decal/weather/snow/corner{ @@ -23701,7 +24833,7 @@ /turf/open/floor/iron/dark/textured_edge{ dir = 4 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "gLs" = ( /obj/effect/turf_decal/stripes/corner, /obj/effect/turf_decal/stripes/corner{ @@ -23715,21 +24847,10 @@ /turf/open/floor/iron/dark, /area/station/science/cytology) "gLD" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 6 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/requests_console/directional/east{ - name = "Quartermaster's Requests Console"; - department = "Quartermaster's Desk" - }, -/obj/effect/mapping_helpers/requests_console/assistance, -/obj/effect/mapping_helpers/requests_console/ore_update, -/obj/effect/mapping_helpers/requests_console/announcement, -/obj/effect/mapping_helpers/requests_console/information, -/turf/open/floor/iron, -/area/station/command/heads_quarters/qm) +/obj/effect/turf_decal/bot_white, +/obj/effect/spawner/random/structure/crate, +/turf/open/floor/iron/dark/textured_large, +/area/station/cargo/storage) "gLE" = ( /obj/machinery/digital_clock/directional/south, /turf/open/floor/glass/reinforced, @@ -23747,24 +24868,25 @@ /turf/open/floor/iron/white, /area/station/maintenance/department/medical) "gLT" = ( -/obj/structure/railing/corner/end{ - dir = 8 +/obj/machinery/holopad, +/obj/structure/railing{ + dir = 1 }, -/obj/effect/turf_decal/trimline/brown/filled/warning{ +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only{ dir = 1 }, /turf/open/floor/iron/textured, /area/station/cargo/storage) "gLU" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, /obj/structure/sign/directions/engineering/directional/north{ - dir = 2 + dir = 2; + pixel_y = 0 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/turf/closed/wall, +/area/station/commons/toilet/auxiliary) "gLW" = ( /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, @@ -23784,6 +24906,13 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/security/prison/safe) +"gMB" = ( +/obj/structure/disposalpipe/segment{ + dir = 2 + }, +/obj/effect/turf_decal/tile/yellow/fourcorners, +/turf/open/floor/iron, +/area/station/hallway/primary/starboard) "gMI" = ( /obj/effect/spawner/structure/window, /obj/machinery/door/poddoor/shutters/preopen{ @@ -23796,25 +24925,52 @@ /obj/structure/window/reinforced/spawner/directional/south, /turf/open/space/openspace, /area/space/nearstation) -"gMP" = ( -/obj/machinery/door/airlock/atmos/glass{ - name = "Atmospherics Testing Room" +"gMW" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, -/obj/machinery/door/firedoor/heavy, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/engineering/atmos/project) +/turf/open/floor/wood, +/area/station/commons/dorms) "gNf" = ( /obj/structure/light_construct/directional/east, /obj/effect/mapping_helpers/broken_floor, +/obj/structure/table/wood, +/obj/effect/spawner/random/maintenance, /turf/open/floor/wood, /area/station/maintenance/starboard/central) +"gNg" = ( +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 4 + }, +/obj/structure/railing/corner{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/engineering/lobby) +"gNh" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/iron/dark, +/area/station/command/heads_quarters/hop) "gNi" = ( /turf/open/floor/carpet, /area/station/security/detectives_office) +"gNp" = ( +/obj/effect/turf_decal/siding/blue/corner{ + dir = 8 + }, +/obj/effect/turf_decal/tile/blue/opposingcorners{ + dir = 1 + }, +/obj/structure/cable, +/turf/open/floor/iron/white, +/area/station/medical/medbay/central) "gNq" = ( /obj/structure/table/reinforced, /turf/open/floor/wood, @@ -23822,16 +24978,20 @@ "gNr" = ( /turf/closed/wall, /area/station/service/library) +"gNx" = ( +/turf/closed/wall/r_wall, +/area/station/maintenance/aft) "gNy" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 8 +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/obj/machinery/light_switch/directional/west{ - pixel_y = 6 +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/stripes/line{ + dir = 8 }, -/obj/item/kirbyplants/random, -/obj/machinery/airalarm/directional/west, -/turf/open/floor/iron, +/turf/open/floor/iron/textured, /area/station/cargo/storage) "gND" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ @@ -23852,31 +25012,37 @@ /area/station/hallway/primary/aft) "gNL" = ( /obj/effect/turf_decal/plaque{ - icon_state = "L9" - }, -/obj/effect/turf_decal/siding/green{ - dir = 1 + icon_state = "L10" }, +/obj/effect/turf_decal/siding/white, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) +"gNR" = ( +/obj/effect/spawner/random/trash/mess, +/obj/item/toy/crayon/spraycan{ + pixel_x = 12; + pixel_y = 13 + }, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "gNS" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/landmark/start/cargo_technician, -/turf/open/floor/iron, -/area/station/cargo/storage) -"gNU" = ( -/obj/structure/railing{ - dir = 8 +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/effect/turf_decal/stripes/line{ + dir = 1 }, -/obj/effect/turf_decal/siding/wood{ - dir = 8 +/turf/open/floor/iron/dark/textured, +/area/station/cargo/sorting) +"gNU" = ( +/obj/structure/table/reinforced/rglass, +/obj/item/aicard{ + pixel_x = 5 }, -/obj/machinery/door/firedoor/border_only{ - dir = 8 +/obj/item/assembly/timer{ + pixel_x = -7 }, -/turf/open/floor/wood, -/area/station/command/meeting_room/council) +/obj/effect/turf_decal/tile/purple/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "gNX" = ( /obj/machinery/computer/security/hos{ dir = 4 @@ -23893,17 +25059,27 @@ }, /turf/open/floor/plating, /area/station/science/lobby) -"gOd" = ( -/obj/structure/rack, -/obj/effect/decal/cleanable/dirt, -/obj/item/pai_card, +"gOp" = ( +/obj/structure/table/reinforced/rglass, +/obj/item/storage/briefcase/secure{ + pixel_y = 3 + }, +/obj/item/reagent_containers/cup/glass/bottle/whiskey{ + pixel_y = 9; + pixel_x = -6 + }, +/obj/effect/turf_decal/tile/brown/opposingcorners, +/obj/structure/window/reinforced/spawner/directional/south, +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"gOv" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, /turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"gOE" = ( -/obj/machinery/atmospherics/components/unary/passive_vent, -/obj/structure/lattice, -/turf/open/space/basic, -/area/space/nearstation) +/area/station/maintenance/starboard/fore/upper) "gOH" = ( /obj/structure/sink/kitchen/directional/west, /obj/machinery/light_switch/directional/east, @@ -23913,14 +25089,12 @@ /area/station/service/kitchen/coldroom) "gOK" = ( /obj/effect/landmark/event_spawn, -/turf/open/floor/carpet, -/area/station/ai_monitored/command/storage/eva) -"gOL" = ( -/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/o2{ - dir = 8 +/obj/effect/turf_decal/siding/dark{ + dir = 9 }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "gOR" = ( /obj/effect/spawner/random/vending/colavend, /turf/open/floor/iron, @@ -23944,12 +25118,13 @@ /obj/machinery/drone_dispenser, /turf/open/floor/iron/dark/smooth_large, /area/station/science/lab) -"gPj" = ( -/obj/machinery/camera/directional/north{ - c_tag = "Atmospherics - Nitrogen Cell"; - name = "atmospherics camera" +"gPk" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer2{ + dir = 8 }, -/turf/open/floor/engine/n2, +/obj/effect/turf_decal/bot_white, +/obj/machinery/digital_clock/directional/north, +/turf/open/floor/iron/dark, /area/station/engineering/atmos/upper) "gPu" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -23976,12 +25151,11 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/station/hallway/secondary/entry) -"gPA" = ( -/obj/structure/chair{ - dir = 1 - }, -/turf/open/floor/wood, -/area/station/commons/dorms) +"gPz" = ( +/obj/machinery/airalarm/directional/south, +/obj/machinery/camera/autoname/directional/south, +/turf/open/floor/carpet/black, +/area/station/service/library/private) "gPC" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -24010,6 +25184,35 @@ /obj/machinery/airalarm/directional/north, /turf/open/openspace, /area/station/hallway/secondary/service) +"gPP" = ( +/obj/structure/table/reinforced/rglass, +/obj/item/paper_bin{ + pixel_x = -1; + pixel_y = 11 + }, +/obj/item/stamp/granted{ + pixel_x = -3; + pixel_y = 1 + }, +/obj/item/stamp/denied{ + pixel_x = 6 + }, +/obj/item/pen{ + pixel_x = -1; + pixel_y = 13 + }, +/obj/effect/turf_decal/tile/green/opposingcorners, +/obj/structure/window/reinforced/spawner/directional/south, +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"gPS" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 2; + name = "N2 to Mix" + }, +/obj/effect/turf_decal/tile/red/fourcorners, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "gPW" = ( /turf/closed/wall, /area/station/maintenance/hallway/abandoned_recreation) @@ -24025,19 +25228,15 @@ /turf/open/floor/carpet/black, /area/station/maintenance/hallway/abandoned_recreation) "gQa" = ( -/obj/machinery/door/airlock/mining{ - name = "Quartermaster's Quarters" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/access/all/supply/qm, -/obj/effect/turf_decal/tile/brown/fourcorners, -/turf/open/floor/iron, -/area/station/command/heads_quarters/qm) +/obj/effect/turf_decal/bot_white, +/obj/effect/spawner/random/structure/crate, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/iron/dark/textured_large, +/area/station/cargo/storage) "gQc" = ( /obj/structure/lattice/catwalk, /turf/open/openspace, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "gQf" = ( /obj/effect/turf_decal/trimline/dark_blue/filled/line{ dir = 8 @@ -24047,21 +25246,18 @@ }, /obj/structure/sign/flag/nanotrasen/directional/south, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"gQi" = ( -/obj/machinery/vatgrower, -/obj/effect/turf_decal/trimline/purple/filled/line{ - dir = 10 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) +/area/station/ai/satellite/interior) +"gQj" = ( +/obj/structure/table/wood, +/obj/item/book/bible, +/turf/open/floor/carpet, +/area/station/maintenance/starboard) "gQu" = ( /obj/structure/railing{ dir = 1 }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "gQA" = ( /obj/effect/turf_decal/trimline/dark/arrow_cw{ dir = 8 @@ -24084,14 +25280,25 @@ }, /turf/open/floor/iron/dark, /area/station/service/chapel) +"gQH" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "gQI" = ( -/obj/effect/turf_decal/trimline/brown/filled/corner, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/structure/railing/corner/end{ dir = 8 }, +/obj/effect/turf_decal/trimline/brown/filled/corner{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, /turf/open/floor/iron, /area/station/cargo/storage) "gQL" = ( @@ -24115,10 +25322,6 @@ }, /turf/open/floor/iron/dark, /area/station/command/teleporter) -"gQW" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/engine, -/area/station/engineering/break_room) "gQY" = ( /obj/effect/turf_decal/tile/yellow/opposingcorners, /obj/effect/decal/cleanable/dirt, @@ -24126,13 +25329,13 @@ /obj/machinery/camera/autoname/directional/south, /turf/open/floor/iron, /area/station/engineering/storage_shared) -"gRx" = ( -/obj/machinery/portable_atmospherics/canister/plasma, -/obj/effect/turf_decal/delivery/white{ - color = "#ff6600" +"gRv" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 }, -/turf/open/floor/engine, -/area/station/engineering/break_room) +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "gRB" = ( /obj/machinery/door/airlock/research{ name = "Research and Development Lab" @@ -24157,7 +25360,7 @@ /area/station/service/chapel) "gRG" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "gRH" = ( /obj/effect/turf_decal/trimline/blue/filled/line, /obj/structure/cable, @@ -24169,18 +25372,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) -"gRQ" = ( -/obj/structure/table/wood, -/obj/item/flashlight/lamp, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) -"gRT" = ( -/obj/machinery/computer/slot_machine{ - pixel_y = 2 - }, -/obj/effect/decal/cleanable/glitter, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "gRZ" = ( /obj/effect/turf_decal/bot, /obj/item/robot_suit, @@ -24206,17 +25397,38 @@ }, /turf/open/floor/holofloor/dark, /area/station/command/heads_quarters/cmo) -"gSn" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ +"gSh" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/effect/turf_decal/siding/wood/corner{ dir = 4 }, -/turf/open/floor/iron, +/turf/open/floor/wood, +/area/station/commons/toilet/restrooms) +"gSn" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/catwalk_floor, /area/station/cargo/storage) "gSq" = ( /obj/machinery/light/directional/west, /turf/open/floor/wood/large, /area/station/hallway/primary/central) +"gSF" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/sink/kitchen/directional/east{ + desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; + name = "old sink" + }, +/obj/structure/mirror/directional/west, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "gSG" = ( /obj/structure/extinguisher_cabinet/directional/north, /obj/effect/turf_decal/trimline/green/filled/line{ @@ -24226,8 +25438,15 @@ dir = 1 }, /obj/structure/disposalpipe/segment, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 1 + }, /area/station/hallway/primary/central) +"gSH" = ( +/obj/structure/cable, +/obj/effect/spawner/structure/window/reinforced/tinted, +/turf/open/floor/plating/airless, +/area/station/maintenance/aft) "gSK" = ( /obj/effect/turf_decal/trimline/yellow/warning{ dir = 4 @@ -24253,27 +25472,6 @@ }, /turf/open/floor/carpet/cyan, /area/station/command/heads_quarters/cmo) -"gTe" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) -"gTm" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 9 - }, -/obj/machinery/light/directional/north, -/obj/structure/rack, -/obj/item/lightreplacer{ - pixel_y = 7 - }, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/iron/dark, -/area/station/engineering/storage) "gTn" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark, @@ -24294,14 +25492,14 @@ }, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"gTH" = ( -/obj/structure/table, -/obj/item/reagent_containers/cup/glass/mug{ - pixel_x = -3; - pixel_y = 4 +"gTu" = ( +/obj/structure/cable, +/obj/effect/decal/cleanable/dirt, +/obj/structure/disposalpipe/segment{ + dir = 5 }, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) +/turf/open/floor/plating, +/area/station/maintenance/starboard) "gTL" = ( /obj/machinery/door/airlock/public/glass{ name = "Circle Center" @@ -24311,6 +25509,15 @@ dir = 1 }, /area/station/hallway/primary/aft) +"gTP" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + id = "SM_Outside_shutters"; + name = "Outside Shutters"; + dir = 4 + }, +/obj/effect/spawner/structure/window/reinforced/plasma, +/turf/open/floor/plating, +/area/station/engineering/supermatter/room) "gTW" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/red/opposingcorners{ @@ -24324,16 +25531,31 @@ }, /turf/open/floor/iron/white, /area/station/maintenance/department/medical) -"gTX" = ( -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +"gUc" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 9 + }, +/obj/item/lightreplacer{ + pixel_y = 7 + }, +/obj/structure/sign/poster/contraband/missing_gloves/directional/north, +/obj/structure/table/reinforced, +/obj/item/storage/belt/utility, +/obj/item/storage/belt/utility, +/turf/open/floor/iron/dark, +/area/station/engineering/storage) "gUh" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/light/red/dim/directional/south, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) +"gUr" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/engineering/lobby) "gUv" = ( /obj/machinery/holopad, /turf/open/floor/carpet, @@ -24346,6 +25568,25 @@ /obj/effect/landmark/start/assistant, /turf/open/floor/wood, /area/station/service/library) +"gUE" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 10 + }, +/obj/structure/rack, +/obj/structure/cable, +/obj/item/radio/intercom/directional/west, +/obj/item/multitool{ + pixel_x = 8 + }, +/obj/item/flatpack{ + board = /obj/item/circuitboard/machine/flatpacker; + pixel_x = -5 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/storage) +"gUI" = ( +/turf/closed/wall/r_wall, +/area/station/maintenance/aft/upper) "gUQ" = ( /obj/machinery/door/airlock/public/glass{ name = "Nanotrasen Museum" @@ -24355,10 +25596,30 @@ /obj/structure/cable, /turf/open/floor/carpet, /area/station/command/corporate_showroom) -"gVi" = ( -/obj/structure/window/spawner/directional/west, +"gUV" = ( +/obj/machinery/door/airlock{ + name = "Commentator Stand Access" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 1 + }, /turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/area/station/maintenance/starboard/aft/upper) +"gVf" = ( +/obj/machinery/door/airlock/external, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, +/obj/effect/mapping_helpers/airlock/access/all/engineering/external, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) +"gVj" = ( +/obj/item/clothing/head/cone{ + pixel_x = 8; + pixel_y = -6 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "gVn" = ( /obj/machinery/light/directional/south, /turf/open/floor/engine, @@ -24368,12 +25629,13 @@ dir = 4 }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "gVv" = ( -/obj/structure/cable, /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/supply/general, /turf/open/floor/plating, /area/station/maintenance/starboard/central) "gVB" = ( @@ -24385,6 +25647,10 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/science/xenobiology/hallway) +"gVQ" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/commons/dorms/laundry) "gVZ" = ( /obj/effect/turf_decal/siding/wood{ dir = 8 @@ -24400,13 +25666,7 @@ network = list("minisat") }, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) -"gWm" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/machinery/duct, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) +/area/station/ai/satellite/foyer) "gWo" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -24422,8 +25682,20 @@ }, /turf/open/openspace, /area/station/commons/fitness/recreation) +"gWI" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos/office) "gWM" = ( /obj/machinery/camera/autoname/directional/south, +/obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/hallway/primary/central) "gWO" = ( @@ -24467,7 +25739,7 @@ dir = 6 }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "gXj" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/easel, @@ -24480,24 +25752,14 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/openspace, /area/station/maintenance/port) -"gXy" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/railing{ - dir = 8 - }, -/turf/open/openspace, -/area/station/medical/abandoned) "gXG" = ( /turf/closed/wall, /area/station/science/robotics) -"gXQ" = ( -/obj/structure/cable/multilayer/multiz, -/obj/structure/lattice/catwalk, -/turf/open/floor/plating, -/area/station/engineering/atmos/upper) +"gXH" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/table/wood, +/turf/open/floor/wood, +/area/station/maintenance/aft) "gXR" = ( /obj/machinery/atmospherics/components/binary/tank_compressor{ dir = 8 @@ -24526,7 +25788,7 @@ /obj/item/grenade/chem_grenade/holy, /obj/structure/safe, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "gYz" = ( /obj/structure/table/reinforced, /obj/item/flashlight/lamp{ @@ -24539,7 +25801,7 @@ }, /obj/machinery/light_switch/directional/west, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "gYG" = ( /obj/machinery/atmospherics/pipe/multiz/dark/visible{ dir = 8 @@ -24556,22 +25818,28 @@ /turf/open/floor/plating, /area/station/maintenance/port/aft) "gYP" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/holopad, -/obj/structure/cable, -/turf/open/floor/iron/textured, -/area/station/cargo/storage) -"gYS" = ( -/obj/structure/table/reinforced, -/obj/item/cigbutt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"gYY" = ( -/obj/effect/spawner/random/structure/girder, -/obj/effect/spawner/random/structure/grille, +/obj/machinery/conveyor{ + dir = 8; + id = "cargounload" + }, +/obj/structure/closet/crate, +/obj/item/toy/figure/cargotech, +/obj/item/toy/figure/cargotech, +/obj/effect/spawner/random/maintenance, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, /turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/area/station/cargo/storage) +"gYU" = ( +/obj/structure/table, +/obj/effect/spawner/random/food_or_drink/dinner, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/aft/upper) "gYZ" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -24591,6 +25859,13 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/construction) +"gZi" = ( +/obj/effect/turf_decal/trimline/yellow/filled/corner, +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 4 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "gZj" = ( /obj/structure/table/reinforced/rglass, /obj/effect/spawner/surgery_tray/full, @@ -24605,10 +25880,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/freezer, /area/station/command/heads_quarters/captain/private) -"gZu" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/gravity_generator) "gZy" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /obj/machinery/airalarm/directional/south, @@ -24628,10 +25899,6 @@ }, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) -"gZD" = ( -/obj/structure/bookcase/random, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) "gZO" = ( /obj/machinery/portable_atmospherics/canister/nitrous_oxide, /turf/open/floor/engine/n2o, @@ -24730,37 +25997,16 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/starboard/central) -"hbO" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 - }, -/obj/structure/table, -/obj/item/tank/jetpack/oxygen{ - pixel_y = 4 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/engine_smes) -"hbS" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) -"hce" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, -/turf/open/space/basic, -/area/space/nearstation) -"hcf" = ( -/obj/machinery/atmospherics/components/binary/crystallizer{ - dir = 4 +"hch" = ( +/obj/machinery/portable_atmospherics/canister/nitrogen, +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 1 }, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/sign/warning/directional/north, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "hci" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -24771,21 +26017,15 @@ /turf/open/floor/plating, /area/station/maintenance/starboard/central) "hcj" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 +/obj/item/radio/intercom/directional/south, +/obj/effect/turf_decal/stripes/line{ + dir = 10 }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/machinery/light/warm/dim/directional/west, -/obj/item/radio/intercom/directional/west, -/turf/open/floor/wood/parquet, -/area/station/command/heads_quarters/qm) -"hcn" = ( -/obj/machinery/pdapainter/engineering, -/turf/open/floor/engine, -/area/station/command/heads_quarters/ce) +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "hcx" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "hcC" = ( /obj/machinery/door/airlock/public/glass{ name = "Community Center" @@ -24818,12 +26058,6 @@ /obj/structure/cable, /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) -"hcL" = ( -/obj/machinery/computer/slot_machine{ - pixel_y = 2 - }, -/turf/open/floor/eighties, -/area/station/maintenance/starboard/fore) "hcZ" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -24890,6 +26124,10 @@ /obj/machinery/door/firedoor, /turf/open/floor/iron/textured_large, /area/station/security/prison/rec) +"hdK" = ( +/obj/structure/disposalpipe/segment, +/turf/closed/wall, +/area/station/maintenance/starboard) "hdN" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/line{ @@ -24898,6 +26136,9 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"hdV" = ( +/turf/closed/wall/r_wall, +/area/station/maintenance/starboard/upper) "hdX" = ( /obj/machinery/light/dim/directional/north, /obj/structure/closet/secure_closet/personal, @@ -24930,31 +26171,16 @@ dir = 1 }, /area/station/service/chapel) -"heo" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) -"heq" = ( -/obj/structure/chair/plastic{ - dir = 1 - }, -/obj/effect/mapping_helpers/broken_floor, +"hew" = ( +/obj/structure/closet/crate/coffin, +/obj/effect/spawner/random/maintenance, +/obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/area/station/maintenance/starboard) "heC" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"heO" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 8 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "heR" = ( /obj/structure/lattice, /turf/open/space/basic, @@ -24962,27 +26188,23 @@ "hfr" = ( /obj/structure/railing/corner, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) -"hfx" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/junction, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) -"hfz" = ( -/obj/effect/spawner/random/trash/mess, -/turf/open/floor/wood, -/area/station/commons/dorms) +/area/station/ai/satellite/chamber) "hfF" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/medical/minor_healing, /turf/open/floor/iron, /area/station/maintenance/department/medical) +"hfL" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/visible, +/obj/machinery/meter/monitored/distro_loop, +/obj/effect/turf_decal/box/red, +/turf/open/floor/iron/freezer, +/area/station/engineering/atmos/pumproom) "hfM" = ( -/obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 }, +/obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark/textured, /area/station/cargo/warehouse) "hfX" = ( @@ -24991,13 +26213,26 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, -/turf/open/floor/wood, +/turf/open/floor/plating, /area/station/maintenance/starboard/central) "hfZ" = ( /obj/effect/spawner/random/maintenance, /obj/structure/light_construct/directional/east, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) +"hgb" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/mecha_wreckage/ripley, +/obj/structure/sign/calendar/directional/north, +/turf/open/floor/iron/dark/textured_large, +/area/station/commons/dorms) +"hgi" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "hgm" = ( /obj/effect/turf_decal/siding/dark{ dir = 4 @@ -25007,7 +26242,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "hgs" = ( /obj/effect/mapping_helpers/airlock/access/all/science/general, /obj/machinery/door/airlock/maintenance{ @@ -25017,7 +26252,10 @@ /turf/open/floor/plating, /area/station/maintenance/department/science/central) "hgu" = ( -/obj/structure/sign/poster/contraband/eat/directional/north, +/obj/machinery/barsign{ + pixel_y = 32; + dir = 1 + }, /turf/open/floor/iron/stairs/medium{ dir = 8 }, @@ -25037,18 +26275,6 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"hgC" = ( -/obj/effect/turf_decal/siding{ - dir = 4 - }, -/obj/structure/hoop{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) "hgG" = ( /obj/structure/table/wood, /obj/item/book/bible{ @@ -25063,6 +26289,10 @@ }, /turf/open/floor/iron/dark, /area/station/service/chapel) +"hgJ" = ( +/obj/structure/lattice/catwalk, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) "hgL" = ( /obj/machinery/vending/snack/orange, /turf/open/floor/wood, @@ -25113,17 +26343,13 @@ /turf/open/floor/wood, /area/station/command/heads_quarters/rd) "hhw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light_switch/directional/west{ - pixel_y = 6 - }, -/obj/machinery/button/door/directional/west{ - pixel_y = -8; - id = "qm_warehouse"; - name = "Warehouse Shutters" +/obj/effect/turf_decal/siding/wood{ + dir = 4 }, -/turf/open/floor/iron/dark/textured, -/area/station/cargo/warehouse) +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) "hhz" = ( /obj/structure/railing/corner{ dir = 1 @@ -25131,13 +26357,15 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/siding/dark, /turf/open/floor/catwalk_floor/iron_white, -/area/station/ai_monitored/turret_protected/aisat_interior) -"hhE" = ( -/obj/effect/turf_decal/tile/red/anticorner{ - dir = 1 +/area/station/ai/satellite/interior) +"hhG" = ( +/obj/item/radio/intercom/directional/south, +/obj/effect/turf_decal/tile/dark_blue/fourcorners, +/obj/effect/turf_decal/siding/dark{ + dir = 8 }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +/turf/open/floor/iron/dark, +/area/station/engineering/transit_tube) "hhH" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/red/opposingcorners{ @@ -25153,6 +26381,17 @@ /obj/item/surgicaldrill, /turf/open/floor/iron/white, /area/station/maintenance/department/medical) +"hhJ" = ( +/obj/effect/turf_decal/stripes/red/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/red/line{ + dir = 8 + }, +/obj/structure/sign/warning/radiation/rad_area/directional/south, +/obj/machinery/light/small/directional/west, +/turf/open/floor/engine, +/area/station/engineering/supermatter) "hhL" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -25171,10 +26410,10 @@ /turf/open/floor/carpet, /area/station/maintenance/starboard/aft) "hhP" = ( -/obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, +/obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/science/explab) "hhT" = ( @@ -25191,20 +26430,6 @@ }, /turf/open/floor/iron/dark, /area/station/security/brig) -"hig" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) -"hik" = ( -/obj/machinery/door/airlock{ - id_tag = "Cabin3"; - name = "Cabin 6" - }, -/turf/open/floor/wood, -/area/station/commons/dorms) "hip" = ( /obj/effect/decal/cleanable/glitter{ color = "ff8080" @@ -25215,6 +26440,18 @@ }, /turf/open/floor/iron/dark, /area/station/maintenance/starboard/aft) +"his" = ( +/obj/structure/table, +/obj/item/shard{ + pixel_x = 9 + }, +/obj/item/clothing/glasses/regular{ + pixel_x = -10; + pixel_y = 6 + }, +/obj/structure/sign/poster/official/corporate_perks_vacation/directional/south, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/department/crew_quarters/dorms) "hiu" = ( /obj/effect/spawner/random/trash/mess, /turf/open/floor/engine/hull/air, @@ -25231,6 +26468,19 @@ /obj/machinery/status_display/evac/directional/south, /turf/open/floor/iron/dark, /area/station/security/medical) +"hiA" = ( +/obj/machinery/door/airlock/public/glass{ + name = "Courtroom" + }, +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/wood, +/area/station/security/courtroom) "hiK" = ( /obj/structure/railing/corner{ dir = 4 @@ -25238,21 +26488,37 @@ /obj/effect/turf_decal/siding/blue/corner{ dir = 4 }, -/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/command/bridge) -"hja" = ( -/obj/machinery/light/small/directional/south, -/obj/effect/mapping_helpers/burnt_floor, /obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/corner{ + dir = 4 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "hjG" = ( /obj/structure/table/wood, /turf/open/floor/wood, /area/station/hallway/secondary/construction) +"hjH" = ( +/obj/machinery/door/airlock/command{ + name = "Chief Engineer's Office" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/door/firedoor, +/obj/effect/mapping_helpers/airlock/access/all/engineering/ce, +/obj/structure/disposalpipe/segment, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/command/heads_quarters/ce) "hjL" = ( /obj/machinery/disposal/bin, /obj/effect/turf_decal/tile/dark_green{ @@ -25272,6 +26538,11 @@ }, /turf/open/floor/iron/checker, /area/station/service/bar) +"hkr" = ( +/obj/structure/cable, +/obj/effect/spawner/random/trash/ghetto_containers, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "hkv" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -25302,6 +26573,16 @@ /obj/effect/spawner/random/structure/closet_maintenance, /turf/open/floor/plating, /area/station/maintenance/port/greater) +"hkO" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/duct, +/obj/structure/railing{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "hkZ" = ( /obj/effect/turf_decal/siding/wood{ dir = 9 @@ -25312,7 +26593,7 @@ /area/station/maintenance/hallway/abandoned_recreation) "hld" = ( /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "hlg" = ( /obj/structure/table, /obj/item/stock_parts/matter_bin{ @@ -25324,23 +26605,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/lab) -"hlh" = ( -/obj/structure/lattice/catwalk, -/obj/structure/filingcabinet, -/obj/effect/spawner/random/bureaucracy/paper, -/obj/effect/spawner/random/bureaucracy/paper, -/obj/effect/decal/cleanable/cobweb, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) -"hlm" = ( -/mob/living/basic/axolotl{ - name = "The Lost Axolotl" - }, -/obj/structure/sink/directional/west, -/obj/effect/turf_decal/tile/dark_blue/opposingcorners, -/obj/structure/mirror/broken/directional/east, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) "hls" = ( /obj/structure/railing{ dir = 10 @@ -25362,10 +26626,19 @@ /obj/machinery/light/small/directional/east, /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) +"hlD" = ( +/obj/machinery/door/airlock{ + name = "Emergency Storage" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/machinery/duct, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "hlE" = ( /obj/machinery/airalarm/directional/north, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "hlF" = ( /obj/effect/decal/cleanable/crayon{ icon_state = "revolution"; @@ -25379,15 +26652,18 @@ }, /turf/open/floor/wood, /area/station/maintenance/starboard/central) -"hlJ" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 4 +"hmb" = ( +/obj/structure/table/wood, +/obj/item/toy/cards/deck{ + pixel_y = 4 }, -/obj/machinery/airalarm/directional/west, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/obj/structure/cable, -/turf/open/floor/wood/tile, -/area/station/security/detectives_office/private_investigators_office) +/obj/item/trash/can{ + pixel_x = -10; + pixel_y = -14 + }, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/cargo/storage) "hmc" = ( /obj/structure/lattice/catwalk, /obj/item/toy/figure/assistant, @@ -25406,6 +26682,13 @@ /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) +"hmp" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/turf/open/floor/iron/white, +/area/station/maintenance/starboard) "hmw" = ( /obj/effect/turf_decal/stripes/corner{ dir = 1 @@ -25419,25 +26702,6 @@ }, /turf/open/floor/iron/dark, /area/station/medical/chemistry) -"hmG" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/obj/structure/sign/poster/contraband/soviet_propaganda/directional/north, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) -"hmM" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"hmT" = ( -/obj/structure/window/reinforced/tinted/spawner/directional/south, -/obj/structure/toilet{ - dir = 4 - }, -/obj/machinery/light/small/directional/west, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/freezer, -/area/station/commons/dorms) "hmX" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 1 @@ -25448,42 +26712,11 @@ /obj/machinery/camera/autoname/directional/north, /turf/open/floor/iron/smooth, /area/station/engineering/main) -"hmY" = ( -/obj/effect/turf_decal/siding/brown{ - dir = 6 - }, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) "hmZ" = ( /obj/effect/spawner/random/vending/snackvend, /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/textured_large, /area/station/medical/abandoned) -"hnb" = ( -/obj/effect/turf_decal/siding/white, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/structure/disposalpipe/junction{ - dir = 2 - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=22-Mech-Bay"; - location = "21-Central" - }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/hallway/primary/central) -"hng" = ( -/obj/machinery/camera/directional/north{ - c_tag = "Atmospherics - Air Supply"; - name = "atmospherics camera" - }, -/turf/open/floor/engine/air, -/area/station/engineering/atmos/upper) -"hnh" = ( -/obj/item/radio/intercom/directional/west, -/turf/open/floor/iron/dark, -/area/station/engineering/transit_tube) "hni" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -25544,6 +26777,13 @@ /obj/structure/cable, /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) +"hnI" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 8 + }, +/turf/open/water/no_planet_atmos, +/area/station/maintenance/starboard/fore) "hnK" = ( /obj/structure/lattice/catwalk, /obj/structure/railing, @@ -25552,15 +26792,13 @@ }, /turf/open/openspace, /area/station/commons/fitness/recreation) -"hnU" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/structure/table, -/obj/effect/turf_decal/trimline/purple/filled/line{ - dir = 5 +"hnO" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ + dir = 1 }, -/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/bot_red, /turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) +/area/station/engineering/atmos/upper) "hnV" = ( /obj/effect/turf_decal/stripes/line{ dir = 6 @@ -25575,6 +26813,10 @@ /obj/machinery/airalarm/directional/east, /turf/open/floor/iron, /area/station/science/lobby) +"hoe" = ( +/obj/structure/ladder, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "hof" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 4 @@ -25590,10 +26832,13 @@ }, /turf/open/floor/wood/large, /area/station/service/library) +"hop" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/landmark/generic_maintenance_landmark, +/obj/machinery/duct, +/turf/open/floor/plating, +/area/station/commons/dorms) "hoq" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 8 - }, /turf/open/floor/iron/dark, /area/station/hallway/primary/central) "hoJ" = ( @@ -25607,13 +26852,6 @@ /obj/machinery/smartfridge/organ, /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) -"hpe" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/yellow/filled/line, -/turf/open/floor/iron, -/area/station/engineering/lobby) "hpk" = ( /obj/structure/lattice, /obj/machinery/camera/autoname/directional/south, @@ -25623,10 +26861,16 @@ /obj/effect/spawner/random/trash/graffiti, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"hpo" = ( -/obj/item/kirbyplants/random, -/turf/open/floor/iron, -/area/station/commons/dorms) +"hpr" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/wood, +/area/station/maintenance/starboard) +"hpw" = ( +/obj/effect/turf_decal/tile/red/anticorner{ + dir = 1 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "hpz" = ( /obj/structure/table/wood/poker, /obj/effect/spawner/random/entertainment/money_medium, @@ -25635,13 +26879,6 @@ /obj/structure/cable, /turf/open/floor/wood, /area/station/service/abandoned_gambling_den) -"hpC" = ( -/obj/effect/turf_decal/siding/brown, -/obj/structure/closet/lasertag/blue, -/obj/effect/landmark/start/hangover, -/obj/structure/extinguisher_cabinet/directional/south, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "hpH" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 4 @@ -25664,30 +26901,36 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) "hqf" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, -/turf/open/floor/iron/dark, +/obj/effect/turf_decal/caution{ + pixel_y = -14 + }, +/obj/effect/turf_decal/arrows{ + dir = 1 + }, +/turf/open/floor/iron/dark/smooth_large, /area/station/command/gateway) -"hqg" = ( -/obj/effect/mapping_helpers/broken_floor, -/obj/effect/decal/cleanable/blood/drip, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "hqh" = ( /obj/machinery/suit_storage_unit/standard_unit, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 +/obj/machinery/status_display/evac/directional/south, +/obj/effect/turf_decal/siding/dark{ + dir = 10 }, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) -"hqi" = ( +/obj/effect/turf_decal/box, +/turf/open/floor/iron/dark/small, +/area/station/command/eva) +"hqj" = ( +/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"hql" = ( -/obj/effect/turf_decal/stripes/line, -/turf/closed/wall/r_wall, -/area/station/engineering/break_room) +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/office) "hqr" = ( /obj/effect/turf_decal/siding/wood{ dir = 4 @@ -25722,25 +26965,15 @@ }, /turf/open/floor/iron/dark, /area/station/security/medical) -"hqZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/table/wood, -/obj/structure/fluff/paper/corner{ - dir = 1 - }, -/obj/item/paper/crumpled{ - pixel_x = 7 - }, -/obj/item/paper_bin{ - pixel_x = -2; - pixel_y = 9 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 +"hqV" = ( +/obj/structure/railing/corner{ + dir = 8 }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) +/obj/machinery/duct, +/obj/structure/cable, +/obj/machinery/power/apc/auto_name/directional/east, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet/restrooms) "hri" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/vending/snackvend, @@ -25749,7 +26982,7 @@ "hrk" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "hrm" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, /obj/effect/turf_decal/trimline/blue/warning, @@ -25760,19 +26993,36 @@ dir = 4 }, /area/station/medical/cryo) +"hrC" = ( +/obj/item/ammo_casing/spent{ + pixel_x = 7; + pixel_y = 9 + }, +/obj/item/ammo_casing/spent{ + pixel_x = 2; + pixel_y = -9 + }, +/obj/structure/cable, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "hrD" = ( /turf/open/openspace, /area/station/command/heads_quarters/hop) -"hrT" = ( -/obj/structure/table/reinforced, -/obj/machinery/airalarm/directional/east, -/obj/item/paper_bin{ - pixel_x = 2; - pixel_y = 7 +"hrE" = ( +/obj/structure/disposalpipe/segment{ + dir = 5 }, -/obj/item/hand_labeler, /turf/open/floor/iron, -/area/station/commons/storage/primary) +/area/station/commons/fitness/recreation) +"hrN" = ( +/obj/machinery/atmospherics/pipe/smart/manifold/yellow/visible{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible/layer2{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "hrX" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -25780,14 +27030,12 @@ /obj/machinery/camera/autoname/directional/east, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"hsd" = ( -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 4 +"hsg" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 8 }, -/obj/machinery/light/directional/west, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/turf/open/floor/iron, +/area/station/commons/dorms) "hsh" = ( /obj/effect/mapping_helpers/airlock/access/any/service/library, /obj/machinery/door/airlock/wood{ @@ -25803,6 +27051,14 @@ /obj/structure/table, /turf/open/floor/plating, /area/station/solars/starboard/aft) +"hsj" = ( +/obj/structure/cable, +/obj/effect/landmark/start/hangover, +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/commons/storage/primary) "hsx" = ( /obj/effect/landmark/start/roboticist, /turf/open/floor/iron/white/textured_large, @@ -25873,35 +27129,12 @@ }, /turf/closed/wall, /area/station/hallway/primary/central) -"hsW" = ( -/obj/machinery/atmospherics/pipe/layer_manifold/yellow/visible, -/obj/machinery/meter, -/turf/closed/wall/r_wall, -/area/station/engineering/atmos/upper) -"hsY" = ( -/obj/machinery/meter{ - name = "Mix Meter" - }, -/obj/machinery/atmospherics/pipe/multiz/violet/visible{ - dir = 8; - name = "Mix Multideck Adapter" - }, -/obj/effect/turf_decal/tile/green/full, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) -"htb" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper/stack{ - dir = 4 +"hsU" = ( +/obj/structure/chair/sofa/corner/brown{ + dir = 1 }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) -"htc" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/turf/open/floor/wood/large, +/area/station/commons/dorms) "htj" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, /obj/machinery/light/floor{ @@ -25911,18 +27144,12 @@ /turf/open/floor/iron/dark, /area/station/medical/cryo) "htm" = ( +/obj/machinery/light/directional/east, /obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 1 - }, -/obj/machinery/power/apc/auto_name/directional/north, -/obj/structure/cable, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk{ - dir = 8 + dir = 4 }, /turf/open/floor/iron, -/area/station/cargo/miningoffice) +/area/station/cargo/storage) "htn" = ( /obj/effect/turf_decal/box/white{ color = "#F7F707" @@ -25933,7 +27160,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "htD" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 8 @@ -25941,9 +27168,7 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) "htF" = ( -/obj/machinery/computer/pod/old/mass_driver_controller/trash{ - pixel_x = -24 - }, +/obj/structure/chair/stool/directional/south, /turf/open/floor/plating, /area/station/maintenance/disposal) "htH" = ( @@ -25951,17 +27176,42 @@ /obj/structure/cable, /turf/open/openspace, /area/station/hallway/primary/central) +"htN" = ( +/obj/structure/window/reinforced/plasma/spawner/directional/east, +/obj/machinery/computer/station_alert{ + dir = 8 + }, +/obj/effect/turf_decal/bot/right, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "htV" = ( /obj/structure/transit_tube, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) +"hua" = ( +/obj/machinery/door/airlock{ + id_tag = "Cabin3"; + name = "Cabin 6" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/duct, +/turf/open/floor/iron/dark/textured_large, +/area/station/commons/dorms) "hub" = ( /obj/effect/turf_decal/siding/blue{ dir = 1 }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 1 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "hue" = ( /obj/machinery/ai_slipper{ uses = 10 @@ -25971,7 +27221,7 @@ /obj/structure/cable, /obj/structure/cable/layer3, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "hui" = ( /obj/structure/railing{ dir = 8 @@ -26007,6 +27257,21 @@ }, /turf/open/floor/engine, /area/station/science/xenobiology) +"huv" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/structure/railing/corner{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/turf/open/floor/wood, +/area/station/commons/toilet/restrooms) "huz" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -26014,11 +27279,6 @@ }, /turf/open/floor/plating, /area/station/construction/storage_wing) -"huR" = ( -/obj/structure/closet, -/obj/effect/spawner/random/maintenance/two, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "hvc" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, @@ -26034,12 +27294,19 @@ /obj/item/binoculars, /turf/open/space/openspace, /area/space/nearstation) -"hvE" = ( -/obj/structure/ladder, -/obj/effect/turf_decal/stripes/box, -/obj/structure/sign/warning/radiation/rad_area/directional/north, +"hvy" = ( +/obj/effect/mapping_helpers/airlock/abandoned, +/obj/effect/decal/cleanable/dirt, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/machinery/door/airlock/command{ + name = "Abandoned Lab" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) +/area/station/maintenance/starboard/upper) "hvG" = ( /obj/structure/railing{ dir = 1 @@ -26051,6 +27318,21 @@ /obj/item/kirbyplants/random/fullysynthetic, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"hvL" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/door/airlock/mining{ + name = "Mining Office" + }, +/obj/effect/mapping_helpers/airlock/access/all/supply/mining, +/obj/effect/turf_decal/tile/brown/fourcorners, +/obj/machinery/door/firedoor, +/turf/open/floor/iron, +/area/station/cargo/miningoffice) "hvS" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -26067,10 +27349,42 @@ }, /turf/open/floor/wood/large, /area/station/service/library) +"hwe" = ( +/obj/machinery/recharge_station, +/obj/machinery/light/small/directional/east, +/obj/machinery/newscaster/directional/south, +/turf/open/floor/iron/dark, +/area/station/commons/toilet/restrooms) "hwn" = ( /obj/effect/spawner/random/trash/crushed_can, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"hwu" = ( +/obj/effect/turf_decal/trimline/yellow/warning{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/yellow/mid_joiner{ + dir = 4 + }, +/obj/structure/sign/warning/directional/west, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) +"hwL" = ( +/obj/structure/table, +/obj/item/t_scanner{ + pixel_y = 8 + }, +/obj/item/multitool{ + pixel_x = 5 + }, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/item/multitool{ + pixel_x = -5 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "hwP" = ( /obj/structure/chair/sofa/middle/brown, /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -26080,14 +27394,21 @@ /obj/effect/landmark/start/scientist, /turf/open/floor/iron, /area/station/science/breakroom) +"hwQ" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer4{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/canister/air, +/turf/open/floor/plating, +/area/station/maintenance/aft) "hwR" = ( /obj/effect/turf_decal/stripes/line{ - dir = 4 + dir = 6 }, -/obj/effect/turf_decal/arrows{ - dir = 1 +/obj/machinery/newscaster/directional/south, +/turf/open/floor/iron/dark/smooth_edge{ + dir = 4 }, -/turf/open/floor/iron/dark, /area/station/command/gateway) "hwT" = ( /obj/structure/chair/sofa/left/brown{ @@ -26096,14 +27417,6 @@ /obj/machinery/firealarm/directional/east, /turf/open/floor/carpet/black, /area/station/medical/psychology) -"hwU" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "hwV" = ( /obj/structure/closet/firecloset, /obj/machinery/camera/autoname/directional/north, @@ -26126,13 +27439,19 @@ /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) "hxd" = ( -/obj/structure/reagent_dispensers/water_cooler, -/obj/structure/window/reinforced/spawner/directional/east, -/obj/effect/turf_decal/tile/red/opposingcorners{ +/obj/structure/table/wood, +/obj/effect/turf_decal/siding/wood{ dir = 1 }, -/turf/open/floor/iron/dark, +/obj/item/paper/fluff/junkmail_redpill, +/obj/machinery/newscaster/directional/north, +/turf/open/floor/wood/large, /area/station/hallway/primary/central) +"hxf" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/portable_atmospherics/canister/oxygen, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos) "hxg" = ( /obj/machinery/door/airlock/external{ name = "Transport Airlock" @@ -26152,13 +27471,16 @@ dir = 4 }, /obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate{ - icon_state = "crateopen" - }, /obj/structure/cable, -/obj/machinery/camera/autoname/directional/north, +/obj/effect/spawner/random/structure/crate, +/obj/effect/turf_decal/bot, +/obj/item/radio/intercom/directional/north, /turf/open/floor/iron/dark/textured, /area/station/cargo/warehouse) +"hxA" = ( +/obj/machinery/camera/autoname/directional/west, +/turf/open/floor/iron, +/area/station/commons/dorms) "hxC" = ( /obj/structure/table, /obj/effect/decal/cleanable/dirt, @@ -26167,34 +27489,38 @@ }, /turf/open/floor/carpet/stellar, /area/station/maintenance/hallway/abandoned_recreation) -"hxJ" = ( -/obj/machinery/light/directional/east, -/obj/machinery/camera/autoname/directional/east, +"hxM" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 5 + }, /turf/open/openspace, -/area/station/commons/toilet/restrooms) +/area/station/maintenance/starboard/upper) "hxT" = ( /obj/machinery/door/airlock/grunge{ name = "Under The Stairs" }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical) +"hxU" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/structure/crate, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "hxV" = ( /obj/effect/turf_decal/tile/red/fourcorners, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/security/range) "hxW" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "cargoload" - }, -/obj/structure/closet/crate, -/obj/effect/spawner/random/maintenance, -/obj/effect/turf_decal/trimline/brown/filled/line, -/turf/open/floor/iron, -/area/station/cargo/storage) +/obj/effect/turf_decal/box/corners, +/turf/open/floor/engine/hull, +/area/space/nearstation) "hyc" = ( /obj/machinery/light/directional/south, /turf/open/floor/iron/chapel, @@ -26209,11 +27535,6 @@ /obj/structure/cable, /turf/open/floor/grass, /area/station/science/zoo) -"hye" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "hyf" = ( /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/trimline/red/filled/line{ @@ -26239,14 +27560,12 @@ }, /turf/open/floor/iron/dark, /area/station/engineering/engine_smes) -"hyv" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, -/obj/item/radio/intercom/directional/west, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/iron/dark, -/area/station/engineering/hallway) +"hyw" = ( +/obj/effect/spawner/random/maintenance, +/obj/structure/rack, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/starboard/central/upper) "hyx" = ( /obj/effect/decal/cleanable/dirt, /obj/item/restraints/legcuffs/beartrap/prearmed, @@ -26277,7 +27596,7 @@ /obj/structure/flora/grass/jungle/b/style_3, /obj/structure/flora/bush/flowers_br/style_2, /turf/open/floor/grass, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "hzq" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/rack, @@ -26286,6 +27605,7 @@ }, /obj/item/clothing/shoes/wheelys/rollerskates, /obj/machinery/airalarm/directional/north, +/obj/effect/turf_decal/bot, /turf/open/floor/iron/dark/textured, /area/station/cargo/warehouse) "hzv" = ( @@ -26322,36 +27642,17 @@ /turf/open/floor/plating, /area/station/maintenance/port/fore) "hzY" = ( -/obj/effect/turf_decal/siding/red{ - dir = 10 - }, -/obj/machinery/door/window/brigdoor/left/directional/south{ - name = "Trial Cell"; - req_one_access = list("brig", "command") +/obj/effect/landmark/firealarm_sanity, +/turf/open/openspace, +/area/station/command/heads_quarters/hop) +"hAb" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 }, +/obj/machinery/status_display/ai/directional/north, +/obj/machinery/light/small/directional/north, /turf/open/floor/iron/dark, -/area/station/hallway/primary/central) -"hAd" = ( -/obj/effect/turf_decal/siding{ - dir = 8 - }, -/obj/structure/hoop{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) -"hAh" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/rack, -/obj/effect/spawner/random/maintenance, -/obj/item/wrench, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/area/station/engineering/storage/tech) "hAi" = ( /obj/machinery/door/airlock/public/glass{ name = "Circle Center" @@ -26403,17 +27704,33 @@ /turf/open/floor/iron/dark/textured, /area/station/science/xenobiology) "hAt" = ( -/obj/machinery/computer/security/telescreen/minisat/directional/west{ - name = "Minisat Monitor" +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/dark_blue{ + dir = 4 }, -/turf/open/floor/carpet, -/area/station/command/bridge) +/obj/effect/turf_decal/trimline/dark_blue/filled/line, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "hAx" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/vending/sustenance, /obj/effect/turf_decal/tile/bar/opposingcorners, /turf/open/floor/iron, /area/station/security/prison) +"hAy" = ( +/obj/machinery/duct, +/obj/machinery/light/directional/east, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/light_switch/directional/east, +/obj/structure/cable, +/obj/structure/railing/corner/end/flip{ + dir = 1 + }, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet/restrooms) "hAz" = ( /obj/effect/turf_decal/tile/neutral/opposingcorners{ dir = 1 @@ -26425,8 +27742,12 @@ /turf/open/floor/iron/dark, /area/station/medical/chemistry) "hAC" = ( -/turf/open/floor/wood, -/area/station/command/meeting_room/council) +/obj/machinery/computer/accounting{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "hAH" = ( /obj/machinery/door/airlock/public/glass{ name = "Science Store" @@ -26449,26 +27770,28 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/medical/chem_storage) "hBh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table, -/obj/structure/sign/poster/random/directional/north, -/obj/item/paper_bin/carbon{ - pixel_x = 16; - pixel_y = 6 - }, -/obj/item/pen{ - pixel_x = -8 +/obj/structure/sign/clock/directional/east, +/obj/effect/turf_decal/stripes{ + dir = 5 }, -/turf/open/floor/iron, -/area/station/maintenance/starboard/central) -"hBw" = ( -/obj/structure/railing{ +/turf/open/floor/iron/textured, +/area/station/cargo/storage) +"hBj" = ( +/obj/machinery/holopad, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) +"hBs" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/door/airlock/maintenance, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, -/obj/machinery/firealarm/directional/west, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) +/turf/open/floor/plating, +/area/station/maintenance/starboard) "hBy" = ( /obj/structure/flora/bush/pale/style_random, /obj/structure/flora/bush/fullgrass/style_random, @@ -26502,11 +27825,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron, /area/station/science/explab) -"hBS" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/structure/barricade/wooden/crude, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "hBY" = ( /obj/machinery/elevator_control_panel/directional/east{ linked_elevator_id = "catwalk_cafe"; @@ -26515,12 +27833,6 @@ pixel_y = 26; preset_destination_names = list("2"="Lower Deck","3"="Upper Deck") }, -/obj/structure/sign/directions/upload/directional/north{ - desc = "It stands for Up Le Dable"; - dir = 2; - name = "Button Indicator"; - pixel_y = 40 - }, /obj/structure/railing{ dir = 4 }, @@ -26531,9 +27843,6 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) -"hCg" = ( -/turf/open/floor/engine, -/area/station/engineering/break_room) "hCj" = ( /obj/effect/spawner/random/entertainment/arcade, /obj/structure/sign/poster/party_game/directional/north, @@ -26555,45 +27864,24 @@ /obj/item/radio/intercom/directional/west, /turf/open/floor/iron, /area/station/hallway/primary/aft) -"hCt" = ( -/obj/effect/turf_decal/tile/dark/half{ - dir = 1 - }, -/obj/machinery/meter{ - name = "C02 meter" - }, -/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ - name = "CO2 Multideck Adapter"; - dir = 4 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "hCy" = ( -/obj/effect/turf_decal/siding/red{ - dir = 4 - }, -/obj/structure/table, -/obj/item/gavelblock, -/obj/item/gavelhammer{ - pixel_x = -5; - pixel_y = -1 - }, /obj/structure/railing{ dir = 4 }, -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 +/obj/structure/chair/plastic, +/obj/effect/turf_decal/siding/wood{ + dir = 4 }, -/turf/open/floor/iron/dark, +/turf/open/floor/wood/large, /area/station/hallway/primary/central) -"hCB" = ( -/obj/machinery/power/apc/auto_name/directional/north, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +"hCL" = ( +/obj/effect/spawner/random/engineering/atmospherics_portable, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central) "hCP" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/disposal) "hCQ" = ( @@ -26601,7 +27889,7 @@ dir = 1 }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "hCY" = ( /obj/machinery/camera/directional/east{ c_tag = "Interrogation room"; @@ -26632,7 +27920,7 @@ /area/station/science/lab) "hDg" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "hDk" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, @@ -26653,16 +27941,11 @@ /obj/item/radio/intercom/directional/north, /turf/open/floor/engine, /area/station/service/hydroponics) -"hDw" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/hallway/primary/aft) "hDF" = ( /obj/structure/closet/emcloset, -/obj/effect/turf_decal/trimline/green/filled/line, -/obj/effect/landmark/start/hangover, +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 6 + }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) "hDG" = ( @@ -26676,7 +27959,7 @@ dir = 1 }, /turf/open/floor/catwalk_floor/iron_white, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "hDT" = ( /obj/effect/turf_decal/trimline/red/filled/line, /turf/open/floor/iron, @@ -26707,7 +27990,7 @@ }, /obj/effect/mapping_helpers/mail_sorting/service/hop_office, /obj/structure/cable, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) "hEf" = ( /obj/structure/cable, @@ -26720,39 +28003,18 @@ /obj/effect/spawner/random/structure/chair_maintenance, /turf/open/floor/iron/dark/smooth_large, /area/station/maintenance/port) +"hEu" = ( +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/starboard/fore/upper) "hEE" = ( -/obj/effect/turf_decal/siding/wood, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/landmark/event_spawn, -/obj/structure/railing/corner/end/flip{ - dir = 8 - }, -/obj/structure/railing/corner/end{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) -"hEN" = ( -/obj/structure/chair/sofa/right/brown, -/obj/effect/spawner/random/maintenance, -/obj/structure/sign/poster/contraband/pwr_game/directional/north, -/turf/open/floor/eighties, -/area/station/maintenance/starboard/fore) -"hET" = ( -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/green/filled/mid_joiner{ - dir = 8 - }, -/obj/structure/disposalpipe/segment{ +/obj/effect/turf_decal/stripes{ dir = 2 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron/textured_large, -/area/station/medical/virology) +/turf/open/floor/iron/textured, +/area/station/command/eva) "hEU" = ( /obj/effect/turf_decal/trimline/dark_blue/end{ dir = 4 @@ -26769,14 +28031,14 @@ }, /obj/effect/turf_decal/trimline/dark_blue/mid_joiner, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "hEW" = ( /obj/structure/cable/layer3, /obj/effect/turf_decal/siding/dark{ dir = 1 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "hFc" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 4 @@ -26799,17 +28061,16 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"hFq" = ( -/obj/structure/rack, -/obj/item/clothing/suit/utility/radiation, -/obj/item/clothing/head/utility/radiation, -/obj/item/geiger_counter, -/obj/item/clothing/glasses/meson, -/obj/effect/turf_decal/stripes/line{ - dir = 10 +"hFp" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 1 }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +/obj/machinery/camera/directional/north{ + c_tag = "Engineering - Shared Storage" + }, +/obj/machinery/status_display/ai/directional/north, +/turf/open/floor/iron, +/area/station/engineering/lobby) "hFy" = ( /obj/structure/ladder, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -26817,10 +28078,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/department/science/central) -"hFA" = ( -/obj/structure/lattice/catwalk, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "hFG" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -26849,10 +28106,16 @@ /obj/machinery/door/airlock/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"hFW" = ( +/obj/machinery/newscaster/directional/east, +/obj/effect/decal/cleanable/dirt, +/obj/structure/closet/crate/bin, +/turf/open/floor/plating, +/area/station/commons/dorms) "hFZ" = ( /obj/structure/table, /obj/item/storage/toolbox/emergency{ @@ -26869,6 +28132,10 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"hGh" = ( +/obj/effect/decal/cleanable/glitter, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "hGl" = ( /obj/structure/cable, /obj/effect/turf_decal/stripes/line{ @@ -26888,22 +28155,17 @@ }, /turf/open/openspace, /area/station/maintenance/port/aft) -"hGD" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/turf_decal/siding/wood{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 +"hGy" = ( +/obj/item/trash/can{ + pixel_x = -8 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/turf/open/floor/wood/large, +/area/station/commons/dorms) "hGH" = ( /obj/machinery/flasher/directional/north, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "hGJ" = ( /obj/structure/lattice/catwalk, /obj/item/trash/can{ @@ -26938,10 +28200,23 @@ /turf/open/floor/iron/dark, /area/station/security/checkpoint/science) "hHd" = ( -/obj/structure/window/reinforced/spawner/directional/west, /obj/effect/landmark/navigate_destination/teleporter, /turf/open/floor/iron/stairs/medium, /area/station/hallway/primary/central) +"hHi" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"hHj" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/engineering/lobby) "hHr" = ( /obj/effect/turf_decal/trimline/brown/warning{ dir = 10 @@ -26958,20 +28233,9 @@ "hHA" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, +/obj/structure/cable, +/turf/open/floor/catwalk_floor, /area/station/cargo/storage) -"hHE" = ( -/obj/machinery/atmospherics/pipe/smart/simple/dark/visible{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/smart/simple/pink/visible/layer2{ - dir = 1 - }, -/obj/machinery/door/airlock/public/glass/incinerator/atmos_exterior, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/obj/effect/mapping_helpers/airlock/locked, -/turf/open/floor/engine, -/area/station/maintenance/disposal/incinerator) "hHF" = ( /obj/machinery/disposal/bin/tagger, /obj/machinery/airalarm/directional/south, @@ -26998,16 +28262,6 @@ }, /turf/open/floor/wood, /area/station/command/corporate_showroom) -"hHP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/fluff/paper/stack{ - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "hIc" = ( /obj/structure/lattice/catwalk, /obj/structure/ladder, @@ -27019,34 +28273,16 @@ name = "Head of Personnel's Fax Machine" }, /obj/structure/table/wood, -/turf/open/floor/wood, +/obj/machinery/newscaster/directional/east, +/turf/open/floor/wood/tile, /area/station/command/heads_quarters/hop) -"hIn" = ( -/obj/structure/cable, -/obj/item/stack/sticky_tape{ - pixel_x = 12; - pixel_y = 14 - }, -/obj/structure/sign/poster/contraband/fake_bombable/directional/south, -/obj/effect/decal/cleanable/crayon{ - icon_state = "!"; - pixel_x = 2; - pixel_y = 29 - }, -/obj/effect/decal/cleanable/crayon{ - icon_state = "!"; - pixel_x = -5; - pixel_y = 27 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "hIt" = ( /obj/machinery/door/airlock/grunge, /obj/effect/mapping_helpers/airlock/access/any/command/general, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "hIA" = ( /turf/closed/wall, /area/station/cargo/miningoffice) @@ -27065,7 +28301,7 @@ /obj/machinery/airalarm/directional/east, /obj/machinery/camera/autoname/directional/east, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "hIQ" = ( /obj/effect/turf_decal/siding/red{ dir = 4 @@ -27079,27 +28315,49 @@ /turf/open/floor/wood, /area/station/security/courtroom) "hIS" = ( -/obj/effect/turf_decal/trimline/brown/filled/line, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron, -/area/station/cargo/storage) -"hIZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/secure_closet/freezer/kitchen/maintenance, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) +/obj/structure/disposalpipe/segment{ + dir = 8 + }, +/turf/closed/wall, +/area/station/cargo/sorting) "hJa" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood, /area/station/command/heads_quarters/hos) +"hJc" = ( +/obj/structure/cable, +/obj/effect/spawner/random/trash/grille_or_waste, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "hJm" = ( /obj/machinery/suit_storage_unit/standard_unit, /obj/structure/extinguisher_cabinet/directional/south, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/siding/dark, +/obj/effect/turf_decal/box, +/turf/open/floor/iron/dark/small, +/area/station/command/eva) +"hJp" = ( +/obj/structure/lattice/catwalk, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/item/paper_bin{ + pixel_x = -3; + pixel_y = 7 + }, +/obj/item/pen, +/obj/item/folder/yellow{ + pixel_x = 2; + pixel_y = -12 + }, +/obj/structure/table, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) +"hJx" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/turf/open/floor/plating, +/area/station/hallway/primary/fore) "hJz" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -27111,11 +28369,13 @@ /turf/open/floor/iron/kitchen, /area/station/hallway/secondary/service) "hJA" = ( -/obj/effect/turf_decal/plaque{ - icon_state = "L8" +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/obj/machinery/holopad, +/turf/open/floor/iron/edge{ + dir = 1 }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "hJB" = ( /obj/structure/lattice/catwalk, @@ -27129,12 +28389,6 @@ /obj/structure/window/reinforced/plasma/spawner/directional/south, /turf/open/space/basic, /area/space/nearstation) -"hJL" = ( -/obj/structure/mirror/directional/north, -/obj/structure/sink/directional/south, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/freezer, -/area/station/commons/dorms) "hJS" = ( /obj/structure/cable, /obj/effect/turf_decal/stripes/line, @@ -27161,10 +28415,13 @@ }, /turf/open/floor/iron/dark, /area/station/security/brig) -"hKh" = ( -/obj/effect/spawner/structure/window, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"hKe" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 4 + }, +/obj/machinery/airalarm/directional/east, +/turf/open/floor/iron/dark, +/area/station/engineering/storage) "hKm" = ( /obj/machinery/light/small/directional/north, /obj/effect/landmark/firealarm_sanity, @@ -27176,20 +28433,62 @@ }, /turf/open/floor/iron/dark, /area/station/engineering/engine_smes) +"hKr" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/random/directional/north, +/turf/open/floor/iron, +/area/station/maintenance/starboard/fore) +"hKs" = ( +/obj/effect/landmark/start/station_engineer, +/obj/structure/chair/office{ + dir = 1 + }, +/turf/open/floor/iron/large, +/area/station/engineering/lobby) +"hKt" = ( +/obj/machinery/requests_console/directional/west{ + department = "Security"; + name = "Security Requests Console" + }, +/obj/structure/table, +/obj/effect/mapping_helpers/requests_console/assistance, +/obj/effect/mapping_helpers/requests_console/supplies, +/obj/effect/turf_decal/trimline/red/filled/line{ + dir = 10 + }, +/obj/structure/reagent_dispensers/wall/peppertank/directional/south, +/obj/item/wrench, +/obj/item/radio/off{ + pixel_x = -5; + pixel_y = 2 + }, +/obj/item/screwdriver{ + pixel_y = 2 + }, +/turf/open/floor/iron/dark, +/area/station/security/checkpoint/engineering) "hKw" = ( +/obj/structure/rack, +/obj/effect/spawner/random/maintenance, /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/station/maintenance/starboard/central) "hKy" = ( -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 4 +/obj/structure/table/wood, +/obj/item/paper_bin{ + pixel_x = -5; + pixel_y = 4 }, -/obj/structure/closet/emcloset, -/obj/effect/turf_decal/trimline/green/filled/mid_joiner{ - dir = 4 +/obj/item/stamp/head/hop{ + pixel_x = 8; + pixel_y = 4 }, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) +/obj/item/stamp/denied{ + pixel_y = 11 + }, +/obj/structure/cable, +/turf/open/floor/wood/tile, +/area/station/command/heads_quarters/hop) "hKE" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 8 @@ -27206,48 +28505,38 @@ /obj/machinery/suit_storage_unit/security, /turf/open/floor/iron/dark/smooth_large, /area/station/security/eva) -"hKS" = ( -/obj/structure/window/reinforced/plasma/spawner/directional/east, -/obj/structure/table/reinforced, -/obj/item/stock_parts/power_store/cell/high{ - charge = 100; - maxcharge = 15000 - }, -/obj/item/pipe_dispenser{ - pixel_y = 8 - }, -/obj/item/clothing/glasses/meson/engine{ - pixel_y = 4 - }, -/obj/machinery/cell_charger, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "hLd" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/closed/wall/r_wall, /area/station/security/prison) -"hLp" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ - dir = 8 - }, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) -"hLu" = ( -/obj/effect/turf_decal/siding{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/white/line{ - dir = 1 +"hLe" = ( +/obj/item/bikehorn/rubberducky, +/obj/machinery/duct, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet/restrooms) +"hLi" = ( +/obj/structure/girder, +/obj/structure/grille, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"hLl" = ( +/obj/structure/table, +/obj/item/clothing/gloves/color/orange, +/obj/item/storage/box/mousetraps{ + pixel_x = 3; + pixel_y = 3 }, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/iron, +/area/station/maintenance/starboard) +"hLr" = ( +/obj/structure/rack, +/obj/effect/decal/cleanable/dirt, +/obj/item/pai_card, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "hLC" = ( -/obj/machinery/computer/prisoner/management, /obj/item/radio/intercom/directional/north, /turf/open/floor/wood, /area/station/command/heads_quarters/hos) @@ -27305,12 +28594,20 @@ }, /turf/open/floor/engine/hull, /area/space/nearstation) -"hMc" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/sign/clock/directional/east, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +"hLW" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/decal/cleanable/dirt, +/obj/structure/table/wood, +/obj/item/folder/yellow{ + pixel_x = 3; + pixel_y = 6 + }, +/obj/item/stack/package_wrap{ + pixel_x = 4; + pixel_y = 2 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "hMd" = ( /obj/effect/turf_decal/trimline/blue/filled/line, /obj/structure/cable, @@ -27328,6 +28625,18 @@ /obj/structure/cable, /turf/open/floor/grass, /area/station/hallway/secondary/entry) +"hMp" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 1 + }, +/obj/machinery/meter, +/turf/closed/wall/r_wall, +/area/station/engineering/atmos) +"hMq" = ( +/obj/structure/lattice, +/obj/structure/sign/warning/directional/south, +/turf/open/space/openspace, +/area/space/nearstation) "hMs" = ( /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, @@ -27336,16 +28645,17 @@ /obj/machinery/portable_atmospherics/canister/plasma, /turf/open/floor/engine/plasma, /area/station/engineering/atmos/upper) -"hMv" = ( -/obj/effect/turf_decal/stripes/box, -/obj/structure/ladder, -/turf/open/floor/iron/smooth, -/area/station/engineering/main) "hMw" = ( /obj/effect/turf_decal/trimline/dark/arrow_cw, /obj/effect/turf_decal/trimline/dark/arrow_cw, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) +"hMz" = ( +/obj/structure/railing/corner{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "hMC" = ( /turf/open/floor/iron, /area/station/science/robotics) @@ -27374,40 +28684,34 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron/textured_large, /area/station/security/prison/rec) -"hMF" = ( -/obj/machinery/button/door/incinerator_vent_atmos_aux{ - pixel_y = 24 - }, -/obj/machinery/button/door/incinerator_vent_atmos_main{ - pixel_y = 40 - }, -/obj/machinery/button/ignition/incinerator/atmos{ - pixel_y = 9 - }, -/obj/machinery/atmospherics/pipe/smart/simple/dark/visible{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/station/maintenance/disposal/incinerator) -"hMI" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/door/airlock/maintenance, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +"hMJ" = ( /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) +"hML" = ( +/obj/machinery/conveyor{ + dir = 8; + id = "cargounload" + }, +/obj/structure/closet/crate, +/obj/effect/spawner/random/maintenance, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 }, +/obj/structure/plasticflaps, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"hMU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ +/area/station/cargo/storage) +"hMS" = ( +/obj/effect/spawner/random/techstorage/rnd_secure_all, +/obj/machinery/status_display/ai/directional/south, +/obj/machinery/light/small/directional/south, +/obj/structure/rack, +/obj/effect/turf_decal/tile/red/half/contrasted{ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) +/area/station/engineering/storage/tech) "hMV" = ( /obj/structure/table, /obj/item/binoculars{ @@ -27427,12 +28731,21 @@ /turf/open/floor/glass, /area/station/security/brig) "hNa" = ( -/obj/structure/reagent_dispensers/watertank, +/obj/machinery/light/directional/north, +/obj/structure/table, +/obj/item/reagent_containers/cup/bucket{ + pixel_x = -7; + pixel_y = 12 + }, +/obj/item/rag{ + pixel_x = 2; + pixel_y = 5 + }, +/obj/structure/window/reinforced/spawner/directional/east, /obj/effect/turf_decal/siding/wood{ - dir = 8 + dir = 1 }, -/obj/machinery/light/directional/north, -/turf/open/floor/wood, +/turf/open/floor/iron/dark, /area/station/command/heads_quarters/hop) "hNb" = ( /obj/item/kirbyplants/organic/plant9{ @@ -27440,26 +28753,11 @@ pixel_x = 4 }, /turf/open/floor/carpet/black, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "hNf" = ( /obj/structure/cable, /turf/open/floor/plating, /area/station/security/interrogation) -"hNj" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/turf_decal/siding/blue/corner{ - dir = 8 - }, -/obj/effect/turf_decal/tile/blue/opposingcorners{ - dir = 1 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/white, -/area/station/medical/medbay/central) "hNs" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -27477,25 +28775,6 @@ /obj/structure/stairs/west, /turf/open/floor/plating, /area/station/security/courtroom) -"hNJ" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - dir = 4; - initialize_directions = 8 - }, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) -"hNV" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "N2O to Port" - }, -/obj/effect/turf_decal/tile/red/opposingcorners, -/obj/effect/turf_decal/tile/neutral/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) "hNW" = ( /obj/effect/spawner/structure/window, /obj/effect/turf_decal/stripes/line{ @@ -27511,8 +28790,19 @@ dir = 1 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/corner{ + dir = 1 + }, +/obj/structure/cable, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "hOe" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -27525,19 +28815,30 @@ }, /turf/open/floor/engine/hull/air, /area/station/maintenance/port/aft) +"hOo" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/cable, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "hOw" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 10 +/obj/effect/turf_decal/trimline/brown/filled/line, +/obj/machinery/camera/directional/south, +/obj/machinery/computer/security/mining{ + dir = 4 }, -/obj/structure/closet/emcloset, /turf/open/floor/iron, /area/station/cargo/miningoffice) "hOC" = ( -/obj/effect/turf_decal/siding/red{ - dir = 6 +/obj/structure/railing{ + dir = 4 }, -/obj/structure/window/reinforced/spawner/directional/south, -/turf/open/floor/iron/dark, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/turf/open/floor/wood/large, /area/station/hallway/primary/central) "hOG" = ( /obj/structure/disposalpipe/segment{ @@ -27545,6 +28846,16 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/aft) +"hOJ" = ( +/obj/structure/cable, +/obj/effect/landmark/start/assistant, +/obj/structure/disposalpipe/junction/flip{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark/arrow_ccw, +/obj/effect/turf_decal/trimline/dark/arrow_ccw, +/turf/open/floor/iron, +/area/station/hallway/secondary/exit/departure_lounge) "hOO" = ( /obj/structure/table/wood, /turf/open/floor/glass/reinforced, @@ -27557,7 +28868,14 @@ dir = 8 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"hOV" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/spawner/random/structure/steam_vent, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "hPa" = ( /obj/structure/railing{ dir = 1 @@ -27572,36 +28890,42 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) -"hPD" = ( -/obj/effect/spawner/random/techstorage/service_all, -/obj/structure/rack, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 +"hPj" = ( +/obj/structure/window/reinforced/plasma/spawner/directional/east, +/obj/item/storage/box/lights/mixed{ + pixel_x = 8; + pixel_y = 8 }, -/obj/machinery/camera/autoname/directional/south, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) -"hPH" = ( -/obj/machinery/door/airlock/external{ - name = "Welcome." +/obj/item/electronics/airlock, +/obj/item/electronics/airlock{ + pixel_x = -6; + pixel_y = -4 }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ - cycle_id = "space-outpost" +/obj/item/stock_parts/power_store/cell/emproof{ + pixel_x = -4; + pixel_y = 6 }, -/obj/effect/mapping_helpers/airlock/unres, -/obj/effect/mapping_helpers/airlock/access/all/engineering/external, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"hPL" = ( -/obj/machinery/door/airlock{ - id_tag = "Cabin5"; - name = "Cabin 3" +/obj/item/stock_parts/power_store/cell/emproof{ + pixel_x = -4; + pixel_y = 6 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/station/commons/dorms) +/obj/item/stock_parts/power_store/cell/emproof{ + pixel_x = -4; + pixel_y = 6 + }, +/obj/structure/table/reinforced, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) +"hPq" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "hPP" = ( /obj/structure/stairs/north, /obj/structure/railing{ @@ -27609,6 +28933,14 @@ }, /turf/open/floor/iron/stairs/left, /area/station/engineering/lobby) +"hPQ" = ( +/obj/structure/lattice/catwalk, +/obj/item/kirbyplants/random, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) +"hPR" = ( +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "hPU" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -27626,6 +28958,10 @@ /obj/effect/landmark/event_spawn, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) +"hPW" = ( +/obj/machinery/light/floor, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "hPY" = ( /obj/effect/turf_decal/trimline/dark/arrow_cw{ dir = 10 @@ -27652,6 +28988,19 @@ /obj/machinery/light/directional/south, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"hQh" = ( +/obj/machinery/door/airlock/engineering/glass{ + name = "Primary Tool Storage" + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/door/firedoor, +/turf/open/floor/iron, +/area/station/commons/storage/primary) "hQk" = ( /obj/item/reagent_containers/cup/soup_pot{ pixel_x = 6; @@ -27679,29 +29028,17 @@ }, /turf/open/floor/wood, /area/station/service/chapel) -"hQQ" = ( -/obj/structure/broken_flooring/singular/directional/east, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/catwalk_floor, -/area/station/maintenance/starboard/fore) "hQU" = ( -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 - }, /obj/structure/extinguisher_cabinet/directional/west, -/turf/open/floor/iron/dark, +/obj/structure/table/wood, +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/obj/item/pen{ + pixel_x = 8 + }, +/turf/open/floor/wood/large, /area/station/hallway/primary/central) -"hQV" = ( -/obj/effect/turf_decal/siding/brown/corner, -/obj/structure/railing/corner, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron, -/area/station/commons/dorms) -"hQZ" = ( -/obj/effect/turf_decal/stripes/line, -/obj/machinery/light/small/directional/east, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "hRd" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/preopen{ @@ -27755,9 +29092,6 @@ /obj/effect/mapping_helpers/airlock/access/all/security/armory, /turf/open/floor/plating, /area/station/security/execution/education) -"hRD" = ( -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/aft) "hRH" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -27781,6 +29115,11 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood, /area/station/security/courtroom) +"hRV" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "hRW" = ( /obj/structure/reagent_dispensers/watertank, /turf/open/floor/plating, @@ -27819,6 +29158,17 @@ /obj/machinery/vending/games, /turf/open/floor/wood, /area/station/service/library) +"hSe" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) +"hSg" = ( +/obj/machinery/atmospherics/pipe/smart/manifold/pink/visible, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "hSh" = ( /obj/item/radio/intercom/directional/west, /obj/effect/turf_decal/trimline/red/filled/line{ @@ -27832,20 +29182,21 @@ "hSk" = ( /turf/closed/wall, /area/station/security/checkpoint/medical) +"hSq" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper/corner{ + dir = 4 + }, +/obj/structure/fluff/paper/stack, +/turf/open/floor/plating, +/area/station/maintenance/aft) "hSu" = ( /obj/structure/disposalpipe/segment{ dir = 4 }, /turf/open/floor/iron/textured_large, /area/station/medical/abandoned) -"hSv" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "hSy" = ( /obj/structure/table, /obj/item/clothing/glasses/welding{ @@ -27869,6 +29220,10 @@ /obj/effect/spawner/random/engineering/tracking_beacon, /turf/open/floor/wood, /area/station/commons/storage/tools) +"hSJ" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/engineering/transit_tube) "hSW" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -27878,11 +29233,6 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/science/ordnance) -"hTc" = ( -/obj/structure/cable, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron, -/area/station/commons/storage/primary) "hTr" = ( /obj/effect/spawner/structure/window, /obj/machinery/door/poddoor/shutters/preopen{ @@ -27897,10 +29247,6 @@ /obj/structure/cable, /turf/open/floor/engine, /area/station/engineering/atmos/hfr_room) -"hTt" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "hTy" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -27949,7 +29295,24 @@ "hTN" = ( /obj/structure/cable/layer3, /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) +"hUb" = ( +/obj/machinery/power/apc/auto_name/directional/east, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"hUg" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/turf/open/floor/plating, +/area/station/engineering/lobby) +"hUh" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/table, +/obj/item/flashlight/lamp, +/obj/structure/light_construct/directional/east, +/turf/open/floor/iron, +/area/station/maintenance/starboard/central) "hUs" = ( /obj/machinery/light/directional/south, /turf/open/floor/iron/dark, @@ -27961,46 +29324,15 @@ /obj/effect/spawner/random/structure/closet_empty/crate, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"hUM" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 9 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"hUU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) -"hUV" = ( -/obj/machinery/atmospherics/components/binary/pump/off/general/visible{ - dir = 1; - name = "Unfiltered" - }, -/obj/effect/turf_decal/trimline/yellow/filled/line, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) -"hVc" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/item/radio/intercom/directional/north, -/obj/effect/mapping_helpers/burnt_floor, +"hUP" = ( +/obj/structure/sign/warning/vacuum/external/directional/south, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"hVd" = ( +/obj/machinery/light/small/directional/west, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) -"hVi" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) -"hVk" = ( -/obj/structure/railing/corner, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) +/area/station/commons/dorms) "hVr" = ( /obj/structure/sign/warning/cold_temp/directional/west{ desc = "A sign that notes the room within is the Cold Room. Not that it's actually cold."; @@ -28023,17 +29355,33 @@ /obj/machinery/firealarm/directional/west, /turf/open/floor/iron/grimy, /area/station/security/interrogation) +"hVx" = ( +/obj/structure/cable, +/obj/machinery/camera/autoname/directional/south{ + c_tag = "Medbay - Upper Chief Medical Office South"; + network = list("ss13","medbay") + }, +/obj/structure/closet/secure_closet/medical3, +/obj/effect/turf_decal/bot_white{ + color = "#52B4E9" + }, +/obj/machinery/airalarm/directional/south, +/turf/open/floor/iron/dark/textured_large, +/area/station/medical/storage) "hVz" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, /turf/open/floor/iron/dark/textured, /area/station/science/xenobiology) -"hVH" = ( -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 4 +"hVC" = ( +/obj/effect/turf_decal/stripes/red/line{ + dir = 6 }, -/obj/machinery/light/directional/north, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) +/obj/machinery/status_display/evac/directional/north, +/obj/effect/turf_decal/siding/red{ + dir = 9 + }, +/turf/open/floor/iron/textured_corner, +/area/station/command/gateway) "hWb" = ( /obj/structure/chair{ dir = 1; @@ -28051,10 +29399,17 @@ /obj/structure/railing, /turf/open/floor/grass, /area/station/science/zoo) -"hWw" = ( -/obj/effect/spawner/structure/window, -/turf/open/floor/wood, -/area/station/security/courtroom) +"hWt" = ( +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/obj/effect/turf_decal/tile/blue/opposingcorners{ + dir = 1 + }, +/obj/effect/turf_decal/siding/blue, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/white, +/area/station/medical/medbay/central) "hWA" = ( /obj/effect/turf_decal/trimline/dark_blue/warning{ dir = 1 @@ -28069,7 +29424,38 @@ /turf/open/floor/iron/white/smooth_corner{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) +"hWF" = ( +/obj/structure/lattice/catwalk, +/obj/item/clothing/under/costume/seifuku{ + pixel_y = -1 + }, +/obj/structure/table, +/obj/structure/sign/poster/official/pda_ad/directional/south, +/turf/open/openspace, +/area/station/maintenance/department/crew_quarters/dorms) +"hWJ" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/mapping_helpers/broken_floor, +/turf/open/floor/plating, +/area/station/maintenance/aft) +"hWN" = ( +/obj/structure/cable, +/obj/effect/landmark/start/hangover, +/obj/structure/sign/nanotrasen{ + pixel_y = 32; + dir = 1 + }, +/obj/effect/turf_decal/stripes/white/corner{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "hWU" = ( /obj/effect/decal/cleanable/glitter{ color = "ff8080" @@ -28083,11 +29469,9 @@ /area/station/maintenance/starboard/aft) "hXc" = ( /obj/effect/turf_decal/plaque{ - icon_state = "L3" - }, -/obj/effect/turf_decal/siding/green{ - dir = 1 + icon_state = "L4" }, +/obj/effect/turf_decal/siding/white, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "hXe" = ( @@ -28103,21 +29487,33 @@ }, /turf/open/floor/engine, /area/station/science/auxlab/firing_range) +"hXi" = ( +/obj/effect/turf_decal/trimline/brown, +/obj/machinery/atmospherics/components/binary/pump/off/general/visible{ + dir = 4; + name = "Atmos to Engine" + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "hXm" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/tile/red/opposingcorners{ +/obj/effect/landmark/start/shaft_miner, +/obj/effect/turf_decal/trimline/brown/filled/line{ dir = 1 }, -/obj/effect/landmark/start/depsec/supply, -/turf/open/floor/iron/dark, -/area/station/security/checkpoint/supply) +/obj/structure/sign/poster/random/directional/north, +/turf/open/floor/iron, +/area/station/cargo/miningoffice) +"hXp" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/landmark/generic_maintenance_landmark, +/obj/effect/landmark/blobstart, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/fore) "hXr" = ( -/obj/effect/turf_decal/trimline/brown/filled/line, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 6 +/obj/machinery/firealarm/directional/south, +/obj/machinery/conveyor{ + dir = 8; + id = "mining" }, /turf/open/floor/iron/textured, /area/station/cargo/storage) @@ -28135,22 +29531,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/ai) -"hXA" = ( -/obj/machinery/light/directional/west, -/obj/structure/table, -/obj/item/paper_bin{ - pixel_x = -1; - pixel_y = 5 - }, -/obj/item/pen{ - pixel_y = 5 - }, -/obj/effect/turf_decal/trimline/red/filled/line{ - dir = 9 - }, -/turf/open/floor/iron/dark, -/area/station/security/checkpoint/engineering) +/area/station/ai/satellite/chamber) "hXD" = ( /obj/effect/turf_decal/siding/blue{ dir = 1 @@ -28160,11 +29541,6 @@ }, /turf/open/floor/iron/white/smooth_half, /area/station/hallway/secondary/entry) -"hXE" = ( -/obj/structure/window/reinforced/tinted/spawner/directional/south, -/obj/structure/window/reinforced/tinted/spawner/directional/east, -/turf/open/floor/iron/freezer, -/area/station/commons/dorms) "hXT" = ( /obj/effect/turf_decal/trimline/blue/filled/line, /obj/effect/turf_decal/trimline/blue/filled/mid_joiner, @@ -28173,58 +29549,56 @@ }, /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) -"hYa" = ( +"hXV" = ( /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron/dark/smooth_large, -/area/station/engineering/main) +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"hXW" = ( +/obj/structure/table/reinforced, +/obj/item/wirecutters, +/obj/item/screwdriver, +/obj/item/stack/cable_coil, +/obj/item/crowbar, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "hYc" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/structure/cable, /turf/open/floor/carpet, /area/station/service/abandoned_gambling_den) +"hYd" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 4 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/wood/large, +/area/station/medical/psychology) "hYf" = ( /obj/structure/disposalpipe/segment{ dir = 4 }, /turf/open/floor/iron/dark, /area/station/security/brig) -"hYg" = ( -/obj/structure/disposalpipe/segment{ - dir = 2 - }, -/obj/structure/cable, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) -"hYj" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 6 - }, -/obj/machinery/light/directional/south, -/turf/open/floor/iron/dark, -/area/station/engineering/storage) +"hYl" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/gravity_generator) "hYo" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ +/obj/effect/turf_decal/bot_white, +/obj/effect/spawner/random/structure/crate, +/obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/command/heads_quarters/qm) -"hYu" = ( -/obj/machinery/door/airlock/atmos/glass{ - name = "Atmospherics" - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, -/obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) +/obj/effect/spawner/random/maintenance, +/turf/open/floor/iron/dark/textured_large, +/area/station/cargo/storage) "hYx" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -28234,7 +29608,12 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) +"hYE" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/bookcase/random/religion, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "hYF" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -28251,7 +29630,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "hYK" = ( /obj/effect/turf_decal/tile/neutral/opposingcorners{ dir = 1 @@ -28263,19 +29642,10 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark/smooth_large, /area/station/science/lab) -"hYT" = ( -/obj/effect/turf_decal/tile/blue/opposingcorners{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron/white, -/area/station/medical/office) -"hYV" = ( -/obj/effect/spawner/structure/window/reinforced/plasma, -/turf/open/floor/engine/hull/air, -/area/station/engineering/break_room) +"hYW" = ( +/obj/structure/cable/multilayer/multiz, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "hZa" = ( /obj/effect/landmark/carpspawn, /turf/open/floor/engine/hull, @@ -28293,15 +29663,10 @@ }, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"hZi" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) "hZq" = ( /obj/machinery/airalarm/directional/east, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "hZx" = ( /obj/structure/table, /obj/effect/decal/cleanable/dirt, @@ -28331,7 +29696,9 @@ /obj/effect/turf_decal/trimline/red/filled/mid_joiner{ dir = 1 }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 1 + }, /area/station/hallway/primary/central) "hZE" = ( /obj/effect/decal/cleanable/dirt, @@ -28347,6 +29714,9 @@ }, /obj/effect/mapping_helpers/airlock/access/all/command/hop, /obj/machinery/door/firedoor, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/command/heads_quarters/hop) "hZZ" = ( @@ -28356,15 +29726,23 @@ /obj/effect/decal/cleanable/blood/gibs/old, /turf/open/floor/plating, /area/station/maintenance/port) -"iak" = ( -/obj/structure/railing{ - dir = 1 +"iah" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/mail_sorting/engineering/ce_office, +/obj/structure/disposalpipe/sorting/mail{ + dir = 8 }, -/obj/structure/disposalpipe/segment{ - dir = 4 +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 5 }, -/turf/open/openspace, -/area/station/engineering/lobby) +/turf/open/floor/iron, +/area/station/hallway/primary/starboard) +"iai" = ( +/obj/effect/decal/cleanable/blood/old, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "iar" = ( /obj/effect/turf_decal/trimline/blue/filled/line, /obj/effect/turf_decal/trimline/blue/filled/mid_joiner, @@ -28372,25 +29750,16 @@ /obj/machinery/chem_dispenser, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) +"iaC" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "iaF" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/entertainment/arcade, /turf/open/floor/iron/checker, /area/station/maintenance/hallway/abandoned_recreation) -"iaG" = ( -/obj/effect/landmark/event_spawn, -/turf/open/openspace, -/area/station/command/gateway) -"iaR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) "iaY" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -28412,25 +29781,9 @@ /turf/open/floor/iron, /area/station/science/research) "ibo" = ( -/obj/effect/turf_decal/plaque{ - icon_state = "L14" - }, -/obj/effect/turf_decal/siding/white/corner, -/turf/open/floor/iron/dark/smooth_large, -/area/station/hallway/primary/central) -"ibq" = ( -/obj/effect/turf_decal/bot, -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - dir = 4; - initialize_directions = 4 - }, -/obj/machinery/camera/autoname/directional/west, -/turf/open/floor/iron/smooth, -/area/station/engineering/hallway) -"ibr" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +/obj/machinery/camera/autoname/directional/south, +/turf/open/floor/glass/reinforced, +/area/station/command/bridge) "ibs" = ( /obj/structure/chair{ dir = 8 @@ -28440,19 +29793,6 @@ dir = 4 }, /area/station/service/chapel) -"ibt" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/chair{ - dir = 1; - pixel_y = -2 - }, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) -"ibw" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/firealarm/directional/south, -/turf/open/floor/carpet/black, -/area/station/service/library/private) "iby" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -28478,6 +29818,26 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"ibC" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5{ + dir = 4 + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) +"ibE" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/table/wood, +/obj/item/paper/crumpled{ + pixel_x = 2; + pixel_y = 7 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "ibF" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -28487,7 +29847,7 @@ /area/station/service/cafeteria) "ibI" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ibJ" = ( /obj/machinery/light/directional/north, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -28516,41 +29876,28 @@ /obj/structure/chair/comfy/brown{ dir = 8 }, -/turf/open/floor/carpet, -/area/station/command/heads_quarters/captain/private) -"ibY" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) -"ich" = ( -/obj/machinery/airalarm/directional/east, -/obj/effect/mapping_helpers/airalarm/engine_access, -/obj/effect/mapping_helpers/airalarm/link{ - chamber_id = "engine" +/obj/effect/turf_decal/siding/wood{ + dir = 8 }, -/obj/effect/mapping_helpers/airalarm/tlv_no_checks, -/obj/effect/turf_decal/stripes/line{ +/turf/open/floor/carpet/royalblue, +/area/station/command/heads_quarters/captain/private) +"ibZ" = ( +/obj/machinery/door/firedoor/heavy, +/obj/effect/turf_decal/trimline/dark_red/filled/warning{ dir = 4 }, -/obj/structure/cable/layer1, -/turf/open/floor/engine, -/area/station/engineering/supermatter) -"icj" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/decal/cleanable/blood/old, -/obj/structure/sign/poster/contraband/rebels_unite/directional/west, -/obj/item/ammo_casing/spent{ - pixel_x = 8; - pixel_y = 6 +/obj/effect/turf_decal/trimline/dark_red/filled/warning{ + dir = 8 }, -/obj/item/ammo_casing/spent{ - pixel_x = -11; - pixel_y = -5 +/turf/open/floor/iron/dark/textured_half{ + dir = 1 }, -/obj/structure/disposalpipe/segment, +/area/station/cargo/storage) +"icg" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/area/station/maintenance/starboard/upper) "icw" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 @@ -28606,6 +29953,17 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"idf" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/item/storage/box/lights/mixed{ + pixel_y = 8 + }, +/obj/item/storage/toolbox/emergency, +/obj/structure/table/reinforced, +/obj/structure/cable, +/obj/machinery/power/apc/auto_name/directional/east, +/turf/open/floor/plating, +/area/station/maintenance/aft) "idj" = ( /obj/effect/turf_decal/siding/purple{ dir = 4 @@ -28618,20 +29976,11 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/science/lab) -"idm" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) "idq" = ( /turf/open/floor/iron/stairs/medium{ dir = 8 }, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "idI" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 1 @@ -28643,29 +29992,17 @@ /turf/closed/wall/r_wall, /area/station/engineering/storage/tech) "idO" = ( -/obj/effect/turf_decal/siding/white{ - dir = 6 +/turf/open/floor/iron/edge{ + dir = 1 }, -/turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) -"idQ" = ( -/obj/structure/table/wood, -/obj/item/book/bible, -/turf/open/floor/carpet, -/area/station/maintenance/starboard/lesser) -"iea" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 +"idV" = ( +/obj/structure/disposalpipe/segment{ + dir = 10 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark/textured_large, -/area/station/medical/virology) -"iee" = ( -/obj/structure/table/reinforced, -/obj/item/radio/headset, -/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, /turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/area/station/maintenance/starboard) "iei" = ( /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -28674,38 +30011,13 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"iem" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/mecha_wreckage/ripley, -/turf/open/floor/iron/dark, -/area/station/commons/dorms) -"ien" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment, -/obj/structure/cable, -/turf/open/floor/catwalk_floor, -/area/station/engineering/main) -"iep" = ( -/obj/structure/table, -/obj/item/geiger_counter{ - pixel_x = 7; - pixel_y = 3 - }, -/obj/item/screwdriver{ - pixel_y = 10 - }, -/obj/effect/turf_decal/trimline/red/filled/line{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/security/checkpoint/engineering) "iev" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/trimline/dark/arrow_cw{ + dir = 8 + }, /turf/open/floor/iron, /area/station/hallway/primary/aft) "ieD" = ( @@ -28717,45 +30029,31 @@ dir = 4 }, /area/station/medical/abandoned) +"ifk" = ( +/obj/structure/chair/office/light, +/obj/structure/cable, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/yellow/filled/warning, +/turf/open/floor/iron, +/area/station/engineering/gravity_generator) "ifn" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/reagent_dispensers/fueltank, /obj/effect/decal/cleanable/cobweb, /obj/machinery/light/small/dim/directional/north, +/obj/effect/turf_decal/bot, /turf/open/floor/iron/dark/textured, /area/station/cargo/warehouse) -"ifs" = ( -/obj/machinery/door/airlock/hatch{ - name = "MiniSat Access" - }, -/obj/effect/mapping_helpers/airlock/access/any/engineering/tcoms, -/obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/access/any/command/minisat, -/obj/effect/mapping_helpers/airlock/access/any/command/general, -/obj/effect/mapping_helpers/airlock/access/any/command/general, -/obj/effect/landmark/navigate_destination/minisat_access_ai, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/door/poddoor/preopen{ - id = "transitlockdown" - }, -/turf/open/floor/iron/dark, -/area/station/engineering/transit_tube) -"ifA" = ( -/obj/effect/spawner/random/trash/moisture_trap, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "ifC" = ( /obj/structure/sign/poster/contraband/blood_geometer, /turf/closed/wall, /area/station/maintenance/port) -"ifF" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/machinery/plumbing/input, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) +"ifU" = ( +/obj/machinery/camera/autoname/directional/north, +/turf/open/openspace, +/area/station/commons/dorms) "ifV" = ( /obj/effect/turf_decal/siding/purple{ dir = 1 @@ -28795,19 +30093,6 @@ }, /turf/open/floor/iron/dark, /area/station/service/chapel) -"igm" = ( -/obj/structure/closet/crate, -/obj/item/stack/sheet/glass{ - amount = 12 - }, -/obj/item/stack/cable_coil{ - pixel_x = -1; - pixel_y = -3 - }, -/obj/item/extinguisher/mini, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "igo" = ( /obj/effect/turf_decal/siding/wideplating_new{ dir = 9 @@ -28833,18 +30118,27 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/cargo/storage) -"igK" = ( -/obj/structure/cable, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +"igR" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/machinery/plumbing/input, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) "ihd" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/sink/directional/east, /turf/open/floor/plating, /area/station/maintenance/hallway/abandoned_recreation) +"ihj" = ( +/obj/effect/turf_decal/tile/neutral/half{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "ihl" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 1 @@ -28856,6 +30150,18 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron/dark/textured_large, /area/station/medical/virology) +"ihn" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Storage Room" + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/port) "ihv" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/siding/wood{ @@ -28863,19 +30169,10 @@ }, /turf/open/floor/wood, /area/station/service/abandoned_gambling_den) -"ihE" = ( -/obj/structure/table/wood, -/obj/item/clothing/under/misc/burial, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) -"ihF" = ( -/obj/structure/window/reinforced/tinted/spawner/directional/south, -/obj/structure/window/reinforced/tinted/spawner/directional/east, -/obj/structure/table, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/commons/dorms) +"ihJ" = ( +/obj/structure/closet/crate/coffin, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "ihP" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -28938,8 +30235,16 @@ /turf/open/floor/wood/large, /area/station/service/theater_dressing) "iis" = ( -/turf/closed/wall, -/area/station/command/heads_quarters/captain/private) +/obj/structure/window/reinforced/spawner/directional/south, +/obj/machinery/conveyor{ + dir = 8; + id = "HoPsToy" + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/command/heads_quarters/hop) "iiF" = ( /obj/structure/railing/corner{ dir = 4 @@ -28950,17 +30255,25 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"iiS" = ( -/obj/item/trash/can{ - pixel_x = -8 +"iiN" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/white, +/area/station/maintenance/starboard) +"iiO" = ( +/obj/effect/turf_decal/arrows{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/red/line{ + dir = 8 }, /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/light/directional/south, -/obj/effect/turf_decal/trimline/yellow/filled/line, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/fore) +/obj/effect/turf_decal/siding/red{ + dir = 8 + }, +/turf/open/floor/iron/textured_edge{ + dir = 8 + }, +/area/station/command/gateway) "iiV" = ( /obj/structure/table/wood/poker, /obj/effect/spawner/random/entertainment/cigarette_pack, @@ -28990,13 +30303,24 @@ }, /turf/open/floor/plating, /area/station/maintenance/hallway/abandoned_recreation) -"ijs" = ( -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) "iju" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/station/security/checkpoint/supply) +/obj/machinery/conveyor_switch/oneway{ + id = "cargounload"; + name = "Unloading Conveyor"; + pixel_x = 5; + pixel_y = -10 + }, +/obj/effect/turf_decal/trimline/brown/filled/line, +/turf/open/floor/iron, +/area/station/cargo/storage) +"ijv" = ( +/obj/effect/turf_decal/trimline/purple/filled/line{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/upper) "ijB" = ( /obj/machinery/light/directional/east, /obj/structure/railing/corner/end{ @@ -29004,18 +30328,30 @@ }, /turf/open/floor/wood, /area/station/command/corporate_showroom) -"ijE" = ( -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/fore) "ijF" = ( -/obj/effect/turf_decal/trimline/brown/filled/line, -/obj/machinery/airalarm/directional/south, -/obj/machinery/light/small/directional/south, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/command/heads_quarters/qm) +/obj/effect/spawner/random/structure/crate, +/obj/effect/turf_decal/bot_white, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/iron/dark/textured_large, +/area/station/cargo/storage) +"ijJ" = ( +/obj/effect/turf_decal/tile/purple/half{ + dir = 1 + }, +/obj/structure/railing/corner{ + dir = 4 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/white/textured_half, +/area/station/science/robotics) +"ijL" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/spawner/random/structure/steam_vent, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/fore) "ikc" = ( /obj/structure/railing, /turf/open/openspace, @@ -29047,13 +30383,6 @@ /obj/effect/turf_decal/siding/wood/corner, /turf/open/floor/wood/large, /area/station/service/library) -"ikK" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/spawner/random/engineering/atmospherics_portable, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "ikL" = ( /obj/structure/disposalpipe/trunk{ dir = 2 @@ -29068,13 +30397,10 @@ /obj/effect/turf_decal/siding/wood/corner, /turf/open/floor/wood/large, /area/station/hallway/primary/central) -"ikZ" = ( -/turf/open/floor/eighties, -/area/station/maintenance/starboard/fore) "ilg" = ( /obj/machinery/vending/cart, /obj/item/radio/intercom/directional/east, -/turf/open/floor/wood, +/turf/open/floor/wood/tile, /area/station/command/heads_quarters/hop) "ils" = ( /obj/structure/mop_bucket, @@ -29088,25 +30414,22 @@ /obj/effect/spawner/random/maintenance/no_decals, /turf/open/floor/engine/hull, /area/space/nearstation) -"ilB" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/filingcabinet, -/obj/effect/spawner/random/bureaucracy/paper, -/turf/open/floor/iron/dark/textured_large, -/area/station/maintenance/starboard/aft) +"ily" = ( +/obj/structure/sign/poster/contraband/random/directional/west, +/obj/effect/spawner/random/structure/crate, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "ilE" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"ilP" = ( -/obj/machinery/computer/atmos_control/nitrogen_tank, -/obj/effect/turf_decal/tile/red/half{ - dir = 1 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +"ilO" = ( +/obj/structure/railing, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "ilV" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, @@ -29115,10 +30438,6 @@ }, /turf/open/floor/iron/dark, /area/station/maintenance/starboard/aft) -"imd" = ( -/obj/item/radio/intercom/directional/south, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/gravity_generator) "ime" = ( /obj/effect/turf_decal/stripes/line, /obj/structure/railing, @@ -29126,11 +30445,19 @@ /obj/structure/cable, /turf/open/floor/iron/textured_large, /area/station/security/prison) -"imo" = ( -/obj/effect/landmark/event_spawn, -/obj/machinery/light/directional/north, -/turf/open/openspace, -/area/station/service/kitchen) +"imf" = ( +/obj/structure/sign/warning/secure_area/directional/south, +/obj/structure/chair{ + dir = 4; + pixel_y = -2 + }, +/obj/item/binoculars, +/turf/open/floor/plating/airless, +/area/station/maintenance/starboard/aft) +"imi" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/engine/hull/air, +/area/station/commons/dorms) "imq" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -29154,6 +30481,21 @@ }, /turf/open/floor/plating, /area/station/maintenance/starboard/central) +"imH" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/loading_area{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/maintenance/starboard/central) +"imI" = ( +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 4 + }, +/obj/machinery/duct, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) "imJ" = ( /obj/structure/railing/corner{ dir = 4 @@ -29171,6 +30513,14 @@ }, /turf/open/floor/iron/checker, /area/station/service/bar/backroom) +"imN" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/wood/large, +/area/station/service/theater_dressing) "imQ" = ( /obj/structure/table, /obj/item/storage/medkit/toxin{ @@ -29197,28 +30547,47 @@ /obj/structure/cable, /turf/open/floor/iron/textured_large, /area/station/security/prison) +"ing" = ( +/obj/structure/window/reinforced/spawner/directional/east, +/turf/open/floor/iron/freezer, +/area/station/engineering/atmos/pumproom) "inh" = ( -/turf/open/openspace, -/area/station/command/bridge) -"inp" = ( -/obj/effect/turf_decal/tile/dark_green{ +/obj/structure/table/wood, +/obj/item/stack/package_wrap{ + pixel_x = -7; + pixel_y = 4 + }, +/obj/item/hand_labeler{ + pixel_x = 3; + pixel_y = 10 + }, +/obj/machinery/recharger, +/obj/machinery/status_display/ai/directional/south, +/turf/open/floor/wood/tile, +/area/station/command/heads_quarters/hop) +"ini" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 }, -/obj/effect/decal/cleanable/generic, /turf/open/floor/iron, -/area/station/maintenance/starboard/fore) +/area/station/commons/locker) +"inm" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 4 + }, +/obj/item/radio/intercom/directional/south, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "int" = ( /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/ladder, /turf/open/floor/plating, /area/station/solars/starboard/aft) -"inu" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/engine, -/area/station/engineering/atmos/upper) +"inv" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating/airless, +/area/station/maintenance/starboard/aft/upper) "inw" = ( /obj/structure/transit_tube/curved/flipped, /turf/open/space/openspace, @@ -29235,11 +30604,10 @@ dir = 8 }, /area/station/medical/abandoned) -"inG" = ( -/obj/structure/sign/poster/official/get_your_legs/directional/west, -/obj/machinery/light/directional/west, -/turf/open/floor/carpet/black, -/area/station/service/library/private) +"inD" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/wood, +/area/station/service/library) "inI" = ( /obj/machinery/shower/directional/west, /obj/structure/fluff/shower_drain, @@ -29251,12 +30619,32 @@ }, /area/station/engineering/main) "inK" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "cargounload" +/obj/machinery/conveyor_switch/oneway{ + id = "cargoload"; + name = "Loading Conveyor"; + pixel_x = 5; + pixel_y = -5 }, -/turf/open/floor/iron, +/obj/machinery/holopad, +/turf/open/floor/iron/dark, /area/station/cargo/storage) +"inL" = ( +/obj/effect/decal/cleanable/blood/old, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) +"inQ" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/obj/structure/table/reinforced, +/obj/item/pipe_dispenser, +/obj/item/pipe_dispenser{ + pixel_y = 8 + }, +/obj/item/pipe_dispenser, +/obj/machinery/status_display/evac/directional/south, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "inT" = ( /obj/machinery/door/airlock/command{ name = "Head of Personnel" @@ -29267,7 +30655,7 @@ /obj/effect/mapping_helpers/airlock/access/all/command/hop, /obj/structure/disposalpipe/segment, /obj/machinery/door/firedoor, -/turf/open/floor/wood, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) "inU" = ( /obj/structure/railing{ @@ -29275,6 +30663,13 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/science/genetics) +"inZ" = ( +/obj/machinery/atmospherics/components/unary/passive_vent{ + dir = 4; + name = "killroom vent" + }, +/turf/open/floor/circuit/telecomms, +/area/station/science/xenobiology) "ioc" = ( /obj/effect/turf_decal/tile/blue/anticorner/contrasted, /turf/open/floor/iron/dark, @@ -29286,6 +30681,16 @@ /obj/structure/extinguisher_cabinet/directional/east, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) +"ion" = ( +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/yellow/filled/corner, +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5{ + dir = 4 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "ioo" = ( /obj/effect/spawner/structure/window, /obj/machinery/door/poddoor/shutters/preopen{ @@ -29302,13 +30707,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) -"ios" = ( -/obj/machinery/door/airlock{ - id_tag = "Cabin4"; - name = "Cabin 5" - }, -/turf/open/floor/wood, -/area/station/commons/dorms) "iox" = ( /obj/machinery/vending/wardrobe/sec_wardrobe, /obj/structure/cable, @@ -29328,7 +30726,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "ioN" = ( /obj/structure/sign/warning/vacuum/directional/north, /obj/effect/turf_decal/stripes/line{ @@ -29384,6 +30782,13 @@ /obj/effect/mapping_helpers/airlock/access/all/supply/general, /turf/open/floor/plating, /area/station/maintenance/starboard/central) +"ipi" = ( +/obj/effect/turf_decal/siding/green/corner{ + dir = 4 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/iron/dark/smooth_large, +/area/station/hallway/primary/central) "ipm" = ( /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -29391,6 +30796,22 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"ipo" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/machinery/vending/coffee, +/obj/item/radio/intercom/directional/south, +/turf/open/floor/iron, +/area/station/engineering/lobby) +"ipr" = ( +/obj/structure/bed{ + dir = 4 + }, +/obj/effect/spawner/random/bedsheet{ + dir = 4 + }, +/obj/machinery/light/small/directional/south, +/turf/open/floor/wood, +/area/station/commons/dorms) "ipt" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/door/airlock/public/glass{ @@ -29404,6 +30825,20 @@ }, /turf/open/floor/iron/edge, /area/station/hallway/primary/fore) +"ipv" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/light/small/directional/north, +/obj/machinery/status_display/ai/directional/north, +/turf/open/floor/iron, +/area/station/commons/locker) +"ipL" = ( +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/engineering{ + name = "Engineering" + }, +/turf/open/floor/iron, +/area/station/engineering/lobby) "ipQ" = ( /obj/structure/bookcase/random/reference, /turf/open/floor/wood/large, @@ -29412,17 +30847,7 @@ /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 1 }, -/obj/structure/table, -/obj/item/clothing/head/soft{ - pixel_x = -7; - pixel_y = 12 - }, -/obj/item/stamp/denied{ - pixel_x = 7; - pixel_y = 8 - }, /obj/machinery/airalarm/directional/north, -/obj/item/stamp/granted, /turf/open/floor/iron, /area/station/cargo/storage) "ipS" = ( @@ -29436,7 +30861,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ipW" = ( /obj/machinery/computer/telecomms/server{ dir = 1; @@ -29449,36 +30874,32 @@ dir = 8 }, /area/station/tcommsat/server) -"iqf" = ( -/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ +"ipY" = ( +/obj/structure/lattice/catwalk, +/obj/structure/filingcabinet, +/obj/effect/spawner/random/bureaucracy/paper, +/obj/effect/spawner/random/bureaucracy/paper, +/turf/open/openspace, +/area/station/maintenance/aft/upper) +"iqe" = ( +/obj/machinery/door/airlock/public/glass{ + name = "Holodeck Door" + }, +/obj/effect/turf_decal/trimline/neutral/filled/line{ dir = 1 }, -/obj/structure/cable, -/obj/effect/turf_decal/stripes/line{ - dir = 4 +/obj/effect/turf_decal/trimline/neutral/filled/line, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "holodeck" }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +/obj/machinery/door/firedoor, +/obj/effect/landmark/navigate_destination, +/turf/open/floor/iron/dark/textured_large, +/area/station/commons/fitness/recreation) "iqj" = ( /obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/nitrogen_output, /turf/open/floor/engine/n2, /area/station/engineering/atmos/upper) -"iqo" = ( -/obj/structure/table/reinforced, -/obj/item/toy/redbutton{ - pixel_y = 5 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"iqs" = ( -/obj/machinery/light/directional/north, -/obj/machinery/atmospherics/components/binary/pump/on{ - name = "Waste to Filter"; - dir = 4 - }, -/obj/effect/turf_decal/trimline/red, -/turf/open/floor/iron/freezer, -/area/station/engineering/atmos/pumproom) "iqv" = ( /obj/structure/railing{ dir = 8 @@ -29504,10 +30925,18 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/light/small/broken/directional/east, /obj/machinery/camera/autoname/directional/east, /turf/open/floor/plating, /area/station/maintenance/central) +"iqF" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/monitored/mix_input, +/turf/open/floor/engine/vacuum, +/area/station/engineering/atmos/upper) +"iqX" = ( +/obj/structure/closet/wardrobe/grey, +/obj/structure/sign/poster/official/random/directional/north, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "ire" = ( /obj/machinery/restaurant_portal/bar, /obj/effect/turf_decal/siding/wood/end{ @@ -29519,6 +30948,20 @@ "irh" = ( /turf/closed/wall, /area/station/medical/cryo) +"irj" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/decal/cleanable/crayon{ + icon_state = "body"; + name = "body"; + pixel_y = 7 + }, +/obj/effect/decal/cleanable/blood/old, +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "irn" = ( /obj/structure/railing{ dir = 8 @@ -29530,7 +30973,13 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/openspace, -/area/station/command/bridge) +/area/station/command/meeting_room/council) +"iro" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "irp" = ( /obj/machinery/exodrone_launcher, /obj/item/exodrone, @@ -29548,6 +30997,7 @@ pixel_x = 4; pixel_y = 5 }, +/obj/effect/turf_decal/siding/green, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "irU" = ( @@ -29570,11 +31020,6 @@ /obj/effect/decal/cleanable/fuel_pool, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"isn" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/structure/barricade/wooden/crude, -/turf/open/floor/engine/hull, -/area/station/maintenance/disposal/incinerator) "isp" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -29587,18 +31032,6 @@ }, /turf/open/floor/iron/dark/small, /area/station/command/heads_quarters/ce) -"isv" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper/stack{ - dir = 9 - }, -/obj/effect/spawner/random/bureaucracy/paper, -/obj/structure/fluff/paper{ - dir = 1 - }, -/obj/structure/sign/flag/nanotrasen/directional/north, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "isy" = ( /obj/machinery/newscaster/directional/west, /obj/effect/turf_decal/tile/dark_blue{ @@ -29635,16 +31068,33 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/freezer, /area/station/security/prison/shower) +"isY" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "ite" = ( -/obj/effect/turf_decal/siding/red{ +/obj/structure/railing{ dir = 4 }, -/turf/open/floor/iron/dark, +/obj/structure/chair/plastic{ + dir = 8 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 5 + }, +/turf/open/floor/wood/large, /area/station/hallway/primary/central) "ith" = ( /obj/item/cigbutt, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"iti" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment, +/obj/structure/cable, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/main) "itl" = ( /obj/effect/turf_decal/trimline/yellow/warning{ dir = 8 @@ -29654,6 +31104,14 @@ }, /turf/open/floor/engine/hull, /area/space/nearstation) +"itm" = ( +/obj/structure/closet/secure_closet/personal, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted, +/turf/open/floor/iron/dark, +/area/station/commons/locker) "ito" = ( /obj/structure/chair/sofa/right/brown{ dir = 4 @@ -29661,9 +31119,6 @@ /obj/structure/window/reinforced/tinted/frosted/spawner/directional/west, /turf/open/floor/glass/reinforced, /area/station/service/library) -"itq" = ( -/turf/open/floor/engine/hull/air, -/area/station/engineering/lobby) "itr" = ( /obj/effect/turf_decal/siding/thinplating_new/dark, /obj/structure/extinguisher_cabinet/directional/south, @@ -29680,11 +31135,25 @@ /obj/effect/turf_decal/siding/blue/corner{ dir = 1 }, -/turf/open/floor/carpet, -/area/station/command/bridge) +/obj/structure/table/wood, +/obj/item/paper_bin{ + pixel_x = -4; + pixel_y = 10 + }, +/obj/item/pen{ + pixel_x = -1; + pixel_y = 13 + }, +/obj/item/book/manual/wiki/security_space_law{ + pixel_x = 1; + pixel_y = 6 + }, +/turf/open/floor/carpet/executive, +/area/station/command/meeting_room/council) "itA" = ( -/obj/structure/window/reinforced/spawner/directional/west, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 8 + }, /area/station/hallway/primary/central) "itI" = ( /obj/effect/turf_decal/siding/purple/corner, @@ -29708,15 +31177,6 @@ /obj/machinery/camera/autoname/directional/north, /turf/open/openspace, /area/station/hallway/primary/starboard) -"itV" = ( -/obj/item/stack/sheet/mineral/wood{ - pixel_x = -5; - pixel_y = -6 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/plating, -/area/station/security/detectives_office/private_investigators_office) "itX" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -29724,6 +31184,22 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark/smooth_large, /area/station/engineering/main) +"iub" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 1 + }, +/obj/effect/turf_decal/bot_white, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"iug" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/decal/cleanable/dirt, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "ius" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -29732,12 +31208,15 @@ /obj/effect/turf_decal/trimline/blue/filled/line, /turf/open/floor/iron/dark, /area/station/security/medical) -"iux" = ( -/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ - dir = 4 +"iuN" = ( +/obj/structure/railing, +/obj/structure/flora/bush/fullgrass/style_random, +/obj/structure/disposalpipe/segment{ + dir = 10 }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/obj/effect/turf_decal/siding/thinplating, +/turf/open/floor/grass, +/area/station/hallway/primary/starboard) "iuO" = ( /obj/effect/landmark/transport/transport_id{ specific_transport_id = "catwalk_cafe" @@ -29750,6 +31229,16 @@ }, /turf/open/floor/plating/elevatorshaft, /area/station/service/kitchen) +"iuQ" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/office) "iuR" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -29761,12 +31250,21 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/engine/hull/air, /area/station/hallway/secondary/exit/departure_lounge) +"ivo" = ( +/obj/effect/spawner/random/vending/snackvend, +/obj/structure/sign/poster/official/random/directional/north, +/obj/machinery/firealarm/directional/east, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "ivr" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 +/obj/machinery/modular_computer/preset/command{ + dir = 1 }, -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) +/obj/structure/window/reinforced/spawner/directional/west, +/obj/structure/window/reinforced/spawner/directional/south, +/turf/open/floor/circuit, +/area/station/command/bridge) "ivu" = ( /obj/structure/table/wood, /obj/structure/disposalpipe/segment, @@ -29776,33 +31274,25 @@ /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 1 }, -/obj/machinery/vending/wardrobe/cargo_wardrobe, -/obj/machinery/light/directional/north, -/obj/item/radio/intercom/directional/north, +/obj/structure/table, +/obj/machinery/fax{ + fax_name = "Cargo Office"; + name = "Cargo Office Fax Machine" + }, +/obj/machinery/status_display/ai/directional/east, /turf/open/floor/iron, /area/station/cargo/storage) "ivD" = ( -/obj/structure/bookcase/random/reference, -/obj/machinery/firealarm/directional/south, -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) -"ivE" = ( -/obj/structure/ladder, -/obj/effect/turf_decal/stripes/box, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/fore) -"ivI" = ( -/obj/effect/spawner/random/trash/mess, -/obj/structure/window/spawner/directional/west, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/obj/machinery/firealarm/directional/east, +/turf/open/floor/glass/reinforced, +/area/station/command/bridge) "ivJ" = ( /obj/machinery/atmospherics/pipe/multiz/supply/hidden/layer4{ dir = 4 }, /obj/machinery/atmospherics/pipe/multiz/scrubbers/hidden/layer2, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ivL" = ( /obj/effect/turf_decal/tile/neutral/opposingcorners{ dir = 1 @@ -29810,6 +31300,13 @@ /obj/machinery/vending/wardrobe/chem_wardrobe, /turf/open/floor/iron/dark, /area/station/medical/chemistry) +"ivP" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing/corner{ + dir = 1 + }, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "iwa" = ( /obj/effect/turf_decal/trimline/red/line, /obj/effect/turf_decal/trimline/red/line{ @@ -29824,14 +31321,48 @@ /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, /area/station/security/execution/transfer) +"iwg" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/machinery/airalarm/directional/west, +/obj/structure/table, +/obj/machinery/cell_charger{ + pixel_y = 9 + }, +/obj/item/stock_parts/power_store/cell/high{ + charge = 100; + maxcharge = 15000 + }, +/obj/item/stock_parts/power_store/cell/high{ + charge = 100; + maxcharge = 15000 + }, +/obj/item/stack/cable_coil, +/obj/machinery/light/small/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) +"iwl" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/effect/turf_decal/trimline/purple/filled/line{ + dir = 1 + }, +/obj/structure/frame/computer{ + anchored = 1; + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) "iwq" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/station/engineering/storage_shared) "iwu" = ( /obj/machinery/camera/autoname/directional/east, -/obj/machinery/firealarm/directional/east, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 4 + }, /area/station/hallway/primary/central) "iwB" = ( /turf/open/floor/iron/dark, @@ -29841,18 +31372,15 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/textured_large, /area/station/security/prison/rec) -"iwN" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/clock/directional/east, -/obj/structure/chair/plastic{ - dir = 1 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "iwS" = ( /obj/structure/cable, /turf/open/floor/iron/textured_large, /area/station/medical/abandoned) +"iwY" = ( +/obj/machinery/washing_machine, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/white, +/area/station/maintenance/starboard) "ixf" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -29867,9 +31395,24 @@ /obj/structure/closet/cabinet, /turf/open/floor/wood/tile, /area/station/service/abandoned_gambling_den) +"ixj" = ( +/obj/effect/turf_decal/trimline/yellow/warning{ + dir = 1 + }, +/obj/structure/cable, +/turf/open/floor/engine/hull, +/area/station/solars/starboard/fore) "ixF" = ( /turf/closed/wall, /area/station/service/chapel) +"ixG" = ( +/obj/item/cigbutt{ + pixel_x = -9; + pixel_y = -2 + }, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "ixR" = ( /obj/structure/table, /obj/item/storage/dice{ @@ -29883,29 +31426,25 @@ /turf/open/floor/iron/textured_large, /area/station/security/prison/rec) "ixS" = ( -/obj/machinery/status_display/ai/directional/north, -/turf/open/floor/engine/hull/air, -/area/station/command/meeting_room/council) -"iyb" = ( -/obj/machinery/door/airlock/engineering/glass{ - name = "Supermatter Engine Room" +/obj/machinery/computer/records/medical, +/obj/machinery/status_display/evac/directional/north, +/obj/effect/turf_decal/tile/blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"ixW" = ( +/obj/machinery/pdapainter/engineering, +/obj/item/radio/intercom/directional/east, +/turf/open/floor/iron/dark/small, +/area/station/command/heads_quarters/ce) +"iyh" = ( +/obj/structure/window/reinforced/plasma/spawner/directional/north, +/obj/machinery/power/energy_accumulator/tesla_coil/anchored, +/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ + dir = 5 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/machinery/door/firedoor/heavy, -/obj/structure/cable/layer1, +/obj/structure/cable, /turf/open/floor/engine, -/area/station/engineering/main) -"iyk" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Auxiliary Tech Storage" - }, -/obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 1 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/area/station/engineering/supermatter) "iym" = ( /obj/structure/railing/corner{ dir = 8 @@ -29931,21 +31470,23 @@ /obj/item/kirbyplants/random, /turf/open/floor/iron/dark/smooth_large, /area/station/security/processing) +"iys" = ( +/obj/effect/turf_decal/trimline/brown/filled/corner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/brown/filled/corner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/brown/filled/corner, +/obj/effect/turf_decal/trimline/brown/filled/corner{ + dir = 4 + }, +/obj/item/banner/cargo/mundane, +/turf/open/floor/iron, +/area/station/cargo/sorting) "iyv" = ( /turf/open/floor/wood, /area/station/security/courtroom) -"iyx" = ( -/obj/structure/chair/sofa/middle/brown, -/obj/item/clothing/under/costume/seifuku/red{ - pixel_y = -7 - }, -/obj/item/clothing/head/costume/crown{ - pixel_x = 10; - pixel_y = 8 - }, -/obj/structure/sign/poster/official/pda_ad/directional/north, -/turf/open/floor/eighties, -/area/station/maintenance/starboard/fore) "iyA" = ( /obj/structure/table/wood, /obj/item/toy/crayon/spraycan/lubecan{ @@ -29976,14 +31517,45 @@ }, /turf/open/water/jungle, /area/station/science/genetics) -"iyW" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Air to Mix" +"iyI" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral/full, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) +/turf/open/floor/iron/edge{ + dir = 8 + }, +/area/station/hallway/primary/central) +"iyL" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/chair{ + dir = 1; + pixel_y = -2 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/maintenance/starboard) +"iyS" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/camera/autoname/directional/east, +/turf/open/openspace, +/area/station/engineering/atmos/office) +"iyV" = ( +/obj/structure/table, +/obj/effect/spawner/random/bureaucracy/paper, +/obj/item/newspaper, +/turf/open/floor/wood/large, +/area/station/commons/dorms) +"iyZ" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/structure/cable, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/starboard/central/upper) "izb" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -30011,22 +31583,20 @@ /turf/open/floor/iron/white, /area/station/maintenance/department/medical) "izh" = ( -/obj/structure/railing{ +/obj/effect/turf_decal/siding/blue{ dir = 4 }, -/obj/effect/turf_decal/siding/blue{ +/obj/structure/railing{ dir = 4 }, -/obj/structure/chair/office{ - dir = 8; - name = "HoS' Chair" +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 4 }, -/obj/effect/turf_decal/tile/red/opposingcorners, -/obj/structure/railing/corner/end/flip{ - dir = 8 +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 4 }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "izk" = ( /obj/machinery/camera/autoname/directional/south, /obj/effect/turf_decal/box/white{ @@ -30042,12 +31612,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood, /area/station/security/courtroom) -"izp" = ( -/obj/item/stack/rods{ - amount = 7 - }, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/aft) "izF" = ( /obj/machinery/firealarm/directional/south, /obj/structure/disposalpipe/segment{ @@ -30074,12 +31638,19 @@ }, /turf/open/floor/iron/dark, /area/station/service/hydroponics) -"izU" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/sepia, -/area/station/hallway/secondary/construction) +"izP" = ( +/obj/effect/spawner/random/entertainment/arcade{ + dir = 8 + }, +/turf/open/floor/eighties, +/area/station/maintenance/department/crew_quarters/dorms) +"izV" = ( +/obj/machinery/airlock_controller/incinerator_atmos{ + pixel_x = 32; + pixel_y = 0 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "izW" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 @@ -30089,6 +31660,13 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) +"iAa" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 1 + }, +/obj/machinery/status_display/evac/directional/north, +/turf/open/floor/iron, +/area/station/engineering/lobby) "iAe" = ( /obj/structure/railing{ dir = 8 @@ -30107,15 +31685,6 @@ /obj/effect/landmark/start/roboticist, /turf/open/floor/iron, /area/station/science/robotics) -"iAr" = ( -/obj/structure/table/wood, -/obj/item/phone{ - desc = "Supposedly a direct line to Nanotrasen Central Command. It's not even plugged in."; - pixel_x = -3; - pixel_y = 5 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "iAu" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -30128,29 +31697,17 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/iron/dark, /area/station/commons/storage/art) -"iAH" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 - }, -/obj/structure/reagent_dispensers/fueltank, +"iAw" = ( +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/iron/dark, -/area/station/engineering/engine_smes) -"iAW" = ( -/obj/machinery/computer/apc_control{ - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/engine, -/area/station/command/heads_quarters/ce) -"iBj" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/effect/decal/remains/human, -/obj/structure/frame/machine, +/area/station/command/bridge) +"iAx" = ( /obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/obj/structure/table, +/obj/item/kitchen/rollingpin, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard) "iBn" = ( /obj/machinery/vending/wardrobe/curator_wardrobe, /obj/machinery/light_switch/directional/east, @@ -30160,20 +31717,28 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/engine/hull/air, /area/station/construction/storage_wing) -"iBG" = ( -/obj/structure/broken_flooring/singular/directional/south, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"iBI" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white, -/area/station/maintenance/starboard/lesser) "iBK" = ( /obj/structure/sign/warning/no_smoking/directional/east, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"iBM" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/turf/open/floor/iron/edge{ + dir = 4 + }, +/area/station/hallway/primary/central) +"iBW" = ( +/obj/item/trash/shok_roks/berry, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/port) "iBZ" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 8 @@ -30200,6 +31765,9 @@ /obj/machinery/door/window/brigdoor/left/directional/east{ req_access = list("brig_entrance") }, +/obj/item/paper_bin, +/obj/item/folder/red, +/obj/item/pen, /turf/open/floor/plating, /area/station/security/checkpoint/medical) "iCe" = ( @@ -30221,15 +31789,11 @@ }, /obj/effect/turf_decal/siding/dark, /turf/open/floor/iron/white/textured_half, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "iCq" = ( /obj/machinery/holopad, /turf/open/floor/engine, /area/station/engineering/supermatter/room) -"iCx" = ( -/obj/effect/spawner/random/trash/botanical_waste, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/lesser) "iCB" = ( /obj/structure/closet/bombcloset, /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -30238,16 +31802,12 @@ /obj/machinery/airalarm/directional/east, /turf/open/floor/iron/dark, /area/station/science/ordnance) -"iCN" = ( -/obj/structure/closet/crate/coffin, -/obj/effect/spawner/random/maintenance, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"iCS" = ( -/obj/structure/disposalpipe/segment, +"iCV" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer4, +/obj/machinery/portable_atmospherics/canister/air, +/obj/effect/decal/cleanable/blood/old, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard) "iDe" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 8 @@ -30277,13 +31837,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/security/brig) -"iDw" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/spawner/random/structure/steam_vent, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "iDE" = ( /obj/effect/turf_decal/tile/blue/fourcorners, /obj/machinery/plumbing/sender, @@ -30311,7 +31864,8 @@ pixel_y = -4 }, /obj/structure/sign/plaques/kiddie/perfect_man{ - pixel_x = 32 + pixel_x = 32; + dir = 4 }, /obj/machinery/light/directional/east, /turf/open/floor/carpet, @@ -30327,15 +31881,10 @@ /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/engine, /area/station/science/auxlab/firing_range) -"iDS" = ( -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) +"iEe" = ( +/obj/structure/cable, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard) "iEf" = ( /obj/machinery/air_sensor/ordnance_burn_chamber, /obj/machinery/atmospherics/pipe/heat_exchanging/simple/layer4{ @@ -30365,13 +31914,6 @@ }, /turf/open/floor/engine/hull, /area/space/nearstation) -"iEp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/chair/sofa/left/brown{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "iEq" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -30392,7 +31934,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "iEH" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -30405,14 +31947,14 @@ /turf/open/floor/iron/kitchen, /area/station/service/kitchen) "iEI" = ( -/obj/effect/turf_decal/siding/wood/corner{ - dir = 8 +/obj/effect/turf_decal/stripes{ + dir = 4 }, -/obj/structure/railing/corner{ +/obj/effect/turf_decal/stripes/corner{ dir = 8 }, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/turf/open/floor/iron/textured, +/area/station/command/eva) "iEJ" = ( /obj/effect/spawner/random/vending/snackvend, /obj/effect/decal/cleanable/dirt, @@ -30444,16 +31986,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/openspace, /area/station/hallway/secondary/exit/departure_lounge) -"iET" = ( -/obj/effect/turf_decal/siding, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/obj/structure/disposalpipe/segment{ +"iES" = ( +/obj/structure/disposalpipe/trunk/multiz/down{ dir = 4 }, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) +/turf/closed/wall/r_wall, +/area/station/command/bridge) "iEV" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 @@ -30475,11 +32013,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/ordnance/storage) -"iFf" = ( -/obj/structure/cable/multilayer/multiz, -/obj/effect/mapping_helpers/burnt_floor, -/turf/open/floor/iron/smooth, -/area/station/engineering/hallway) "iFn" = ( /obj/structure/railing/corner/end/flip{ dir = 8 @@ -30518,7 +32051,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/catwalk_floor/iron_smooth, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "iFB" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -30528,6 +32061,16 @@ /obj/effect/spawner/random/maintenance, /turf/open/openspace, /area/station/hallway/primary/starboard) +"iFK" = ( +/obj/machinery/door/airlock{ + id_tag = "Cabin7"; + name = "Cabin 1" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/duct, +/turf/open/floor/iron/dark/textured_large, +/area/station/commons/dorms) "iFR" = ( /obj/structure/chair{ dir = 8 @@ -30536,9 +32079,15 @@ /turf/open/floor/carpet, /area/station/security/courtroom) "iFS" = ( -/obj/machinery/camera/autoname/directional/east, -/turf/open/openspace, -/area/station/command/meeting_room/council) +/obj/machinery/computer/monitor{ + name = "bridge power monitoring console"; + dir = 8 + }, +/obj/machinery/light/warm/dim/directional/east, +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/structure/window/reinforced/spawner/directional/south, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "iFU" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -30554,11 +32103,20 @@ /obj/item/stack/rods, /turf/open/openspace, /area/station/maintenance/port/aft) -"iGc" = ( -/obj/effect/spawner/random/maintenance, -/obj/structure/toilet, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"iGe" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 + }, +/obj/item/camera_film{ + pixel_y = 2; + pixel_x = 2 + }, +/obj/item/camera{ + pixel_y = 4 + }, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) "iGm" = ( /obj/structure/bed, /obj/structure/toilet/greyscale{ @@ -30570,6 +32128,17 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/security/prison/safe) +"iGo" = ( +/obj/structure/disposalpipe/trunk/multiz/down{ + dir = 1 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"iGu" = ( +/obj/effect/spawner/random/structure/closet_maintenance, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "iGy" = ( /obj/structure/cable, /obj/effect/turf_decal/trimline/red/filled/line{ @@ -30585,17 +32154,6 @@ "iGB" = ( /turf/closed/wall, /area/station/commons/storage/tools) -"iGC" = ( -/obj/machinery/atmospherics/pipe/smart/simple/pink/visible/layer2{ - dir = 1 - }, -/obj/machinery/door/airlock/public/glass/incinerator/atmos_interior, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/obj/effect/mapping_helpers/airlock/locked, -/turf/open/floor/engine, -/area/station/maintenance/disposal/incinerator) "iGD" = ( /obj/structure/table/reinforced, /obj/item/storage/briefcase/secure{ @@ -30626,15 +32184,25 @@ /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) "iGI" = ( +/obj/effect/turf_decal/siding/blue/corner{ + dir = 4 + }, /obj/structure/railing/corner{ dir = 4 }, -/obj/effect/turf_decal/siding/blue/corner{ +/obj/effect/turf_decal/trimline/dark_blue/filled/corner{ dir = 4 }, -/obj/effect/turf_decal/tile/red/opposingcorners, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) +"iGO" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/landmark/start/hangover, +/obj/structure/sign/poster/official/random/directional/south, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "iGP" = ( /obj/machinery/power/apc/auto_name/directional/south, /obj/structure/cable/layer3, @@ -30644,7 +32212,7 @@ dir = 1 }, /turf/open/floor/iron/checker, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "iGQ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -30654,12 +32222,34 @@ }, /turf/open/floor/iron/dark, /area/station/security/brig) +"iGT" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/carpet/black, +/area/station/service/library/private) +"iHi" = ( +/obj/machinery/door/airlock/maintenance, +/obj/structure/disposalpipe/segment, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 1 + }, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "iHo" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/science/ordnance) +"iHr" = ( +/obj/machinery/door/airlock/command/glass{ + name = "Gravity Generator Area" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/construction, +/obj/machinery/door/firedoor, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/gravity_generator) "iHu" = ( /obj/structure/flora/bush/fullgrass/style_random, /obj/structure/flora/bush/pale/style_random, @@ -30699,6 +32289,14 @@ }, /turf/open/floor/iron/dark, /area/station/science/xenobiology) +"iHO" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/item/radio/intercom/directional/north, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "iHQ" = ( /obj/structure/marker_beacon/indigo, /obj/structure/lattice/catwalk, @@ -30745,11 +32343,6 @@ }, /turf/open/floor/wood, /area/station/maintenance/hallway/abandoned_recreation) -"iIL" = ( -/obj/effect/turf_decal/stripes/line, -/obj/structure/closet/firecloset, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "iIP" = ( /obj/effect/turf_decal/box/corners{ dir = 4 @@ -30774,25 +32367,48 @@ /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) "iJc" = ( -/obj/structure/tank_dispenser/oxygen{ - pixel_x = -1; - pixel_y = 2 - }, -/obj/effect/turf_decal/siding/wood, /obj/structure/extinguisher_cabinet/directional/west, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) -"iJn" = ( -/obj/structure/railing{ - dir = 4 +/obj/machinery/status_display/evac/directional/south, +/obj/effect/turf_decal/stripes{ + dir = 10 + }, +/obj/structure/table, +/obj/item/storage/toolbox/electrical{ + pixel_x = -3; + pixel_y = 11 + }, +/obj/item/storage/belt/utility{ + pixel_x = -3 + }, +/obj/item/storage/belt/utility{ + pixel_x = -3 }, +/turf/open/floor/iron/textured, +/area/station/command/eva) +"iJn" = ( /obj/effect/turf_decal/siding/blue{ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/cable, +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 4 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "iJu" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -30815,8 +32431,8 @@ /area/station/hallway/primary/port) "iJC" = ( /obj/effect/turf_decal/trimline/brown/filled/line, -/obj/machinery/rnd/production/techfab/department/cargo, -/obj/structure/extinguisher_cabinet/directional/south, +/obj/item/radio/intercom/directional/south, +/obj/machinery/status_display/evac/directional/west, /turf/open/floor/iron, /area/station/cargo/storage) "iJH" = ( @@ -30826,14 +32442,6 @@ /obj/effect/spawner/random/structure/crate_abandoned, /turf/open/floor/iron, /area/station/maintenance/starboard/central) -"iJN" = ( -/obj/item/kirbyplants/random, -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 - }, -/obj/machinery/airalarm/directional/east, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) "iJX" = ( /obj/structure/closet/emcloset, /obj/effect/turf_decal/trimline/red/filled/line{ @@ -30844,6 +32452,14 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/iron, /area/station/hallway/primary/port) +"iJY" = ( +/obj/machinery/atmospherics/pipe/multiz/scrubbers/visible/layer2, +/obj/machinery/atmospherics/pipe/multiz/supply/visible/layer4, +/obj/structure/disposalpipe/trunk/multiz/down{ + dir = 2 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "iKa" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -30857,33 +32473,21 @@ }, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"iKf" = ( -/obj/effect/turf_decal/trimline/white/line{ - dir = 8; - pixel_x = 8 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/obj/effect/landmark/generic_maintenance_landmark, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) -"iKj" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/obj/structure/railing{ - dir = 4 - }, -/obj/structure/railing{ - dir = 8 - }, -/turf/open/openspace, -/area/station/engineering/lobby) "iKm" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible, /obj/effect/turf_decal/box, /turf/open/floor/iron/dark/textured_corner, /area/station/science/ordnance/storage) +"iKw" = ( +/obj/effect/turf_decal/tile/red/fourcorners, +/obj/structure/table, +/obj/item/geiger_counter{ + pixel_x = 7; + pixel_y = 3 + }, +/obj/item/binoculars, +/turf/open/floor/iron/dark, +/area/station/security/checkpoint/engineering) "iKx" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -30905,6 +32509,12 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) +"iKF" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/camera/autoname/directional/north, +/obj/machinery/light_switch/directional/north, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "iKH" = ( /obj/effect/turf_decal/trimline/blue/filled/warning{ dir = 1 @@ -30913,25 +32523,33 @@ /obj/effect/turf_decal/trimline/white/filled/warning, /turf/open/floor/iron/dark, /area/station/medical/medbay/central) -"iKT" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ +"iKI" = ( +/obj/effect/turf_decal/siding{ dir = 4 }, +/obj/structure/hoop{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) +"iKT" = ( /obj/item/radio/intercom/directional/east, +/obj/effect/turf_decal/trimline/brown/filled/corner, +/obj/effect/turf_decal/trimline/brown/arrow_ccw{ + dir = 9 + }, +/obj/effect/turf_decal/trimline/brown/filled/corner{ + dir = 4 + }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) "iLe" = ( /obj/effect/turf_decal/box/red, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"iLg" = ( -/obj/effect/mapping_helpers/burnt_floor, -/obj/structure/broken_flooring/side/directional/east, -/obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ - dir = 8 - }, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) "iLm" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -30939,14 +32557,14 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) "iLn" = ( -/obj/machinery/camera/autoname/directional/west, -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 +/obj/effect/turf_decal/siding/wood{ + dir = 8 }, -/turf/open/floor/iron/dark, +/obj/machinery/status_display/evac/directional/west, +/turf/open/floor/wood/large, /area/station/hallway/primary/central) "iLy" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -30973,13 +32591,6 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"iLC" = ( -/obj/machinery/atmospherics/pipe/bridge_pipe/green/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "iLD" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 1 @@ -31032,34 +32643,11 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/space/openspace, /area/space/nearstation) -"iLP" = ( -/obj/effect/turf_decal/trimline/white/corner{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/maintenance, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) -"iMf" = ( -/obj/effect/turf_decal/trimline/purple/filled/line{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) "iMo" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light/directional/east, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"iMp" = ( -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/turf/closed/wall, -/area/station/maintenance/starboard/aft) "iMr" = ( /obj/structure/railing/corner{ dir = 8 @@ -31087,17 +32675,11 @@ /obj/structure/sign/departments/botany/alt2/directional/west, /turf/open/floor/iron/stairs/medium, /area/station/hallway/primary/central) -"iML" = ( -/obj/machinery/shower/directional/west, -/obj/machinery/power/apc/auto_name/directional/north, -/obj/structure/cable, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/restrooms) -"iMP" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +"iMO" = ( +/obj/machinery/computer/security/telescreen/entertainment/directional/east, +/obj/structure/dresser, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) "iMQ" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -31109,15 +32691,20 @@ /turf/open/floor/iron/dark/textured_large, /area/station/science/zoo) "iMT" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/start/cargo_technician, /turf/open/floor/iron/textured, /area/station/cargo/storage) -"iMV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/generic_maintenance_landmark, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) +"iMX" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/yellow/arrow_ccw, +/obj/effect/turf_decal/trimline/yellow/arrow_ccw, +/turf/open/floor/iron, +/area/station/hallway/secondary/exit/departure_lounge) "iNk" = ( /obj/structure/disposalpipe/segment{ dir = 5 @@ -31125,6 +32712,11 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/port) +"iNn" = ( +/obj/structure/lattice/catwalk, +/obj/effect/spawner/random/maintenance, +/turf/open/openspace, +/area/station/maintenance/starboard/central/upper) "iNy" = ( /obj/effect/turf_decal/siding/purple{ dir = 8 @@ -31135,56 +32727,35 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron, /area/station/science/lab) +"iND" = ( +/obj/machinery/door/poddoor/shutters/radiation/preopen{ + id = "SM_shutters"; + name = "Supermatter Radiation Shutters"; + dir = 1 + }, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/engineering/supermatter) "iNI" = ( /obj/structure/cable, /obj/machinery/power/apc/auto_name/directional/east, /turf/open/floor/plating/airless, /area/station/maintenance/space_hut) -"iNK" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/obj/structure/disposalpipe/trunk/multiz, -/turf/open/floor/wood, -/area/station/commons/dorms) "iNP" = ( /obj/machinery/light/directional/west, /turf/open/openspace, /area/station/service/chapel) -"iNX" = ( -/obj/machinery/power/apc/auto_name/directional/west, -/obj/structure/cable, -/obj/effect/landmark/start/depsec/engineering, -/obj/effect/turf_decal/trimline/red/filled/line{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/security/checkpoint/engineering) -"iOk" = ( -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) -"iOp" = ( -/obj/effect/turf_decal/siding/brown{ - dir = 8 - }, -/obj/structure/table, -/obj/structure/railing{ - dir = 8 - }, -/obj/item/camera{ - pixel_y = 4 - }, -/turf/open/floor/iron, -/area/station/commons/dorms) "iOB" = ( /obj/structure/sink/directional/east, /obj/structure/mirror/directional/west, /turf/open/floor/iron/freezer, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "iOE" = ( /obj/machinery/ore_silo, /turf/open/floor/circuit/green{ luminosity = 2 }, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "iOF" = ( /obj/machinery/door/airlock/security{ name = "Customs Desk" @@ -31231,12 +32802,22 @@ }, /turf/open/floor/engine, /area/station/science/auxlab/firing_range) -"iPt" = ( -/obj/item/binoculars, -/obj/item/toy/basketball, -/obj/structure/closet, +"iPv" = ( +/obj/machinery/computer/slot_machine{ + pixel_y = 2 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/cobweb/cobweb2, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard) +"iPx" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/machinery/duct, +/obj/effect/turf_decal/siding/wood{ + dir = 9 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) "iPz" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -31246,14 +32827,6 @@ }, /turf/open/floor/iron, /area/station/cargo/storage) -"iPL" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) "iPQ" = ( /obj/machinery/airalarm/directional/south, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -31280,11 +32853,33 @@ }, /turf/open/openspace, /area/station/hallway/secondary/construction) -"iQe" = ( -/obj/machinery/field/generator, -/obj/effect/turf_decal/bot_white, -/turf/open/floor/engine, -/area/station/engineering/break_room) +"iQd" = ( +/obj/structure/rack, +/obj/item/clothing/suit/hazardvest{ + pixel_x = 7; + pixel_y = 3 + }, +/obj/item/clothing/suit/hazardvest, +/obj/item/clothing/suit/hazardvest{ + pixel_x = 3 + }, +/obj/item/clothing/suit/hazardvest{ + pixel_x = -5; + pixel_y = 3 + }, +/obj/item/clothing/gloves/color/black{ + pixel_y = 3 + }, +/obj/item/clothing/gloves/color/black, +/obj/item/clothing/gloves/color/black{ + pixel_y = -3 + }, +/obj/item/clothing/mask/gas, +/obj/structure/railing{ + dir = 6 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "iQi" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/line{ @@ -31293,6 +32888,13 @@ /obj/effect/decal/cleanable/wrapping, /turf/open/floor/iron, /area/station/construction/storage_wing) +"iQj" = ( +/obj/machinery/door/airlock/external{ + name = "Common Mining Dock" + }, +/obj/effect/landmark/navigate_destination/dockaux, +/turf/open/floor/plating, +/area/station/hallway/secondary/construction) "iQw" = ( /obj/structure/railing{ dir = 6 @@ -31325,6 +32927,30 @@ }, /turf/open/floor/iron/white, /area/station/medical/medbay/central) +"iQD" = ( +/obj/item/clothing/accessory/armband/cargo{ + pixel_x = 8; + pixel_y = 10 + }, +/obj/structure/sign/poster/contraband/rebels_unite/directional/north, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) +"iQE" = ( +/obj/structure/table/reinforced, +/obj/item/toy/crayon/spraycan, +/obj/item/toy/crayon/spraycan{ + pixel_x = 1; + pixel_y = 3 + }, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 + }, +/obj/structure/sign/poster/official/random/directional/west, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) "iQI" = ( /obj/structure/chair{ dir = 8 @@ -31340,33 +32966,45 @@ dir = 8 }, /area/station/service/chapel) -"iQR" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/station/commons/dorms) +"iQM" = ( +/obj/effect/turf_decal/siding{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "iQX" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/science/genetics) -"iRa" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/closed/wall, -/area/station/maintenance/starboard/lesser) "iRf" = ( -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "iRA" = ( /turf/open/floor/iron/white/smooth_large, /area/station/hallway/secondary/entry) -"iRF" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/closed/wall, -/area/station/commons/dorms) +"iRC" = ( +/obj/structure/sign/directions/supply{ + dir = 4; + pixel_y = 8 + }, +/obj/structure/sign/directions/security{ + dir = 8; + pixel_y = -11 + }, +/obj/structure/sign/directions/dorms/directional/south{ + dir = 4; + pixel_y = -5 + }, +/obj/structure/sign/directions/engineering/directional/south{ + dir = 4; + pixel_y = 2 + }, +/turf/closed/wall/r_wall, +/area/station/maintenance/central) "iRH" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -31375,24 +33013,28 @@ /obj/effect/mapping_helpers/airlock/access/all/service/general, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"iRX" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ +"iRR" = ( +/obj/structure/reagent_dispensers/foamtank, +/obj/effect/turf_decal/bot, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos/office) +"iRW" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/item/radio/intercom/directional/north, -/turf/open/floor/iron, -/area/station/engineering/lobby) -"iSh" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Engineering Maintenance" +/obj/machinery/door/airlock/engineering{ + name = "Engine Room" }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/any/engineering/general, -/obj/effect/mapping_helpers/airlock/access/any/engineering/construction, -/turf/open/floor/plating, -/area/station/engineering/lobby) +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "atmosuppersm" + }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "iSv" = ( /obj/effect/turf_decal/trimline/dark_green/filled/line, /obj/effect/turf_decal/tile/dark_red{ @@ -31471,8 +33113,9 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/openspace, -/area/station/command/bridge) +/area/station/command/meeting_room/council) "iTf" = ( /obj/effect/turf_decal/trimline/brown/filled/corner{ dir = 1 @@ -31480,35 +33123,28 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/digital_clock/directional/west, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"iTn" = ( -/obj/machinery/door/airlock/engineering, -/obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/machinery/door/firedoor, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/lobby) -"iTx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/glass/plasma, -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ +"iTh" = ( +/obj/effect/spawner/random/maintenance/two, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"iTw" = ( +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ dir = 4 }, -/obj/machinery/meter, -/turf/open/floor/iron/smooth, -/area/station/engineering/hallway) -"iTB" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 +/obj/item/kirbyplants/random, +/obj/machinery/firealarm/directional/north, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) +"iTF" = ( +/obj/structure/table, +/obj/structure/bedsheetbin/empty{ + pixel_y = 6 }, -/obj/machinery/light/directional/west, -/turf/open/floor/iron, -/area/station/engineering/lobby) -"iTE" = ( -/obj/effect/spawner/random/food_or_drink/snack, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "iTH" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 @@ -31526,6 +33162,26 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/commissary) +"iTR" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/machinery/airalarm/directional/west, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/wood/tile, +/area/station/security/detectives_office/private_investigators_office) +"iTU" = ( +/obj/structure/sign/poster/random/directional/north, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ + dir = 6 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "iTW" = ( /obj/effect/turf_decal/tile/bar/opposingcorners, /obj/structure/table, @@ -31549,15 +33205,6 @@ /obj/effect/spawner/random/engineering/atmospherics_portable, /turf/open/floor/plating, /area/station/security/interrogation) -"iUo" = ( -/obj/machinery/atmospherics/components/tank/air{ - dir = 1 - }, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/turf_decal/bot, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "iUs" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 @@ -31574,6 +33221,12 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/hallway/abandoned_recreation) +"iUz" = ( +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "iUD" = ( /turf/closed/wall, /area/station/maintenance/solars/starboard/fore) @@ -31585,15 +33238,14 @@ /turf/open/floor/iron/dark, /area/station/service/chapel) "iUM" = ( -/obj/machinery/requests_console/directional/north{ - department = "Security"; - name = "Security Requests Console" - }, -/obj/effect/mapping_helpers/requests_console/supplies, -/obj/effect/mapping_helpers/requests_console/assistance, /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/obj/effect/landmark/start/depsec/supply, +/obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/checkpoint/supply) "iUX" = ( @@ -31609,10 +33261,10 @@ /obj/structure/sign/warning/vacuum/external/directional/east, /turf/open/floor/plating, /area/station/engineering/storage_shared) -"iVp" = ( -/obj/effect/decal/cleanable/vomit/old, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"iVr" = ( +/obj/structure/sign/warning/directional/south, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "iVA" = ( /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -31620,12 +33272,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/smooth_edge, /area/station/commons/lounge) -"iVT" = ( -/obj/machinery/door/airlock/external, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/obj/effect/mapping_helpers/airlock/access/any/engineering/external, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) "iVW" = ( /turf/open/floor/plating/elevatorshaft, /area/station/security/prison/rec) @@ -31659,32 +33305,6 @@ /obj/item/wrench/medical, /turf/open/floor/iron/kitchen_coldroom/freezerfloor, /area/station/medical/coldroom) -"iWb" = ( -/obj/structure/urinal/directional/west, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"iWe" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ - name = "N2O Multideck Adapter"; - dir = 4 - }, -/obj/machinery/meter{ - name = "N2O meter" - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) -"iWh" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage) "iWk" = ( /obj/effect/turf_decal/trimline/blue/filled/line, /obj/structure/cable, @@ -31710,17 +33330,12 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/maintenance/starboard/central) "iWu" = ( /turf/closed/wall, /area/space/nearstation) -"iWA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/power/smes/engineering, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) "iWD" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -31730,10 +33345,13 @@ }, /turf/open/floor/wood, /area/station/service/library) -"iWM" = ( -/obj/structure/broken_flooring/side/directional/west, +"iWF" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/sink/directional/west, +/obj/structure/mirror/broken/directional/east, +/obj/structure/cable, /turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) +/area/station/maintenance/starboard/upper) "iXd" = ( /obj/structure/lattice/catwalk, /obj/effect/decal/remains/human, @@ -31751,10 +33369,8 @@ /turf/open/floor/iron, /area/station/hallway/primary/aft) "iXw" = ( -/obj/structure/bed/dogbed/renault, -/mob/living/basic/pet/fox/renault, -/obj/machinery/camera/autoname/directional/south, -/turf/open/floor/carpet, +/obj/structure/cable, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) "iXz" = ( /obj/machinery/door/airlock/maintenance{ @@ -31780,12 +33396,6 @@ /obj/structure/chair, /turf/open/floor/iron/airless, /area/station/maintenance/starboard/aft) -"iXH" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/structure/cable, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/engineering/storage_shared) "iXJ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/closed/wall, @@ -31796,6 +33406,12 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) +"iYa" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "iYb" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 10 @@ -31807,16 +33423,48 @@ }, /turf/open/floor/iron/dark, /area/station/science/xenobiology) +"iYe" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/railing{ + dir = 8 + }, +/obj/structure/disposalpipe/segment{ + dir = 1 + }, +/turf/open/openspace, +/area/station/medical/abandoned) "iYm" = ( /turf/open/misc/asteroid/airless, /area/space/nearstation) "iYq" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 4 +/obj/structure/disposalpipe/segment{ + dir = 8 }, -/obj/machinery/light/directional/east, -/turf/open/floor/iron, -/area/station/hallway/primary/starboard) +/obj/structure/disposalpipe/segment, +/obj/effect/turf_decal/bot/left, +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=4"; + location = "Cargo Storage-2" + }, +/mob/living/simple_animal/bot/mulebot{ + name = "Parcel Pete" + }, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/iron/recharge_floor, +/area/station/cargo/sorting) +"iYr" = ( +/obj/effect/turf_decal/siding{ + dir = 5 + }, +/obj/effect/turf_decal/trimline/white/line, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "iYJ" = ( /obj/effect/turf_decal/siding/wood, /turf/open/floor/wood/large, @@ -31828,27 +33476,10 @@ /obj/effect/spawner/random/vending/snackvend, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"iYM" = ( -/obj/structure/lattice/catwalk, -/obj/effect/spawner/random/maintenance, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) -"iYZ" = ( -/mob/living/basic/turtle{ - name = "John Arbuckle" - }, -/obj/structure/chair{ - dir = 4 - }, -/obj/effect/mapping_helpers/mob_buckler, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/aft) -"iZe" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/structure/railing/corner/end, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +"iZk" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "iZr" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 1 @@ -31856,14 +33487,15 @@ /obj/machinery/computer/security, /turf/open/floor/iron/dark, /area/station/security/office) -"iZs" = ( -/obj/effect/turf_decal/tile/purple/fourcorners, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Plasma to Port" +"iZt" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5{ + dir = 9 }, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "iZu" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -31876,12 +33508,6 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"iZx" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/catwalk_floor, -/area/station/maintenance/starboard/fore) "iZI" = ( /obj/machinery/computer/bank_machine, /obj/machinery/light_switch/directional/west{ @@ -31890,13 +33516,7 @@ /turf/open/floor/circuit/green{ luminosity = 2 }, -/area/station/ai_monitored/command/nuke_storage) -"iZK" = ( -/obj/machinery/light_switch/directional/north, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron/dark, -/area/station/service/chapel) +/area/station/command/vault) "jac" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -31906,7 +33526,7 @@ dir = 4 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "jad" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -31932,32 +33552,77 @@ "jap" = ( /turf/open/floor/engine/hull/air, /area/station/commons/dorms) +"jau" = ( +/obj/structure/table/wood, +/obj/item/food/grown/poppy{ + pixel_y = 2 + }, +/obj/item/food/grown/poppy{ + pixel_y = 2 + }, +/obj/item/food/grown/poppy{ + pixel_y = 2 + }, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "jaG" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/delivery, /turf/open/floor/iron, /area/station/maintenance/starboard/central) +"jaI" = ( +/turf/open/openspace, +/area/station/engineering/storage/tech) "jaN" = ( -/obj/structure/table/wood, -/obj/effect/spawner/random/maintenance/two, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/mapping_helpers/broken_floor, -/turf/open/floor/wood, +/obj/effect/spawner/structure/window/reinforced/tinted, +/turf/open/floor/plating, /area/station/maintenance/starboard/central) +"jaT" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron, +/area/station/maintenance/starboard) +"jaY" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/light/small/directional/north, +/obj/machinery/status_display/evac/directional/north, +/turf/open/floor/iron, +/area/station/commons/locker) +"jba" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/duct, +/obj/structure/railing{ + dir = 8 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) "jbc" = ( /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/construction/storage_wing) -"jbh" = ( -/obj/machinery/light/floor/broken, -/turf/open/openspace, -/area/station/maintenance/hallway/abandoned_recreation) "jbn" = ( /obj/structure/stairs/west, /obj/structure/railing, /obj/structure/sign/poster/official/help_others/directional/north, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"jbr" = ( +/obj/machinery/atmospherics/components/unary/airlock_pump/unbolt_only, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) +"jbL" = ( +/obj/item/kirbyplants/fern{ + pixel_x = -3; + pixel_y = 18 + }, +/obj/structure/sign/flag/nanotrasen/directional/north, +/obj/structure/fluff/paper/stack, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "jbO" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -31968,7 +33633,7 @@ /obj/structure/closet/secure_closet/armory2, /obj/effect/spawner/random/armory/rubbershot, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "jbS" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/blue/full, @@ -31984,13 +33649,13 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"jch" = ( -/obj/machinery/newscaster/directional/north, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 +"jbZ" = ( +/obj/machinery/portable_atmospherics/canister/plasma, +/obj/effect/turf_decal/delivery/white{ + color = "#ff6600" }, -/turf/open/floor/iron, -/area/station/commons/storage/primary) +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "jcn" = ( /obj/effect/turf_decal/siding/thinplating_new/dark/end, /obj/structure/flora/bush/lavendergrass, @@ -32006,6 +33671,14 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/science/genetics) +"jcw" = ( +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/machinery/atmospherics/components/binary/pump/off{ + dir = 2; + name = "O2 to Mix" + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "jcy" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -32023,49 +33696,46 @@ /obj/effect/mapping_helpers/requests_console/assistance, /turf/open/floor/iron/white, /area/station/medical/office) -"jcz" = ( -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "jcE" = ( /obj/structure/chair{ dir = 1 }, /turf/open/floor/engine/vacuum, /area/station/science/ordnance/bomb) -"jcP" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 +"jcH" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=21-Central"; + location = "20-Genetics" }, -/turf/open/floor/engine/hull/reinforced/air, -/area/station/engineering/atmos/project) -"jcQ" = ( /obj/effect/landmark/event_spawn, -/obj/effect/turf_decal/tile/purple/opposingcorners, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/aft) -"jda" = ( -/obj/item/spear, -/obj/effect/decal/cleanable/blood/old, -/obj/item/clothing/gloves/color/rainbow, -/obj/item/clothing/shoes/sneakers/rainbow, -/obj/item/clothing/under/color/rainbow, -/obj/item/clothing/head/soft/rainbow, -/obj/effect/decal/remains/human, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/turf/open/floor/catwalk_floor/iron, +/area/station/hallway/primary/central) +"jcM" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/turf/open/floor/iron/checker, +/area/station/engineering/atmos/upper) +"jcN" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/engineering/lobby) "jdf" = ( /obj/effect/turf_decal/stripes/line, /obj/effect/spawner/random/structure/grille, /turf/open/floor/engine/hull, /area/space/nearstation) "jdg" = ( -/obj/machinery/holopad, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/carpet, -/area/station/command/bridge) +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "jdi" = ( /obj/effect/turf_decal/siding/purple{ dir = 8 @@ -32081,13 +33751,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark/textured_large, /area/station/science/genetics) -"jdr" = ( -/obj/machinery/airalarm/directional/north, -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/openspace, -/area/station/engineering/atmos/project) "jdB" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/monitored/mix_input{ dir = 1 @@ -32108,21 +33771,14 @@ dir = 4 }, /obj/effect/landmark/start/paramedic, +/obj/item/radio/intercom/directional/south, /turf/open/floor/iron/white, /area/station/medical/office) -"jdR" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 - }, -/obj/structure/rack, -/obj/item/circuitboard/machine/telecomms/bus{ - pixel_y = -3 - }, -/obj/item/circuitboard/machine/telecomms/broadcaster{ - pixel_y = 2 - }, +"jdM" = ( +/obj/structure/table, +/obj/machinery/microwave/engineering/cell_included, /turf/open/floor/iron/dark, -/area/station/engineering/storage/tcomms) +/area/station/engineering/supermatter/room/upper) "jdZ" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -32131,25 +33787,7 @@ name = "AI Core Access" }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) -"jea" = ( -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 - }, -/obj/effect/landmark/event_spawn, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/white, -/area/station/maintenance/department/medical) -"jec" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ - dir = 8 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/openspace, -/area/station/medical/virology) +/area/station/ai/satellite/interior) "jee" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -32158,20 +33796,35 @@ /turf/closed/wall, /area/station/security/evidence) "jeh" = ( -/obj/structure/railing{ - dir = 8 +/obj/effect/landmark/start/assistant, +/turf/open/floor/iron/edge{ + dir = 4 }, -/obj/effect/turf_decal/siding/wood{ +/area/station/hallway/primary/central) +"jei" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 }, -/obj/machinery/vending/cigarette{ - pixel_x = 5 +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/obj/machinery/door/firedoor/border_only{ - dir = 8 +/turf/open/floor/iron, +/area/station/maintenance/starboard) +"jem" = ( +/obj/structure/rack, +/obj/item/circuitboard/machine/oven{ + pixel_y = 3 }, -/turf/open/floor/wood, -/area/station/command/meeting_room/council) +/obj/item/circuitboard/machine/oven, +/obj/item/circuitboard/machine/oven{ + pixel_y = -3 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "jeq" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 @@ -32183,6 +33836,7 @@ dir = 1 }, /obj/machinery/camera/autoname/directional/south, +/obj/structure/fireaxecabinet/jawsofrecovery/directional/south, /turf/open/floor/iron/white, /area/station/medical/office) "jes" = ( @@ -32201,19 +33855,6 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"jeD" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Medbay Maintenance" - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/port) "jeU" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -32226,32 +33867,14 @@ /turf/open/floor/iron/dark/textured_large, /area/station/security/prison/safe) "jeW" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 + }, /turf/open/floor/iron, /area/station/cargo/storage) -"jeX" = ( -/obj/item/kirbyplants/random/dead{ - name = "dead plant" - }, -/obj/machinery/button/door/directional/east{ - id = "Cabin2"; - name = "Cabin Bolt Control"; - normaldoorcontrol = 1; - specialfunctions = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/station/commons/dorms) "jfd" = ( -/obj/machinery/light/directional/east, -/obj/machinery/computer/cargo{ - dir = 8 - }, /obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 4 - }, -/obj/machinery/status_display/supply{ - pixel_x = 32 + dir = 5 }, /turf/open/floor/iron, /area/station/cargo/storage) @@ -32267,7 +33890,7 @@ dir = 4 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "jfj" = ( /obj/effect/decal/cleanable/dirt, /obj/item/camera_film, @@ -32280,11 +33903,6 @@ }, /turf/open/floor/iron, /area/station/maintenance/starboard/aft) -"jfp" = ( -/obj/structure/lattice/catwalk, -/obj/item/kirbyplants/random, -/turf/open/openspace, -/area/station/engineering/break_room) "jfA" = ( /turf/open/openspace, /area/station/security/brig) @@ -32317,9 +33935,6 @@ /turf/open/floor/iron/dark, /area/station/security/interrogation) "jgd" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 - }, /obj/effect/turf_decal/trimline/brown/warning{ dir = 9 }, @@ -32353,13 +33968,6 @@ "jgy" = ( /turf/open/floor/carpet, /area/station/maintenance/starboard/aft) -"jgB" = ( -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "jgC" = ( /obj/structure/transit_tube/curved/flipped{ dir = 4 @@ -32367,6 +33975,12 @@ /obj/structure/lattice, /turf/open/space/openspace, /area/space/nearstation) +"jgD" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/aft/upper) "jgJ" = ( /obj/machinery/door/airlock/command{ name = "Research Division Server Room" @@ -32390,13 +34004,21 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron/textured_large, /area/station/medical/virology) +"jhg" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/chair/office, +/obj/structure/fluff/paper/stack{ + dir = 5 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "jhj" = ( /obj/structure/cable/layer3, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/dark/textured_half, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "jhm" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -32408,7 +34030,7 @@ codes_txt = "patrol;next_patrol=19-Captain"; location = "18-Bathroom" }, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) "jhu" = ( /obj/structure/disposalpipe/segment{ @@ -32416,6 +34038,15 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/greater) +"jhz" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/structure/chair/office{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "jhM" = ( /obj/structure/table/wood, /obj/item/reagent_containers/cup/glass/bottle/holywater{ @@ -32434,11 +34065,6 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/security/medical) -"jhU" = ( -/obj/effect/mapping_helpers/broken_floor, -/obj/effect/spawner/random/engineering/tank, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "jhW" = ( /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/siding/dark_blue{ @@ -32449,11 +34075,15 @@ /turf/open/floor/carpet/blue, /area/station/medical/break_room) "jia" = ( -/obj/structure/table/wood, -/obj/effect/spawner/random/maintenance, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/obj/machinery/door/airlock/external{ + name = "Mining Dock Airlock" + }, +/obj/effect/mapping_helpers/airlock/access/all/supply/mining, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/cargo/miningoffice) "jic" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/dark/textured_large, @@ -32463,35 +34093,22 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"jip" = ( -/obj/structure/lattice/catwalk, -/obj/effect/spawner/random/maintenance, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) -"jiv" = ( -/obj/effect/turf_decal/siding/brown{ +"jix" = ( +/obj/machinery/light/warm/dim/directional/south, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 }, -/obj/effect/turf_decal/siding/brown, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) +/obj/item/radio/intercom/directional/east, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/structure/chair/comfy/beige{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "jiD" = ( /obj/machinery/telecomms/server/presets/common, /turf/open/floor/iron/dark/telecomms, /area/station/tcommsat/server) -"jiE" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=20-Genetics"; - location = "19-Captain" - }, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) "jiG" = ( /obj/machinery/newscaster/directional/west, /obj/machinery/light/directional/west, @@ -32514,19 +34131,14 @@ /obj/effect/spawner/random/trash/grille_or_waste, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"jjd" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/layer_manifold/supply/visible{ - dir = 4 +"jji" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 8 }, -/turf/closed/wall/r_wall, -/area/station/engineering/atmos/pumproom) -"jjn" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "jjo" = ( /obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ dir = 10 @@ -32536,6 +34148,14 @@ }, /turf/open/floor/engine, /area/station/engineering/supermatter/room) +"jjp" = ( +/obj/effect/spawner/structure/window/reinforced/plasma, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/door/firedoor, +/turf/open/floor/plating, +/area/station/engineering/gravity_generator) "jjr" = ( /obj/item/kirbyplants/random, /obj/effect/decal/cleanable/dirt, @@ -32583,12 +34203,6 @@ }, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"jjK" = ( -/obj/effect/turf_decal/bot, -/obj/machinery/portable_atmospherics/scrubber, -/obj/machinery/light/directional/west, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/atmos/upper) "jjW" = ( /mob/living/carbon/human/species/monkey, /obj/structure/flora/bush/sparsegrass/style_random, @@ -32611,20 +34225,44 @@ /obj/machinery/camera/autoname/directional/east, /turf/open/floor/iron/dark, /area/station/engineering/storage/tech) +"jkb" = ( +/obj/structure/cable, +/obj/effect/spawner/random/structure/steam_vent, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "jkd" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/engine/hull/air, /area/station/maintenance/port) +"jke" = ( +/obj/effect/landmark/start/station_engineer, +/obj/structure/cable, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/main) "jkh" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/iv_drip, /turf/open/floor/iron/dark/textured_large, /area/station/maintenance/port) +"jkk" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper/stack{ + desc = "A stack of various papers, absolutely unreadable due to scorch marks and aging."; + dir = 1 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "jkn" = ( /obj/structure/table/wood/poker, -/turf/open/floor/wood, +/obj/item/flashlight/lamp/green{ + pixel_y = 5 + }, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) "jkq" = ( /turf/open/floor/iron/stairs/right{ @@ -32634,25 +34272,23 @@ "jkr" = ( /turf/closed/wall, /area/station/science/lab) -"jkz" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/engineering/storage_shared) +"jkD" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, +/obj/machinery/light/directional/north, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "jkG" = ( -/obj/machinery/door/airlock/security/glass{ - name = "Security Post - Cargo" - }, +/obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/access/all/security/general, -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, +/turf/open/floor/plating, /area/station/security/checkpoint/supply) +"jkJ" = ( +/obj/machinery/firealarm/directional/west, +/obj/effect/turf_decal/trimline/dark/arrow_cw{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/hallway/primary/aft) "jkL" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 4 @@ -32661,12 +34297,10 @@ /obj/machinery/light/directional/east, /turf/open/floor/iron/dark/textured, /area/station/construction/mining/aux_base) -"jkR" = ( -/obj/machinery/computer/holodeck, -/obj/machinery/camera/autoname/directional/north, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +"jkM" = ( +/obj/machinery/atmospherics/pipe/smart/manifold/yellow/visible, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "jkW" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 8 @@ -32689,15 +34323,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark, /area/station/hallway/secondary/construction) -"jlf" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/blobstart, -/turf/open/floor/engine, -/area/station/maintenance/starboard/lesser) -"jlh" = ( -/obj/structure/lattice/catwalk, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/aft) "jli" = ( /obj/effect/turf_decal/trimline/purple/arrow_cw{ dir = 8 @@ -32710,20 +34335,11 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/aft) -"jlo" = ( -/obj/structure/rack, -/obj/item/encryptionkey/headset_com{ - pixel_x = -4; - pixel_y = 3 - }, -/obj/item/encryptionkey/headset_sec{ - pixel_x = 4 - }, -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) +"jln" = ( +/obj/effect/spawner/random/structure/closet_maintenance, +/obj/effect/spawner/random/maintenance/two, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "jlB" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -32761,9 +34377,13 @@ /obj/effect/mapping_helpers/airlock/access/all/security/general, /turf/open/floor/iron/dark, /area/station/security/detectives_office) -"jmh" = ( -/turf/open/floor/plating/airless, -/area/station/maintenance/starboard/lesser) +"jlX" = ( +/obj/structure/sign/poster/official/get_your_legs/directional/west, +/obj/machinery/light/directional/west, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/carpet/black, +/area/station/service/library/private) "jmo" = ( /obj/structure/cable, /obj/effect/spawner/random/trash/garbage, @@ -32780,14 +34400,37 @@ /obj/machinery/light/directional/west, /turf/open/floor/engine, /area/station/engineering/supermatter/room) -"jmD" = ( -/obj/effect/turf_decal/stripes/line{ +"jmG" = ( +/obj/effect/turf_decal/siding/green{ + dir = 1 + }, +/obj/effect/turf_decal/plaque{ + icon_state = "L3" + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/hallway/primary/central) +"jmK" = ( +/obj/machinery/power/emitter{ dir = 4 }, -/obj/structure/broken_flooring/side/directional/north, +/obj/effect/turf_decal/bot{ + dir = 1 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) +"jmL" = ( +/obj/effect/turf_decal/siding{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/white/line, /obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "jmQ" = ( /obj/effect/spawner/random/trash/grime, /turf/open/floor/plating, @@ -32814,7 +34457,6 @@ /turf/open/floor/plating, /area/station/maintenance/port/fore) "jni" = ( -/obj/structure/cable, /obj/item/crowbar, /obj/effect/decal/cleanable/dirt, /obj/machinery/camera/autoname/directional/south, @@ -32848,16 +34490,11 @@ }, /turf/open/floor/wood, /area/station/command/heads_quarters/rd) -"jnq" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/corner, -/turf/open/openspace, -/area/station/engineering/break_room) "jnC" = ( -/turf/open/floor/carpet, +/obj/effect/turf_decal/siding/wood/end{ + dir = 4 + }, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) "jnK" = ( /obj/effect/turf_decal/trimline/green/filled/line, @@ -32870,18 +34507,29 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit/green/telecomms/mainframe, /area/station/tcommsat/server) -"jnQ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +"jnR" = ( +/obj/structure/grille, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) +"jnU" = ( +/obj/structure/lattice/catwalk, +/obj/effect/spawner/random/maintenance/two, +/obj/structure/rack, +/turf/open/openspace, +/area/station/maintenance/starboard/aft/upper) "jof" = ( /obj/structure/closet/crate/coffin, /obj/effect/decal/cleanable/dirt, /obj/machinery/light_switch/directional/west, /turf/open/floor/iron/dark, /area/station/service/chapel/office) +"joA" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/lattice/catwalk, +/obj/item/trash/tray, +/obj/structure/railing, +/turf/open/water/no_planet_atmos, +/area/station/maintenance/starboard/fore) "joC" = ( /obj/item/wheelchair{ pixel_y = -3 @@ -32908,22 +34556,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/commons/lounge) -"joI" = ( -/obj/machinery/power/emitter{ - dir = 4 - }, -/obj/effect/turf_decal/bot{ - dir = 1 - }, -/turf/open/floor/engine, -/area/station/engineering/break_room) -"joP" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/turf/open/openspace, -/area/station/engineering/atmos/project) "jpa" = ( /obj/machinery/vatgrower{ dir = 4 @@ -32932,12 +34564,7 @@ /area/station/science/cytology) "jph" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/nuke_storage) -"jpj" = ( -/obj/item/statuebust, -/obj/machinery/light/cold/no_nightlight/directional/east, -/turf/open/floor/iron/vaporwave, -/area/station/maintenance/starboard/lesser) +/area/station/command/vault) "jpp" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -32948,11 +34575,23 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/construction) +"jpq" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "jps" = ( -/obj/effect/spawner/random/engineering/tracking_beacon, -/obj/structure/cable, -/turf/open/floor/carpet, -/area/station/command/bridge) +/obj/structure/table/wood, +/obj/item/flashlight/lamp/green{ + pixel_x = 1 + }, +/obj/item/cigarette/cigar{ + pixel_x = 3; + pixel_y = 6 + }, +/turf/open/floor/carpet/executive, +/area/station/command/meeting_room/council) "jpt" = ( /obj/structure/railing{ dir = 1 @@ -32960,13 +34599,6 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/wood, /area/station/command/corporate_showroom) -"jpw" = ( -/obj/machinery/door/poddoor{ - id = "securestoragecw"; - name = "Secure Storage" - }, -/turf/open/floor/engine/hull/reinforced/air, -/area/station/engineering/break_room) "jpx" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -33000,7 +34632,11 @@ /obj/structure/table/reinforced, /obj/item/mmi, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) +"jpZ" = ( +/obj/structure/lattice, +/turf/open/openspace, +/area/station/maintenance/aft/upper) "jqd" = ( /obj/machinery/door/airlock/public/glass{ name = "Prison Community Center" @@ -33008,13 +34644,6 @@ /obj/machinery/door/firedoor, /turf/open/floor/iron/textured_large, /area/station/security/prison/rec) -"jqo" = ( -/obj/effect/turf_decal/siding/brown{ - dir = 9 - }, -/obj/machinery/camera/autoname/directional/north, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) "jqp" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -33023,39 +34652,27 @@ /obj/effect/spawner/random/maintenance, /turf/open/openspace, /area/station/construction/storage_wing) -"jqv" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/junction/flip{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/hallway/secondary/exit/departure_lounge) "jqw" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple/layer4{ dir = 10 }, /turf/open/space/openspace, /area/space/nearstation) -"jqA" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment{ - dir = 5 +"jqz" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 }, -/turf/open/floor/iron/textured_large, -/area/station/medical/abandoned) +/obj/item/weldingtool, +/obj/item/wrench, +/obj/item/clothing/head/utility/welding, +/obj/structure/table/reinforced, +/obj/machinery/airalarm/directional/north, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "jqB" = ( /obj/item/radio/intercom/directional/north, /turf/open/floor/iron/dark/textured, /area/station/science/xenobiology) -"jqG" = ( -/obj/effect/turf_decal/siding{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "jqO" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -33073,6 +34690,16 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/medical/chemistry) +"jqQ" = ( +/obj/structure/lattice, +/obj/item/toy/figure/ninja{ + name = "Space Ninja"; + desc = "How did he get there??"; + pixel_x = -8; + pixel_y = 7 + }, +/turf/open/space/openspace, +/area/space/nearstation) "jqR" = ( /obj/structure/reagent_dispensers/watertank, /turf/open/floor/plating, @@ -33091,20 +34718,13 @@ }, /turf/open/floor/iron/textured, /area/station/security/brig) -"jrb" = ( -/obj/structure/table, -/obj/item/pen/blue, +"jrc" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 4 + }, +/obj/item/radio/intercom/directional/east, /turf/open/floor/iron, -/area/station/engineering/gravity_generator) -"jrp" = ( -/obj/structure/window/reinforced/tinted/spawner/directional/south, -/obj/structure/table, -/obj/item/stack/cable_coil/five, -/obj/machinery/light/small/directional/west, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/commons/dorms) +/area/station/engineering/lobby) "jrt" = ( /obj/effect/turf_decal/stripes/line, /obj/effect/turf_decal/trimline/purple/filled/line, @@ -33127,16 +34747,16 @@ }, /turf/open/floor/iron/white, /area/station/maintenance/department/medical) -"jrx" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) "jrz" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/turf/open/floor/iron/large, +/obj/machinery/light/directional/south, +/obj/structure/lattice/catwalk, +/turf/open/openspace, /area/station/hallway/primary/central) +"jrC" = ( +/obj/effect/decal/cleanable/dirt, +/obj/item/trash/boritos, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "jrD" = ( /obj/structure/lattice/catwalk, /obj/machinery/light/directional/east, @@ -33149,23 +34769,18 @@ }, /turf/open/floor/iron, /area/station/construction/storage_wing) -"jrQ" = ( -/obj/structure/disposalpipe/segment, -/obj/item/paper_bin{ - pixel_y = 6; - pixel_x = -4 +"jrS" = ( +/obj/effect/turf_decal/stripes/red/line{ + dir = 10 }, -/obj/item/stamp/head/ce{ - pixel_x = 7 +/obj/machinery/status_display/ai/directional/north, +/obj/effect/turf_decal/siding/red{ + dir = 5 }, -/obj/item/stamp/denied{ - pixel_x = 7; - pixel_y = 10 +/turf/open/floor/iron/textured_corner{ + dir = 8 }, -/obj/item/pen, -/obj/structure/table/reinforced/rglass, -/turf/open/floor/engine, -/area/station/command/heads_quarters/ce) +/area/station/command/gateway) "jrT" = ( /obj/structure/railing/corner/end{ dir = 8 @@ -33175,42 +34790,40 @@ dir = 4 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"jrV" = ( -/obj/machinery/status_display/evac/directional/north, -/obj/machinery/light/directional/north, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) -"jsh" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 +/area/station/ai/satellite/interior) +"jrY" = ( +/obj/machinery/meter{ + name = "Plasma meter" }, -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) -"jsj" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/structure/crate, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) +/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ + name = "Plasma Multideck Adapter"; + dir = 2 + }, +/obj/effect/turf_decal/tile/purple/fourcorners, +/obj/effect/turf_decal/box/white, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"jsh" = ( +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/machinery/light/floor, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "jsy" = ( /obj/machinery/porta_turret/ai{ dir = 4 }, /obj/structure/lattice/catwalk, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai_upload) -"jsD" = ( -/obj/structure/lattice/catwalk, -/obj/structure/table, -/obj/item/stack/rods{ - pixel_y = 3 - }, -/obj/structure/sign/poster/contraband/lizard/directional/south, -/turf/open/openspace, -/area/station/maintenance/starboard/fore) +/area/station/ai/upload/chamber) +"jsG" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/power/apc/auto_name/directional/north, +/obj/machinery/light/small/directional/north, +/turf/open/floor/iron, +/area/station/engineering/storage_shared) "jsK" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -33219,16 +34832,6 @@ }, /turf/open/floor/iron/dark, /area/station/security/warden) -"jsQ" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark/small, -/area/station/command/heads_quarters/ce) -"jsV" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/station/engineering/atmos/upper) "jtc" = ( /obj/effect/decal/cleanable/ash, /obj/machinery/light/small/dim/directional/east, @@ -33243,6 +34846,13 @@ }, /turf/open/floor/iron/textured_large, /area/station/medical/break_room) +"jty" = ( +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 4 + }, +/obj/machinery/camera/autoname/directional/east, +/turf/open/floor/iron, +/area/station/hallway/primary/starboard) "jtE" = ( /obj/structure/lattice/catwalk, /obj/structure/railing, @@ -33272,18 +34882,20 @@ pixel_x = -6; pixel_y = 5 }, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) -"jua" = ( -/obj/structure/cable, -/obj/effect/turf_decal/trimline/brown/filled/warning{ +/obj/effect/turf_decal/stripes{ dir = 1 }, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/turf/open/floor/iron, +/turf/open/floor/iron/textured, +/area/station/command/eva) +"jua" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/iron/dark/textured, /area/station/cargo/sorting) +"jug" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/trash/mess, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "jui" = ( /obj/structure/table, /obj/item/kitchen/rollingpin{ @@ -33313,19 +34925,6 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) -"juo" = ( -/obj/effect/turf_decal/siding{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/white/line, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) "jup" = ( /obj/effect/turf_decal/tile/red/opposingcorners, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -33349,15 +34948,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/tcommsat/server) -"juz" = ( -/obj/machinery/mecha_part_fabricator/maint{ - name = "forgotten exosuit fabricator"; - drop_direction = 6 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/oil, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "juE" = ( /obj/effect/spawner/random/clothing/funny_hats, /obj/effect/spawner/random/clothing/wardrobe_closet, @@ -33365,22 +34955,11 @@ /area/station/maintenance/port) "juH" = ( /obj/effect/turf_decal/plaque{ - icon_state = "L13" - }, -/obj/effect/turf_decal/siding/green{ - dir = 1 + icon_state = "L14" }, +/obj/effect/turf_decal/siding/white, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) -"juO" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 1 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "juP" = ( /obj/structure/table, /obj/item/storage/toolbox/emergency, @@ -33412,21 +34991,6 @@ }, /turf/open/space/openspace, /area/space/nearstation) -"jvb" = ( -/obj/machinery/light/directional/west, -/obj/machinery/portable_atmospherics/canister, -/turf/open/floor/iron/dark, -/area/station/engineering/hallway) -"jvf" = ( -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 1 - }, -/obj/structure/frame/computer{ - anchored = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) "jvl" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -33441,37 +35005,15 @@ /area/station/hallway/secondary/construction) "jvB" = ( /turf/open/floor/iron/dark, -/area/station/command/bridge) -"jvL" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Ordnance Gas Storage Maintenance" - }, -/obj/effect/mapping_helpers/airlock/access/all/science/ordnance_storage, +/area/station/command/meeting_room/council) +"jvK" = ( +/obj/structure/table/reinforced, /turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"jvM" = ( -/obj/structure/chair{ - dir = 1; - pixel_y = -2 - }, -/obj/effect/landmark/start/hangover, -/turf/open/floor/glass, -/area/station/commons/fitness/recreation) +/area/station/maintenance/starboard/upper) "jvU" = ( /obj/machinery/flasher/portable, /turf/open/floor/iron/dark/smooth_large, /area/station/security/office) -"jvX" = ( -/obj/effect/turf_decal/siding{ - dir = 9 - }, -/obj/effect/turf_decal/trimline/white/line, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/maintenance, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) "jwa" = ( /turf/closed/wall/r_wall, /area/station/maintenance/starboard/central) @@ -33499,13 +35041,6 @@ }, /turf/open/floor/iron/dark, /area/station/service/chapel) -"jwu" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 4 - }, -/obj/effect/landmark/start/hangover, -/turf/open/floor/wood, -/area/station/commons/fitness/recreation) "jwB" = ( /obj/machinery/airlock_sensor/incinerator_ordmix{ pixel_x = -24 @@ -33521,19 +35056,33 @@ }, /turf/open/floor/engine, /area/station/science/ordnance/burnchamber) +"jwC" = ( +/obj/machinery/firealarm/directional/east, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "jwI" = ( -/obj/structure/railing{ - dir = 1 - }, -/obj/effect/turf_decal/siding/blue, -/obj/effect/turf_decal/siding/blue{ - dir = 1 +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/obj/effect/turf_decal/arrows{ +/obj/machinery/requests_console/auto_name/directional/north, +/obj/effect/mapping_helpers/requests_console/announcement, +/obj/effect/mapping_helpers/requests_console/assistance, +/obj/structure/cable, +/obj/effect/turf_decal/siding/wood/corner{ dir = 8 }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/hallway/primary/central) +/obj/effect/turf_decal/siding/wood/corner, +/obj/effect/mapping_helpers/requests_console/information, +/turf/open/floor/carpet/royalblue, +/area/station/command/heads_quarters/captain/private) +"jwO" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/color_adapter, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "jxa" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -33542,10 +35091,12 @@ /turf/open/floor/carpet/cyan, /area/station/command/heads_quarters/cmo) "jxc" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/poster/contraband/random/directional/east, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/obj/machinery/conveyor{ + dir = 4; + id = "cargounload" + }, +/turf/open/floor/iron/dark/textured, +/area/station/cargo/storage) "jxg" = ( /obj/effect/turf_decal/siding/wood{ dir = 8 @@ -33553,44 +35104,12 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"jxj" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/spawner/random/trash/garbage, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "jxk" = ( -/obj/structure/cable, -/obj/machinery/computer/security/telescreen/normal/directional/north{ - name = "Security Cameras Monitor" - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, -/turf/open/floor/carpet, -/area/station/command/bridge) -"jxl" = ( -/obj/item/kirbyplants/random/dead{ - name = "dead plant" - }, -/obj/item/cigbutt, -/obj/machinery/button/door/directional/west{ - id = "Cabin7"; - name = "Cabin Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 24; - specialfunctions = 4 - }, -/turf/open/floor/wood, -/area/station/commons/dorms) -"jxo" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ +/obj/structure/chair/comfy/black{ dir = 8 }, -/turf/open/floor/iron/white, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/carpet/executive, +/area/station/command/meeting_room/council) "jxt" = ( /obj/structure/ladder, /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -33622,6 +35141,10 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark, /area/station/science/robotics/lab) +"jxQ" = ( +/obj/effect/spawner/structure/window/reinforced/plasma, +/turf/open/floor/engine, +/area/station/engineering/atmos) "jxU" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -33637,25 +35160,18 @@ /obj/machinery/camera/autoname/directional/east, /turf/open/floor/iron/dark/smooth_large, /area/station/security/brig) -"jxW" = ( -/obj/machinery/computer/mech_bay_power_console, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/item/cigbutt{ - pixel_x = -12; - pixel_y = 2 +"jya" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ + dir = 1 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/obj/structure/extinguisher_cabinet/directional/west, +/turf/open/floor/iron, +/area/station/engineering/atmos/upper) "jyd" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue/anticorner/contrasted{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/hallway/primary/central) +/obj/machinery/status_display/ai/directional/south, +/turf/open/openspace, +/area/station/command/heads_quarters/hop) "jyl" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/railing, @@ -33688,24 +35204,17 @@ /turf/open/floor/iron/dark/textured_half{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "jyA" = ( /obj/structure/table, /obj/effect/spawner/random/maintenance, /turf/open/floor/carpet, /area/station/maintenance/starboard/aft) -"jyD" = ( -/obj/structure/table, -/obj/item/tape{ - pixel_x = -4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "jyI" = ( /obj/structure/chair/sofa/corp, /obj/machinery/light_switch/directional/north, /turf/open/floor/carpet/executive, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "jyK" = ( /obj/structure/railing, /obj/effect/turf_decal/siding/brown, @@ -33718,37 +35227,19 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"jyL" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "jyM" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/light/warm/dim/directional/north, -/obj/structure/cable, -/turf/open/openspace, -/area/station/hallway/primary/central) -"jyW" = ( -/obj/structure/table, -/obj/item/shard{ - pixel_x = 9 +/obj/effect/turf_decal/tile/green/opposingcorners, +/obj/structure/chair/office/light{ + dir = 8 }, -/obj/item/clothing/glasses/regular{ - pixel_x = -10; - pixel_y = 6 +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"jyP" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 1 }, -/obj/structure/sign/poster/official/corporate_perks_vacation/directional/south, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/fore) -"jyX" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron, -/area/station/commons/dorms) +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "jzk" = ( /obj/effect/turf_decal/tile/yellow/opposingcorners{ dir = 1 @@ -33759,6 +35250,15 @@ }, /turf/open/floor/iron/dark, /area/station/engineering/storage/tcomms) +"jzo" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) "jzx" = ( /obj/machinery/vending/wardrobe/law_wardrobe, /obj/machinery/firealarm/directional/east, @@ -33779,11 +35279,11 @@ /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) "jzH" = ( -/obj/machinery/door/poddoor/massdriver_trash, /obj/machinery/atmos_shield_gen/active{ dir = 1 }, /obj/machinery/atmos_shield_gen/active, +/obj/machinery/door/poddoor/massdriver_trash, /turf/open/floor/plating, /area/station/maintenance/disposal) "jzM" = ( @@ -33814,13 +35314,18 @@ /obj/structure/lattice/catwalk, /turf/open/floor/engine/hull/air, /area/station/construction/storage_wing) -"jAd" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing/corner{ +"jAg" = ( +/obj/effect/turf_decal/trimline/green/filled/line{ dir = 1 }, -/turf/open/openspace, -/area/station/engineering/break_room) +/obj/effect/turf_decal/trimline/green/filled/mid_joiner{ + dir = 1 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron/textured_large, +/area/station/medical/virology) "jAh" = ( /obj/effect/mapping_helpers/airlock/access/all/service/kitchen, /obj/machinery/door/airlock{ @@ -33838,6 +35343,15 @@ }, /turf/open/floor/engine/hull, /area/space/nearstation) +"jAx" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/abandoned, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/aft) "jAy" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 10 @@ -33859,13 +35373,13 @@ /turf/open/floor/iron/dark/textured_half, /area/station/science/ordnance) "jAO" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 1 +/obj/machinery/brm, +/obj/structure/railing{ + dir = 10 }, -/obj/structure/chair/sofa/right/brown, -/obj/item/clothing/head/soft{ - pixel_x = 2; - pixel_y = -2 +/obj/machinery/conveyor{ + dir = 4; + id = "mining" }, /turf/open/floor/iron/textured, /area/station/cargo/storage) @@ -33882,23 +35396,25 @@ }, /turf/open/floor/iron/edge, /area/station/hallway/primary/fore) -"jBb" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner, -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 8 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "jBd" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"jBh" = ( -/obj/structure/sign/poster/random/directional/west, -/obj/structure/reagent_dispensers/watertank, -/obj/effect/turf_decal/bot, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +"jBf" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ + dir = 8 + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "jBk" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -33908,49 +35424,64 @@ "jBn" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/holopad, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 8 + }, /turf/open/floor/iron, /area/station/cargo/miningoffice) -"jBs" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/general/hidden, -/obj/effect/turf_decal/siding/blue{ - dir = 4 +"jBr" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper/stack{ + dir = 8 }, -/obj/machinery/light/small/directional/north, -/obj/item/radio/intercom/directional/north, -/turf/open/floor/catwalk_floor, -/area/station/science/server) +/obj/structure/filingcabinet, +/obj/effect/spawner/random/bureaucracy/paper, +/obj/effect/spawner/random/bureaucracy/paper, +/turf/open/floor/wood, +/area/station/maintenance/aft) "jBt" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/engine/hull/air, -/area/station/command/meeting_room/council) -"jBx" = ( -/obj/structure/table/glass, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/light/floor, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, /turf/open/floor/iron/dark, -/area/station/commons/vacant_room/office) +/area/station/command/bridge) "jBI" = ( /obj/structure/cable, /obj/structure/table, /obj/item/clothing/mask/gas, /turf/open/floor/plating, /area/station/maintenance/starboard/central) -"jBK" = ( -/obj/structure/flora/grass/jungle, -/obj/structure/railing/corner, -/obj/structure/disposalpipe/segment{ - dir = 5 +"jBJ" = ( +/obj/effect/turf_decal/tile/yellow/fourcorners, +/obj/structure/closet/emcloset, +/obj/machinery/light/small/directional/north, +/obj/effect/turf_decal/bot, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/lobby) +"jBS" = ( +/obj/structure/chair/office{ + dir = 8 }, -/obj/structure/flora/tree/jungle, -/turf/open/floor/grass, -/area/station/hallway/primary/starboard) +/obj/effect/landmark/start/hangover, +/obj/effect/landmark/event_spawn, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "jBU" = ( /obj/item/reagent_containers/cup/glass/mug/tea, /obj/structure/table/wood, /turf/open/floor/carpet/orange, /area/station/commons/lounge) +"jBV" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/engineering/storage/tech) "jBW" = ( /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, @@ -33958,9 +35489,28 @@ /area/station/maintenance/solars/port/aft) "jBX" = ( /obj/effect/turf_decal/trimline/brown/filled/line, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/firealarm/directional/west, +/obj/structure/table, +/obj/item/clothing/head/soft{ + pixel_x = -7; + pixel_y = 12 + }, +/obj/item/hand_labeler{ + pixel_y = 11 + }, +/obj/item/folder/yellow{ + pixel_x = 3; + pixel_y = 1 + }, +/obj/item/stamp/granted, +/obj/item/stamp/denied{ + pixel_x = 7; + pixel_y = 8 + }, +/obj/item/hand_labeler_refill{ + pixel_x = -8; + pixel_y = 3 + }, /turf/open/floor/iron, /area/station/cargo/storage) "jBY" = ( @@ -33975,23 +35525,8 @@ /obj/structure/disposalpipe/trunk{ dir = 8 }, -/turf/open/floor/wood, +/turf/open/floor/wood/tile, /area/station/command/heads_quarters/hop) -"jCv" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/machinery/door/airlock/engineering{ - name = "Engine Room" - }, -/obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/turf/open/floor/iron, -/area/station/engineering/main) "jCz" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -34019,14 +35554,6 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/maintenance/port) -"jCJ" = ( -/obj/machinery/door/airlock/external, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/obj/effect/mapping_helpers/airlock/access/any/engineering/external, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) "jCK" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, @@ -34045,11 +35572,34 @@ /obj/machinery/airalarm/directional/east, /turf/open/floor/iron/dark, /area/station/command/teleporter) +"jCP" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "jCQ" = ( /obj/structure/chair/sofa/corp/right, /obj/effect/landmark/start/paramedic, /turf/open/floor/carpet/blue, /area/station/medical/break_room) +"jCS" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark/smooth_large, +/area/station/engineering/storage/tech) +"jCV" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/table, +/obj/item/reagent_containers/cup/beaker, +/obj/structure/disposalpipe/segment, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard) "jCW" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -34060,15 +35610,6 @@ /obj/effect/mapping_helpers/mail_sorting/service/hydroponics, /turf/open/floor/wood/large, /area/station/hallway/secondary/service) -"jCY" = ( -/obj/machinery/light/directional/south, -/obj/effect/spawner/random/techstorage/tcomms_all, -/obj/structure/rack, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) "jDe" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 6 @@ -34100,13 +35641,11 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron, /area/station/science/robotics/lab) -"jDl" = ( -/obj/item/radio/intercom/directional/north, -/obj/structure/closet/radiation, -/obj/item/clothing/glasses/meson, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/iron/dark/smooth_corner, -/area/station/engineering/main) +"jDm" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/camera/autoname/directional/west, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos) "jDn" = ( /obj/structure/chair/stool/bar/directional/north, /obj/effect/turf_decal/siding/wood, @@ -34116,27 +35655,14 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/wood/large, /area/station/commons/lounge) -"jDq" = ( -/obj/structure/lattice/catwalk, -/obj/structure/disposalpipe/trunk/multiz/down{ - dir = 1 - }, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) -"jDr" = ( -/obj/item/radio/intercom/directional/north, -/obj/effect/spawner/random/clothing/wardrobe_closet_colored, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) "jDx" = ( /obj/structure/disposalpipe/segment, /turf/closed/wall, /area/station/medical/morgue) -"jDy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/generic_maintenance_landmark, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) +"jDB" = ( +/obj/structure/sign/poster/official/random/directional/west, +/turf/open/floor/glass/reinforced, +/area/station/command/bridge) "jDD" = ( /obj/machinery/airalarm/directional/west, /obj/effect/turf_decal/tile/blue/opposingcorners{ @@ -34156,7 +35682,7 @@ /turf/open/floor/iron/dark/textured_half{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "jDO" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 1 @@ -34185,28 +35711,42 @@ /obj/structure/sign/poster/contraband/tools/directional/north, /turf/open/floor/iron, /area/station/maintenance/port/aft) -"jDY" = ( -/obj/effect/turf_decal/tile/dark_green/opposingcorners, -/obj/effect/turf_decal/tile/green/opposingcorners{ - dir = 1 - }, -/obj/item/stack/sheet/cotton{ - pixel_x = -5; - pixel_y = 15 - }, -/obj/effect/decal/cleanable/generic, -/obj/structure/closet/firecloset, -/turf/open/floor/iron, -/area/station/maintenance/starboard/fore) "jEc" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/window/reinforced/spawner/directional/east, /obj/machinery/atmospherics/components/unary/outlet_injector/on/layer2, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) +"jEd" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper{ + dir = 4 + }, +/obj/structure/fluff/paper/stack{ + dir = 5 + }, +/obj/structure/filingcabinet/chestdrawer, +/obj/effect/spawner/random/bureaucracy/paper, +/obj/item/camera_film, +/turf/open/floor/wood, +/area/station/maintenance/aft) +"jEg" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 10 + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "jEm" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) +"jEo" = ( +/obj/machinery/computer/atmos_alert/station_only{ + dir = 1 + }, +/obj/structure/window/reinforced/spawner/directional/east, +/obj/structure/window/reinforced/spawner/directional/south, +/turf/open/floor/circuit, +/area/station/command/bridge) "jEr" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -34226,20 +35766,6 @@ /obj/effect/turf_decal/tile/dark/fourcorners, /turf/open/floor/iron/dark, /area/station/hallway/primary/central) -"jEx" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"jEz" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 4; - external_pressure_bound = 140; - name = "killroom vent"; - pressure_checks = 0 - }, -/turf/open/floor/circuit/telecomms, -/area/station/science/xenobiology) "jEG" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -34253,15 +35779,11 @@ }, /turf/open/floor/iron/dark, /area/station/medical/medbay/lobby) -"jEV" = ( -/obj/structure/table, -/obj/item/folder/yellow{ - pixel_x = 4 - }, -/obj/item/pen, -/obj/item/airlock_painter, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +"jEM" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/status_display/ai/directional/south, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "jFj" = ( /obj/effect/turf_decal/trimline/dark_green/filled/line{ dir = 4 @@ -34285,19 +35807,22 @@ /area/station/security/courtroom) "jFp" = ( /obj/structure/table/wood, -/obj/item/stamp/head/captain{ - pixel_x = 7; - pixel_y = 14 - }, -/obj/item/storage/briefcase/secure{ - pixel_x = -2; - pixel_y = 4 - }, /obj/item/storage/lockbox/medal{ pixel_y = 2 }, -/turf/open/floor/carpet, +/obj/item/pen/fountain/captain{ + pixel_y = 6 + }, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) +"jFr" = ( +/obj/effect/turf_decal/tile/purple/fourcorners, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 2; + name = "Plasma to Mix" + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "jFG" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/red/opposingcorners{ @@ -34330,15 +35855,17 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) "jFV" = ( -/obj/effect/turf_decal/stripes/line{ +/obj/effect/turf_decal/trimline/yellow/warning, +/obj/effect/turf_decal/trimline/yellow/warning{ dir = 1 }, -/obj/machinery/door/poddoor/shutters{ +/obj/machinery/door/poddoor/shutters/window{ + dir = 1; id = "evashutter"; name = "E.V.A. Storage Shutter" }, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "jGh" = ( /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 @@ -34350,6 +35877,11 @@ /obj/effect/spawner/random/structure/table_or_rack, /turf/open/floor/plating, /area/station/service/kitchen/abandoned) +"jGn" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/aft) "jGq" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -34362,7 +35894,7 @@ /obj/effect/spawner/random/structure/crate, /obj/effect/spawner/random/maintenance, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "jGw" = ( /obj/structure/railing{ dir = 9 @@ -34385,6 +35917,9 @@ }, /turf/open/floor/carpet, /area/station/security/courtroom) +"jGG" = ( +/turf/closed/wall/r_wall, +/area/station/maintenance/starboard/fore/upper) "jGK" = ( /obj/effect/decal/cleanable/blood/tracks{ dir = 4 @@ -34395,18 +35930,6 @@ /obj/structure/cable, /turf/open/floor/wood, /area/station/service/abandoned_gambling_den) -"jGQ" = ( -/obj/effect/turf_decal/siding/brown/corner{ - dir = 8 - }, -/obj/effect/turf_decal/siding/brown/corner{ - dir = 4 - }, -/obj/effect/turf_decal/siding/brown/corner{ - dir = 1 - }, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) "jGT" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 @@ -34417,12 +35940,34 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) +"jHb" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/structure/chair{ + dir = 1 + }, +/turf/open/floor/plating, +/area/station/maintenance/aft) +"jHc" = ( +/obj/effect/spawner/random/maintenance/two, +/obj/structure/rack{ + pixel_y = 1 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "jHj" = ( /obj/effect/turf_decal/trimline/green/filled/corner{ dir = 8 }, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) +"jHk" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/engineering/storage_shared) "jHq" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/structure/closet_maintenance, @@ -34442,21 +35987,23 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/engineering/engine_smes) -"jHD" = ( -/obj/structure/table/wood, -/obj/effect/spawner/random/bureaucracy/paper, -/obj/item/pen{ - pixel_x = -17; +"jHH" = ( +/obj/structure/table, +/obj/item/rcl/pre_loaded{ pixel_y = 7 }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) -"jHL" = ( -/obj/machinery/vatgrower, -/obj/effect/turf_decal/trimline/purple/filled/line, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) +/obj/item/stack/pipe_cleaner_coil/random, +/obj/item/stack/pipe_cleaner_coil/random, +/obj/item/stack/pipe_cleaner_coil/random, +/obj/item/stack/pipe_cleaner_coil/random, +/obj/item/stack/pipe_cleaner_coil/random, +/obj/machinery/airalarm/directional/east, +/obj/effect/turf_decal/tile/green/opposingcorners{ + dir = 1 + }, +/obj/machinery/light/small/directional/east, +/turf/open/floor/iron/dark, +/area/station/commons/storage/art) "jHV" = ( /turf/open/floor/iron/stairs/medium{ dir = 1 @@ -34471,10 +36018,13 @@ }, /turf/open/floor/plating, /area/station/medical/cryo) -"jIs" = ( -/obj/structure/table/glass, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) +"jIl" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/cargo/miningoffice) "jIx" = ( /obj/machinery/door/airlock/hatch{ name = "MiniSat Antechamber" @@ -34484,7 +36034,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "jII" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -34511,11 +36061,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"jIZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/toy/basketball, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "jJd" = ( /obj/effect/spawner/random/structure/chair_maintenance, /turf/open/floor/plating, @@ -34527,13 +36072,6 @@ }, /turf/open/floor/wood, /area/station/service/library) -"jJm" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/components/unary/passive_vent/layer2{ - dir = 4 - }, -/turf/open/space/basic, -/area/space/nearstation) "jJC" = ( /obj/structure/table/reinforced, /obj/item/paper_bin{ @@ -34551,14 +36089,15 @@ }, /turf/open/floor/iron, /area/station/engineering/lobby) +"jJE" = ( +/obj/structure/lattice/catwalk, +/turf/open/water/no_planet_atmos, +/area/station/maintenance/port/fore) "jJH" = ( -/obj/structure/chair/comfy/carp{ - dir = 1; - name = "Captain's Chair" - }, /obj/machinery/light/floor, -/turf/open/floor/carpet, -/area/station/command/bridge) +/obj/structure/chair/comfy/black, +/turf/open/floor/carpet/executive, +/area/station/command/meeting_room/council) "jJP" = ( /obj/machinery/vending/coffee, /obj/item/radio/intercom/directional/east, @@ -34571,6 +36110,9 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"jJU" = ( +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "jJX" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -34580,7 +36122,7 @@ dir = 8 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "jJZ" = ( /obj/effect/decal/cleanable/glitter{ color = "ff8080" @@ -34593,34 +36135,35 @@ /turf/open/floor/engine/hull/air, /area/station/maintenance/port) "jKo" = ( -/obj/structure/table/wood, -/obj/item/lighter{ - pixel_x = 7; - pixel_y = -11 - }, -/obj/item/cigarette/cigar{ - pixel_x = 3; - pixel_y = 6 - }, -/obj/item/reagent_containers/cup/glass/coffee{ - pixel_x = -8; - pixel_y = -9 - }, -/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "jKp" = ( /turf/closed/wall, /area/station/medical/patients_rooms/room_a) "jKF" = ( +/obj/effect/turf_decal/trimline/yellow/warning{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/yellow/warning{ + dir = 4 + }, /obj/machinery/door/poddoor/shutters{ id = "gateshutter"; name = "Gateway Access Shutter" }, -/turf/open/floor/iron, +/turf/open/floor/iron/dark/smooth_large, /area/station/command/gateway) +"jKL" = ( +/obj/machinery/requests_console/directional/west, +/obj/effect/mapping_helpers/requests_console/supplies, +/obj/effect/mapping_helpers/requests_console/assistance, +/obj/structure/chair/office, +/obj/effect/turf_decal/trimline/yellow/filled/warning, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "jKX" = ( /turf/closed/wall/r_wall, /area/station/command/heads_quarters/cmo) @@ -34650,7 +36193,7 @@ dir = 4 }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "jLl" = ( /obj/structure/cable, /obj/effect/turf_decal/trimline/purple/filled/corner{ @@ -34673,17 +36216,6 @@ /obj/item/radio/intercom/directional/south, /turf/open/openspace, /area/station/security/checkpoint/science) -"jLt" = ( -/obj/structure/sign/poster/official/random/directional/south, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, -/obj/machinery/computer/security/telescreen/engine/directional/south{ - name = "Engine Camera Monitor" - }, -/obj/effect/turf_decal/trimline/red/filled/line, -/turf/open/floor/iron/dark, -/area/station/security/checkpoint/engineering) "jLu" = ( /obj/machinery/telecomms/processor/preset_three, /obj/effect/turf_decal/tile/red/fourcorners, @@ -34706,6 +36238,26 @@ }, /turf/open/floor/iron/textured_large, /area/station/security/prison/rec) +"jLD" = ( +/obj/structure/ladder, +/obj/effect/turf_decal/stripes/box, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/office) +"jLE" = ( +/obj/machinery/door/airlock/atmos/glass{ + name = "Atmospherics Testing Room" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, +/obj/machinery/door/firedoor/heavy, +/turf/open/floor/plating, +/area/station/engineering/atmos/upper) +"jLS" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/effect/turf_decal/stripes/white/line{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "jLY" = ( /obj/effect/turf_decal/stripes/corner{ dir = 8 @@ -34714,28 +36266,49 @@ /area/station/service/kitchen) "jMi" = ( /obj/machinery/camera/autoname/directional/south, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge, /area/station/hallway/primary/central) "jMo" = ( /obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, +/obj/structure/chair/comfy/black{ + dir = 4 + }, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) "jMr" = ( /turf/closed/wall, /area/station/hallway/secondary/exit/departure_lounge) +"jMu" = ( +/obj/structure/sign/directions/evac/directional/east{ + dir = 1; + pixel_y = 5; + pixel_x = 0 + }, +/obj/structure/sign/directions/engineering/directional/east{ + pixel_y = -1; + pixel_x = 0 + }, +/obj/structure/sign/directions/supply/directional/east{ + pixel_y = -7; + pixel_x = 0 + }, +/turf/closed/wall, +/area/station/commons/toilet/restrooms) "jMy" = ( /obj/structure/lattice/catwalk, /obj/effect/landmark/start/hangover, /turf/open/openspace, /area/station/commons/vacant_room/office) -"jMG" = ( -/obj/machinery/atmospherics/components/binary/pump{ - name = "Port to Engine"; - dir = 8 +"jMC" = ( +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 }, -/obj/effect/turf_decal/trimline/brown, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "jML" = ( /obj/effect/decal/cleanable/confetti, /turf/open/floor/plating, @@ -34756,12 +36329,31 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/station/maintenance/port) -"jNk" = ( -/obj/structure/rack, -/obj/item/storage/box/flashes{ - pixel_x = 3 - }, -/obj/effect/turf_decal/box/corners{ +"jNg" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/structure/table, +/obj/structure/microscope, +/obj/effect/turf_decal/trimline/purple/filled/line{ + dir = 9 + }, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/upper) +"jNh" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/light/floor, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"jNk" = ( +/obj/structure/rack, +/obj/item/storage/box/flashes{ + pixel_x = 3 + }, +/obj/effect/turf_decal/box/corners{ dir = 8 }, /turf/open/floor/iron/dark/smooth_large, @@ -34772,6 +36364,14 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/construction) +"jNu" = ( +/obj/item/radio/intercom/directional/east, +/obj/effect/landmark/firealarm_sanity, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/turf/open/floor/wood, +/area/station/commons/toilet/restrooms) "jNC" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 10 @@ -34781,6 +36381,13 @@ /obj/machinery/light_switch/directional/south, /turf/open/floor/iron/dark/smooth_large, /area/station/security/mechbay) +"jNG" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 9 + }, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "jNL" = ( /obj/machinery/airalarm/directional/east, /obj/effect/turf_decal/trimline/dark/arrow_ccw{ @@ -34793,6 +36400,20 @@ dir = 4 }, /area/station/hallway/secondary/exit/departure_lounge) +"jNW" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 8 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "jOe" = ( /obj/structure/railing{ dir = 4 @@ -34807,40 +36428,72 @@ /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) "jOi" = ( -/obj/structure/sign/directions/engineering/directional/south{ - dir = 4; - pixel_y = -22 +/obj/structure/sign/directions/evac/directional/north{ + dir = 8; + pixel_y = 0 }, -/obj/structure/sign/directions/dorms/directional/south{ - dir = 4; - pixel_y = -28 +/obj/structure/sign/directions/medical/directional/north{ + dir = 8; + pixel_y = 10 }, -/obj/structure/sign/directions/security{ +/obj/structure/sign/directions/command{ dir = 8; - pixel_y = -40 + pixel_y = -10 }, -/obj/structure/sign/directions/supply{ - dir = 4; - pixel_y = -34 +/turf/closed/wall, +/area/station/commons/storage/primary) +"jOm" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/effect/turf_decal/siding/yellow{ + dir = 5 }, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) +/turf/open/floor/iron, +/area/station/engineering/atmos/upper) "jOE" = ( /turf/closed/wall, /area/station/service/lawoffice) +"jOG" = ( +/obj/structure/closet/secure_closet/personal, +/obj/effect/spawner/random/clothing/backpack, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted, +/turf/open/floor/iron/dark, +/area/station/commons/locker) "jOH" = ( /turf/open/floor/iron/dark, /area/station/security/brig) -"jOT" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/junction/flip, -/turf/open/floor/wood, +"jOJ" = ( +/obj/structure/curtain, +/obj/machinery/duct, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/structure/fluff/shower_drain, +/turf/open/floor/iron/freezer, /area/station/commons/dorms) +"jOO" = ( +/turf/closed/wall/r_wall, +/area/station/commons/fitness/recreation) +"jOZ" = ( +/obj/machinery/light_switch/directional/north, +/obj/structure/closet/wardrobe/white, +/obj/machinery/light/cold/directional/north, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "jPa" = ( /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/hallway/primary/starboard) +"jPe" = ( +/obj/structure/extinguisher_cabinet/directional/east, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 8 + }, +/obj/structure/closet/masks, +/turf/open/floor/iron/dark, +/area/station/commons/fitness/recreation) "jPh" = ( /obj/structure/broken_flooring/pile/directional/south, /turf/open/floor/plating, @@ -34862,6 +36515,14 @@ /obj/effect/spawner/random/maintenance/no_decals, /turf/open/space/basic, /area/space/nearstation) +"jPz" = ( +/obj/machinery/door/airlock/external, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/external, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "jPC" = ( /obj/effect/turf_decal/siding/dark{ dir = 5 @@ -34879,6 +36540,18 @@ /obj/structure/chair/office, /turf/open/floor/iron/dark/textured_large, /area/station/medical/virology) +"jPV" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/caution/stand_clear{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "jPW" = ( /obj/structure/flora/bush/ferny/style_random, /obj/structure/flora/bush/fullgrass/style_random, @@ -34902,19 +36575,10 @@ /obj/structure/cable, /turf/open/floor/wood, /area/station/security/courtroom) -"jQu" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) "jQw" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ - dir = 4 - }, +/obj/structure/sign/poster/official/random/directional/east, /turf/open/openspace, -/area/station/hallway/primary/central) +/area/station/command/eva) "jQA" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 @@ -34922,11 +36586,11 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/evidence) -"jQK" = ( -/obj/effect/turf_decal/tile/purple/half{ - dir = 1 +"jQH" = ( +/obj/machinery/atmospherics/pipe/smart/simple/dark/visible{ + dir = 5 }, -/turf/open/floor/iron/smooth, +/turf/open/floor/iron/dark, /area/station/engineering/atmos/upper) "jQL" = ( /obj/effect/decal/cleanable/dirt, @@ -34935,7 +36599,7 @@ name = "ai intercom" }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "jQO" = ( /turf/closed/wall, /area/station/science/ordnance/bomb) @@ -34943,16 +36607,19 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"jQQ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) "jRb" = ( /obj/machinery/portable_atmospherics/canister/carbon_dioxide, /turf/open/floor/engine/co2, /area/station/engineering/atmos/upper) +"jRe" = ( +/obj/structure/sign/poster/random/directional/north, +/obj/machinery/conveyor{ + dir = 4; + id = "packageSort2" + }, +/obj/structure/window/spawner/directional/south, +/turf/open/floor/iron/dark/textured, +/area/station/cargo/sorting) "jRg" = ( /obj/effect/turf_decal/trimline/red/filled/warning{ dir = 10 @@ -34962,36 +36629,17 @@ /obj/machinery/airalarm/directional/west, /turf/open/floor/iron/dark/smooth_large, /area/station/security/brig) -"jRo" = ( -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/atmos/upper) -"jRB" = ( -/obj/structure/window/reinforced/spawner/directional/east, -/obj/structure/transit_tube/station/dispenser/flipped{ - dir = 1 - }, +"jRq" = ( +/obj/machinery/duct, /obj/structure/cable, -/obj/machinery/airalarm/directional/north, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/station/engineering/transit_tube) +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "jRH" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ +/obj/effect/turf_decal/stripes/line{ dir = 8 }, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) -"jRJ" = ( -/obj/structure/rack, -/obj/effect/spawner/random/techstorage/security_all, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 - }, -/obj/machinery/airalarm/directional/west, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/gateway) "jRL" = ( /obj/machinery/ai_slipper{ uses = 10 @@ -35000,12 +36648,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) -"jRZ" = ( -/obj/structure/table/wood, -/obj/effect/spawner/random/bureaucracy/paper, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) +/area/station/ai/satellite/chamber) +"jRQ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/gravity_generator) "jSf" = ( /turf/closed/wall/r_wall, /area/station/engineering/main) @@ -35018,6 +36666,8 @@ /obj/machinery/mass_driver/trash{ dir = 4 }, +/obj/machinery/light/small/directional/south, +/obj/effect/turf_decal/stripes/red/box, /turf/open/floor/plating, /area/station/maintenance/disposal) "jSA" = ( @@ -35036,6 +36686,13 @@ /obj/structure/window/reinforced/plasma/spawner/directional/north, /turf/open/space/basic, /area/space/nearstation) +"jSK" = ( +/obj/effect/turf_decal/siding/wood, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/wood/tile, +/area/station/security/detectives_office/private_investigators_office) "jSO" = ( /obj/effect/turf_decal/arrows/white{ color = "#00AAFF"; @@ -35045,25 +36702,16 @@ /turf/open/floor/engine, /area/station/engineering/atmos/hfr_room) "jSV" = ( -/obj/structure/table/wood, -/obj/item/paper_bin{ - pixel_x = -4; - pixel_y = 17 - }, -/obj/item/folder/blue{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) -"jSW" = ( -/obj/machinery/vending/cigarette, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/white, -/area/station/maintenance/starboard/lesser) +/obj/machinery/door/window/brigdoor/left/directional/south{ + name = "Command Desk"; + req_access = list("command") + }, +/obj/machinery/holopad, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "jSY" = ( /obj/effect/landmark/transport/transport_id{ specific_transport_id = "catwalk_sec" @@ -35089,13 +36737,19 @@ dir = 4 }, /area/station/service/chapel) -"jTx" = ( +"jTp" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment{ - dir = 4 +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) +"jTG" = ( +/obj/structure/lattice/catwalk, +/obj/structure/chair{ + dir = 1 }, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) +/turf/open/openspace, +/area/station/maintenance/aft/upper) "jTO" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 @@ -35141,35 +36795,15 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/port) -"jUx" = ( -/obj/effect/turf_decal/tile/blue/opposingcorners{ - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/medical/medbay/lobby) "jUz" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/construction/storage_wing) -"jUI" = ( -/obj/item/clothing/head/cone{ - pixel_x = 8; - pixel_y = -6 - }, -/obj/effect/decal/cleanable/dirt, +"jUW" = ( +/obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"jUS" = ( -/obj/structure/flora/bush/fullgrass/style_random, -/obj/structure/flora/bush/ferny/style_random, -/turf/open/floor/grass, -/area/station/maintenance/starboard/fore) +/area/station/maintenance/starboard/central/upper) "jUX" = ( /obj/effect/turf_decal/trimline/red/warning{ dir = 6 @@ -35196,6 +36830,8 @@ "jVs" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light/very_dim/directional/north, +/obj/effect/spawner/random/structure/closet_maintenance, +/obj/effect/spawner/random/maintenance, /turf/open/floor/plating, /area/station/maintenance/disposal) "jVu" = ( @@ -35208,6 +36844,12 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/aft) +"jVv" = ( +/obj/machinery/vatgrower, +/obj/effect/turf_decal/trimline/purple/filled/line, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) "jVB" = ( /turf/closed/wall/r_wall, /area/station/engineering/gravity_generator) @@ -35218,6 +36860,21 @@ /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/commons/lounge) +"jVN" = ( +/obj/machinery/door/airlock/atmos/glass{ + name = "Atmospherics" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, +/obj/machinery/door/firedoor, +/obj/structure/cable, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "atmosuppersm" + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/office) "jVP" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, @@ -35228,6 +36885,9 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) +"jVX" = ( +/turf/open/floor/engine/hull/air, +/area/station/maintenance/department/crew_quarters/dorms) "jVY" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/smooth_large, @@ -35294,14 +36954,14 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/surgery) -"jWJ" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) "jWP" = ( -/obj/machinery/light/floor, -/turf/open/floor/wood, -/area/station/command/meeting_room/council) +/obj/machinery/computer/records/security{ + dir = 4 + }, +/obj/effect/turf_decal/tile/green/opposingcorners, +/obj/structure/window/reinforced/spawner/directional/south, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "jWT" = ( /obj/structure/railing/corner{ dir = 8 @@ -35309,7 +36969,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) "jXe" = ( /obj/structure/table/wood, @@ -35337,11 +36997,9 @@ /turf/open/floor/iron/dark/textured, /area/station/science/xenobiology) "jXm" = ( -/obj/structure/ladder, -/obj/machinery/light/small/directional/south, -/obj/effect/turf_decal/delivery, -/turf/open/floor/wood/parquet, -/area/station/command/heads_quarters/qm) +/obj/structure/disposalpipe/segment, +/turf/closed/wall, +/area/station/cargo/storage) "jXC" = ( /obj/structure/table, /obj/item/instrument/eguitar{ @@ -35351,6 +37009,20 @@ /obj/machinery/light/directional/south, /turf/open/floor/wood/large, /area/station/service/theater_dressing) +"jXR" = ( +/obj/machinery/camera/autoname/directional/south, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/door/firedoor/heavy, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) +"jXS" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/holopad, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "jXX" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, @@ -35367,6 +37039,7 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/cobweb/cobweb2, +/obj/machinery/light_switch/directional/north, /turf/open/floor/iron/textured, /area/station/cargo/warehouse) "jYb" = ( @@ -35405,20 +37078,26 @@ /area/station/hallway/secondary/construction) "jYs" = ( /obj/effect/turf_decal/trimline/brown/filled/line, -/obj/machinery/photocopier/prebuilt, +/obj/structure/table, +/obj/item/paper_bin{ + pixel_x = 6; + pixel_y = 9 + }, +/obj/item/paper_bin{ + pixel_x = 1 + }, +/obj/item/pen, +/obj/machinery/status_display/evac/directional/east, /turf/open/floor/iron, /area/station/cargo/storage) -"jYE" = ( -/obj/structure/rack, -/obj/effect/spawner/random/maintenance, -/obj/item/storage/toolbox/fishing, -/obj/item/storage/box/lights/mixed{ - pixel_x = -8; - pixel_y = 1 +"jYI" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 }, -/obj/structure/lattice/catwalk, -/turf/open/water, -/area/station/maintenance/port/fore) +/turf/open/floor/iron/dark/smooth_edge{ + dir = 4 + }, +/area/station/command/gateway) "jYJ" = ( /obj/effect/turf_decal/siding/blue{ dir = 1 @@ -35440,6 +37119,18 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) +"jYR" = ( +/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ + name = "N2 Multideck Adapter"; + dir = 2 + }, +/obj/machinery/meter{ + name = "N2 meter" + }, +/obj/effect/turf_decal/tile/red/fourcorners, +/obj/effect/turf_decal/box/white, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "jYS" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -35454,24 +37145,20 @@ /turf/open/floor/plating, /area/station/science/robotics) "jZl" = ( -/obj/machinery/suit_storage_unit/mining/eva, -/turf/open/floor/wood/parquet, -/area/station/command/heads_quarters/qm) +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/trash/mess, +/turf/open/floor/plating, +/area/station/maintenance/disposal) "jZs" = ( /obj/structure/disposalpipe/segment{ dir = 4 }, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) -"jZx" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) -"jZL" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/wood, -/area/station/commons/dorms) +"jZQ" = ( +/obj/item/cigbutt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "jZR" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -35490,6 +37177,10 @@ }, /turf/open/openspace, /area/station/hallway/primary/starboard) +"kaj" = ( +/obj/item/radio/intercom/directional/north, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "kak" = ( /obj/effect/turf_decal/siding/purple/corner{ dir = 4 @@ -35499,11 +37190,34 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/science/xenobiology/hallway) +"kaq" = ( +/obj/effect/landmark/start/hangover, +/turf/open/floor/iron, +/area/station/commons/dorms) +"kas" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing, +/turf/open/openspace, +/area/station/maintenance/department/crew_quarters/dorms) +"kau" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "kax" = ( /turf/open/floor/iron/white/smooth_half{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) +"kay" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/light/small/directional/west, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/engine, +/area/station/engineering/atmos) "kaF" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -35516,14 +37230,22 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/medical/medbay/lobby) -"kaN" = ( -/obj/structure/cable, -/obj/effect/decal/cleanable/crayon{ - icon_state = "nay"; - pixel_y = 32 +"kaI" = ( +/obj/structure/table/wood, +/obj/effect/spawner/random/bureaucracy/paper, +/turf/open/floor/wood, +/area/station/maintenance/aft) +"kaW" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/disposalpipe/sorting/mail/flip{ + dir = 1 }, +/obj/effect/mapping_helpers/mail_sorting/science/genetics, +/obj/effect/mapping_helpers/mail_sorting/science/rd_office, +/obj/effect/mapping_helpers/mail_sorting/science/xenobiology, +/obj/effect/mapping_helpers/mail_sorting/science/research, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard) "kbe" = ( /obj/structure/lattice/catwalk, /obj/structure/railing/corner, @@ -35531,11 +37253,18 @@ /turf/open/openspace, /area/station/maintenance/port/aft) "kbf" = ( -/obj/effect/spawner/random/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/disposalpipe/segment, /turf/open/floor/iron, /area/station/cargo/storage) +"kbh" = ( +/obj/structure/lattice/catwalk, +/obj/structure/sign/warning/radiation/rad_area/directional/south, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "kbj" = ( /obj/structure/closet/emcloset, /obj/effect/decal/cleanable/dirt, @@ -35546,6 +37275,12 @@ /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/iron/dark, /area/station/tcommsat/server) +"kbo" = ( +/obj/item/binoculars, +/obj/item/toy/basketball, +/obj/structure/closet, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "kbr" = ( /obj/structure/table/reinforced, /obj/item/clothing/glasses/science, @@ -35570,7 +37305,7 @@ /obj/structure/rack, /obj/effect/spawner/random/armory/shotgun, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "kbB" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/blue/full, @@ -35579,25 +37314,17 @@ /obj/machinery/light/floor/broken, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) -"kbQ" = ( -/obj/machinery/light/directional/east, -/obj/item/kirbyplants/random/fullysynthetic, -/obj/effect/turf_decal/stripes/line{ +"kbH" = ( +/obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ dir = 5 }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"kbR" = ( -/obj/machinery/newscaster/directional/south, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) -"kbS" = ( -/obj/structure/cable, -/obj/structure/closet/secure_closet/engineering_personal{ - anchored = 1 - }, /turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/area/station/engineering/atmos/upper) +"kbY" = ( +/obj/structure/table, +/obj/effect/spawner/random/trash/soap, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/aft/upper) "kci" = ( /obj/effect/turf_decal/siding/purple, /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -35610,6 +37337,10 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/primary/starboard) +"kct" = ( +/obj/machinery/atmospherics/pipe/smart/manifold/green/visible, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "kcx" = ( /obj/structure/lattice/catwalk, /obj/structure/table, @@ -35619,11 +37350,15 @@ }, /turf/open/openspace, /area/station/maintenance/port/aft) -"kcA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/reagent_dispensers/beerkeg, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) +"kcC" = ( +/obj/structure/railing/corner/end/flip, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) +"kcL" = ( +/obj/structure/bookcase/random, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "kcM" = ( /obj/structure/disposalpipe/trunk/multiz{ dir = 4 @@ -35634,12 +37369,21 @@ /obj/machinery/door/airlock/maintenance, /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/central) +"kcY" = ( +/obj/structure/window/reinforced/plasma/spawner/directional/north, +/obj/machinery/power/energy_accumulator/grounding_rod/anchored, +/obj/machinery/atmospherics/pipe/smart/manifold/orange/visible{ + dir = 1 + }, +/obj/structure/cable, +/turf/open/floor/engine, +/area/station/engineering/supermatter) "kdk" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, @@ -35657,12 +37401,12 @@ /turf/open/floor/plating, /area/station/security/brig) "kdp" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 - }, /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/checkpoint/supply) "kdq" = ( @@ -35687,7 +37431,7 @@ }, /obj/machinery/camera/autoname/motion/directional/south, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "kdv" = ( /obj/structure/railing{ dir = 1 @@ -35700,22 +37444,13 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "kdC" = ( /obj/structure/fake_stairs/directional/east{ name = "stairs" }, /turf/open/floor/iron/dark, /area/station/science/cytology) -"kdE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/sink/directional/west, -/obj/structure/mirror/broken/directional/east, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"kdG" = ( -/turf/open/floor/wood, -/area/station/commons/dorms) "kdN" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/line{ @@ -35724,10 +37459,13 @@ /turf/open/floor/plating, /area/station/construction/storage_wing) "kdQ" = ( -/obj/structure/window/reinforced/spawner/directional/north, -/obj/effect/landmark/start/quartermaster, -/turf/open/floor/iron/dark, -/area/station/command/heads_quarters/qm) +/obj/effect/turf_decal/caution/stand_clear/red{ + dir = 8 + }, +/turf/open/floor/iron/dark/smooth_edge{ + dir = 4 + }, +/area/station/cargo/storage) "kdR" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, @@ -35735,17 +37473,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/openspace, /area/station/hallway/primary/starboard) -"kdZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/generic, -/obj/item/radio/intercom/directional/north, -/obj/machinery/light_switch/directional/east, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 - }, -/obj/structure/closet/firecloset, -/turf/open/floor/iron/smooth, -/area/station/engineering/hallway) "keh" = ( /obj/effect/landmark/event_spawn, /turf/open/floor/iron/dark/textured_large, @@ -35769,9 +37496,19 @@ /obj/item/cigbutt, /turf/open/floor/iron/dark/textured_half, /area/station/cargo/bitrunning/den) +"kep" = ( +/obj/machinery/light/directional/west, +/obj/effect/turf_decal/stripes/box, +/obj/structure/ladder, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "keq" = ( -/obj/effect/turf_decal/siding/white/corner, -/turf/open/floor/iron/dark/smooth_large, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/iron/edge{ + dir = 4 + }, /area/station/hallway/primary/central) "kew" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on, @@ -35790,19 +37527,6 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"keE" = ( -/obj/effect/spawner/random/maintenance, -/obj/structure/table, -/obj/item/reagent_containers/cup/soda_cans/random{ - pixel_x = -5; - pixel_y = -18 - }, -/obj/item/reagent_containers/cup/soda_cans/random{ - pixel_x = 5; - pixel_y = -16 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "keM" = ( /obj/structure/lattice/catwalk, /obj/item/wirecutters{ @@ -35815,11 +37539,6 @@ /obj/machinery/holopad, /turf/open/floor/plating, /area/station/hallway/secondary/entry) -"keY" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) "keZ" = ( /obj/effect/turf_decal/trimline/dark_green/filled/line{ dir = 8 @@ -35843,8 +37562,18 @@ pixel_y = 2 }, /obj/item/pen/fourcolor, -/turf/open/floor/wood, +/turf/open/floor/wood/tile, /area/station/command/heads_quarters/hop) +"kfo" = ( +/obj/structure/closet/secure_closet/personal, +/obj/effect/spawner/random/clothing/backpack, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted, +/obj/machinery/airalarm/directional/north, +/turf/open/floor/iron/dark, +/area/station/commons/locker) "kfs" = ( /obj/machinery/door/poddoor/shutters/preopen{ id = "chapel_shutters_space"; @@ -35853,14 +37582,6 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/service/chapel) -"kfv" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 4 - }, -/obj/machinery/power/apc/auto_name/directional/south, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "kfA" = ( /obj/effect/turf_decal/siding/white, /obj/item/kirbyplants/organic/plant21{ @@ -35869,6 +37590,12 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) +"kfI" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/engine, +/area/station/engineering/atmos) "kfO" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/turf_decal/box/corners{ @@ -35881,54 +37608,53 @@ /obj/item/radio/intercom/directional/north, /turf/open/floor/plating, /area/station/maintenance/solars/port/aft) -"kgf" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "kgg" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/landmark/generic_maintenance_landmark, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"kgi" = ( +"kgr" = ( /obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/disposalpipe/segment{ - dir = 10 +/obj/machinery/door/airlock/public/glass{ + name = "Abandoned Hallway" }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) -"kgo" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/spawner/structure/window/reinforced/plasma, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) +/obj/machinery/door/firedoor, +/turf/open/floor/iron, +/area/station/hallway/secondary/construction) "kgE" = ( /obj/structure/ladder, /turf/open/floor/plating, /area/station/service/kitchen/abandoned) +"kgM" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/duct, +/obj/structure/railing/corner/end{ + dir = 4 + }, +/turf/open/floor/catwalk_floor/iron, +/area/station/commons/dorms) "khi" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/carpet, /area/station/command/corporate_showroom) +"khk" = ( +/obj/effect/turf_decal/stripes/line, +/obj/structure/sign/warning/directional/east, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "khm" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/glass, /area/station/maintenance/port) -"khn" = ( -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "kho" = ( /obj/structure/ladder, /turf/open/floor/plating, @@ -35952,7 +37678,7 @@ }, /obj/machinery/airalarm/directional/south, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "khF" = ( /obj/machinery/door/firedoor, /turf/open/floor/engine/hull/air, @@ -36024,24 +37750,19 @@ }, /turf/open/floor/plating/airless, /area/station/maintenance/starboard/aft) -"kiA" = ( -/obj/structure/musician/piano, -/obj/effect/turf_decal/tile/dark_blue/opposingcorners, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) -"kiE" = ( -/obj/effect/spawner/random/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "kiS" = ( /obj/structure/lattice, /turf/open/openspace, /area/station/hallway/primary/aft) -"kiT" = ( -/obj/structure/cable, -/obj/effect/spawner/random/structure/steam_vent, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +"kiY" = ( +/obj/structure/table, +/obj/item/reagent_containers/cup/glass/mug{ + pixel_x = -3; + pixel_y = 4 + }, +/obj/effect/spawner/random/entertainment/coin, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "kje" = ( /obj/structure/flora/bush/pale/style_random, /obj/structure/flora/bush/fullgrass/style_random, @@ -36050,6 +37771,10 @@ /obj/structure/cable, /turf/open/floor/grass, /area/station/hallway/secondary/entry) +"kjg" = ( +/obj/machinery/camera/autoname/directional/west, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/gravity_generator) "kjh" = ( /obj/structure/table, /obj/item/restraints/handcuffs{ @@ -36058,6 +37783,15 @@ /obj/structure/sign/poster/ripped/directional/north, /turf/open/floor/iron/dark, /area/station/security/interrogation) +"kjn" = ( +/obj/structure/window/reinforced/spawner/directional/south, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/item/kirbyplants/photosynthetic{ + pixel_y = 5; + pixel_x = -7 + }, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "kjq" = ( /obj/structure/cable, /obj/effect/turf_decal/weather/snow, @@ -36066,6 +37800,10 @@ /obj/item/clothing/glasses/cold, /turf/open/floor/iron/kitchen_coldroom/freezerfloor, /area/station/medical/coldroom) +"kjr" = ( +/obj/structure/cable, +/turf/closed/wall, +/area/station/maintenance/starboard) "kjF" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/junction/yjunction{ @@ -36080,40 +37818,37 @@ dir = 4 }, /area/station/science/ordnance/storage) -"kjN" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) -"kjQ" = ( -/obj/structure/chair/office, -/obj/structure/cable, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/light/floor, -/turf/open/floor/iron/dark/small, -/area/station/command/heads_quarters/ce) "kka" = ( /obj/effect/turf_decal/tile/dark_green{ - dir = 8 + dir = 1 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 }, +/obj/effect/turf_decal/tile/neutral/half/contrasted, /turf/open/floor/iron/dark, /area/station/hallway/primary/central) "kkd" = ( -/obj/effect/turf_decal/tile/neutral/half/contrasted, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 +/obj/effect/turf_decal/tile/purple/half/contrasted{ + dir = 8 }, -/obj/effect/turf_decal/tile/dark_green{ - dir = 1 +/obj/effect/turf_decal/tile/neutral/half/contrasted{ + dir = 4 }, /turf/open/floor/iron/dark, /area/station/hallway/primary/central) -"kkn" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/urinal/directional/north, +"kki" = ( +/obj/item/pushbroom, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/upper) +"kkw" = ( +/obj/machinery/door/airlock/external, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/aft) "kkC" = ( /obj/effect/turf_decal/trimline/red/corner{ dir = 4 @@ -36146,19 +37881,15 @@ /obj/machinery/computer/security/telescreen/rd/directional/east, /turf/open/floor/wood, /area/station/command/heads_quarters/rd) -"kkM" = ( -/obj/effect/turf_decal/siding, -/obj/effect/turf_decal/trimline/white/line{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, +"kkQ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, /obj/structure/disposalpipe/segment{ - dir = 4 + dir = 9 }, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/plating, +/area/station/maintenance/starboard/central) "kkT" = ( /obj/structure/railing/corner/end/flip{ dir = 4 @@ -36206,6 +37937,12 @@ }, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) +"klh" = ( +/obj/machinery/atmospherics/pipe/smart/manifold/yellow/visible{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "kll" = ( /obj/effect/turf_decal/siding/wood/end{ dir = 4 @@ -36215,15 +37952,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood/large, /area/station/service/library) -"klx" = ( -/obj/structure/table, -/obj/machinery/status_display/ai/directional/north, -/obj/effect/spawner/random/techstorage/rnd_secure_all, -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) "kly" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 1 @@ -36234,6 +37962,30 @@ /obj/machinery/light_switch/directional/north, /turf/open/floor/iron/dark/textured, /area/station/construction/mining/aux_base) +"klA" = ( +/obj/machinery/button/door/directional/south{ + id = "ceprivacy"; + name = "Privacy Shutters Control"; + pixel_y = -2; + pixel_x = -7 + }, +/obj/machinery/button/door/directional/west{ + id = "transitlockdown"; + name = "Transit Tube Lockdown"; + pixel_x = 7; + pixel_y = -2 + }, +/obj/machinery/button/door{ + id = "securestoragecw"; + name = "Secure Storage"; + pixel_y = 8 + }, +/obj/structure/table/reinforced/rglass, +/obj/effect/turf_decal/siding/yellow/end{ + dir = 4 + }, +/turf/open/floor/engine, +/area/station/command/heads_quarters/ce) "klB" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -36269,6 +38021,17 @@ }, /turf/open/floor/wood/large, /area/station/hallway/primary/central) +"klQ" = ( +/obj/structure/grille, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"klU" = ( +/obj/effect/turf_decal/trimline/brown/filled/line, +/obj/structure/closet/secure_closet/miner, +/obj/machinery/power/apc/auto_name/directional/south, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/cargo/miningoffice) "kmh" = ( /obj/structure/lattice/catwalk, /obj/structure/railing/corner/end/flip{ @@ -36276,11 +38039,25 @@ }, /turf/open/space/openspace, /area/space/nearstation) -"kmm" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line, -/obj/machinery/vending/coffee, -/turf/open/floor/iron, -/area/station/engineering/lobby) +"kml" = ( +/obj/structure/bed{ + dir = 4 + }, +/obj/effect/spawner/random/bedsheet{ + dir = 4 + }, +/obj/machinery/light/small/directional/north, +/turf/open/floor/wood, +/area/station/commons/dorms) +"kmv" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) +"kmz" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/iron/freezer, +/area/station/engineering/atmos/pumproom) "kmD" = ( /obj/machinery/light_switch/directional/north, /obj/effect/turf_decal/trimline/red/filled/line{ @@ -36307,7 +38084,7 @@ preset_destination_names = list("2"="AI Maintenance","3"="AI Stowed") }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "kmH" = ( /obj/effect/landmark/firealarm_sanity, /turf/open/openspace, @@ -36317,27 +38094,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/smooth_large, /area/station/science/explab) -"kmL" = ( -/obj/item/clothing/head/soft/grey{ - pixel_x = -2; - pixel_y = 3 - }, -/obj/effect/decal/cleanable/dirt, -/obj/item/plunger{ - pixel_x = 6; - pixel_y = 2 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"kmQ" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "kmS" = ( /obj/effect/turf_decal/trimline/red/filled/corner{ dir = 8 @@ -36348,15 +38104,18 @@ /obj/item/kirbyplants/random, /turf/open/floor/iron/dark, /area/station/security/brig) -"kmY" = ( -/obj/structure/lattice/catwalk, -/obj/effect/spawner/random/maintenance, -/turf/open/space/basic, -/area/space/nearstation) +"kmT" = ( +/obj/effect/turf_decal/trimline/dark, +/obj/machinery/atmospherics/components/binary/pump{ + name = "Port to Incinerator"; + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "kmZ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "knf" = ( /obj/machinery/light/floor{ color = "#66ccff" @@ -36378,6 +38137,13 @@ }, /turf/open/floor/iron/dark, /area/station/science/lobby) +"knp" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/lattice/catwalk, +/obj/machinery/duct, +/obj/structure/sign/departments/maint/directional/east, +/turf/open/water/no_planet_atmos, +/area/station/maintenance/starboard/fore) "knq" = ( /obj/effect/turf_decal/tile/dark/half/contrasted{ dir = 1 @@ -36395,7 +38161,7 @@ dir = 4 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "kns" = ( /obj/effect/spawner/random/maintenance/two, /obj/structure/rack, @@ -36430,8 +38196,7 @@ dir = 4 }, /obj/effect/decal/cleanable/dirt, -/obj/structure/extinguisher_cabinet/directional/east, -/obj/machinery/camera/autoname/directional/east, +/obj/machinery/light/directional/east, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) "knI" = ( @@ -36445,9 +38210,14 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"knN" = ( -/turf/open/floor/iron/dark, -/area/station/engineering/lobby) +"knT" = ( +/obj/machinery/light/directional/north, +/turf/open/openspace, +/area/station/service/kitchen) +"knW" = ( +/obj/structure/sign/warning/vacuum/external/directional/south, +/turf/open/floor/plating, +/area/station/engineering/transit_tube) "knY" = ( /obj/structure/flora/tree/jungle/small, /obj/structure/flora/bush/sparsegrass/style_random, @@ -36473,12 +38243,6 @@ /obj/effect/spawner/random/trash/graffiti, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"kou" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/science/explab) "kow" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -36489,22 +38253,28 @@ }, /turf/open/openspace, /area/station/commons/fitness/recreation) -"koC" = ( -/obj/structure/table, -/obj/item/flashlight/lamp{ - pixel_y = 10 +"kox" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1 }, -/obj/item/folder/yellow{ - pixel_x = 4 +/obj/effect/turf_decal/siding/yellow{ + dir = 6 }, /turf/open/floor/iron, -/area/station/engineering/lobby) +/area/station/engineering/atmos/upper) "koE" = ( /obj/structure/railing/corner{ dir = 1 }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/virology) +"koH" = ( +/obj/effect/landmark/event_spawn, +/obj/effect/landmark/start/hangover, +/obj/machinery/duct, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "koM" = ( /obj/structure/table/wood/poker, /obj/machinery/light/directional/south, @@ -36534,6 +38304,10 @@ dir = 4 }, /area/station/cargo/bitrunning/den) +"kpl" = ( +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "kpz" = ( /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, @@ -36554,6 +38328,21 @@ }, /turf/open/floor/iron/dark, /area/station/service/hydroponics/garden/abandoned) +"kpF" = ( +/obj/structure/railing, +/obj/structure/table/wood, +/obj/item/paper_bin{ + pixel_x = -12; + pixel_y = 7 + }, +/obj/item/camera_film{ + pixel_x = 3; + pixel_y = 8 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/wood/large, +/area/station/service/library/private) "kpS" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -36593,14 +38382,13 @@ /obj/effect/decal/cleanable/confetti, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"kqk" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 4 +"kqh" = ( +/obj/structure/closet/boxinggloves, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 8 }, -/obj/machinery/camera/autoname/directional/north, -/turf/open/floor/iron, +/obj/machinery/status_display/evac/directional/east, +/turf/open/floor/iron/dark, /area/station/commons/fitness/recreation) "kqm" = ( /obj/structure/cable, @@ -36614,37 +38402,25 @@ }, /turf/open/floor/wood/large, /area/station/command/heads_quarters/cmo) -"kqt" = ( -/obj/effect/turf_decal/siding/brown{ - dir = 1 - }, +"kqs" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/fore) +"kqu" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/duct, /turf/open/floor/iron, /area/station/commons/dorms) "kqv" = ( /turf/closed/wall/r_wall, /area/station/maintenance/port/aft) -"kqF" = ( -/obj/structure/extinguisher_cabinet/directional/north, -/turf/open/floor/iron/dark, -/area/station/commons/dorms) -"kqH" = ( -/obj/machinery/disposal/bin, -/obj/effect/turf_decal/bot, -/obj/structure/disposalpipe/trunk{ - dir = 2 - }, -/obj/structure/railing, -/obj/structure/railing{ - dir = 5 - }, -/obj/structure/railing{ - dir = 8 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "kqI" = ( /obj/machinery/photocopier, /turf/open/floor/glass, @@ -36654,25 +38430,13 @@ /obj/structure/railing, /turf/open/openspace, /area/station/medical/medbay/central) -"krk" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, +"krs" = ( +/obj/machinery/newscaster/directional/east, /obj/effect/turf_decal/stripes/line{ - dir = 8; - pixel_x = -2 - }, -/obj/effect/turf_decal/caution/stand_clear{ - dir = 8 - }, -/turf/open/floor/engine, -/area/station/engineering/break_room) -"krK" = ( -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5{ dir = 4 }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "krL" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -36682,6 +38446,11 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/brig) +"krM" = ( +/obj/effect/spawner/random/trash/mopbucket, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "krQ" = ( /obj/structure/table/wood, /obj/item/storage/fancy/candle_box{ @@ -36704,7 +38473,7 @@ }, /obj/structure/cable/multilayer/connected, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ksa" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -36740,8 +38509,26 @@ "kso" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/storage) +"ksr" = ( +/obj/structure/railing/corner, +/obj/structure/table/wood, +/obj/item/camera{ + pixel_x = -3; + pixel_y = 8 + }, +/obj/item/tape, +/obj/item/pen/fourcolor{ + pixel_x = 8; + pixel_y = 7 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/wood/large, +/area/station/service/library/private) "kst" = ( /obj/structure/railing, /obj/effect/turf_decal/siding/wood, @@ -36760,11 +38547,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/science/cytology) +"ksJ" = ( +/turf/closed/wall, +/area/station/maintenance/starboard/central/upper) "ksM" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/disposal) "ksO" = ( @@ -36809,15 +38597,6 @@ /obj/effect/landmark/start/scientist, /turf/open/floor/iron, /area/station/science/breakroom) -"kth" = ( -/obj/structure/sign/warning/hot_temp/directional/east, -/obj/machinery/camera/directional/east, -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 6 - }, -/obj/item/kirbyplants/random, -/turf/open/floor/iron, -/area/station/engineering/lobby) "kto" = ( /obj/machinery/door/airlock/security{ name = "Armory" @@ -36830,7 +38609,7 @@ name = "Armory" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ktp" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -36846,29 +38625,20 @@ /obj/structure/marker_beacon/burgundy, /turf/open/space/basic, /area/space/nearstation) -"ktt" = ( -/obj/structure/railing/corner{ - dir = 8 - }, -/obj/structure/cable/multilayer/multiz, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "ktu" = ( /obj/item/restraints/legcuffs/beartrap/prearmed, /turf/open/floor/plating, /area/station/maintenance/department/medical) -"ktz" = ( -/obj/structure/table, -/obj/item/lipstick/purple{ - pixel_x = -2; - pixel_y = -2 +"ktD" = ( +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ + dir = 5 }, -/obj/item/clothing/mask/animal/horsehead{ - pixel_x = 4; - pixel_y = 15 +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5, +/obj/effect/turf_decal/tile/red/half{ + dir = 1 }, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/aft) +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "ktF" = ( /obj/structure/lattice/catwalk, /obj/structure/ladder, @@ -36956,6 +38726,39 @@ }, /turf/open/floor/grass, /area/station/science/genetics) +"kuw" = ( +/obj/effect/turf_decal/trimline/yellow/arrow_ccw{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/yellow/arrow_ccw{ + dir = 4 + }, +/obj/machinery/light/directional/east, +/turf/open/floor/iron/edge{ + dir = 4 + }, +/area/station/hallway/primary/fore) +"kux" = ( +/obj/machinery/duct, +/obj/structure/lattice/catwalk, +/turf/open/water/no_planet_atmos, +/area/station/maintenance/starboard/fore) +"kuB" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/turf/open/floor/iron, +/area/station/maintenance/starboard) +"kuL" = ( +/obj/effect/spawner/random/maintenance, +/obj/structure/table, +/obj/machinery/power/apc/auto_name/directional/south, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/aft/upper) "kuS" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, @@ -36964,37 +38767,25 @@ /turf/open/floor/plating, /area/station/maintenance/starboard/central) "kuT" = ( -/obj/structure/sign/directions/engineering/directional/east{ - pixel_y = -1 - }, -/obj/structure/sign/directions/supply/directional/east{ - pixel_y = -7 - }, -/obj/structure/sign/directions/evac/directional/east{ - dir = 1; - pixel_y = 5 +/obj/structure/sign/directions/command/directional/north{ + dir = 4; + pixel_y = 0 }, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) +/turf/closed/wall, +/area/station/hallway/primary/port) +"kuV" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark/textured_large, +/area/station/maintenance/port) "kuX" = ( /obj/structure/chair{ dir = 1 }, /turf/open/floor/iron/dark/smooth_large, /area/station/security/interrogation) -"kvb" = ( -/obj/structure/railing/corner, -/obj/structure/railing, -/obj/structure/lattice/catwalk, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) -"kvl" = ( -/obj/structure/cable, -/obj/effect/spawner/structure/window/reinforced/plasma, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/plating, -/area/station/engineering/main) "kvm" = ( /obj/structure/disposalpipe/segment{ dir = 5 @@ -37004,12 +38795,6 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"kvo" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing, -/obj/machinery/light/directional/north, -/turf/open/openspace, -/area/station/commons/dorms) "kvq" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/segment{ @@ -37053,6 +38838,7 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/maintenance/starboard/central) "kvN" = ( @@ -37063,6 +38849,20 @@ }, /turf/open/floor/plating/airless, /area/station/hallway/secondary/entry) +"kvV" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/aft) +"kwb" = ( +/obj/machinery/atmospherics/components/binary/pump/off/general/visible{ + name = "Fuel Pump" + }, +/obj/effect/turf_decal/trimline/neutral, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "kwe" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 4 @@ -37129,10 +38929,6 @@ /obj/item/folder, /turf/open/floor/iron/dark, /area/station/engineering/storage/tcomms) -"kwG" = ( -/obj/machinery/igniter/incinerator_atmos, -/turf/open/floor/engine/airless, -/area/station/maintenance/disposal/incinerator) "kwO" = ( /obj/structure/sign/departments/aisat/directional/east, /obj/effect/turf_decal/trimline/yellow/filled/line{ @@ -37170,6 +38966,13 @@ /obj/structure/table/reinforced/rglass, /turf/open/floor/iron/dark/textured_large, /area/station/medical/storage) +"kwV" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "kwW" = ( /obj/effect/turf_decal/trimline/dark_blue/filled/warning{ dir = 4 @@ -37185,7 +38988,7 @@ /turf/open/floor/iron/dark/textured_edge{ dir = 8 }, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "kxc" = ( /obj/structure/table/reinforced, /obj/item/reagent_containers/cup/glass/coffee{ @@ -37201,6 +39004,14 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/security/execution/transfer) +"kxd" = ( +/obj/item/biopsy_tool{ + pixel_x = -9; + pixel_y = 2 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine, +/area/station/maintenance/starboard) "kxf" = ( /obj/machinery/door/poddoor/shutters{ id = "qm_warehouse"; @@ -37230,17 +39041,13 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/science/lab) -"kxy" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5, -/turf/open/space/basic, -/area/space/nearstation) -"kxA" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +"kxx" = ( +/obj/machinery/computer/cargo/request{ + dir = 8 + }, +/obj/effect/turf_decal/tile/brown/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "kxE" = ( /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating/airless, @@ -37248,10 +39055,10 @@ "kxG" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/fore) "kxL" = ( @@ -37261,16 +39068,25 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/cryo) +"kxW" = ( +/obj/structure/lattice/catwalk, +/obj/structure/table/reinforced, +/obj/item/pai_card{ + pixel_x = 6; + pixel_y = 12 + }, +/obj/effect/spawner/random/food_or_drink/donkpockets{ + pixel_y = -3; + pixel_x = -5 + }, +/turf/open/openspace, +/area/station/cargo/storage) "kxY" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light/directional/west, +/obj/effect/spawner/random/trash/graffiti, /turf/open/floor/iron/sepia, /area/station/hallway/secondary/construction) -"kyg" = ( -/obj/structure/cable, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "kyi" = ( /obj/effect/decal/cleanable/blood/old, /turf/open/floor/plating/airless, @@ -37282,6 +39098,15 @@ /obj/structure/cable, /turf/open/floor/iron/dark/textured, /area/station/construction/mining/aux_base) +"kyp" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/contraband/busty_backdoor_xeno_babes_6/directional/south, +/obj/machinery/duct, +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) "kyq" = ( /obj/structure/ladder, /obj/machinery/airalarm/directional/west, @@ -37338,12 +39163,6 @@ /obj/machinery/door/firedoor, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) -"kyZ" = ( -/obj/structure/window/reinforced/spawner/directional/east, -/obj/structure/sign/warning/vacuum/external/directional/south, -/obj/structure/closet/emcloset, -/turf/open/floor/iron/dark, -/area/station/engineering/transit_tube) "kza" = ( /obj/machinery/vending/wardrobe/coroner_wardrobe, /obj/structure/extinguisher_cabinet/directional/north, @@ -37357,17 +39176,17 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "kzd" = ( /obj/effect/spawner/random/trash/moisture_trap, /turf/open/floor/plating, /area/station/maintenance/port/greater) "kzf" = ( -/obj/effect/turf_decal/plaque{ - icon_state = "L6" +/obj/effect/turf_decal/siding/blue{ + dir = 1 }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/hallway/primary/central) +/turf/open/openspace, +/area/station/command/meeting_room/council) "kzg" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/textured, @@ -37380,6 +39199,16 @@ /obj/machinery/holopad, /turf/open/floor/iron/dark, /area/station/science/lobby) +"kzy" = ( +/obj/item/trash/can{ + pixel_x = -8 + }, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/upper) +"kzB" = ( +/obj/structure/lattice, +/turf/open/openspace, +/area/station/hallway/primary/fore) "kzC" = ( /obj/structure/chair{ dir = 4; @@ -37391,12 +39220,6 @@ /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"kzG" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/lattice/catwalk, -/obj/effect/spawner/random/structure/grille, -/turf/open/space/basic, -/area/space/nearstation) "kzL" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -37405,11 +39228,40 @@ /obj/effect/turf_decal/bot, /turf/open/floor/iron, /area/station/science/research) +"kzW" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/crayon{ + icon_state = "body"; + name = "body"; + pixel_x = 12; + pixel_y = 1 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "revolution"; + name = "graffiti"; + paint_colour = "#FF0000"; + pixel_y = 32 + }, +/obj/item/ammo_casing/spent{ + pixel_x = 8; + pixel_y = 6 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "kzX" = ( /obj/effect/spawner/random/contraband/prison, /obj/structure/rack, /turf/open/floor/plating, /area/station/maintenance/department/medical) +"kAc" = ( +/obj/effect/spawner/random/structure/tank_holder, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/bot, +/turf/open/floor/iron, +/area/station/maintenance/starboard/fore) "kAh" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -37423,22 +39275,16 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"kAq" = ( -/obj/structure/table/reinforced, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/directional/north, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"kAr" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, +"kAn" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 + }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/machinery/door/firedoor/heavy, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/office) "kAu" = ( /obj/structure/lattice/catwalk, /obj/structure/chair/comfy, @@ -37455,10 +39301,13 @@ /obj/machinery/camera/autoname/directional/north, /turf/open/openspace, /area/station/commons/vacant_room/office) -"kAV" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/carpet, -/area/station/maintenance/starboard/lesser) +"kAQ" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/smart/manifold/cyan/visible{ + dir = 8 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "kAX" = ( /obj/structure/railing{ dir = 4 @@ -37508,14 +39357,7 @@ dir = 4 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"kBo" = ( -/obj/machinery/atmospherics/pipe/layer_manifold/supply/hidden/layer4{ - dir = 4 - }, -/obj/machinery/camera/autoname/directional/east, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/area/station/ai/satellite/interior) "kBq" = ( /obj/structure/railing/corner, /obj/effect/turf_decal/tile/red/opposingcorners{ @@ -37542,11 +39384,39 @@ specialfunctions = 4 }, /obj/effect/landmark/generic_maintenance_landmark, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, /turf/open/floor/iron/freezer, /area/station/command/heads_quarters/captain/private) +"kBB" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Chapel Office Maintenance" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "kBF" = ( /turf/open/floor/engine/hull/air, /area/station/hallway/primary/aft) +"kCa" = ( +/obj/machinery/field/generator, +/obj/effect/turf_decal/bot_white, +/obj/machinery/airalarm/directional/north, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) +"kCh" = ( +/obj/effect/spawner/structure/window/reinforced/plasma, +/turf/open/floor/engine/vacuum, +/area/station/engineering/atmos/upper) +"kCk" = ( +/obj/machinery/space_heater, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "kCp" = ( /obj/effect/turf_decal/tile/neutral/opposingcorners{ dir = 1 @@ -37558,6 +39428,12 @@ /obj/structure/sign/warning/explosives/directional/west, /turf/open/floor/iron/dark, /area/station/medical/chemistry) +"kCz" = ( +/obj/effect/spawner/random/structure/closet_maintenance, +/obj/machinery/power/apc/auto_name/directional/west, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "kCE" = ( /obj/structure/table, /obj/item/stock_parts/subspace/treatment, @@ -37596,25 +39472,12 @@ dir = 8 }, /area/station/hallway/primary/fore) -"kDa" = ( -/obj/structure/disposalpipe/segment, -/obj/effect/turf_decal/tile/blue/opposingcorners{ - dir = 1 - }, -/obj/effect/turf_decal/siding/blue/corner{ - dir = 8 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/white, -/area/station/medical/medbay/central) "kDc" = ( -/obj/structure/statue/sandstone/venus{ - dir = 1 - }, -/turf/open/floor/wood, -/area/station/command/meeting_room/council) +/obj/machinery/wall_healer/directional/north, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/structure/window/reinforced/spawner/directional/east, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "kDe" = ( /obj/structure/altar/of_gods, /obj/structure/noticeboard/directional/north, @@ -37642,7 +39505,9 @@ /obj/effect/turf_decal/trimline/green/filled/mid_joiner{ dir = 4 }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 4 + }, /area/station/hallway/primary/central) "kDF" = ( /obj/structure/table/reinforced, @@ -37672,12 +39537,27 @@ /obj/structure/barricade/sandbags, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"kEf" = ( +/obj/machinery/camera/autoname/directional/west, +/obj/machinery/atmospherics/pipe/smart/simple/pink/visible/layer2{ + dir = 1 + }, +/obj/machinery/door/airlock/public/glass/incinerator/atmos_exterior, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, +/obj/effect/mapping_helpers/airlock/locked, +/obj/machinery/atmospherics/pipe/smart/simple/dark/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/engine, +/area/station/engineering/atmos/upper) "kEg" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor/iron_smooth, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "kEh" = ( /obj/structure/lattice, /obj/structure/disposalpipe/segment{ @@ -37715,14 +39595,6 @@ dir = 8 }, /area/station/hallway/primary/central) -"kEq" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "kEw" = ( /obj/structure/cable, /turf/open/floor/plating, @@ -37733,16 +39605,6 @@ name = "Holodeck Projector Floor" }, /area/station/holodeck/rec_center) -"kEy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment{ - dir = 6 - }, -/obj/machinery/button/door/directional/north{ - id = "abandoned_kitchen" - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "kEB" = ( /obj/structure/railing{ dir = 1 @@ -37757,33 +39619,30 @@ /obj/effect/landmark/start/paramedic, /turf/open/floor/glass, /area/station/medical/medbay/central) -"kEF" = ( -/obj/machinery/meter{ - name = "Plasma meter" - }, -/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ - name = "Plasma Multideck Adapter"; - dir = 8 - }, -/obj/effect/turf_decal/tile/purple/fourcorners, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) -"kES" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/chair{ - dir = 1; - pixel_y = -2 +"kEC" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 1 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/engineering/lobby) +"kEG" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/lattice/catwalk, /obj/structure/disposalpipe/segment{ - dir = 6 + dir = 4 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"kFa" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, /turf/open/openspace, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard/central/upper) +"kEY" = ( +/obj/machinery/door/airlock/public/glass, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/door/firedoor, +/turf/open/floor/iron/dark/textured, +/area/station/commons/locker) "kFc" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -37795,7 +39654,7 @@ dir = 4 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "kFt" = ( /obj/structure/disposalpipe/segment{ dir = 10 @@ -37815,13 +39674,21 @@ /obj/structure/curtain, /turf/open/floor/plating, /area/station/maintenance/starboard/central) -"kFQ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/decal/cleanable/blood/old, +"kFN" = ( +/obj/structure/chair/stool/directional/west, +/obj/effect/decal/cleanable/dirt, +/obj/effect/landmark/start/hangover, +/turf/open/floor/wood, +/area/station/maintenance/starboard) +"kGg" = ( +/obj/structure/table/reinforced, +/obj/item/flashlight{ + pixel_y = 14 + }, +/obj/item/storage/toolbox/mechanical, +/obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/area/station/maintenance/starboard/central/upper) "kGD" = ( /obj/machinery/air_sensor/nitrogen_tank, /obj/structure/window/reinforced/plasma/spawner/directional/south, @@ -37855,17 +39722,24 @@ }, /turf/open/openspace, /area/station/maintenance/port) +"kGQ" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/mapping_helpers/broken_machine, +/obj/machinery/vending/tool, +/obj/effect/turf_decal/trimline/yellow/filled/line, +/turf/open/floor/iron/dark, +/area/station/engineering/storage_shared) "kGV" = ( /obj/structure/window/reinforced/plasma/spawner/directional/south, /obj/machinery/air_sensor/plasma_tank, /turf/open/floor/engine/plasma, /area/station/engineering/atmos/upper) -"kHj" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/spawner/random/structure/steam_vent, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +"kHe" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/table, +/obj/structure/disposalpipe/segment, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard) "kHv" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -37879,35 +39753,49 @@ name = "MiniSat Airlock Access" }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "kHy" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 1 }, -/obj/structure/table, -/obj/item/storage/box/lights/mixed{ - pixel_x = 4; - pixel_y = 11 - }, -/obj/item/multitool{ - pixel_x = -8; - pixel_y = 3 - }, -/obj/item/hand_labeler_refill{ - pixel_x = 7; - pixel_y = -2 +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 2 }, -/obj/machinery/status_display/evac/directional/north, +/obj/structure/sign/poster/random/directional/north, /turf/open/floor/iron, /area/station/cargo/storage) +"kHD" = ( +/obj/effect/turf_decal/tile/dark_green/opposingcorners, +/obj/effect/turf_decal/tile/neutral/opposingcorners{ + dir = 1 + }, +/obj/machinery/atmospherics/components/binary/pump/off{ + dir = 4; + name = "Ports To Space" + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"kHF" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"kHH" = ( +/obj/effect/turf_decal/siding{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/white/corner{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "kHU" = ( /obj/effect/spawner/random/trash/grille_or_waste, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"kHY" = ( -/obj/machinery/door/poddoor/incinerator_atmos_aux, -/turf/open/floor/engine/airless, -/area/station/maintenance/disposal/incinerator) "kHZ" = ( /obj/effect/spawner/random/medical/supplies, /obj/structure/table, @@ -37918,6 +39806,17 @@ /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/hallway/primary/aft) +"kIr" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/duct, +/obj/structure/sign/poster/random/directional/south, +/turf/open/floor/iron, +/area/station/commons/dorms) "kIt" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -37926,12 +39825,9 @@ /turf/open/floor/iron/dark, /area/station/medical/medbay/central) "kIw" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/mail_sorting/supply/cargo_bay, -/obj/structure/disposalpipe/sorting/mail/flip{ - dir = 1 +/obj/effect/turf_decal/trimline/brown/filled, +/obj/structure/chair/office/light{ + dir = 8 }, /turf/open/floor/iron, /area/station/cargo/storage) @@ -37949,6 +39845,21 @@ }, /turf/open/floor/carpet, /area/station/security/detectives_office) +"kID" = ( +/obj/structure/lattice/catwalk, +/turf/open/water/no_planet_atmos, +/area/station/maintenance/starboard/fore) +"kIE" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"kIL" = ( +/obj/structure/lattice/catwalk, +/obj/structure/ladder, +/obj/structure/sign/poster/official/pda_ad/directional/west, +/turf/open/openspace, +/area/station/maintenance/department/crew_quarters/dorms) "kIW" = ( /obj/structure/disposalpipe/segment{ dir = 10 @@ -37960,6 +39871,13 @@ /obj/effect/spawner/random/structure/closet_maintenance, /turf/open/floor/iron, /area/station/hallway/secondary/construction) +"kJk" = ( +/obj/structure/chair/stool/directional/north, +/turf/open/floor/wood, +/area/station/maintenance/starboard) +"kJl" = ( +/turf/open/floor/carpet, +/area/station/maintenance/starboard) "kJw" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -37968,6 +39886,11 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/textured_large, /area/station/security/prison) +"kJz" = ( +/obj/machinery/newscaster/directional/north, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "kJF" = ( /obj/structure/table, /obj/item/stock_parts/subspace/ansible, @@ -37981,6 +39904,12 @@ }, /turf/open/floor/iron/dark, /area/station/engineering/storage/tcomms) +"kJG" = ( +/obj/structure/sink/kitchen/directional/east{ + name = "sink" + }, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "kJI" = ( /obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, /turf/closed/wall/r_wall, @@ -38035,18 +39964,43 @@ /obj/effect/landmark/start/scientist, /turf/open/floor/iron, /area/station/science/breakroom) +"kKn" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/airlock_sensor/incinerator_atmos{ + pixel_y = 32 + }, +/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/hidden{ + dir = 8 + }, +/turf/open/floor/engine, +/area/station/engineering/atmos/upper) "kKw" = ( /obj/structure/lattice/catwalk, /turf/open/floor/engine/hull/air, /area/station/hallway/secondary/construction) -"kKy" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/lattice/catwalk, -/obj/structure/sign/poster/contraband/random/directional/west, -/turf/open/water, -/area/station/maintenance/starboard/fore) +"kKB" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/structure/railing{ + dir = 4 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/effect/landmark/start/hangover, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/turf/open/floor/wood, +/area/station/commons/toilet/restrooms) +"kKG" = ( +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) "kKH" = ( /turf/open/floor/iron/dark/smooth_large, /area/station/security/processing) @@ -38056,16 +40010,6 @@ /obj/structure/cable, /turf/open/floor/wood, /area/station/service/cafeteria) -"kKQ" = ( -/obj/machinery/power/emitter{ - dir = 4 - }, -/obj/effect/turf_decal/bot{ - dir = 1 - }, -/obj/machinery/camera/autoname/directional/south, -/turf/open/floor/engine, -/area/station/engineering/break_room) "kKR" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -38073,6 +40017,16 @@ }, /turf/open/openspace, /area/station/construction/storage_wing) +"kKU" = ( +/obj/item/book/granter/action/spell/smoke/lesser{ + name = "mysterious old book of cloud-chasing" + }, +/obj/structure/table/wood, +/obj/structure/light_construct/directional/east{ + dir = 1 + }, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "kLe" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 @@ -38124,16 +40078,6 @@ }, /turf/open/floor/wood, /area/station/command/corporate_showroom) -"kLV" = ( -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 8 - }, -/obj/effect/decal/remains/human, -/obj/effect/decal/cleanable/blood/old, -/obj/machinery/duct, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) "kMd" = ( /obj/item/solar_assembly, /obj/item/solar_assembly, @@ -38218,6 +40162,13 @@ /obj/effect/decal/cleanable/blood/old, /turf/open/floor/plating, /area/station/maintenance/port) +"kMF" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ + dir = 9 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "kMI" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/fax{ @@ -38241,9 +40192,23 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"kNc" = ( +/obj/structure/railing{ + dir = 1 + }, +/turf/open/openspace, +/area/station/engineering/lobby) "kNf" = ( /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) +"kNj" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 1 + }, +/obj/machinery/status_display/evac/directional/north, +/obj/machinery/light/small/directional/north, +/turf/open/floor/iron/dark, +/area/station/engineering/storage) "kNl" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -38258,14 +40223,20 @@ }, /turf/open/floor/iron/textured, /area/station/security/brig) -"kNB" = ( -/obj/effect/turf_decal/stripes/line, -/obj/machinery/button/elevator/directional/east{ - id = "catwalk_atmos"; - name = "Elevator Button" +"kNE" = ( +/obj/effect/turf_decal/siding/brown{ + dir = 8 }, -/turf/open/floor/engine, -/area/station/engineering/atmos/upper) +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/vending/coffee, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/machinery/digital_clock/directional/south, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) "kNI" = ( /obj/structure/lattice/catwalk, /obj/effect/decal/cleanable/glass, @@ -38286,6 +40257,20 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/smooth_large, /area/station/security/brig) +"kOi" = ( +/obj/effect/decal/cleanable/cobweb, +/obj/structure/closet/emcloset, +/turf/open/floor/plating/airless, +/area/station/maintenance/starboard/aft) +"kOj" = ( +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ + dir = 9 + }, +/obj/effect/turf_decal/tile/dark/half{ + dir = 1 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "kOk" = ( /turf/closed/wall/r_wall, /area/station/engineering/lobby) @@ -38299,6 +40284,14 @@ /obj/effect/mapping_helpers/airlock/access/all/science/general, /turf/open/floor/plating, /area/station/science/research) +"kOo" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 1 + }, +/turf/open/floor/plating, +/area/station/maintenance/aft/upper) "kOv" = ( /obj/effect/spawner/random/structure/grille, /turf/open/floor/plating, @@ -38326,6 +40319,10 @@ /obj/effect/decal/cleanable/plasma, /turf/open/floor/iron, /area/station/construction/storage_wing) +"kOK" = ( +/obj/structure/sign/warning/secure_area/directional/south, +/turf/open/floor/plating/airless, +/area/station/maintenance/aft) "kOO" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, @@ -38365,6 +40362,13 @@ }, /turf/open/floor/plating, /area/station/cargo/storage) +"kPe" = ( +/obj/structure/flora/bush/fullgrass/style_random, +/obj/structure/flora/bush/ferny/style_random, +/obj/structure/flora/bush/flowers_br/style_random, +/obj/machinery/duct, +/turf/open/floor/grass, +/area/station/commons/dorms) "kPg" = ( /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -38380,15 +40384,28 @@ /obj/machinery/light/small/red/dim/directional/west, /turf/open/floor/iron/textured_large, /area/station/medical/abandoned) -"kPF" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 8 +"kPC" = ( +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 1 }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) +"kPD" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, +/obj/item/mop, +/obj/item/grenade/chem_grenade/cleaner, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"kPF" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/stripes{ + dir = 10 + }, +/turf/open/floor/iron/textured, +/area/station/command/eva) "kPH" = ( /obj/machinery/firealarm/directional/west, /obj/structure/filingcabinet/chestdrawer, @@ -38401,19 +40418,14 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/storage) -"kPL" = ( -/obj/effect/landmark/transport/transport_id{ - specific_transport_id = "catwalk_engi" - }, -/obj/structure/transport/linear{ - radial_travel = 0 - }, -/turf/open/openspace, -/area/station/engineering/break_room) "kPN" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/security/checkpoint/customs) +"kPO" = ( +/obj/effect/spawner/random/structure/steam_vent, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "kPQ" = ( /obj/structure/lattice/catwalk, /obj/structure/table, @@ -38441,6 +40453,16 @@ }, /turf/open/openspace, /area/station/command/gateway) +"kPR" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/structure/sign/warning/directional/south, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) +"kPX" = ( +/turf/open/floor/eighties, +/area/station/maintenance/department/crew_quarters/dorms) "kPZ" = ( /obj/effect/turf_decal/stripes/corner{ dir = 4 @@ -38463,19 +40485,7 @@ /obj/structure/toilet, /obj/machinery/light/small/directional/north, /turf/open/floor/iron/freezer, -/area/station/ai_monitored/turret_protected/aisat/foyer) -"kQf" = ( -/obj/effect/turf_decal/siding/brown, -/obj/structure/rack, -/obj/item/clothing/ears/earmuffs, -/obj/item/clothing/under/color/red, -/obj/item/clothing/neck/tie/red{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/head/soft/red, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +/area/station/ai/satellite/foyer) "kQn" = ( /obj/structure/sign/picture_frame/portrait{ pixel_y = 33 @@ -38486,17 +40496,6 @@ /obj/structure/table, /turf/open/floor/iron/dark/smooth_edge, /area/station/service/library) -"kQy" = ( -/obj/structure/disposalpipe/segment{ - dir = 2 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, -/obj/machinery/door/airlock/atmos/glass{ - name = "Atmospherics" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "kQC" = ( /obj/effect/turf_decal/trimline/dark_green/filled/line, /obj/effect/turf_decal/tile/dark_blue{ @@ -38505,11 +40504,6 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/science/cytology) -"kQD" = ( -/obj/effect/spawner/structure/window, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "kQE" = ( /obj/item/flashlight/lamp/green{ pixel_y = 5 @@ -38521,21 +40515,6 @@ }, /turf/open/floor/carpet/cyan, /area/station/command/heads_quarters/cmo) -"kQV" = ( -/obj/structure/girder, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/spawner/structure/electrified_grille, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"kRd" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "kRf" = ( /obj/structure/cable/layer3, /obj/structure/cable, @@ -38545,7 +40524,7 @@ dir = 1 }, /turf/open/floor/iron/checker, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "kRk" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -38558,6 +40537,10 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) +"kRv" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "kRD" = ( /obj/effect/spawner/random/vending/snackvend, /obj/structure/disposalpipe/segment{ @@ -38591,10 +40574,21 @@ /obj/structure/cable, /turf/open/floor/iron/dark/textured_large, /area/station/security/prison) +"kRX" = ( +/turf/open/floor/iron/stairs{ + dir = 4 + }, +/area/station/maintenance/aft) "kSg" = ( /obj/machinery/light/small/directional/east, /turf/open/floor/iron/stairs/medium, /area/station/science/cytology) +"kSk" = ( +/obj/effect/turf_decal/trimline/yellow/filled/warning{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/engineering/lobby) "kSo" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -38614,10 +40608,11 @@ dir = 4 }, /obj/structure/sign/plaques/kiddie{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "kSD" = ( /obj/effect/turf_decal/siding/thinplating_new/dark/end{ dir = 1 @@ -38626,35 +40621,31 @@ /obj/structure/flora/bush/jungle/b/style_2, /turf/open/floor/grass/fairy, /area/station/maintenance/hallway/abandoned_recreation) -"kSL" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing, -/obj/structure/railing{ - dir = 1 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/openspace, -/area/station/engineering/lobby) -"kSN" = ( -/obj/structure/railing{ - dir = 6 +"kSI" = ( +/obj/docking_port/stationary{ + dir = 8; + dwidth = 3; + height = 5; + name = "SS13: Common Mining Dock"; + roundstart_template = /datum/map_template/shuttle/mining_common/meta; + shuttle_id = "commonmining_home"; + width = 7 }, -/turf/open/floor/grass, -/area/station/hallway/primary/starboard) +/turf/open/floor/plating, +/area/station/hallway/secondary/construction) "kSP" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/closet/emcloset, /turf/open/floor/plating, /area/station/maintenance/hallway/abandoned_recreation) -"kSS" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing/corner{ - dir = 8 +"kSR" = ( +/obj/structure/closet/firecloset, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 }, -/turf/open/openspace, -/area/station/engineering/break_room) +/obj/item/radio/intercom/directional/south, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) "kSY" = ( /obj/structure/table, /obj/item/blood_filter{ @@ -38669,22 +40660,23 @@ /obj/machinery/door/firedoor/border_only, /turf/open/floor/wood/large, /area/station/hallway/primary/central) +"kTe" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/any/engineering/general, +/obj/effect/mapping_helpers/airlock/access/any/engineering/construction, +/obj/machinery/door/airlock/maintenance, +/obj/machinery/duct, +/turf/open/floor/plating, +/area/station/engineering/lobby) "kTi" = ( /turf/open/floor/engine/vacuum, /area/station/science/ordnance/bomb) -"kTq" = ( -/obj/structure/railing{ - dir = 8 - }, -/obj/structure/railing/corner{ - dir = 4 - }, -/obj/machinery/door/firedoor/border_only{ - dir = 8 - }, -/obj/structure/cable, -/turf/open/floor/wood, -/area/station/commons/toilet/restrooms) +"kTm" = ( +/obj/structure/reagent_dispensers/watertank, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "kTw" = ( /turf/closed/wall/r_wall, /area/station/security/brig) @@ -38718,33 +40710,24 @@ }, /turf/open/floor/engine, /area/station/science/xenobiology) -"kTN" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 - }, -/obj/item/storage/medkit/toxin, -/obj/structure/table, -/turf/open/floor/iron/smooth, -/area/station/engineering/main) +"kTQ" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/white, +/area/station/maintenance/starboard) "kTW" = ( /obj/machinery/firealarm/directional/north, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 1 + }, /area/station/hallway/primary/central) -"kUf" = ( -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ - dir = 9 +"kUk" = ( +/obj/effect/turf_decal/siding{ + dir = 1 }, -/obj/structure/cable, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) -"kUp" = ( -/obj/machinery/holopad, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/iron/dark/small, -/area/station/command/heads_quarters/ce) +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "kUq" = ( /turf/closed/wall/r_wall, /area/station/maintenance/port) @@ -38767,14 +40750,14 @@ "kUO" = ( /turf/open/openspace, /area/station/security/courtroom) -"kUW" = ( -/obj/structure/window/reinforced/spawner/directional/east, -/obj/machinery/atmospherics/components/unary/thermomachine/heater/on{ - dir = 1; - initialize_directions = 1 +"kVf" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 2 }, -/turf/open/floor/iron/freezer, -/area/station/engineering/atmos/pumproom) +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/commons/dorms) "kVj" = ( /obj/effect/turf_decal/bot_white, /turf/open/floor/iron/dark/textured_large, @@ -38824,10 +40807,10 @@ name = "Medbay Maintenance" }, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/medical/abandoned) "kVV" = ( @@ -38872,18 +40855,14 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron, /area/station/cargo/storage) -"kWo" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/disposalpipe/segment{ - dir = 4 +"kWp" = ( +/obj/effect/turf_decal/siding/blue, +/obj/effect/turf_decal/tile/blue/opposingcorners{ + dir = 1 }, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/turf/open/floor/carpet, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/iron/white, +/area/station/medical/medbay/central) "kWr" = ( /obj/effect/turf_decal/siding/purple, /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -38891,17 +40870,16 @@ }, /turf/open/floor/iron, /area/station/science/explab) -"kWx" = ( -/obj/structure/table/reinforced, -/obj/item/wirecutters, -/obj/item/screwdriver, -/obj/item/stack/cable_coil, -/obj/item/crowbar, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +"kWs" = ( +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) +"kWv" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/sign/warning/radiation/rad_area/directional/south, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "kWF" = ( /obj/machinery/airalarm/directional/east, /obj/machinery/iv_drip, @@ -38913,6 +40891,13 @@ }, /turf/open/floor/iron/white, /area/station/medical/patients_rooms/room_a) +"kWL" = ( +/obj/item/cigbutt{ + pixel_x = 7; + pixel_y = 14 + }, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "kWO" = ( /obj/structure/broken_flooring/singular/directional/east, /turf/open/floor/plating, @@ -38926,21 +40911,7 @@ }, /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/checker, -/area/station/ai_monitored/turret_protected/aisat_interior) -"kXa" = ( -/obj/machinery/door/airlock/atmos/glass{ - name = "Atmospherics Testing Room" - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, -/obj/machinery/door/firedoor/heavy, -/obj/structure/barricade/wooden/crude, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) -"kXt" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) +/area/station/ai/satellite/interior) "kXB" = ( /obj/effect/turf_decal/delivery, /obj/structure/table, @@ -38966,14 +40937,16 @@ /obj/machinery/status_display/ai/directional/north, /turf/open/floor/iron, /area/station/science/lab) -"kXT" = ( -/obj/machinery/door/airlock/engineering/glass{ - name = "Supermatter Engine Room" +"kXW" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/mail_sorting/engineering/ce_office, +/obj/structure/disposalpipe/sorting/mail/flip{ + dir = 1 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/machinery/door/firedoor/heavy, -/turf/open/floor/engine, -/area/station/engineering/storage_shared) +/obj/structure/cable, +/turf/open/floor/iron/dark/small, +/area/station/command/heads_quarters/ce) "kYd" = ( /obj/effect/turf_decal/trimline/purple/line{ dir = 1 @@ -38981,16 +40954,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron, /area/station/science/robotics) -"kYe" = ( -/obj/structure/railing{ - dir = 8 - }, -/obj/machinery/newscaster/directional/north, -/obj/machinery/door/firedoor/border_only{ - dir = 8 - }, -/turf/open/floor/wood, -/area/station/commons/toilet/restrooms) "kYf" = ( /turf/open/floor/engine/o2, /area/station/engineering/atmos/upper) @@ -38998,10 +40961,27 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark/textured_large, /area/station/science/robotics/lab) +"kYk" = ( +/obj/structure/girder, +/obj/effect/spawner/random/structure/grille, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) +"kYz" = ( +/obj/structure/sign/warning/yes_smoking/circle/directional/east, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "kYK" = ( /obj/effect/turf_decal/tile/blue/fourcorners, /turf/open/floor/iron/dark, /area/station/medical/chemistry) +"kYM" = ( +/obj/structure/table/reinforced, +/obj/item/toy/redbutton{ + pixel_y = 5 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "kYN" = ( /obj/effect/spawner/random/vending/colavend, /turf/open/floor/wood, @@ -39031,11 +41011,19 @@ /obj/structure/flora/rock/pile/jungle/style_5, /obj/structure/flora/grass/jungle/b/style_5, /turf/open/floor/grass, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "kZo" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) +"kZq" = ( +/obj/structure/table/wood/poker, +/obj/item/toy/cards/deck{ + pixel_y = 4 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "kZs" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -39051,6 +41039,13 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/service/kitchen/abandoned) +"kZw" = ( +/obj/machinery/atmospherics/pipe/smart/simple/dark/visible, +/obj/machinery/atmospherics/pipe/smart/manifold/pink/visible/layer2{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "kZV" = ( /obj/machinery/door/airlock/security/glass{ name = "Courtroom Access" @@ -39083,43 +41078,6 @@ /obj/structure/broken_flooring/side/always_floorplane/directional/north, /turf/open/floor/carpet/blue, /area/station/maintenance/port/aft) -"lag" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/engine/hull/reinforced/air, -/area/station/engineering/atmos/project) -"lai" = ( -/obj/effect/mine/explosive, -/obj/effect/decal/cleanable/wrapping{ - pixel_y = 3 - }, -/obj/item/stack/package_wrap, -/obj/item/stack/package_wrap{ - pixel_x = -3; - pixel_y = 5 - }, -/obj/item/stack/package_wrap{ - pixel_y = -5 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"laj" = ( -/obj/item/book/granter/action/spell/smoke/lesser{ - name = "mysterious old book of cloud-chasing" - }, -/obj/structure/table/wood, -/obj/structure/light_construct/directional/east{ - dir = 1 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) -"lan" = ( -/obj/machinery/door/airlock/engineering/glass, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/machinery/door/firedoor, -/turf/open/floor/iron/dark, -/area/station/engineering/hallway) "lav" = ( /obj/machinery/power/shieldwallgen/xenobiologyaccess, /obj/structure/window/reinforced/spawner/directional/south, @@ -39133,10 +41091,28 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/telecomms, /area/station/tcommsat/server) +"laz" = ( +/obj/effect/decal/remains/human, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/turf_decal/trimline/purple/filled/line{ + dir = 1 + }, +/obj/structure/frame/computer{ + anchored = 1; + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) "laB" = ( /obj/machinery/status_display/ai/directional/south, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"laC" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/commons/dorms) "laD" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -39146,44 +41122,12 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"laK" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 9 - }, -/turf/open/floor/iron, -/area/station/commons/dorms) "laO" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, /obj/structure/window/reinforced/spawner/directional/west, /turf/open/space/openspace, /area/space/nearstation) -"laQ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) -"lbe" = ( -/obj/effect/turf_decal/siding/purple/corner{ - dir = 4 - }, -/obj/effect/turf_decal/siding/purple/corner, -/obj/effect/turf_decal/siding/purple{ - dir = 8 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/science/lab) "lbh" = ( /obj/structure/chair{ dir = 8 @@ -39197,6 +41141,21 @@ }, /turf/open/floor/iron/chapel, /area/station/service/chapel) +"lbk" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, +/obj/effect/decal/cleanable/blood/footprints{ + dir = 8 + }, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard) +"lbp" = ( +/obj/structure/window/reinforced/spawner/directional/east, +/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, +/obj/machinery/meter, +/obj/effect/turf_decal/box/red, +/turf/open/floor/iron/freezer, +/area/station/engineering/atmos/pumproom) "lbw" = ( /obj/structure/closet/lasertag, /obj/effect/decal/cleanable/dirt, @@ -39223,26 +41182,17 @@ /obj/machinery/camera/autoname/directional/north, /turf/open/floor/iron/textured_large, /area/station/security/prison) -"lbN" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ - dir = 1 - }, -/obj/structure/chair{ - dir = 1 - }, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) +"lbJ" = ( +/obj/structure/stairs/north, +/turf/open/floor/plating, +/area/station/maintenance/aft) "lbT" = ( -/obj/effect/turf_decal/siding/green, /obj/effect/landmark/start/hangover, -/turf/open/floor/iron/dark/smooth_large, +/obj/effect/turf_decal/tile/dark_green{ + dir = 8 + }, +/turf/open/floor/iron/dark, /area/station/hallway/primary/central) -"lbW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/sink/directional/south, -/turf/open/floor/iron/freezer, -/area/station/commons/dorms) "lca" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/airlock/access/all/medical/virology, @@ -39252,6 +41202,15 @@ /obj/machinery/door/firedoor, /turf/open/floor/iron/textured_large, /area/station/medical/virology) +"lcb" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 1 + }, +/obj/machinery/meter{ + name = "Mixed Air Tank In" + }, +/turf/closed/wall/r_wall, +/area/station/engineering/atmos) "lce" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -39268,38 +41227,16 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"lcx" = ( -/obj/machinery/light_switch/directional/west, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) -"lcy" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/chair{ - dir = 8; - pixel_y = -2 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"lcE" = ( -/obj/structure/lattice/catwalk, -/obj/structure/closet/emcloset, -/obj/effect/spawner/random/maintenance, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) -"lcN" = ( -/obj/machinery/firealarm/directional/south, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "lcO" = ( /obj/structure/table, /obj/item/clothing/suit/hazardvest, /turf/open/floor/wood, /area/station/commons/storage/tools) +"lcS" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/security/checkpoint/engineering) "lcU" = ( /obj/machinery/atmospherics/pipe/smart/simple/cyan/visible, /obj/machinery/meter, @@ -39320,19 +41257,49 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) +"ldp" = ( +/obj/effect/turf_decal/arrows/red{ + dir = 4 + }, +/obj/effect/turf_decal/box/red, +/turf/open/floor/iron/dark/textured_large, +/area/station/cargo/sorting) +"ldr" = ( +/obj/structure/lattice, +/obj/effect/spawner/random/structure/grille, +/obj/structure/grille/broken, +/turf/open/space/openspace, +/area/space/nearstation) "ldv" = ( /obj/machinery/status_display/ai/directional/south, /obj/structure/closet/emcloset, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"ldL" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark/textured_large, +/area/station/medical/virology) "ldN" = ( /obj/structure/lattice/catwalk, /obj/machinery/oven/range, /turf/open/openspace, /area/station/service/kitchen) +"ldV" = ( +/obj/structure/chair/office{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/yellow/filled/warning{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "ldX" = ( /obj/machinery/door/airlock{ - id_tag = "commissarydoor"; + id_tag = "officecommissarydoor"; name = "Vacant Office" }, /obj/effect/turf_decal/tile/green/fourcorners, @@ -39356,11 +41323,10 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/science/lab) "leu" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) +/obj/effect/spawner/random/engineering/tracking_beacon, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "ley" = ( /obj/effect/turf_decal/tile/green/opposingcorners{ dir = 1 @@ -39423,9 +41389,6 @@ /turf/open/floor/plating, /area/station/engineering/transit_tube) "leR" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, /turf/open/floor/wood, /area/station/maintenance/starboard/central) "leS" = ( @@ -39434,91 +41397,65 @@ /area/station/science/breakroom) "leT" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 9 - }, -/obj/structure/closet/wardrobe/miner, -/obj/machinery/light_switch/directional/west{ - pixel_y = 6 + dir = 8 }, +/obj/machinery/vending/wardrobe/cargo_wardrobe, /turf/open/floor/iron, -/area/station/cargo/miningoffice) -"lff" = ( -/obj/machinery/power/terminal{ - dir = 1; - cable_layer = 1 - }, -/obj/structure/cable/multilayer/layer1, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/engine_smes) +/area/station/cargo/storage) "lfi" = ( /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "lfl" = ( /obj/machinery/camera/autoname/directional/west, /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/medical/medbay/central) -"lfx" = ( -/obj/effect/landmark/event_spawn, -/turf/open/openspace, -/area/station/service/chapel) "lfD" = ( /obj/structure/cable, /obj/machinery/power/smes/full, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) -"lfG" = ( -/obj/structure/stairs/north, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/stairs/medium, -/area/station/maintenance/starboard/lesser) +/area/station/ai/satellite/chamber) "lfK" = ( /obj/structure/ladder, /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 }, +/obj/machinery/firealarm/directional/south, /turf/open/floor/iron/dark, /area/station/security/checkpoint/supply) -"lfT" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/filingcabinet, -/obj/effect/spawner/random/bureaucracy/paper, -/obj/effect/spawner/random/bureaucracy/paper, -/turf/open/floor/iron/dark/textured_large, -/area/station/maintenance/starboard/aft) +"lfX" = ( +/obj/machinery/light/directional/south, +/obj/structure/lattice/catwalk, +/obj/machinery/airalarm/directional/south, +/turf/open/openspace, +/area/station/security/checkpoint/supply) "lgb" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron, /area/station/commons/storage/primary) -"lge" = ( -/turf/open/floor/wood, -/area/station/engineering/lobby) +"lgg" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/poddoor/shutters{ + id = "abandoned_kitchen"; + name = "Kitchen Shudders"; + dir = 8 + }, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard) "lgi" = ( /obj/structure/chair/office, /turf/open/floor/carpet/stellar, /area/station/service/library) "lgo" = ( -/obj/item/storage/box/silver_ids{ - pixel_x = -4; - pixel_y = 21 - }, -/obj/item/storage/box/ids{ - pixel_x = -14; - pixel_y = 15 - }, -/obj/item/storage/box/pdas{ - pixel_x = 8; - pixel_y = 17 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, +/obj/effect/turf_decal/siding/wood{ + dir = 10 + }, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) "lgt" = ( /obj/structure/ladder, @@ -39531,15 +41468,20 @@ }, /turf/open/floor/engine/hull, /area/space/nearstation) +"lgx" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/structure/sign/poster/contraband/random/directional/south, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "lgA" = ( /obj/structure/lattice, /obj/structure/grille/broken, /turf/open/space/openspace, /area/space/nearstation) -"lgF" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/station/engineering/gravity_generator) +"lgC" = ( +/obj/machinery/light/small/directional/west, +/turf/open/openspace, +/area/station/engineering/storage/tech) "lgK" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -39547,10 +41489,6 @@ /obj/machinery/firealarm/directional/east, /turf/open/floor/iron/white, /area/station/medical/office) -"lgN" = ( -/obj/effect/turf_decal/tile/dark_blue/opposingcorners, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) "lgV" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -39564,15 +41502,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/construction/storage_wing) -"lgZ" = ( -/obj/item/pickaxe{ - pixel_x = 4; - pixel_y = 12 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "lhg" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -39583,23 +41512,31 @@ /obj/effect/turf_decal/siding/blue{ dir = 1 }, -/obj/machinery/computer/cargo/request{ - dir = 8 +/obj/machinery/light/directional/east, +/obj/structure/bookcase/random/reference, +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 5 }, -/obj/machinery/newscaster/directional/east, -/obj/effect/turf_decal/tile/green/opposingcorners{ +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ dir = 1 }, -/obj/machinery/light/directional/east, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/item/book/manual/wiki/security_space_law{ + pixel_x = 9; + pixel_y = 12 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) +"lhq" = ( +/obj/structure/chair/stool/directional/west, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "lhw" = ( /turf/open/floor/glass/reinforced, /area/station/science/ordnance) "lhy" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 1 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/landmark/event_spawn, @@ -39614,15 +41551,28 @@ }, /turf/open/floor/wood/large, /area/station/hallway/primary/central) -"lhY" = ( -/obj/effect/turf_decal/trimline/brown/filled/line, -/obj/machinery/conveyor{ - dir = 8; - id = "mining" +"lhJ" = ( +/obj/effect/landmark/start/depsec/engineering, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 }, -/obj/structure/railing{ +/turf/open/floor/iron/dark/smooth_large, +/area/station/security/checkpoint/engineering) +"lhP" = ( +/obj/structure/grille, +/obj/machinery/atmospherics/pipe/smart/simple/purple/visible, +/turf/closed/wall/r_wall, +/area/station/engineering/atmos/upper) +"lhR" = ( +/obj/machinery/newscaster/directional/east, +/obj/effect/turf_decal/siding/wood{ dir = 1 }, +/obj/item/kirbyplants/random, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) +"lhY" = ( +/obj/effect/turf_decal/trimline/brown/filled/line, /turf/open/floor/iron, /area/station/cargo/miningoffice) "lia" = ( @@ -39639,16 +41589,17 @@ /obj/effect/landmark/start/cyborg, /turf/open/floor/iron/dark/textured_large, /area/station/science/robotics/lab) +"lik" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 + }, +/obj/effect/landmark/start/hangover, +/turf/open/floor/iron, +/area/station/commons/locker) "lim" = ( /obj/effect/spawner/random/trash/grime, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"lio" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/commons/vacant_room/commissary) "liy" = ( /obj/item/kirbyplants/random, /obj/item/radio/intercom/directional/south, @@ -39660,6 +41611,10 @@ /obj/machinery/newscaster/directional/south, /turf/open/floor/iron/dark, /area/station/service/chapel/office) +"liE" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/mix_output, +/turf/open/floor/engine/vacuum, +/area/station/engineering/atmos/upper) "liH" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/trash/graffiti, @@ -39671,14 +41626,32 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"liY" = ( -/obj/machinery/door/airlock/atmos/glass{ - name = "Atmospherics Testing Room" +"liN" = ( +/obj/effect/turf_decal/stripes/line, +/obj/structure/closet/firecloset, +/obj/structure/sign/warning/directional/south, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) +"liP" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Virology Maintenance" }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, -/obj/machinery/door/firedoor/heavy, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, -/area/station/engineering/atmos/project) +/area/station/maintenance/port) +"lja" = ( +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 9 + }, +/obj/effect/turf_decal/trimline/green/filled/mid_joiner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/green/filled/mid_joiner{ + dir = 8 + }, +/obj/machinery/airalarm/directional/west, +/turf/open/floor/iron/textured_large, +/area/station/medical/virology) "ljc" = ( /turf/open/openspace, /area/station/hallway/secondary/exit/departure_lounge) @@ -39687,10 +41660,6 @@ /obj/machinery/camera/autoname/directional/east, /turf/open/openspace, /area/station/hallway/secondary/entry) -"ljh" = ( -/obj/structure/window/reinforced/spawner/directional/north, -/turf/open/openspace, -/area/station/engineering/lobby) "lji" = ( /turf/closed/wall/r_wall, /area/station/security/evidence) @@ -39733,15 +41702,6 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/office) -"ljW" = ( -/obj/machinery/door/airlock/external, -/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ - cycle_id = "cargocatwalkmaint" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/access/all/engineering/external, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "ljY" = ( /obj/structure/lattice/catwalk, /obj/item/clothing/mask/gas/clown_hat{ @@ -39759,11 +41719,21 @@ /obj/structure/closet/crate/cardboard, /turf/open/openspace, /area/station/maintenance/port/aft) +"lkf" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/turf/open/floor/iron/smooth, +/area/station/engineering/main) "lkj" = ( -/obj/structure/lattice/catwalk, +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/preopen{ + id = "hop"; + name = "Privacy Shutters" + }, /obj/structure/cable, -/turf/open/water, -/area/station/maintenance/port/fore) +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/plating, +/area/station/command/heads_quarters/hop) "lkt" = ( /obj/effect/turf_decal/tile/blue{ dir = 8 @@ -39782,19 +41752,12 @@ /area/station/security/prison/mess) "lkC" = ( /obj/machinery/light/directional/south, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge, /area/station/hallway/primary/central) "lkP" = ( /obj/effect/turf_decal/bot/right, /turf/open/floor/engine/hull, /area/space/nearstation) -"lkT" = ( -/obj/machinery/camera/directional/north{ - c_tag = "Atmospherics - co2 Cell"; - name = "atmospherics camera" - }, -/turf/open/floor/engine/plasma, -/area/station/engineering/atmos/upper) "lkY" = ( /obj/effect/turf_decal/trimline/green/filled/line, /obj/effect/decal/cleanable/dirt, @@ -39806,23 +41769,26 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/medical/patients_rooms/room_a) -"llh" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4 +"llf" = ( +/obj/structure/table/reinforced, +/obj/machinery/airalarm/directional/east, +/obj/item/paper_bin{ + pixel_x = 2; + pixel_y = 7 }, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, +/obj/item/hand_labeler, +/obj/effect/turf_decal/tile/yellow, +/obj/item/stack/package_wrap, /turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/area/station/commons/storage/primary) "lll" = ( /obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/preopen{ + id = "capshut" + }, +/obj/structure/cable, /turf/open/floor/plating, /area/station/command/heads_quarters/captain/private) -"llv" = ( -/obj/structure/lattice/catwalk, -/turf/open/water, -/area/station/maintenance/port/fore) "llA" = ( /obj/machinery/door/airlock/external{ name = "Arrival Airlock"; @@ -39833,6 +41799,16 @@ }, /turf/open/floor/plating, /area/station/hallway/secondary/entry) +"llC" = ( +/obj/structure/table, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/item/analyzer, +/obj/machinery/light/small/directional/north, +/obj/machinery/status_display/ai/directional/north, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "llD" = ( /obj/effect/turf_decal/tile/purple{ dir = 4 @@ -39843,21 +41819,51 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/aft) +"llG" = ( +/obj/effect/turf_decal/tile/red/opposingcorners, +/obj/effect/turf_decal/tile/neutral/opposingcorners{ + dir = 1 + }, +/obj/machinery/meter{ + name = "N2O meter" + }, +/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ + name = "N2O Multideck Adapter"; + dir = 2 + }, +/obj/effect/turf_decal/box/white, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "llK" = ( /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/visible, /turf/open/floor/iron/freezer, /area/station/engineering/atmos/pumproom) +"llM" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"llO" = ( +/obj/structure/transport/linear{ + radial_travel = 0 + }, +/obj/machinery/elevator_control_panel/directional/south{ + linked_elevator_id = "catwalk_engi"; + preset_destination_names = list("2"="Lower Engine","3"="Upper Engine.") + }, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "llP" = ( -/obj/effect/turf_decal/caution/stand_clear{ - dir = 4 +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 8 }, -/obj/docking_port/stationary/mining_home{ +/obj/effect/turf_decal/trimline/brown/filled/line{ dir = 4 }, -/turf/open/floor/engine/hull, -/area/space/nearstation) +/turf/open/floor/iron, +/area/station/cargo/miningoffice) "llY" = ( /obj/structure/table/wood, /obj/item/flashlight/lamp/green{ @@ -39880,27 +41886,15 @@ }, /turf/open/floor/iron/dark, /area/station/medical/chemistry) -"lmt" = ( -/obj/structure/closet/crate, -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 10 - }, -/obj/item/stack/package_wrap, -/obj/item/stack/package_wrap, -/obj/item/stack/package_wrap, -/obj/item/stack/package_wrap, -/obj/item/stack/package_wrap, -/obj/item/stack/package_wrap, -/obj/item/stack/wrapping_paper, -/obj/item/stack/wrapping_paper, -/turf/open/floor/iron, -/area/station/cargo/sorting) -"lmv" = ( -/obj/structure/disposalpipe/segment{ - dir = 6 +"lmn" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 1 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/obj/machinery/camera/autoname/directional/north, +/obj/machinery/status_display/ai/directional/north, +/obj/machinery/light/small/directional/north, +/turf/open/floor/iron/dark, +/area/station/engineering/storage) "lmz" = ( /obj/machinery/conveyor{ dir = 4; @@ -39910,36 +41904,24 @@ id = "Disposal Exit"; name = "Disposal Exit Vent" }, +/obj/effect/turf_decal/stripes/red/box, /turf/open/floor/plating, /area/station/maintenance/disposal) "lmA" = ( -/obj/structure/table/wood, -/obj/item/melee/chainofcommand, -/obj/machinery/recharger{ - pixel_y = 4 - }, /obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) "lmB" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, /area/station/maintenance/port) "lmH" = ( /obj/machinery/portable_atmospherics/canister, /turf/open/floor/engine, /area/station/engineering/atmos/hfr_room) -"lmI" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 4 - }, -/obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/engineering/lobby) "lmL" = ( /obj/structure/chair/sofa/left/brown, /obj/item/instrument/guitar{ @@ -39947,6 +41929,12 @@ }, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) +"lmR" = ( +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5{ + dir = 9 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "lmT" = ( /obj/effect/landmark/start/hangover, /turf/open/floor/glass/reinforced, @@ -39958,16 +41946,6 @@ /area/station/security/detectives_office/private_investigators_office) "lnd" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/sign/directions/science/directional/west{ - pixel_y = -6 - }, -/obj/structure/sign/directions/supply/directional/west{ - dir = 1 - }, -/obj/structure/sign/directions/engineering/directional/west{ - dir = 1; - pixel_y = 6 - }, /obj/effect/landmark/start/hangover, /obj/effect/spawner/random/trash/grime, /turf/open/floor/iron, @@ -39976,6 +41954,13 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/service/chapel) +"lnm" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/bot, +/obj/structure/closet/firecloset, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos/office) "lnv" = ( /obj/machinery/status_display/supply, /turf/closed/wall, @@ -39984,6 +41969,11 @@ /obj/machinery/light/cold/directional/west, /turf/open/floor/iron/white/smooth_large, /area/station/security/prison) +"lnB" = ( +/obj/structure/sign/warning/docking/directional/south, +/obj/structure/lattice, +/turf/open/space/basic, +/area/space/nearstation) "lnC" = ( /obj/machinery/light/directional, /obj/structure/railing{ @@ -39991,6 +41981,20 @@ }, /turf/open/floor/iron/dark, /area/station/security/range) +"lnE" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=17-Dorms"; + location = "16-Laundry" + }, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/obj/machinery/duct, +/turf/open/floor/iron, +/area/station/commons/dorms) "lnH" = ( /obj/structure/railing{ dir = 1 @@ -39999,16 +42003,11 @@ dir = 1 }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/machinery/door/firedoor/border_only{ + dir = 1 + }, /turf/open/floor/iron/textured, /area/station/cargo/storage) -"lnO" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/turf/open/floor/iron, -/area/station/engineering/main) "lnV" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/layer3, @@ -40017,9 +42016,15 @@ dir = 1 }, /turf/open/floor/iron/checker, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) +"lnZ" = ( +/obj/effect/turf_decal/tile/yellow/fourcorners, +/obj/structure/closet/firecloset, +/obj/effect/turf_decal/bot, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/lobby) "loc" = ( -/obj/machinery/photocopier/prebuilt, /obj/machinery/light_switch/directional/south{ pixel_x = 3; pixel_y = -27 @@ -40028,27 +42033,26 @@ /obj/machinery/firealarm/directional/south{ pixel_x = -6 }, -/turf/open/floor/carpet, +/obj/structure/table/wood, +/obj/item/storage/box/ids{ + pixel_x = -14; + pixel_y = 8 + }, +/obj/item/storage/box/silver_ids{ + pixel_x = -4; + pixel_y = 12 + }, +/obj/item/storage/box/pdas{ + pixel_x = 8; + pixel_y = 10 + }, +/turf/open/floor/wood/tile, /area/station/command/heads_quarters/hop) "lof" = ( /obj/structure/chair/office, /obj/effect/landmark/start/librarian, /turf/open/floor/wood, /area/station/service/library/printer) -"loh" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) -"lom" = ( -/obj/structure/cable, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) "lon" = ( /obj/effect/turf_decal/siding/wood{ dir = 10 @@ -40062,14 +42066,10 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/openspace, /area/station/science/research) -"loB" = ( -/obj/machinery/suit_storage_unit/medical, -/obj/effect/turf_decal/bot_white{ - color = "#52B4E9" - }, -/obj/machinery/status_display/evac/directional/south, -/turf/open/floor/iron/dark/textured_large, -/area/station/medical/storage) +"loz" = ( +/obj/structure/cable, +/turf/open/floor/carpet, +/area/station/maintenance/starboard) "loI" = ( /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -40079,6 +42079,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"loJ" = ( +/obj/machinery/firealarm/directional/north, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "loN" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable/multilayer/multiz, @@ -40086,7 +42092,7 @@ dir = 1 }, /turf/open/floor/iron/checker, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "loO" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -40122,6 +42128,29 @@ /obj/structure/fake_stairs/directional/west, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"lps" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) +"lpw" = ( +/obj/structure/sign/poster/contraband/power/directional/north, +/obj/structure/disposalpipe/segment, +/turf/open/floor/wood, +/area/station/maintenance/starboard) +"lpA" = ( +/obj/structure/lattice, +/obj/effect/spawner/random/maintenance, +/turf/open/openspace, +/area/station/maintenance/starboard/aft/upper) +"lpE" = ( +/obj/structure/cable, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/main) "lpG" = ( /obj/machinery/door/poddoor/massdriver_chapel, /obj/machinery/atmos_shield_gen/active{ @@ -40132,6 +42161,23 @@ }, /turf/open/floor/iron/dark, /area/station/service/chapel) +"lpW" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/status_display/evac/directional/east, +/turf/open/openspace, +/area/station/medical/virology) +"lpX" = ( +/obj/machinery/duct, +/obj/structure/sign/departments/maint/directional/east, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) +"lqa" = ( +/obj/machinery/rnd/production/protolathe/department/engineering, +/turf/open/floor/iron/dark/smooth_large, +/area/station/engineering/storage) "lqd" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 4 @@ -40146,6 +42192,12 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/virology) +"lqf" = ( +/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/o2{ + dir = 8 + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "lqg" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -40166,13 +42218,16 @@ /obj/structure/sign/poster/contraband/random/directional/west, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"lqv" = ( -/obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/pipedispenser/disposal, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +"lqw" = ( +/obj/machinery/door/airlock/maintenance, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/machinery/duct, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "lqA" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 8 @@ -40183,11 +42238,14 @@ /turf/open/floor/iron/smooth, /area/station/engineering/main) "lqB" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/obj/effect/landmark/firealarm_sanity, -/turf/open/openspace, -/area/station/hallway/primary/central) +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/machinery/computer/accounting{ + dir = 4 + }, +/turf/open/floor/wood/tile, +/area/station/command/heads_quarters/hop) "lqD" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -40232,37 +42290,18 @@ /turf/open/floor/engine, /area/station/science/xenobiology) "lqS" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/radio/intercom/directional/north, -/obj/structure/table, -/obj/item/storage/box/lights/mixed{ - pixel_x = 4; - pixel_y = 11 +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 4 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/obj/effect/turf_decal/trimline/brown/arrow_cw{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/hallway/primary/starboard) "lqZ" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/medical/office) -"lrb" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"lrl" = ( -/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ - name = "O2 Multideck Adapter"; - dir = 8 - }, -/obj/machinery/meter{ - name = "O2 meter" - }, -/obj/effect/turf_decal/tile/blue/fourcorners, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) "lrp" = ( /obj/structure/cable, /turf/open/floor/plating, @@ -40289,14 +42328,21 @@ /obj/machinery/firealarm/directional/west, /turf/open/floor/iron/dark, /area/station/medical/chemistry) -"lrT" = ( -/turf/open/floor/glass, -/area/station/maintenance/starboard/lesser) -"lse" = ( -/obj/structure/cable, -/obj/machinery/power/apc/auto_name/directional/north, +"lrX" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 5 + }, /turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/area/station/engineering/supermatter/room/upper) +"lrZ" = ( +/obj/machinery/holopad, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"lsa" = ( +/obj/structure/sign/poster/contraband/random/directional/east, +/obj/structure/lattice/catwalk, +/turf/open/water/no_planet_atmos, +/area/station/maintenance/starboard/fore) "lsg" = ( /obj/machinery/door/window/brigdoor/security/cell/left/directional/east{ id = "Cell 2"; @@ -40308,10 +42354,51 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/smooth_large, /area/station/security/brig) +"lsl" = ( +/obj/machinery/mecha_part_fabricator/maint{ + name = "forgotten exosuit fabricator"; + drop_direction = 6 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/blood/oil, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "lsp" = ( /obj/structure/cable/multilayer/multiz, /turf/open/floor/glass/reinforced/airless, /area/station/solars/starboard/aft) +"lst" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/computer/station_alert, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/turf/open/floor/iron/checker, +/area/station/engineering/atmos/upper) +"lsu" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/bot, +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/iron, +/area/station/engineering/storage_shared) +"lsv" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/main) +"lsy" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/stripes/white/corner{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "lsA" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/burnt_floor, @@ -40320,17 +42407,6 @@ "lsQ" = ( /turf/open/floor/iron/dark/smooth_large, /area/station/security/office) -"lsV" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/camera/autoname/directional/east, -/obj/machinery/light_switch/directional/east, -/obj/structure/disposalpipe/segment{ - dir = 2 - }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/main) "lsW" = ( /obj/structure/table, /obj/effect/spawner/random/maintenance, @@ -40355,13 +42431,13 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood/large, /area/station/medical/break_room) -"ltG" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/openspace, -/area/station/engineering/atmos/project) +"ltF" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/disposalpipe/trunk/multiz{ + dir = 8 + }, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard) "ltQ" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -40383,6 +42459,11 @@ "lul" = ( /turf/closed/wall/r_wall, /area/space/nearstation) +"lum" = ( +/turf/open/floor/iron/chapel{ + dir = 8 + }, +/area/station/service/chapel) "luw" = ( /obj/effect/turf_decal/siding/wood{ dir = 4 @@ -40415,20 +42496,24 @@ "luY" = ( /turf/closed/wall, /area/station/commons/storage/art) +"lva" = ( +/obj/machinery/door/airlock/external, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "space-outpost" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/external, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "lvj" = ( /obj/machinery/status_display/ai/directional/north, -/obj/machinery/camera/autoname/directional/north, -/turf/open/floor/engine/hull/air, -/area/station/command/meeting_room/council) -"lvv" = ( -/obj/machinery/computer/security/telescreen/entertainment/directional/east, -/obj/structure/disposalpipe/segment{ - dir = 9 - }, -/turf/open/floor/wood, -/area/station/commons/dorms) +/obj/machinery/computer/rdconsole/unlocked, +/obj/effect/turf_decal/tile/purple/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "lvE" = ( -/obj/machinery/roulette, +/obj/machinery/modular_computer/preset/id{ + dir = 4 + }, /turf/open/floor/carpet/royalblack, /area/station/command/heads_quarters/hos) "lvR" = ( @@ -40443,11 +42528,6 @@ /obj/effect/landmark/start/assistant, /turf/open/floor/iron, /area/station/commons/storage/primary) -"lwe" = ( -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/caution/stand_clear, -/turf/open/floor/engine, -/area/station/engineering/atmos/upper) "lwf" = ( /turf/open/floor/glass, /area/station/security/brig) @@ -40458,11 +42538,14 @@ /turf/open/floor/iron/smooth_edge{ dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "lwu" = ( /obj/machinery/firealarm/directional/west, /turf/open/floor/iron, /area/station/commons/fitness/recreation) +"lwA" = ( +/turf/open/openspace, +/area/station/maintenance/starboard/upper) "lwB" = ( /obj/effect/turf_decal/siding/wood{ dir = 5 @@ -40477,14 +42560,10 @@ /turf/open/floor/iron/white/smooth_half{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "lwJ" = ( -/obj/structure/railing, -/obj/effect/turf_decal/siding/red, -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, +/obj/effect/turf_decal/siding/wood, +/turf/open/floor/wood/large, /area/station/hallway/primary/central) "lxa" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -40495,6 +42574,18 @@ }, /turf/open/floor/iron/dark, /area/station/engineering/storage/tech) +"lxb" = ( +/obj/machinery/modular_computer/preset/id{ + dir = 1 + }, +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/obj/effect/turf_decal/siding/yellow{ + dir = 1 + }, +/turf/open/floor/engine, +/area/station/command/heads_quarters/ce) "lxh" = ( /obj/machinery/newscaster/directional/north, /obj/machinery/deepfryer, @@ -40516,6 +42607,12 @@ /obj/effect/spawner/random/structure/closet_maintenance, /turf/open/floor/plating, /area/station/maintenance/port/greater) +"lxq" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 10 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "lxs" = ( /obj/effect/turf_decal/trimline/yellow/corner, /obj/item/storage/toolbox/electrical{ @@ -40537,6 +42634,15 @@ }, /turf/open/floor/iron, /area/station/science/robotics/lab) +"lxy" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/rack, +/obj/effect/spawner/random/techstorage/service_all, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "lxz" = ( /obj/effect/mapping_helpers/burnt_floor, /obj/machinery/power/smes{ @@ -40544,16 +42650,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) -"lxJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) -"lxN" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/ai/satellite/foyer) "lxQ" = ( /obj/machinery/smartfridge/extract/preloaded, /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -40571,11 +42668,22 @@ /obj/machinery/light/small/blacklight/directional/north, /turf/open/floor/carpet/stellar, /area/station/maintenance/hallway/abandoned_recreation) +"lxV" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 8 + }, +/obj/structure/railing/corner/end/flip{ + dir = 1 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "lxW" = ( +/obj/structure/disposalpipe/segment, +/obj/effect/landmark/start/shaft_miner, +/obj/machinery/light/directional/west, /obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 1 + dir = 8 }, -/obj/structure/closet/secure_closet/miner, /turf/open/floor/iron, /area/station/cargo/miningoffice) "lxY" = ( @@ -40586,37 +42694,13 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark/smooth_large, /area/station/science/lab) -"lyd" = ( -/obj/structure/broken_flooring/corner/directional/east, -/obj/effect/mapping_helpers/burnt_floor, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) "lys" = ( /obj/machinery/camera/autoname/directional/west, /turf/open/floor/engine, /area/station/service/hydroponics) -"lyw" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/table, -/obj/item/clothing/head/cone{ - pixel_x = -4; - pixel_y = 4 - }, -/obj/item/clothing/head/cone{ - pixel_x = -4; - pixel_y = 4 - }, -/obj/item/clothing/head/cone{ - pixel_x = -4; - pixel_y = 4 - }, -/obj/item/folder/yellow{ - pixel_x = 4 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) +"lyv" = ( +/turf/open/floor/plating/elevatorshaft, +/area/station/engineering/atmos) "lyx" = ( /obj/machinery/door/window/brigdoor/security/cell/left/directional/east{ id = "Cell 3"; @@ -40645,7 +42729,23 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/item/radio/intercom/directional/north, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) +"lyM" = ( +/obj/machinery/door/airlock/engineering/glass{ + name = "Engineering Project Room" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/obj/machinery/door/firedoor/heavy, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/engineering/storage_shared) +"lyO" = ( +/obj/machinery/camera/autoname/directional/north, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "lyP" = ( /obj/structure/railing/corner, /obj/structure/cable, @@ -40671,13 +42771,38 @@ }, /obj/effect/mapping_helpers/airlock/access/any/command/ai_upload, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) +"lzg" = ( +/obj/structure/table, +/obj/item/stamp/denied{ + pixel_x = 8; + pixel_y = 1 + }, +/obj/item/stamp/granted{ + pixel_x = 9; + pixel_y = 8 + }, +/obj/item/paper_bin{ + pixel_x = -5; + pixel_y = 6 + }, +/obj/item/pen{ + pixel_y = 5 + }, +/turf/open/floor/wood/large, +/area/station/engineering/lobby) "lzk" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) "lzp" = ( /obj/machinery/light_switch/directional/east, @@ -40686,16 +42811,20 @@ dir = 1 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) -"lzG" = ( -/obj/effect/turf_decal/trimline/white/line{ - dir = 8 +/area/station/ai/upload/chamber) +"lzy" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/landmark/start/assistant, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) +"lzH" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/wood, +/area/station/maintenance/aft) "lzO" = ( /obj/effect/turf_decal/trimline/purple/filled/corner{ dir = 1 @@ -40719,17 +42848,12 @@ }, /turf/open/floor/iron/dark/textured_half, /area/station/medical/surgery) -"lzZ" = ( -/obj/item/statuebust{ - pixel_y = 12 - }, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/fore) "lAf" = ( /turf/open/floor/iron/sepia, /area/station/hallway/secondary/construction) "lAg" = ( /obj/effect/mapping_helpers/broken_floor, +/obj/structure/disposalpipe/segment, /turf/open/floor/wood, /area/station/maintenance/starboard/central) "lAl" = ( @@ -40743,6 +42867,13 @@ /obj/machinery/light_switch/directional/east, /turf/open/floor/iron/dark, /area/station/engineering/storage/tcomms) +"lAo" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/effect/turf_decal/stripes/white/line{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "lAs" = ( /obj/machinery/camera/autoname/directional/east, /turf/open/openspace, @@ -40755,11 +42886,6 @@ /obj/item/circuitboard/aicore, /turf/open/floor/wood, /area/station/command/heads_quarters/rd) -"lAE" = ( -/obj/effect/turf_decal/delivery, -/obj/structure/reagent_dispensers/fueltank, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "lAF" = ( /obj/machinery/light/warm/dim/directional/south, /obj/effect/turf_decal/tile/dark_green{ @@ -40796,10 +42922,6 @@ /obj/structure/cable, /turf/open/floor/wood, /area/station/command/heads_quarters/hos) -"lAJ" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "lAN" = ( /turf/open/floor/iron/dark/textured_large, /area/station/medical/virology) @@ -40825,8 +42947,9 @@ id = "CargowatchShutter"; name = "Outside Shutter" }, +/obj/structure/cable, /turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/area/station/command/heads_quarters/qm) "lAS" = ( /obj/structure/transit_tube/horizontal, /obj/structure/lattice/catwalk, @@ -40882,28 +43005,12 @@ }, /turf/open/floor/iron, /area/station/science/lobby) -"lBo" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt/dust, -/obj/item/pen/blue{ - pixel_x = -9; - pixel_y = 9 - }, -/obj/structure/fluff/paper/stack{ - desc = "A stack of various papers, absolutely unreadable due to scorch marks and aging."; - dir = 1 +"lBy" = ( +/obj/structure/railing/corner/end/flip{ + dir = 8 }, -/obj/structure/fluff/paper/corner, -/obj/effect/spawner/random/maintenance, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"lBw" = ( -/obj/effect/landmark/event_spawn, -/obj/effect/landmark/blobstart, -/obj/effect/turf_decal/tile/purple/opposingcorners, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/aft) +/turf/open/floor/eighties, +/area/station/maintenance/department/crew_quarters/dorms) "lBA" = ( /obj/structure/table/reinforced/rglass, /obj/item/mod/module/plasma_stabilizer{ @@ -40920,33 +43027,10 @@ }, /turf/open/floor/glass, /area/station/security/brig) -"lBF" = ( -/obj/structure/rack, -/obj/item/storage/toolbox/emergency, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"lBQ" = ( -/obj/structure/cable, -/obj/machinery/power/apc/auto_name/directional/south, -/obj/effect/turf_decal/siding/wood{ - dir = 4 - }, -/obj/structure/table, -/obj/machinery/fax{ - fax_name = "Engineering Lobby"; - name = "Engineering Lobby Fax Machine" - }, -/turf/open/floor/wood, -/area/station/engineering/lobby) -"lBS" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/cigbutt{ - pixel_x = 8; - pixel_y = -2 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"lBD" = ( +/obj/machinery/light/small/directional/west, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/gravity_generator) "lBX" = ( /obj/machinery/quantum_server, /obj/effect/decal/cleanable/dirt/dust, @@ -40961,15 +43045,6 @@ /obj/item/paperplane/syndicate, /turf/open/floor/iron/dark, /area/station/maintenance/port) -"lCf" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 2 - }, -/turf/open/floor/iron, -/area/station/commons/dorms) "lCl" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light/directional/west, @@ -40977,16 +43052,6 @@ /obj/structure/closet/crate/trashcart/filled, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"lCw" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/simple/green/visible, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "lCX" = ( /obj/structure/railing{ dir = 1 @@ -40997,6 +43062,27 @@ /obj/effect/turf_decal/tile/dark_red, /turf/open/floor/iron/dark, /area/station/science/cytology) +"lCY" = ( +/obj/structure/table, +/obj/item/paper{ + pixel_y = 4 + }, +/obj/item/phone{ + pixel_x = -5; + pixel_y = 11 + }, +/obj/item/pen/blue{ + pixel_x = -5; + pixel_y = -1 + }, +/obj/item/stamp/granted{ + pixel_x = 13; + pixel_y = 12 + }, +/obj/machinery/computer/security/telescreen/aiupload/directional/north, +/obj/machinery/camera/autoname/directional/west, +/turf/open/floor/iron/dark/smooth_large, +/area/station/ai/upload/foyer) "lDc" = ( /turf/closed/wall, /area/station/security/prison) @@ -41019,7 +43105,7 @@ /turf/open/floor/iron/dark/textured_edge{ dir = 8 }, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lDj" = ( /obj/structure/chair/office{ dir = 1 @@ -41047,28 +43133,41 @@ dir = 1 }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lDE" = ( /turf/closed/wall, /area/station/commons/vacant_room/commissary) +"lDH" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) +"lDI" = ( +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/engineering/lobby) +"lEd" = ( +/obj/machinery/camera/autoname/directional/east, +/turf/open/openspace, +/area/station/commons/toilet/restrooms) "lEe" = ( /obj/structure/bed/medical/emergency, /obj/structure/disposalpipe/segment, /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) -"lEf" = ( -/obj/structure/railing{ - dir = 5 - }, -/obj/structure/reagent_dispensers/water_cooler, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) -"lEi" = ( -/obj/structure/disposalpipe/trunk/multiz/down{ - dir = 1 +"lEl" = ( +/obj/machinery/holopad, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) +"lEm" = ( +/obj/machinery/roulette, +/obj/effect/turf_decal/delivery/white{ + color = "#ff6600" }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "lEo" = ( /obj/machinery/light/directional/east, /obj/effect/turf_decal/trimline/yellow/arrow_ccw{ @@ -41082,17 +43181,9 @@ dir = 4 }, /area/station/hallway/primary/fore) -"lEy" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ - dir = 5 - }, -/obj/structure/closet/radiation, -/turf/open/openspace, -/area/station/engineering/atmos/project) "lEB" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/service/library) "lEC" = ( @@ -41119,24 +43210,11 @@ }, /turf/open/floor/wood/large, /area/station/service/library) -"lEJ" = ( -/obj/machinery/door/poddoor/shutters/radiation/preopen{ - id = "SM_shutters"; - name = "Supermatter Radiation Shutters" - }, -/obj/structure/cable/layer1, -/turf/open/floor/plating, -/area/station/engineering/supermatter) -"lEO" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/obj/structure/disposalpipe/trunk/multiz/down{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark/textured_large, -/area/station/maintenance/port) +"lEH" = ( +/obj/structure/closet/secure_closet/engineering_welding, +/obj/item/radio/intercom/directional/east, +/turf/open/floor/iron/smooth, +/area/station/engineering/main) "lEP" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/sign/directions/lavaland/directional/south, @@ -41193,7 +43271,10 @@ }, /obj/structure/sign/poster/official/nanotrasen_logo/directional/north, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"lFF" = ( +/turf/open/floor/wood, +/area/station/maintenance/starboard) "lFH" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -41209,13 +43290,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood, /area/station/service/library/printer) -"lFW" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "lFZ" = ( /obj/machinery/power/terminal{ dir = 1 @@ -41226,7 +43300,7 @@ name = "AI Chamber Requests Console" }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lGy" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -41241,18 +43315,39 @@ /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 9 }, -/obj/structure/table/reinforced, -/obj/item/pai_card{ - pixel_x = 6; - pixel_y = 12 - }, /obj/machinery/light/directional/west, -/obj/effect/spawner/random/food_or_drink/donkpockets{ - pixel_y = -3; - pixel_x = -5 +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 2 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 1 }, /turf/open/floor/iron/textured, /area/station/cargo/storage) +"lGC" = ( +/obj/machinery/camera/directional/north{ + c_tag = "Engineering - Showers" + }, +/obj/structure/closet/radiation, +/obj/item/clothing/glasses/meson, +/obj/machinery/light/small/directional/north, +/turf/open/floor/iron/dark/smooth_corner{ + dir = 8 + }, +/area/station/engineering/main) +"lGE" = ( +/obj/machinery/camera/autoname/directional/east, +/obj/machinery/status_display/ai/directional/east, +/turf/open/floor/engine, +/area/station/engineering/atmos/hfr_room) +"lGO" = ( +/obj/machinery/meter{ + name = "Mixed Air Tank In" + }, +/obj/machinery/atmospherics/pipe/layer_manifold/cyan/visible, +/turf/closed/wall/r_wall, +/area/station/engineering/atmos) "lGT" = ( /obj/effect/turf_decal/stripes/corner{ dir = 1 @@ -41263,6 +43358,15 @@ /obj/machinery/firealarm/directional/north, /turf/open/floor/iron/dark/textured_large, /area/station/security/prison) +"lGV" = ( +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 1 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "lHa" = ( /obj/structure/bed/medical/emergency, /obj/machinery/iv_drip, @@ -41271,11 +43375,6 @@ }, /turf/open/floor/iron/dark, /area/station/security/medical) -"lHi" = ( -/obj/structure/cable, -/obj/effect/spawner/random/trash/mess, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "lHp" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, @@ -41290,10 +43389,28 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/primary/port) +"lHz" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/office) "lHE" = ( /obj/machinery/holopad, /turf/open/floor/glass, /area/station/service/kitchen) +"lHI" = ( +/obj/structure/chair/office, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/light/floor, +/obj/structure/cable, +/turf/open/floor/iron/dark/small, +/area/station/command/heads_quarters/ce) "lHK" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 8 @@ -41306,19 +43423,6 @@ }, /turf/open/floor/iron/dark, /area/station/science/lobby) -"lHT" = ( -/obj/effect/spawner/random/maintenance/two, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"lHY" = ( -/obj/effect/turf_decal/siding/brown{ - dir = 4 - }, -/obj/effect/turf_decal/siding/brown/corner{ - dir = 8 - }, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) "lIi" = ( /obj/item/cigbutt{ pixel_x = -12; @@ -41326,24 +43430,6 @@ }, /turf/open/floor/wood, /area/station/maintenance/port/aft) -"lIk" = ( -/obj/structure/railing{ - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) -"lIp" = ( -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 6 - }, -/obj/effect/turf_decal/trimline/green/filled/mid_joiner, -/obj/effect/turf_decal/trimline/green/filled/mid_joiner{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/textured_large, -/area/station/medical/virology) "lIr" = ( /turf/closed/wall, /area/station/maintenance/port/aft) @@ -41351,19 +43437,18 @@ /obj/effect/decal/cleanable/blood/oil/slippery, /turf/open/floor/plating, /area/station/engineering/storage_shared) -"lIC" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 +"lIF" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper/stack{ + dir = 9 }, -/obj/effect/turf_decal/siding/blue, -/obj/effect/turf_decal/tile/blue/opposingcorners{ +/obj/effect/spawner/random/bureaucracy/paper, +/obj/structure/fluff/paper{ dir = 1 }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/white, -/area/station/medical/medbay/central) +/obj/structure/sign/flag/nanotrasen/directional/north, +/turf/open/floor/plating, +/area/station/maintenance/aft) "lIM" = ( /obj/machinery/door/airlock/public/glass{ name = "Courtroom" @@ -41374,6 +43459,11 @@ }, /turf/open/floor/wood, /area/station/security/courtroom) +"lIP" = ( +/obj/machinery/camera/autoname/directional/west, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/engineering/transit_tube) "lIS" = ( /obj/machinery/door/poddoor/preopen{ id = "cmoprivacy"; @@ -41383,17 +43473,6 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/command/heads_quarters/cmo) -"lIT" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) "lJe" = ( /obj/effect/turf_decal/siding/thinplating_new/light/corner, /obj/effect/turf_decal/trimline/purple/corner, @@ -41450,6 +43529,13 @@ }, /turf/closed/wall/r_wall, /area/station/science/ordnance/burnchamber) +"lJK" = ( +/obj/item/radio/intercom/directional/south, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/turf/open/floor/wood, +/area/station/commons/dorms) "lJM" = ( /obj/structure/chair/stool/bar/directional/east, /obj/effect/landmark/start/hangover, @@ -41471,49 +43557,32 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 }, -/turf/open/floor/carpet, +/obj/machinery/camera/autoname/directional/east, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) -"lKm" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 +"lKl" = ( +/obj/machinery/atmospherics/components/binary/pump/on/pink/visible/layer2{ + dir = 4; + name = "Incinerator Output" }, -/obj/structure/cable, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) +/obj/effect/turf_decal/trimline/purple, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"lKG" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/structure/disposalpipe/trunk/multiz, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "lKK" = ( /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/engine, /area/station/science/xenobiology) -"lKV" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/effect/mapping_helpers/broken_floor, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"lKZ" = ( -/obj/structure/rack, -/obj/item/circuitboard/machine/oven{ - pixel_y = 3 - }, -/obj/item/circuitboard/machine/oven, -/obj/item/circuitboard/machine/oven{ - pixel_y = -3 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"lLa" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/lesser) "lLe" = ( -/obj/machinery/button/door/directional/west{ - id = "Disposal Exit"; - name = "Disposal Vent Control" +/obj/machinery/conveyor{ + dir = 8; + id = "garbage" }, +/obj/effect/turf_decal/stripes/white/box, /turf/open/floor/plating, /area/station/maintenance/disposal) "lLh" = ( @@ -41549,7 +43618,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lLF" = ( /obj/structure/filingcabinet/security, /obj/effect/spawner/random/food_or_drink/booze{ @@ -41559,27 +43628,37 @@ /obj/item/clothing/mask/animal/frog, /turf/open/floor/iron/grimy, /area/station/security/detectives_office/private_investigators_office) +"lLG" = ( +/obj/effect/spawner/structure/window, +/obj/structure/disposalpipe/segment{ + dir = 8 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "lLI" = ( /obj/effect/turf_decal/siding/wood/corner, /obj/effect/decal/cleanable/dirt, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"lLN" = ( +/turf/open/floor/plating, +/area/station/maintenance/starboard) "lLR" = ( /obj/machinery/firealarm/directional/north, /obj/structure/sign/poster/official/safety_internals/directional/east, /obj/structure/tank_holder/extinguisher, /turf/open/floor/engine, /area/station/medical/chemistry) -"lLU" = ( -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ +"lLT" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 9 }, -/obj/effect/turf_decal/tile/red{ - dir = 4 +/obj/machinery/atmospherics/components/binary/valve/digital{ + name = "Waste Release"; + dir = 1 }, -/obj/effect/turf_decal/tile/neutral/opposingcorners, /turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +/area/station/engineering/atmos) "lLY" = ( /obj/effect/turf_decal/siding/thinplating_new, /obj/effect/turf_decal/loading_area{ @@ -41600,6 +43679,11 @@ /obj/effect/mapping_helpers/mail_sorting/service/bar, /turf/open/floor/wood, /area/station/hallway/secondary/service) +"lMj" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "lMt" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/oil, @@ -41611,9 +43695,9 @@ /turf/open/floor/holofloor/dark, /area/station/command/heads_quarters/cmo) "lMy" = ( -/obj/structure/bed/dogbed/ian, /mob/living/basic/pet/dog/corgi/ian, -/turf/open/floor/wood, +/obj/structure/bed/dogbed/ian, +/turf/open/floor/wood/tile, /area/station/command/heads_quarters/hop) "lMD" = ( /obj/structure/bed, @@ -41630,7 +43714,7 @@ /turf/open/floor/iron/dark/textured_half{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "lMJ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, @@ -41642,28 +43726,30 @@ /obj/machinery/firealarm/directional/south, /turf/open/floor/iron, /area/station/security/prison) -"lMS" = ( -/obj/effect/turf_decal/siding/wood{ +"lMT" = ( +/obj/machinery/door/poddoor/shutters/preopen{ + name = "Cargo Lockdown Shutters"; + id = "cargolockdown"; dir = 8 }, +/obj/machinery/door/window/brigdoor/left/directional/east{ + name = "Cargo Desk"; + req_access = list("cargo") + }, /obj/structure/table/reinforced, -/obj/item/binoculars, -/turf/open/floor/wood, -/area/station/commons/fitness/recreation) -"lMT" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 8 +/obj/machinery/door/firedoor, +/obj/structure/desk_bell{ + pixel_x = -10; + pixel_y = 9 }, -/obj/machinery/disposal/bin/tagger, -/obj/effect/turf_decal/delivery, -/obj/structure/disposalpipe/trunk{ - dir = 4 +/obj/effect/turf_decal/tile/brown/fourcorners, +/obj/item/folder/yellow{ + pixel_x = 3; + pixel_y = 1 }, +/obj/item/pen, /turf/open/floor/iron, /area/station/cargo/storage) -"lMU" = ( -/turf/open/floor/iron/vaporwave, -/area/station/maintenance/starboard/lesser) "lNc" = ( /obj/item/toy/plush/moth{ name = "Spanner 2, her sibling"; @@ -41707,21 +43793,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "lNp" = ( /obj/structure/lattice, /obj/effect/spawner/random/maintenance, /turf/open/openspace, /area/station/maintenance/port/aft) -"lNs" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/structure/crate, -/obj/item/toy/foamfinger, -/obj/item/toy/foamfinger, -/obj/item/toy/foamfinger, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "lNx" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 @@ -41789,17 +43866,20 @@ pixel_x = 1 }, /turf/open/floor/iron/checker, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"lOf" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/railing/corner, +/obj/machinery/duct, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) "lOg" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/hallway/abandoned_recreation) -"lOh" = ( -/obj/structure/cable, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "lOy" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 1 @@ -41813,6 +43893,11 @@ /obj/machinery/camera/autoname/directional/north, /turf/open/floor/iron, /area/station/hallway/primary/port) +"lOD" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/engineering/atmospherics_portable, +/turf/open/floor/plating, +/area/station/maintenance/hallway/abandoned_recreation) "lPc" = ( /obj/structure/table, /obj/machinery/reagentgrinder, @@ -41829,6 +43914,12 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) +"lPi" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "lPm" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -41845,7 +43936,7 @@ "lPo" = ( /obj/structure/cable/multilayer/multiz, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "lPt" = ( /obj/effect/turf_decal/stripes/corner{ dir = 4 @@ -41856,16 +43947,50 @@ /turf/open/floor/iron/dark, /area/station/science/ordnance) "lPw" = ( -/obj/structure/flora/bush/fullgrass/style_random, -/turf/open/floor/grass, -/area/station/hallway/primary/central) -"lPE" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 9 +/obj/structure/sign/directions/engineering{ + dir = 4 }, -/obj/machinery/computer/atmos_control, -/turf/open/floor/engine/hull/reinforced/air, -/area/station/engineering/atmos/project) +/obj/structure/sign/directions/supply{ + dir = 4; + pixel_y = -10 + }, +/turf/closed/wall/r_wall, +/area/station/science/lab) +"lPI" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/door/airlock{ + id_tag = "Cabin8"; + name = "Cabin 8" + }, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/turf/open/floor/iron/dark/textured, +/area/station/commons/dorms) +"lPP" = ( +/obj/structure/disposalpipe/segment{ + dir = 2 + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/door/airlock/atmos/glass{ + name = "Atmospherics" + }, +/obj/machinery/door/firedoor, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "atmosengimainttriangle" + }, +/obj/effect/landmark/navigate_destination/atmos, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) +"lPR" = ( +/obj/machinery/suit_storage_unit/atmos, +/obj/machinery/newscaster/directional/south, +/turf/open/floor/glass/plasma, +/area/station/engineering/atmos/upper) "lPS" = ( /obj/machinery/holopad, /turf/open/floor/iron/dark, @@ -41909,15 +44034,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, /turf/open/floor/engine, /area/station/engineering/supermatter/room) -"lQE" = ( -/obj/structure/table/reinforced, -/obj/effect/decal/cleanable/dirt, -/obj/structure/statue/bronze/marx{ - pixel_x = 5; - pixel_y = 16 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "lQV" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -41948,6 +44064,7 @@ pixel_x = 5 }, /obj/structure/railing, +/obj/machinery/door/firedoor/border_only, /turf/open/floor/iron, /area/station/cargo/storage) "lRj" = ( @@ -41981,32 +44098,21 @@ }, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"lRr" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 6 +"lRs" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/obj/machinery/suit_storage_unit/engine, -/obj/item/radio/intercom/directional/east, -/turf/open/floor/iron/dark, -/area/station/engineering/engine_smes) -"lRz" = ( -/obj/structure/safe/floor, -/obj/item/stack/spacecash/c1000, -/obj/item/stack/spacecash/c500, -/obj/item/stack/spacecash/c100, -/obj/item/stack/spacecash/c100, -/obj/item/stack/spacecash/c100, -/obj/item/stack/spacecash/c100, -/obj/item/stack/spacecash/c20, -/obj/item/stack/spacecash/c20, -/obj/item/stack/spacecash/c20, -/obj/item/stack/spacecash/c20, -/obj/item/stack/spacecash/c1, -/obj/item/stack/spacecash/c1, -/obj/item/stack/spacecash/c1, -/obj/item/stack/spacecash/c1, +/obj/machinery/duct, +/turf/open/floor/iron, +/area/station/engineering/lobby) +"lRD" = ( +/obj/structure/cable, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/area/station/maintenance/starboard/fore/upper) "lRP" = ( /obj/effect/turf_decal/trimline/yellow/arrow_cw{ dir = 8 @@ -42038,6 +44144,17 @@ }, /turf/open/floor/wood/large, /area/station/medical/break_room) +"lRX" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/yellow/visible, +/turf/closed/wall/r_wall, +/area/station/maintenance/aft/upper) +"lRY" = ( +/obj/effect/spawner/structure/window, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/security/courtroom) "lSe" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -42054,18 +44171,6 @@ }, /turf/open/floor/iron, /area/station/science/robotics) -"lSs" = ( -/obj/machinery/photocopier/prebuilt, -/obj/machinery/firealarm/directional/east, -/turf/open/floor/engine, -/area/station/command/heads_quarters/ce) -"lSE" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner, -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 4 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "lSH" = ( /obj/structure/cable, /obj/structure/table, @@ -42082,12 +44187,28 @@ /obj/machinery/light/directional/east, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/carpet/black, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "lSL" = ( -/obj/structure/railing/corner, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 10 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) +"lSM" = ( +/obj/structure/chair/pew{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/landmark/start/hangover, +/turf/open/floor/carpet, +/area/station/maintenance/starboard) "lSP" = ( /obj/effect/spawner/random/engineering/tracking_beacon, /turf/open/floor/wood, @@ -42102,6 +44223,14 @@ }, /turf/open/floor/iron/large, /area/station/hallway/primary/central) +"lTd" = ( +/obj/machinery/atmospherics/pipe/bridge_pipe/green/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible, +/obj/machinery/atmospherics/components/binary/pump/on/cyan/visible/layer5, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "lTw" = ( /obj/machinery/light/directional/west, /obj/effect/turf_decal/tile/dark_blue{ @@ -42132,19 +44261,6 @@ /obj/machinery/firealarm/directional/south, /turf/open/floor/wood/large, /area/station/service/theater_dressing) -"lTA" = ( -/obj/effect/turf_decal/siding/brown{ - dir = 4 - }, -/obj/machinery/disposal/bin/tagger, -/obj/structure/railing{ - dir = 4 - }, -/obj/structure/disposalpipe/trunk{ - dir = 1 - }, -/turf/open/floor/iron, -/area/station/commons/dorms) "lTD" = ( /obj/machinery/light/directional/south, /turf/open/floor/iron/dark/textured_large, @@ -42153,6 +44269,15 @@ /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/security/courtroom) +"lUg" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/green/filled/corner, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/textured_large, +/area/station/medical/virology) "lUk" = ( /obj/structure/railing, /obj/structure/cable, @@ -42162,7 +44287,7 @@ dir = 1 }, /turf/open/floor/catwalk_floor/iron_white, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "lUn" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -42172,18 +44297,16 @@ }, /turf/open/floor/iron/textured_large, /area/station/medical/virology) -"lUp" = ( -/obj/machinery/door/airlock/external, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/external, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "lUC" = ( /obj/machinery/camera/autoname/directional/south, /turf/open/openspace, /area/station/engineering/lobby) +"lUD" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light/floor/broken, +/turf/open/floor/eighties, +/area/station/maintenance/hallway/abandoned_recreation) "lUI" = ( /obj/machinery/shower/directional/east, /obj/effect/turf_decal/tile/blue/full, @@ -42206,18 +44329,6 @@ }, /turf/open/floor/glass, /area/station/medical/medbay/central) -"lUM" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/closed/wall/r_wall, -/area/station/engineering/lobby) -"lUO" = ( -/obj/structure/window/reinforced/spawner/directional/east, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, -/obj/machinery/meter/monitored/distro_loop, -/turf/open/floor/iron/freezer, -/area/station/engineering/atmos/pumproom) "lUV" = ( /obj/machinery/camera/directional/east{ c_tag = "Prison Isolation Cell"; @@ -42230,11 +44341,13 @@ /turf/open/floor/plating, /area/station/maintenance/port/fore) "lVc" = ( -/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, /obj/machinery/pdapainter/supply, -/obj/structure/light_construct/directional/north, -/turf/open/floor/iron, -/area/station/maintenance/starboard/central) +/obj/machinery/keycard_auth/wall_mounted/directional/north, +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) "lVn" = ( /obj/effect/turf_decal/trimline/blue/filled/line, /obj/structure/cable, @@ -42277,16 +44390,6 @@ /obj/machinery/airalarm/directional/east, /turf/open/floor/wood/large, /area/station/medical/psychology) -"lVA" = ( -/obj/machinery/meter, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, -/obj/machinery/door/window/brigdoor/left/directional/east{ - name = "Air Pump Room"; - req_access = list("atmospherics") - }, -/turf/open/floor/iron/freezer, -/area/station/engineering/atmos/pumproom) "lVD" = ( /obj/machinery/door/airlock/engineering/glass, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -42295,16 +44398,18 @@ /obj/machinery/door/firedoor, /turf/open/floor/iron/dark, /area/station/engineering/engine_smes) -"lVH" = ( -/obj/machinery/computer/records/security{ - dir = 1 - }, -/obj/machinery/computer/security/telescreen/minisat/directional/south{ - name = "AI Ministat Camera Monitor" +"lVF" = ( +/obj/structure/closet/l3closet/scientist, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"lVG" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 }, -/obj/effect/turf_decal/trimline/red/filled/line, -/turf/open/floor/iron/dark, -/area/station/security/checkpoint/engineering) +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "lVK" = ( /obj/machinery/atmospherics/pipe/multiz/scrubbers/visible/layer2, /obj/machinery/atmospherics/pipe/multiz/supply/visible/layer4, @@ -42319,6 +44424,16 @@ "lVM" = ( /turf/open/floor/plating, /area/station/construction/mining/aux_base) +"lVR" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/decal/cleanable/blood/oil, +/obj/item/cigbutt{ + pixel_x = 8; + pixel_y = -2 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "lWc" = ( /obj/effect/turf_decal/tile/blue, /turf/open/floor/iron/dark/smooth_large, @@ -42326,27 +44441,19 @@ "lWf" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate{ - icon_state = "crateopen" - }, -/obj/effect/spawner/random/maintenance, -/obj/item/radio/intercom/directional/south, /turf/open/floor/iron/textured, /area/station/cargo/warehouse) -"lWg" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/siphon/on{ - dir = 4; - external_pressure_bound = 120; - name = "killroom vent" - }, -/turf/open/floor/circuit/telecomms, -/area/station/science/xenobiology) "lWn" = ( /obj/structure/chair{ dir = 1 }, /turf/open/floor/iron/dark, /area/station/service/chapel) +"lWs" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/portable_atmospherics/canister/nitrogen, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos) "lWw" = ( /obj/structure/lattice/catwalk, /obj/structure/table, @@ -42359,17 +44466,23 @@ }, /turf/open/openspace, /area/station/maintenance/port/fore) +"lWD" = ( +/obj/machinery/atmospherics/pipe/smart/manifold/yellow/visible{ + dir = 2 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "lWK" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/glass, /area/station/security/brig) -"lWQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/oil, +"lWS" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard/fore/upper) "lWZ" = ( /obj/structure/railing{ dir = 1 @@ -42398,18 +44511,16 @@ /obj/effect/decal/cleanable/greenglow, /turf/open/floor/plating, /area/station/maintenance/port/greater) +"lXl" = ( +/obj/effect/spawner/structure/window/reinforced/plasma, +/obj/structure/cable, +/obj/machinery/door/firedoor, +/turf/open/floor/plating, +/area/station/engineering/gravity_generator) "lXz" = ( /obj/effect/turf_decal/stripes/line, /turf/open/floor/engine, /area/station/engineering/atmos/hfr_room) -"lXC" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 1 - }, -/turf/open/floor/plating/airless, -/area/station/maintenance/starboard/lesser) "lXD" = ( /obj/machinery/holopad, /obj/structure/disposalpipe/segment{ @@ -42441,13 +44552,6 @@ /obj/item/wrench/medical, /turf/open/floor/iron/white, /area/station/maintenance/department/medical) -"lXK" = ( -/obj/structure/cable, -/obj/effect/turf_decal/siding/wood{ - dir = 4 - }, -/turf/open/floor/wood, -/area/station/engineering/lobby) "lXM" = ( /obj/machinery/airalarm/directional/east, /obj/effect/turf_decal/trimline/blue/arrow_cw{ @@ -42510,11 +44614,7 @@ /obj/structure/closet/firecloset, /obj/effect/turf_decal/delivery, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) -"lYw" = ( -/obj/structure/chair/stool/directional/west, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) +/area/station/ai/satellite/foyer) "lYy" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/fax{ @@ -42539,19 +44639,21 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/light_switch/directional/north, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "lYC" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/storage/satellite) -"lYT" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/power/terminal{ - dir = 4 +/area/station/ai/satellite/maintenance/storage) +"lYH" = ( +/obj/structure/closet/secure_closet/personal, +/obj/item/clothing/suit/hooded/wintercoat, +/obj/item/clothing/shoes/winterboots, +/obj/effect/spawner/random/clothing/backpack, +/obj/effect/turf_decal/tile/dark_green/half/contrasted, +/obj/effect/turf_decal/tile/neutral/half/contrasted{ + dir = 1 }, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/gravity_generator) +/turf/open/floor/iron/dark, +/area/station/commons/locker) "lYW" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/segment{ @@ -42560,6 +44662,11 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) +"lYY" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/firealarm/directional/east, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "lZj" = ( /obj/structure/lattice/catwalk, /obj/structure/sign/poster/contraband/clown/directional/south, @@ -42572,19 +44679,39 @@ }, /turf/open/openspace, /area/station/maintenance/port/aft) +"lZm" = ( +/obj/machinery/status_display/ai/directional/east, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/end, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/obj/item/kirbyplants/photosynthetic, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "lZn" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/obj/structure/secure_safe/directional/north{ - pixel_x = -23; - pixel_y = 0 +/obj/machinery/light_switch/directional/west, +/obj/structure/table/wood, +/obj/effect/turf_decal/siding/wood{ + dir = 6 }, -/obj/item/mod/module/longfall{ - pixel_x = 8; - pixel_y = 20 +/obj/item/storage/photo_album{ + pixel_x = -6; + pixel_y = 2 }, -/obj/machinery/camera/autoname/directional/west, -/turf/open/floor/carpet, +/obj/item/camera{ + pixel_y = 4; + pixel_x = 6 + }, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) +"lZt" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/carpet, +/area/station/service/chapel) "lZM" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/stairs/south, @@ -42594,23 +44721,38 @@ /turf/open/floor/catwalk_floor, /area/station/maintenance/starboard/fore) "lZV" = ( +/obj/machinery/conveyor{ + dir = 4; + id = "cargoload" + }, /obj/effect/decal/cleanable/dirt, -/obj/structure/table, -/obj/item/cigbutt{ - pixel_x = 6; - pixel_y = 17 +/obj/effect/turf_decal/stripes/line{ + dir = 1 }, -/obj/item/lighter{ - pixel_x = -7; - pixel_y = 5 +/obj/effect/turf_decal/stripes/line, +/obj/structure/plasticflaps, +/turf/open/floor/plating, +/area/station/cargo/storage) +"lZW" = ( +/obj/effect/spawner/random/food_or_drink/refreshing_beverage{ + pixel_x = 5; + pixel_y = 9 }, -/turf/open/floor/iron, -/area/station/maintenance/starboard/central) +/obj/structure/table, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "mae" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /turf/open/floor/plating, /area/station/security/office) +"mam" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 4 + }, +/obj/machinery/light/directional/north, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "mas" = ( /obj/machinery/door/airlock/maintenance{ name = "Security Maintenance" @@ -42648,31 +44790,28 @@ /turf/open/misc/asteroid, /area/station/science/xenobiology/hallway) "maO" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 8 +/obj/effect/turf_decal/stripes{ + dir = 9 }, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) -"maS" = ( -/obj/machinery/camera/autoname/directional/north, -/obj/machinery/light/directional/north, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/machinery/button/door/directional/north{ + id = "evashutter"; + name = "E.V.A. Storage Shutter Control"; + req_access = list("command") }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +/turf/open/floor/iron/textured, +/area/station/command/eva) +"mbj" = ( +/obj/machinery/door/airlock/external, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/external, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "mbk" = ( /obj/structure/reagent_dispensers/watertank, /turf/open/floor/plating, /area/station/maintenance/department/science/central) -"mbv" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/turf/open/floor/plating/airless, -/area/station/maintenance/starboard/lesser) "mbz" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -42687,14 +44826,6 @@ /obj/machinery/camera/autoname/directional/west, /turf/open/openspace, /area/station/hallway/secondary/entry) -"mbC" = ( -/obj/structure/chair{ - dir = 1; - pixel_y = -2 - }, -/obj/effect/landmark/start/assistant, -/turf/open/floor/glass, -/area/station/commons/fitness/recreation) "mbK" = ( /obj/machinery/door/airlock/maintenance{ name = "Virology Maintenance" @@ -42724,6 +44855,7 @@ pixel_x = -4; pixel_y = 5 }, +/obj/effect/turf_decal/siding/green, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "mcb" = ( @@ -42734,21 +44866,12 @@ /obj/item/wrench, /turf/open/openspace, /area/station/construction/storage_wing) -"mcd" = ( -/obj/machinery/door/airlock/command{ - name = "Chief Engineer's Office" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +"mch" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/access/all/engineering/ce, -/obj/structure/disposalpipe/segment, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/station/command/heads_quarters/ce) +/turf/closed/wall/r_wall, +/area/station/maintenance/starboard/fore/upper) "mcj" = ( /obj/structure/railing/corner{ dir = 4 @@ -42794,31 +44917,6 @@ }, /turf/open/floor/wood/large, /area/station/command/heads_quarters/cmo) -"mcG" = ( -/obj/structure/table, -/obj/item/clothing/gloves/color/yellow{ - pixel_y = 6 - }, -/obj/item/storage/toolbox/electrical{ - pixel_x = 1; - pixel_y = -1 - }, -/obj/item/storage/toolbox/electrical{ - pixel_x = 1; - pixel_y = -1 - }, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 - }, -/obj/item/radio/intercom/directional/east, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) -"mcR" = ( -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "mcT" = ( /obj/structure/lattice, /obj/effect/spawner/structure/window/reinforced/plasma, @@ -42831,14 +44929,9 @@ pixel_y = 10 }, /obj/item/pen, +/obj/effect/turf_decal/siding/green, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) -"mcY" = ( -/obj/structure/window/reinforced/tinted/spawner/directional/east, -/obj/machinery/shower/directional/east, -/obj/item/mail/junkmail, -/turf/open/floor/iron/freezer, -/area/station/commons/dorms) "mdf" = ( /obj/machinery/computer/mech_bay_power_console{ dir = 8 @@ -42907,6 +45000,18 @@ }, /turf/open/floor/plating, /area/station/maintenance/starboard/central) +"mdW" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/engine/hull/air, +/area/station/commons/fitness/recreation) +"mej" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment, +/obj/machinery/computer/security/telescreen/ce/directional/west, +/obj/machinery/light/directional/west, +/obj/structure/cable, +/turf/open/floor/iron/dark/small, +/area/station/command/heads_quarters/ce) "mek" = ( /obj/effect/turf_decal/tile/green/full, /obj/machinery/biogenerator, @@ -42930,20 +45035,6 @@ }, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"men" = ( -/obj/effect/mapping_helpers/broken_floor, -/obj/effect/decal/cleanable/dirt, -/obj/structure/table/wood, -/obj/item/folder/yellow{ - pixel_x = 3; - pixel_y = 6 - }, -/obj/item/stack/package_wrap{ - pixel_x = 4; - pixel_y = 2 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "meo" = ( /obj/item/kirbyplants/photosynthetic, /obj/effect/turf_decal/trimline/dark_blue/filled/line{ @@ -42962,45 +45053,20 @@ dir = 4 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"meE" = ( -/obj/machinery/camera/autoname/directional/east, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/cable/layer1, -/obj/machinery/button/door/directional/east{ - id = "SM_shutters"; - name = "Radiation Shutters"; - req_access = list("engineering") - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"meF" = ( -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/green/filled/mid_joiner{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ - dir = 2 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/iron/textured_large, -/area/station/medical/virology) +/area/station/ai/satellite/interior) "meK" = ( /obj/machinery/suit_storage_unit/standard_unit, -/obj/machinery/status_display/evac/directional/west, /obj/machinery/light/directional/west, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/siding/dark{ + dir = 8 + }, +/obj/effect/turf_decal/box, +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "meU" = ( /obj/machinery/door/airlock/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/access/any/engineering/atmos, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/aft) "meW" = ( @@ -43012,7 +45078,7 @@ dir = 1 }, /turf/open/floor/iron/dark/textured_edge, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "meX" = ( /obj/effect/mapping_helpers/airlock/access/all/service/general, /obj/structure/disposalpipe/segment{ @@ -43023,10 +45089,31 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"meY" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/closet/secure_closet/freezer/kitchen/maintenance, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard) "mff" = ( /obj/machinery/light/directional/south, -/turf/open/floor/iron/dark, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/iron/dark/smooth_large, /area/station/command/gateway) +"mfh" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/railing{ + dir = 4 + }, +/turf/open/floor/engine, +/area/station/engineering/atmos/upper) "mfi" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -43034,7 +45121,7 @@ name = "AI Core Shutters" }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "mfn" = ( /obj/structure/table, /obj/item/stack/sheet/plasteel/fifty, @@ -43070,23 +45157,55 @@ /obj/structure/cable, /turf/open/floor/wood, /area/station/command/heads_quarters/hos) +"mfF" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/obj/structure/railing, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "mfO" = ( -/obj/structure/chair/comfy/brown{ +/obj/structure/table/reinforced/rglass, +/obj/machinery/button/door/directional/south{ + id = "bridge blast"; + name = "Bridge Window Blast Doors"; + req_access = list("command"); + pixel_y = 5 + }, +/obj/structure/window/reinforced/spawner/directional/west, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 }, -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) +/obj/machinery/button/door/directional/south{ + id = "bridge blast-2"; + name = "Bridge Access Blast Doors"; + req_access = list("command"); + pixel_y = -5 + }, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "mfR" = ( /obj/machinery/door/firedoor/border_only, /obj/structure/railing, /turf/open/floor/engine/hull/air, /area/station/medical/medbay/central) "mfS" = ( -/obj/structure/chair/comfy/brown{ +/obj/structure/table/reinforced/rglass, +/obj/structure/secure_safe/caps_spare, +/obj/structure/window/reinforced/spawner/directional/east, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 }, -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"mfT" = ( +/obj/structure/sign/warning/radiation/rad_area/directional/east, +/obj/structure/cable, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/main) "mga" = ( /obj/structure/cable, /obj/machinery/requests_console/directional/east{ @@ -43101,6 +45220,14 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"mgA" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "mgJ" = ( /obj/structure/ladder, /obj/structure/lattice/catwalk, @@ -43114,11 +45241,22 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/security/execution/education) -"mgM" = ( -/obj/item/radio/headset, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +"mgN" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper/stack{ + dir = 4 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/wood, +/area/station/maintenance/aft) +"mgR" = ( +/obj/machinery/camera/directional/north{ + c_tag = "Atmospherics - co2 Cell"; + name = "atmospherics camera" + }, +/obj/machinery/light/small/directional/north, +/turf/open/floor/engine/co2, +/area/station/engineering/atmos/upper) "mgS" = ( /obj/structure/table, /obj/item/analyzer{ @@ -43131,12 +45269,20 @@ /obj/machinery/airalarm/directional/east, /turf/open/floor/iron/dark, /area/station/science/ordnance) +"mgT" = ( +/obj/machinery/light/small/directional/east, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 + }, +/obj/structure/sign/poster/official/random/directional/east, +/turf/open/floor/wood, +/area/station/commons/dorms) "mgU" = ( /obj/machinery/door/airlock/silver{ name = "Bathroom" }, /turf/open/floor/iron/freezer, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "mgY" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, @@ -43156,6 +45302,14 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/glass/reinforced, /area/station/construction/storage_wing) +"mht" = ( +/obj/machinery/computer/atmos_control/mix_tank{ + dir = 2 + }, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/effect/turf_decal/bot_white, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "mhI" = ( /obj/structure/table/reinforced, /obj/item/paper_bin{ @@ -43167,19 +45321,19 @@ }, /turf/open/floor/iron/dark, /area/station/security/checkpoint/science) +"mhO" = ( +/obj/effect/mapping_helpers/airlock/access/all/supply/mining, +/obj/machinery/door/airlock/maintenance, +/turf/open/floor/plating, +/area/station/cargo/miningoffice) "mhP" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 10 - }, -/obj/structure/table, -/obj/item/storage/belt/utility{ - pixel_y = 6 +/obj/effect/decal/cleanable/dirt, +/obj/machinery/computer/pod/old/mass_driver_controller/trash{ + pixel_x = 25 }, -/obj/item/storage/toolbox/mechanical, -/obj/machinery/light/directional/south, -/obj/machinery/firealarm/directional/south, -/turf/open/floor/iron, -/area/station/cargo/storage) +/obj/structure/chair/stool/directional/south, +/turf/open/floor/plating, +/area/station/maintenance/disposal) "mhQ" = ( /obj/machinery/telecomms/server/presets/science, /obj/effect/turf_decal/tile/purple/fourcorners, @@ -43206,15 +45360,19 @@ /turf/open/floor/engine/hull, /area/space/nearstation) "mie" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 8 - }, -/obj/structure/chair/office{ +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + name = "Cargo Lockdown Shutters"; + id = "cargolockdown"; dir = 8 }, -/obj/effect/landmark/start/cargo_technician, -/turf/open/floor/iron, +/turf/open/floor/plating, /area/station/cargo/storage) +"mig" = ( +/obj/structure/closet/secure_closet/atmospherics, +/obj/machinery/camera/autoname/directional/south, +/turf/open/floor/glass/plasma, +/area/station/engineering/atmos/upper) "mik" = ( /obj/structure/closet/radiation, /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -43222,34 +45380,15 @@ }, /turf/open/floor/iron, /area/station/science/explab) -"mil" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 4 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) -"mip" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing, -/obj/machinery/airalarm/directional/north, -/obj/effect/landmark/start/assistant, -/obj/machinery/camera/autoname/directional/north, -/turf/open/openspace, -/area/station/commons/dorms) "miB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) -"miE" = ( -/obj/machinery/power/apc/auto_name/directional/east, -/obj/structure/cable, -/obj/item/clothing/shoes/magboots{ - pixel_x = 7; - pixel_y = 16 +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk, +/obj/effect/turf_decal/siding/wood{ + dir = 1 }, -/turf/open/floor/iron, -/area/station/engineering/gravity_generator) +/obj/item/radio/intercom/directional/north, +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) "miL" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /obj/machinery/power/apc/auto_name/directional/east, @@ -43281,29 +45420,29 @@ /obj/structure/ladder, /turf/open/space/basic, /area/station/solars/starboard/fore) -"miZ" = ( -/obj/structure/table/wood, -/obj/item/storage/briefcase/secure{ - pixel_x = 3 +"miY" = ( +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ + dir = 9 }, -/obj/effect/turf_decal/siding/wood{ - dir = 10 +/obj/effect/turf_decal/tile/red{ + dir = 4 }, +/obj/effect/turf_decal/tile/neutral/opposingcorners, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) +"miZ" = ( /obj/machinery/firealarm/directional/south, -/turf/open/floor/wood, +/obj/item/assembly/flash/handheld{ + pixel_x = -11; + pixel_y = 5 + }, +/obj/structure/table/wood, +/obj/machinery/recharger, +/turf/open/floor/wood/tile, /area/station/command/heads_quarters/hop) "mjc" = ( /turf/open/openspace, /area/station/service/library/private) -"mjh" = ( -/obj/structure/broken_flooring/corner/directional/east, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"mjm" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/firecloset, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "mju" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/segment{ @@ -43312,23 +45451,6 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"mjy" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/components/binary/pump{ - dir = 1; - name = "Gas to Mix" - }, -/obj/effect/turf_decal/trimline/yellow, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"mjB" = ( -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"mjN" = ( -/obj/structure/lattice/catwalk, -/turf/open/openspace, -/area/station/maintenance/starboard/fore) "mkd" = ( /obj/effect/decal/cleanable/dirt, /obj/item/banner/red{ @@ -43342,22 +45464,12 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/space_hut) -"mkq" = ( -/obj/effect/landmark/start/hangover, -/turf/open/floor/glass, -/area/station/commons/fitness/recreation) -"mkv" = ( -/obj/structure/table, -/obj/structure/bedsheetbin/empty{ - pixel_y = 6 +"mkt" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 8 }, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) -"mkI" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment, -/obj/machinery/door/firedoor, /turf/open/floor/iron, /area/station/commons/dorms) "mkK" = ( @@ -43373,26 +45485,21 @@ dir = 4 }, /turf/open/floor/iron/freezer, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "mkR" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 9 - }, -/obj/structure/table/wood/fancy/orange, -/obj/item/reagent_containers/cup/glass/bottle/whiskey{ - pixel_x = -5; - pixel_y = 18 - }, -/obj/item/reagent_containers/cup/glass/drinkingglass/shotglass{ - pixel_x = -4; - pixel_y = 4 +/obj/structure/sign/poster/random/directional/north, +/obj/structure/railing{ + dir = 4 }, -/obj/item/food/fortunecookie{ - pixel_x = 10; - pixel_y = 4 +/obj/effect/turf_decal/stripes/end{ + dir = 1 }, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) +"mlc" = ( +/obj/structure/extinguisher_cabinet/directional/west, /turf/open/floor/iron, -/area/station/command/heads_quarters/qm) +/area/station/engineering/storage_shared) "mlj" = ( /obj/structure/table, /obj/item/aicard, @@ -43404,6 +45511,14 @@ }, /turf/open/floor/iron/dark, /area/station/engineering/storage/tech) +"mlx" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 1 + }, +/obj/machinery/newscaster/directional/north, +/obj/machinery/light/warm/directional/north, +/turf/open/floor/iron, +/area/station/engineering/lobby) "mlL" = ( /obj/structure/kitchenspike, /obj/machinery/power/apc/auto_name/directional/west, @@ -43414,12 +45529,11 @@ /obj/structure/lattice, /turf/open/openspace, /area/station/commons/vacant_room/office) -"mmb" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 8 +"mma" = ( +/obj/structure/disposalpipe/segment{ + dir = 10 }, -/obj/machinery/vending/cigarette, -/turf/open/floor/wood, +/turf/open/floor/iron, /area/station/commons/fitness/recreation) "mmi" = ( /obj/machinery/camera/directional/north{ @@ -43439,18 +45553,55 @@ }, /turf/open/floor/wood, /area/station/command/heads_quarters/rd) -"mmt" = ( +"mmM" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/carpet, +/area/station/maintenance/starboard) +"mmO" = ( /obj/structure/lattice/catwalk, -/obj/machinery/firealarm/directional/west, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/openspace, -/area/station/engineering/atmos/project) +/obj/machinery/duct, +/obj/structure/railing/corner{ + dir = 8 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) +"mmP" = ( +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/structure/table/wood, +/obj/item/storage/briefcase/secure{ + pixel_x = 3 + }, +/obj/machinery/camera/autoname/directional/south, +/obj/item/folder/blue{ + pixel_x = 4; + pixel_y = -6 + }, +/obj/item/toy/figure/hop{ + pixel_x = -1; + pixel_y = 7 + }, +/obj/item/toy/figure/ian{ + pixel_x = -8; + pixel_y = 4 + }, +/turf/open/floor/wood/tile, +/area/station/command/heads_quarters/hop) "mmS" = ( -/obj/machinery/light/small/broken, -/turf/closed/wall/r_wall, -/area/station/maintenance/central) +/obj/effect/turf_decal/trimline/yellow/warning, +/obj/effect/turf_decal/trimline/yellow/warning{ + dir = 1 + }, +/obj/machinery/door/poddoor/shutters{ + dir = 1; + id = "evashutter"; + name = "E.V.A. Storage Shutter" + }, +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "mmU" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -43458,6 +45609,17 @@ /obj/structure/sign/painting/large/library, /turf/open/openspace, /area/station/maintenance/port/fore) +"mmW" = ( +/obj/machinery/door/poddoor/massdriver_ordnance, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/atmos_shield_gen/active, +/obj/machinery/atmos_shield_gen/active{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/maintenance/aft) "mmX" = ( /obj/effect/turf_decal/tile/dark_red{ dir = 1 @@ -43479,6 +45641,13 @@ }, /turf/open/floor/engine, /area/station/engineering/supermatter/room) +"mnf" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ + dir = 1 + }, +/turf/open/floor/plating, +/area/station/engineering/atmos/upper) "mnn" = ( /obj/effect/mapping_helpers/airlock/locked, /obj/effect/mapping_helpers/airlock/welded, @@ -43514,6 +45683,10 @@ /obj/effect/spawner/random/trash/mess, /turf/open/floor/wood/tile, /area/station/security/detectives_office/private_investigators_office) +"mnK" = ( +/obj/structure/sign/departments/restroom/directional/north, +/turf/open/floor/iron, +/area/station/hallway/primary/starboard) "mnQ" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -43538,17 +45711,9 @@ /turf/open/floor/iron/dark/textured_large, /area/station/science/zoo) "moq" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 6 - }, -/obj/machinery/brm, -/obj/machinery/conveyor{ - dir = 8; - id = "mining" - }, -/obj/structure/railing{ - dir = 1 - }, +/obj/effect/turf_decal/trimline/brown/filled/line, +/obj/structure/closet/secure_closet/miner, +/obj/machinery/firealarm/directional/south, /turf/open/floor/iron, /area/station/cargo/miningoffice) "mox" = ( @@ -43574,7 +45739,11 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) +"moO" = ( +/obj/structure/sign/poster/contraband/random/directional/west, +/turf/open/floor/iron, +/area/station/hallway/secondary/construction) "mpd" = ( /obj/machinery/vatgrower{ dir = 4 @@ -43594,18 +45763,33 @@ /obj/effect/turf_decal/siding/blue{ dir = 9 }, -/obj/machinery/computer/rdconsole, /obj/structure/railing{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet, -/area/station/command/bridge) +/obj/effect/turf_decal/trimline/dark_blue/filled/end{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 8 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "mpm" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/security/interrogation) +"mpp" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/turf/open/floor/iron/textured_large, +/area/station/medical/abandoned) "mpt" = ( /obj/structure/table, /obj/item/multitool{ @@ -43630,16 +45814,21 @@ /obj/effect/mapping_helpers/airlock/access/all/command/general, /turf/open/floor/iron/dark, /area/station/command/gateway) +"mpK" = ( +/obj/effect/spawner/structure/window/reinforced/tinted, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/disposal) "mpT" = ( /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, /area/station/maintenance/port) -"mpX" = ( -/obj/structure/table/reinforced, -/obj/item/binoculars, -/obj/item/binoculars, +"mpW" = ( +/obj/item/trash/can, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/port) "mqa" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, @@ -43663,11 +45852,6 @@ /obj/item/storage/fancy/donut_box, /turf/open/floor/iron/dark, /area/station/security/warden) -"mqb" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/smart/manifold4w/yellow/visible, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) "mqc" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -43679,18 +45863,31 @@ /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) "mqm" = ( -/obj/item/kirbyplants/random, -/obj/machinery/airalarm/directional/west, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 }, -/turf/open/floor/carpet, +/obj/machinery/light_switch/directional/west{ + pixel_x = -24 + }, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) "mqt" = ( /obj/effect/turf_decal/tile/red/opposingcorners, /obj/structure/sign/poster/official/obey/directional/north, /turf/open/floor/iron/dark, /area/station/maintenance/port) +"mqu" = ( +/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ + dir = 1 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "mqv" = ( /obj/effect/turf_decal/tile/bar/opposingcorners, /obj/structure/railing/corner, @@ -43713,12 +45910,21 @@ /obj/effect/landmark/start/assistant, /turf/open/floor/carpet, /area/station/security/courtroom) +"mqN" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/maintenance, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "mqQ" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 }, /obj/structure/disposalpipe/segment, -/obj/machinery/holopad, /turf/open/floor/iron/dark, /area/station/medical/medbay/lobby) "mqT" = ( @@ -43772,12 +45978,6 @@ }, /turf/open/floor/plating/elevatorshaft, /area/station/service/kitchen) -"mrq" = ( -/obj/structure/chair/sofa/corner/brown{ - dir = 1 - }, -/turf/open/floor/wood, -/area/station/commons/dorms) "mrs" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/window/reinforced/spawner/directional/north, @@ -43785,6 +45985,17 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/space_hut) +"mrA" = ( +/obj/effect/turf_decal/siding{ + dir = 9 + }, +/obj/effect/turf_decal/trimline/white/line, +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/maintenance, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "mrC" = ( /obj/machinery/atmospherics/components/tank, /turf/open/floor/iron/dark/textured_half, @@ -43807,7 +46018,7 @@ /obj/effect/mapping_helpers/airlock/access/all/command/eva, /obj/machinery/door/firedoor, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "mrS" = ( /obj/structure/ladder, /obj/effect/decal/cleanable/dirt, @@ -43824,11 +46035,23 @@ dir = 1 }, /area/station/science/robotics/lab) -"msm" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +"msd" = ( +/obj/effect/turf_decal/trimline/yellow/warning{ + dir = 5 + }, +/obj/effect/turf_decal/trimline/yellow/mid_joiner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/yellow/mid_joiner{ + dir = 4 + }, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) +"msq" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "msr" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/girder, @@ -43853,6 +46076,15 @@ }, /turf/open/floor/iron/dark, /area/station/science/lobby) +"msC" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/components/binary/pump{ + dir = 1; + name = "Loop to Freezer" + }, +/obj/effect/turf_decal/trimline/yellow, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "msF" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -43864,10 +46096,28 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"mtg" = ( -/obj/structure/sign/poster/official/soft_cap_pop_art/directional/west, -/turf/open/openspace, -/area/station/maintenance/starboard/fore) +"msQ" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/item/cigbutt{ + pixel_x = 8; + pixel_y = -2 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) +"mtd" = ( +/obj/effect/turf_decal/trimline/white/line{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "mth" = ( /obj/machinery/holopad, /turf/open/floor/wood, @@ -43914,12 +46164,13 @@ /obj/machinery/light/directional/east, /turf/open/floor/iron/dark/smooth_large, /area/station/security/processing) -"mtw" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +"mtv" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/duct, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard/central) "mtz" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -43940,26 +46191,16 @@ pixel_y = 2 }, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "mtC" = ( /obj/structure/closet/crate/goldcrate, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/command/nuke_storage) -"mtD" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/turf_decal/siding/blue{ - dir = 1 - }, -/obj/effect/turf_decal/tile/blue/opposingcorners{ - dir = 1 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/white, -/area/station/medical/medbay/central) +/area/station/command/vault) +"mtM" = ( +/obj/effect/landmark/start/atmospheric_technician, +/obj/machinery/holopad, +/turf/open/floor/iron/freezer, +/area/station/engineering/atmos/pumproom) "mtP" = ( /obj/item/knife/kitchen{ pixel_x = 10; @@ -43999,9 +46240,6 @@ /obj/machinery/light/directional/south, /turf/open/floor/iron/kitchen, /area/station/maintenance/port/aft) -"mur" = ( -/turf/open/floor/iron/dark, -/area/station/engineering/storage) "mus" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -44050,11 +46288,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/service/hydroponics/garden/abandoned) -"muF" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/camera/autoname/directional/north, -/turf/open/floor/plating/airless, -/area/station/maintenance/starboard/lesser) "muG" = ( /obj/machinery/atmospherics/components/binary/pump/on{ dir = 8; @@ -44069,6 +46302,16 @@ }, /turf/open/floor/iron/dark, /area/station/security/medical) +"muK" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/door/airlock/engineering{ + name = "Tech Storage" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/tech_storage, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "muN" = ( /obj/machinery/computer/mecha{ dir = 1 @@ -44086,19 +46329,25 @@ /obj/structure/flora/bush/flowers_br/style_random, /turf/open/floor/grass, /area/station/hallway/secondary/entry) -"muW" = ( -/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/n2{ - dir = 8 +"mva" = ( +/obj/structure/sign/warning/directional/west, +/turf/open/space/basic, +/area/space/nearstation) +"mvd" = ( +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 1 }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/upper) "mvf" = ( /obj/machinery/door/window/right/directional/north, /turf/open/floor/plating, /area/station/maintenance/port/greater) "mvq" = ( /turf/open/floor/carpet/black, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "mvu" = ( /obj/effect/turf_decal/trimline/dark, /obj/machinery/airalarm/directional/west, @@ -44121,6 +46370,17 @@ /obj/machinery/holopad, /turf/open/floor/wood/large, /area/station/service/library) +"mvT" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/disposalpipe/segment, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/fore) +"mvU" = ( +/obj/structure/cable, +/turf/closed/wall/r_wall, +/area/station/engineering/supermatter/room/upper) "mwd" = ( /obj/machinery/door/airlock/medical{ name = "Patient Room" @@ -44130,19 +46390,10 @@ /obj/effect/turf_decal/tile/blue/full, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/medical/patients_rooms/room_a) -"mwh" = ( -/obj/structure/lattice, -/obj/structure/disposalpipe/segment, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) -"mwj" = ( -/obj/structure/chair/stool/directional/north, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) "mwm" = ( /obj/structure/sign/poster/contraband/random/directional/west, /turf/open/floor/plating, @@ -44170,6 +46421,12 @@ /obj/structure/cable, /turf/open/floor/wood, /area/station/service/lawoffice) +"mwK" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/poster/contraband/random/directional/north, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/starboard/central/upper) "mwL" = ( /obj/effect/turf_decal/bot_white/left, /turf/open/floor/iron/dark/textured_large, @@ -44187,20 +46444,10 @@ /turf/open/floor/wood, /area/station/maintenance/port/aft) "mwS" = ( -/obj/machinery/door/airlock/mining{ - name = "Cargo Bay" - }, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/access/all/supply/general, +/obj/machinery/computer/cargo/request, /obj/effect/turf_decal/tile/brown/fourcorners, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, /turf/open/floor/iron, -/area/station/cargo/storage) +/area/station/hallway/primary/starboard) "mwY" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on, /obj/effect/turf_decal/siding/red/corner{ @@ -44222,6 +46469,13 @@ /obj/machinery/computer/records/medical/laptop, /turf/open/floor/carpet/cyan, /area/station/command/heads_quarters/cmo) +"mxp" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "mxF" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, @@ -44245,19 +46499,23 @@ }, /obj/effect/spawner/random/clothing, /turf/open/floor/iron/checker, -/area/station/ai_monitored/turret_protected/aisat_interior) -"mxM" = ( -/obj/structure/railing{ - dir = 4 - }, -/obj/effect/turf_decal/siding/wood{ - dir = 4 - }, -/obj/machinery/door/firedoor/border_only{ - dir = 4 +/area/station/ai/satellite/interior) +"mxJ" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/decal/cleanable/dirt, +/obj/structure/fluff/paper{ + dir = 9 }, -/turf/open/floor/wood, -/area/station/command/meeting_room/council) +/obj/structure/filingcabinet/chestdrawer, +/obj/effect/spawner/random/bureaucracy/paper, +/turf/open/floor/plating, +/area/station/maintenance/aft) +"mxM" = ( +/obj/structure/table/reinforced/rglass, +/obj/item/storage/medkit/regular, +/obj/effect/turf_decal/tile/blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "mxO" = ( /obj/machinery/door/airlock/hatch{ name = "Telecomms Server Room" @@ -44294,12 +46552,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) -"myt" = ( -/obj/structure/lattice/catwalk, -/obj/structure/grille, -/turf/open/space/basic, -/area/space/nearstation) +/area/station/ai/satellite/chamber) "myx" = ( /turf/closed/wall, /area/station/service/library/private) @@ -44336,34 +46589,47 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) +"myP" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "myR" = ( /obj/structure/table/wood, /obj/machinery/status_display/evac/directional/south, /obj/item/pai_card, /turf/open/floor/wood/large, /area/station/medical/break_room) +"mze" = ( +/obj/machinery/light/small/directional/north, +/obj/effect/turf_decal/tile/yellow/fourcorners, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/lobby) "mzh" = ( -/obj/structure/disposaloutlet{ - dir = 4 - }, -/obj/structure/disposalpipe/trunk{ - dir = 8 - }, +/obj/effect/spawner/structure/window/reinforced/tinted, /turf/open/floor/plating, /area/station/maintenance/disposal) +"mzm" = ( +/obj/structure/table, +/obj/machinery/coffeemaker, +/obj/item/reagent_containers/cup/coffeepot, +/obj/item/storage/box/coffeepack, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "mzA" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) -"mzN" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 +"mzH" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/obj/structure/reagent_dispensers/watertank/high, -/turf/open/floor/iron/dark, -/area/station/engineering/engine_smes) +/turf/open/floor/plating, +/area/station/maintenance/starboard/central) "mzT" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/cable, @@ -44372,6 +46638,13 @@ /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/port) +"mAa" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/meter/layer4, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "mAe" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/stairs/south, @@ -44394,11 +46667,9 @@ /area/station/security/brig) "mAr" = ( /obj/effect/turf_decal/plaque{ - icon_state = "L1" - }, -/obj/effect/turf_decal/siding/green{ - dir = 1 + icon_state = "L2" }, +/obj/effect/turf_decal/siding/white, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "mAt" = ( @@ -44432,10 +46703,28 @@ /obj/structure/railing, /turf/open/floor/glass, /area/station/science/zoo) +"mAC" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) +"mAH" = ( +/obj/machinery/door/airlock/maintenance{ + name = "CE's Maintenance Access" + }, +/obj/effect/mapping_helpers/airlock/access/any/engineering/construction, +/turf/open/floor/plating, +/area/station/engineering/lobby) "mAO" = ( /obj/item/clothing/head/costume/shrine_wig, /turf/open/floor/plating/airless, /area/space/nearstation) +"mAR" = ( +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/structure/urinal/directional/west, +/obj/structure/cable, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard/upper) "mAY" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -44447,7 +46736,7 @@ /area/station/medical/medbay/lobby) "mBb" = ( /obj/structure/disposalpipe/segment, -/turf/open/floor/iron/large, +/turf/open/floor/iron/corner, /area/station/hallway/primary/central) "mBd" = ( /obj/effect/decal/cleanable/dirt, @@ -44492,6 +46781,17 @@ /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/maintenance/port/aft) +"mBZ" = ( +/obj/structure/table/reinforced, +/obj/item/radio/headset, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) +"mCa" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "mCb" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 10 @@ -44513,6 +46813,15 @@ /obj/machinery/camera/autoname/directional/east, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) +"mCi" = ( +/obj/effect/landmark/start/hangover, +/obj/machinery/status_display/evac/directional/west, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 + }, +/obj/structure/chair/stool/directional/east, +/turf/open/floor/iron/dark, +/area/station/commons/fitness/recreation) "mCj" = ( /obj/structure/rack, /obj/effect/spawner/random/maintenance, @@ -44529,6 +46838,18 @@ }, /turf/open/floor/wood/large, /area/station/commons/lounge) +"mCG" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/caution/stand_clear{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "mCM" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 8 @@ -44538,6 +46859,29 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) +"mCN" = ( +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/door/airlock/engineering{ + name = "Engine Room" + }, +/obj/structure/disposalpipe/segment, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/main) +"mCO" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) +"mCR" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/closed/wall/r_wall, +/area/station/medical/virology) "mDd" = ( /obj/effect/mapping_helpers/burnt_floor, /obj/structure/rack, @@ -44546,32 +46890,21 @@ dir = 1 }, /turf/open/floor/iron/checker, -/area/station/ai_monitored/command/storage/satellite) -"mDk" = ( -/turf/open/floor/iron, -/area/station/engineering/gravity_generator) -"mDo" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/effect/mapping_helpers/burnt_floor, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/area/station/ai/satellite/maintenance/storage) "mDr" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 }, /turf/open/floor/iron/dark, /area/station/medical/medbay/lobby) +"mDs" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible, +/obj/machinery/meter, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "mDv" = ( -/obj/machinery/vending/coffee{ - pixel_x = -3 - }, -/obj/machinery/newscaster/directional/south, -/obj/machinery/camera/autoname/directional/south, -/turf/open/floor/wood, -/area/station/command/meeting_room/council) +/turf/open/floor/glass/reinforced, +/area/station/command/bridge) "mDD" = ( /obj/machinery/atmospherics/pipe/multiz/orange/visible{ dir = 4 @@ -44579,6 +46912,10 @@ /obj/machinery/meter, /turf/open/floor/engine, /area/station/engineering/supermatter/room) +"mDE" = ( +/obj/structure/sign/warning/vacuum, +/turf/closed/wall, +/area/station/maintenance/starboard/central/upper) "mDF" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -44592,14 +46929,12 @@ /area/space/nearstation) "mDS" = ( /obj/effect/turf_decal/trimline/brown/filled/line, -/obj/item/kirbyplants/random, +/obj/machinery/modular_computer/preset/cargochat/cargo{ + dir = 1 + }, +/obj/structure/sign/poster/random/directional/south, /turf/open/floor/iron, /area/station/cargo/storage) -"mDV" = ( -/obj/structure/closet/firecloset, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) "mDX" = ( /obj/structure/bed/pod{ desc = "An old medical bed, just waiting for replacement with something up to date."; @@ -44629,18 +46964,20 @@ dir = 4 }, /obj/structure/cable, -/obj/structure/disposalpipe/junction/flip{ - dir = 4 +/obj/structure/disposalpipe/junction{ + dir = 8 }, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) -"mEr" = ( -/obj/structure/table, -/obj/machinery/coffeemaker, -/obj/item/reagent_containers/cup/coffeepot, -/obj/item/storage/box/coffeepack, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +"mEo" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/button/elevator/directional/east{ + id = "catwalk_atmos"; + name = "Elevator Button" + }, +/obj/effect/turf_decal/caution/stand_clear, +/turf/open/floor/engine, +/area/station/engineering/atmos) "mEv" = ( /obj/structure/lattice/catwalk, /obj/effect/landmark/firealarm_sanity, @@ -44651,39 +46988,37 @@ /obj/effect/landmark/generic_maintenance_landmark, /turf/open/floor/iron/dark, /area/station/service/chapel) -"mEG" = ( -/obj/effect/turf_decal/siding{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/white/line{ - dir = 8; - pixel_x = 8 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) "mEO" = ( /obj/machinery/computer/monitor, /obj/effect/turf_decal/tile/dark_blue/opposingcorners{ dir = 1 }, /turf/open/floor/iron/checker, -/area/station/ai_monitored/command/storage/satellite) -"mFk" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 6 - }, -/obj/effect/landmark/start/atmospheric_technician, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +/area/station/ai/satellite/maintenance/storage) +"mFv" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/duct, +/obj/structure/sign/warning/electric_shock/directional/south, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "mFA" = ( /obj/effect/turf_decal/tile/bar/opposingcorners, /obj/effect/decal/cleanable/dirt, /obj/machinery/light/dim/directional/south, /turf/open/floor/iron, /area/station/service/kitchen/abandoned) +"mFE" = ( +/obj/machinery/door/airlock{ + id_tag = "Cabin5"; + name = "Cabin 3" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/duct, +/turf/open/floor/iron/dark/textured_large, +/area/station/commons/dorms) "mFR" = ( /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 @@ -44698,6 +47033,11 @@ /obj/machinery/computer/security/telescreen/med_sec/directional/north, /turf/open/floor/iron/dark, /area/station/security/checkpoint/medical) +"mFU" = ( +/obj/effect/landmark/generic_maintenance_landmark, +/obj/machinery/duct, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/fore) "mGb" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 4 @@ -44730,12 +47070,16 @@ /obj/machinery/camera/autoname/directional/east, /turf/open/openspace, /area/station/medical/medbay/central) -"mGx" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, -/turf/open/floor/engine/hull, -/area/station/maintenance/starboard/lesser) +"mGj" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "mGO" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 10 @@ -44749,11 +47093,6 @@ /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/security/checkpoint/science) -"mGV" = ( -/obj/structure/marker_beacon/indigo, -/obj/structure/lattice/catwalk, -/turf/open/space/basic, -/area/space/nearstation) "mHd" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible, /obj/effect/turf_decal/trimline/purple/filled, @@ -44762,51 +47101,39 @@ "mHf" = ( /turf/closed/wall, /area/station/security/checkpoint/supply) -"mHi" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/smooth, -/area/station/science/robotics) "mHt" = ( /obj/effect/turf_decal/tile/yellow/half/contrasted{ dir = 8 }, /turf/open/floor/iron/dark, /area/station/medical/chemistry) -"mHu" = ( +"mHv" = ( /obj/structure/lattice/catwalk, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/light/directional/north, +/obj/structure/railing/corner{ + dir = 1 + }, /turf/open/openspace, -/area/station/engineering/atmos/project) -"mHx" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/commons/dorms) "mHC" = ( /obj/structure/table, /obj/item/camera, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/textured_large, /area/station/security/prison/rec) -"mHD" = ( -/obj/structure/cable, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/decal/cleanable/blood/footprints{ - dir = 8 +"mHF" = ( +/obj/effect/turf_decal/arrows, +/obj/structure/disposalpipe/trunk{ + dir = 4 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"mHH" = ( -/obj/item/stack/sheet/cotton{ - pixel_x = -6; - pixel_y = 10 +/obj/structure/window/spawner/directional/west, +/obj/structure/window/spawner/directional/north, +/obj/effect/turf_decal/delivery, +/obj/structure/disposaloutlet{ + name = "Outside Cargo" }, -/obj/effect/mapping_helpers/broken_floor, -/turf/open/floor/iron, -/area/station/maintenance/starboard/fore) +/obj/structure/plasticflaps, +/turf/open/floor/iron/textured_large, +/area/station/cargo/sorting) "mHJ" = ( /obj/structure/table, /obj/item/paint_palette{ @@ -44842,25 +47169,15 @@ }, /obj/structure/cable/layer3, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "mHX" = ( /obj/machinery/light/directional/east, /turf/open/floor/engine/hull/air, /area/station/medical/medbay/central) -"mHZ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/power/apc/auto_name/directional/east, -/obj/structure/cable, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "mIa" = ( /obj/machinery/light/directional/south, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) -"mId" = ( -/turf/open/floor/iron/freezer, -/area/station/engineering/atmos/pumproom) "mIi" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, @@ -44875,34 +47192,45 @@ /turf/open/space/openspace, /area/space/nearstation) "mIp" = ( -/obj/structure/railing{ +/obj/effect/turf_decal/trimline/brown/filled/warning{ dir = 1 }, -/obj/effect/turf_decal/trimline/brown/filled/line{ +/obj/machinery/door/firedoor/border_only{ dir = 1 }, -/obj/machinery/vending/games, /turf/open/floor/iron/textured, /area/station/cargo/storage) "mIq" = ( -/obj/machinery/requests_console/directional/east{ - department = "Captain's Desk"; - name = "Captain's Requests Console" - }, /obj/effect/mapping_helpers/requests_console/announcement, /obj/effect/mapping_helpers/requests_console/information, /obj/effect/mapping_helpers/requests_console/assistance, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/turf/open/floor/carpet, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/machinery/requests_console/auto_name/directional/east, +/obj/structure/bed/dogbed/renault, +/mob/living/basic/pet/fox/renault, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) +"mIx" = ( +/obj/machinery/light/directional/west, +/obj/structure/closet/radiation, +/turf/open/floor/engine, +/area/station/engineering/atmos/hfr_room) "mID" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Mining Maintenance Access" - }, -/obj/effect/mapping_helpers/airlock/access/all/supply/mining, /obj/structure/disposalpipe/segment, +/obj/effect/mapping_helpers/airlock/access/all/supply/general, +/obj/machinery/door/airlock/maintenance, /turf/open/floor/plating, -/area/station/cargo/miningoffice) +/area/station/cargo/storage) +"mIE" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/duct, +/obj/structure/cable, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "mIJ" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/blue/full, @@ -44926,7 +47254,7 @@ "mIO" = ( /obj/structure/ladder, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "mIX" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/frame/computer{ @@ -44937,35 +47265,12 @@ "mJa" = ( /turf/open/floor/iron/dark, /area/station/tcommsat/server) -"mJb" = ( -/obj/effect/mapping_helpers/broken_floor, -/obj/effect/decal/cleanable/dirt, -/obj/structure/fluff/paper{ - dir = 9 - }, -/obj/structure/filingcabinet/chestdrawer, -/obj/effect/spawner/random/bureaucracy/paper, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "mJd" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/siding/wood/corner, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"mJe" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/crate, -/obj/item/reagent_containers/cup/glass/bottle/vermouth{ - pixel_x = -4; - pixel_y = 3 - }, -/obj/item/reagent_containers/cup/glass/bottle/ale, -/obj/item/reagent_containers/cup/glass/bottle/beer{ - pixel_x = 6 - }, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) "mJg" = ( /obj/effect/spawner/structure/window, /obj/machinery/door/poddoor/shutters/preopen{ @@ -45000,10 +47305,50 @@ }, /turf/open/floor/iron/dark, /area/station/service/chapel) +"mJI" = ( +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, +/obj/structure/lattice/catwalk, +/turf/open/space/basic, +/area/space/nearstation) "mJL" = ( /obj/effect/spawner/random/structure/crate, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"mJO" = ( +/obj/item/clothing/head/soft/grey{ + pixel_x = -2; + pixel_y = 3 + }, +/obj/effect/decal/cleanable/dirt, +/obj/item/plunger{ + pixel_x = 6; + pixel_y = 2 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"mJP" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"mJT" = ( +/obj/structure/table/reinforced, +/obj/effect/decal/cleanable/dirt, +/obj/item/encryptionkey/headset_service{ + pixel_y = 5 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) +"mJY" = ( +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/iron, +/area/station/commons/storage/primary) +"mKb" = ( +/obj/machinery/door/airlock{ + name = "Abandoned Chapel" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "mKk" = ( /obj/effect/decal/cleanable/cobweb, /turf/open/floor/plating, @@ -45037,11 +47382,30 @@ /obj/machinery/camera/autoname/directional/south, /turf/open/floor/carpet/cyan, /area/station/command/heads_quarters/cmo) +"mKz" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/chair{ + dir = 8; + pixel_y = -2 + }, +/obj/structure/disposalpipe/sorting/mail/flip{ + dir = 1 + }, +/obj/effect/mapping_helpers/mail_sorting/science/ordnance, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "mKF" = ( /obj/structure/rack, /obj/effect/spawner/random/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) +"mKH" = ( +/obj/structure/lattice/catwalk, +/obj/structure/chair/office{ + dir = 8 + }, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "mKN" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -45057,15 +47421,26 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) -"mKV" = ( -/obj/structure/disposalpipe/segment, -/turf/closed/wall, -/area/station/maintenance/starboard/lesser) +"mKQ" = ( +/obj/structure/cable, +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/station/engineering/atmos/upper) "mKZ" = ( /obj/machinery/hydroponics/constructable, /obj/effect/turf_decal/bot, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) +"mLd" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment, +/obj/machinery/duct, +/turf/open/floor/iron/dark/smooth_large, +/area/station/engineering/main) "mLg" = ( /obj/machinery/mass_driver/chapelgun{ dir = 1 @@ -45086,15 +47461,15 @@ "mLm" = ( /turf/closed/wall, /area/station/hallway/secondary/construction) -"mLH" = ( -/obj/effect/turf_decal/siding/brown, -/obj/structure/table/reinforced, -/obj/item/training_toolbox{ - pixel_y = 6 - }, -/obj/item/training_toolbox, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +"mLp" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/glass, +/area/station/maintenance/aft/upper) +"mLv" = ( +/obj/structure/cable, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "mLN" = ( /obj/item/chair, /obj/effect/decal/cleanable/blood/old, @@ -45108,25 +47483,26 @@ /obj/effect/turf_decal/tile/green/fourcorners, /turf/open/floor/iron/dark/telecomms, /area/station/tcommsat/server) -"mLS" = ( -/turf/open/openspace, -/area/station/engineering/break_room) +"mLP" = ( +/obj/effect/turf_decal/siding/wood, +/turf/open/floor/wood, +/area/station/commons/toilet/restrooms) "mMb" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ dir = 4 }, /turf/open/openspace, -/area/station/command/bridge) -"mMx" = ( -/obj/structure/window/reinforced/tinted/spawner/directional/south, -/obj/structure/window/reinforced/tinted/spawner/directional/east, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/freezer, -/area/station/commons/dorms) +/area/station/command/meeting_room/council) +"mMs" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/maintenance/aft/upper) "mMA" = ( /obj/structure/extinguisher_cabinet/directional/west, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 8 + }, /area/station/hallway/primary/central) "mMC" = ( /obj/effect/turf_decal/siding/wood{ @@ -45152,17 +47528,22 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"mMX" = ( -/obj/machinery/computer/slot_machine{ - pixel_y = 2 +"mMZ" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ + dir = 9 }, -/obj/effect/decal/cleanable/blood/oil, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"mNj" = ( -/obj/structure/sign/warning/vacuum/external/directional/south, +/area/station/maintenance/starboard/central) +"mNi" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard/central) "mNn" = ( /obj/structure/chair/stool/directional/south{ dir = 8 @@ -45179,11 +47560,20 @@ /obj/structure/ladder, /turf/open/space/basic, /area/space/nearstation) -"mNC" = ( +"mNt" = ( /obj/structure/lattice/catwalk, -/obj/structure/sign/warning/radiation/rad_area/directional/south, +/obj/structure/railing, +/obj/item/reagent_containers/blood/ethereal{ + pixel_x = -6; + pixel_y = 6 + }, +/obj/item/cigbutt{ + pixel_x = 9; + pixel_y = 14 + }, +/obj/structure/sign/poster/official/anniversary_vintage_reprint/directional/west, /turf/open/openspace, -/area/station/engineering/break_room) +/area/station/maintenance/department/crew_quarters/dorms) "mND" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -45191,13 +47581,21 @@ }, /turf/open/openspace, /area/station/hallway/secondary/exit/departure_lounge) +"mNK" = ( +/obj/effect/mapping_helpers/airlock/access/any/engineering/general, +/obj/machinery/door/airlock/engineering/glass{ + name = "Shared Engineering Storage" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/storage) "mNN" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/disposalpipe/segment{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -45208,48 +47606,44 @@ name = "Gateway Shutter Control"; pixel_x = 24; pixel_y = 0; - req_access = list("command") + req_access = list("command"); + dir = 4 }, /obj/machinery/door/firedoor, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) -"mOg" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/iron/edge{ dir = 4 }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) -"mOo" = ( -/obj/effect/turf_decal/trimline/yellow/filled, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ - dir = 4 +/area/station/hallway/primary/central) +"mOc" = ( +/obj/structure/rack, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 }, -/obj/item/kirbyplants/random/fullysynthetic, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) -"mOx" = ( -/obj/structure/cable, -/obj/machinery/camera/autoname/directional/south{ - c_tag = "Medbay - Upper Chief Medical Office South"; - network = list("ss13","medbay") +/obj/effect/spawner/random/techstorage/custom_shuttle, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) +"mOk" = ( +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) +"mOz" = ( +/obj/machinery/airalarm/directional/north, +/obj/structure/closet/secure_closet/personal/cabinet, +/turf/open/floor/wood/large, +/area/station/commons/dorms) +"mOB" = ( +/obj/structure/transport/linear{ + radial_travel = 0 }, -/obj/structure/closet/secure_closet/medical3, -/obj/item/defibrillator/loaded, -/obj/item/clothing/glasses/hud/health{ - pixel_y = 13 +/obj/machinery/elevator_control_panel/directional/south{ + linked_elevator_id = "catwalk_atmos"; + preset_destination_names = list("2"="Lower Atmos","3"="Upper Atmos") }, -/obj/item/clothing/gloves/latex/nitrile, -/obj/item/clothing/gloves/latex/nitrile, -/obj/effect/turf_decal/bot_white{ - color = "#52B4E9" +/obj/effect/landmark/transport/transport_id{ + specific_transport_id = "catwalk_atmos" }, -/obj/machinery/airalarm/directional/south, -/turf/open/floor/iron/dark/textured_large, -/area/station/medical/storage) +/turf/open/openspace, +/area/station/engineering/atmos/upper) "mOE" = ( /obj/effect/turf_decal/trimline/yellow/warning, /obj/structure/railing, @@ -45283,7 +47677,22 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"mOO" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/closet/radiation, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) +"mOU" = ( +/obj/structure/table/reinforced, +/obj/item/radio/intercom, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "mOW" = ( /obj/structure/rack, /obj/item/book/manual/wiki/engineering_construction, @@ -45307,16 +47716,44 @@ /obj/machinery/light/directional/south, /turf/open/floor/iron/dark, /area/station/service/chapel) -"mPn" = ( -/obj/effect/landmark/start/hangover, +"mPa" = ( +/obj/effect/turf_decal/tile/purple/opposingcorners, +/obj/structure/chair/office/light{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"mPf" = ( +/obj/effect/spawner/random/maintenance/two, +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/decal/cleanable/blood/old, +/obj/structure/table/wood, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard/central) +"mPt" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment, +/obj/effect/turf_decal/stripes/white/line{ + dir = 1 + }, +/obj/effect/landmark/event_spawn, +/obj/machinery/duct, +/turf/open/floor/iron/dark/smooth_large, +/area/station/engineering/main) "mPw" = ( /obj/structure/disposalpipe/segment{ dir = 4 }, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) +"mPx" = ( +/obj/machinery/electrolyzer, +/obj/machinery/light/directional/south, +/obj/item/radio/intercom/directional/south, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "mPB" = ( /obj/machinery/camera/directional/south{ c_tag = "Holodeck - Aft"; @@ -45326,11 +47763,35 @@ name = "Holodeck Projector Floor" }, /area/station/holodeck/rec_center) +"mPK" = ( +/obj/structure/cable, +/obj/item/cigbutt{ + pixel_x = -12; + pixel_y = 13 + }, +/obj/item/cigbutt{ + pixel_x = 1; + pixel_y = 9 + }, +/obj/machinery/power/apc/auto_name/directional/north, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) +"mPO" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/cargo/miningoffice) "mPP" = ( -/obj/structure/table/wood, -/obj/item/radio/intercom, -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) +/obj/machinery/light/floor, +/obj/structure/table/reinforced/rglass, +/obj/structure/window/reinforced/spawner/directional/west, +/obj/item/food/chocolatebar{ + pixel_x = 6; + pixel_y = -3 + }, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "mPQ" = ( /obj/machinery/light/directional/north, /obj/effect/turf_decal/siding/dark, @@ -45338,22 +47799,38 @@ network = list("minisat") }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"mPV" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 1 - }, -/turf/open/floor/plating, -/area/station/security/detectives_office/private_investigators_office) +/area/station/ai/satellite/interior) "mQh" = ( /obj/machinery/door/firedoor, /turf/open/floor/engine/hull/air, /area/station/hallway/secondary/construction) +"mQA" = ( +/obj/machinery/status_display/evac/directional/north, +/obj/structure/rack, +/obj/item/encryptionkey/headset_sci{ + pixel_x = -6; + pixel_y = 1 + }, +/obj/item/encryptionkey/headset_med, +/obj/item/encryptionkey/headset_eng{ + pixel_x = 6; + pixel_y = -1 + }, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/machinery/airalarm/directional/east, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tcomms) +"mQH" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/engine_smes) "mQK" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -45366,44 +47843,27 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark, /area/station/medical/medbay/central) -"mQS" = ( -/obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 1 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"mQT" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 - }, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/iron, -/area/station/engineering/lobby) "mQX" = ( -/obj/machinery/mineral/ore_redemption{ - dir = 4; - input_dir = 4; - output_dir = 8 - }, -/obj/effect/turf_decal/tile/brown/fourcorners, -/obj/machinery/status_display/supply{ - pixel_y = -32 +/obj/effect/turf_decal/trimline/brown/arrow_ccw, +/obj/effect/turf_decal/trimline/brown/arrow_cw{ + dir = 1 }, /turf/open/floor/iron, -/area/station/cargo/storage) -"mRf" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/lattice, -/obj/structure/cable, -/turf/open/space/basic, -/area/space/nearstation) +/area/station/hallway/primary/starboard) "mRg" = ( /obj/structure/lattice/catwalk, /obj/effect/landmark/firealarm_sanity, /turf/open/openspace, /area/station/hallway/secondary/entry) +"mRj" = ( +/obj/machinery/computer/prisoner/management{ + dir = 4 + }, +/obj/machinery/light/warm/dim/directional/west, +/obj/effect/turf_decal/tile/red/opposingcorners, +/obj/structure/window/reinforced/spawner/directional/south, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "mRn" = ( /obj/structure/cable, /obj/effect/turf_decal/siding/wood{ @@ -45412,16 +47872,11 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood/large, /area/station/medical/break_room) -"mRq" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Laundromat" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/door/firedoor, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) +"mRs" = ( +/obj/machinery/light/directional/south, +/obj/machinery/status_display/evac/directional/south, +/turf/open/floor/plating, +/area/station/engineering/supermatter/room) "mRt" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/landmark/blobstart, @@ -45444,72 +47899,58 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/science/research) -"mRI" = ( -/obj/structure/cable, -/turf/closed/wall, -/area/station/maintenance/starboard/lesser) "mRJ" = ( /obj/structure/cable, /turf/open/floor/carpet/royalblack, /area/station/command/heads_quarters/hos) +"mRO" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Ordnance Gas Storage Maintenance" + }, +/obj/effect/mapping_helpers/airlock/access/all/science/ordnance_storage, +/turf/open/floor/plating, +/area/station/maintenance/aft) "mRQ" = ( /obj/machinery/airalarm/directional/north, /obj/item/radio/intercom/directional/east, /turf/open/floor/catwalk_floor/iron_smooth, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) +"mRU" = ( +/obj/structure/flora/grass/jungle, +/obj/structure/railing/corner, +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/obj/structure/flora/tree/jungle, +/obj/effect/turf_decal/siding/thinplating/corner, +/turf/open/floor/grass, +/area/station/hallway/primary/starboard) "mSa" = ( /obj/structure/railing{ dir = 4 }, /obj/structure/closet/secure_closet/hop, /obj/item/bedsheet/ian, -/obj/effect/turf_decal/siding/wood{ - dir = 6 - }, /obj/structure/extinguisher_cabinet/directional/south, -/turf/open/floor/wood, +/turf/open/floor/wood/tile, /area/station/command/heads_quarters/hop) "mSd" = ( /turf/closed/wall, /area/station/commons/lounge) -"mSq" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, +"mSe" = ( +/obj/effect/decal/cleanable/vomit/old, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard/upper) "mSt" = ( /obj/effect/landmark/start/mime, /turf/open/floor/carpet/black, /area/station/service/theater) "mSA" = ( -/obj/structure/bed, -/obj/item/bedsheet/qm, -/obj/item/stack/spacecash/c10{ - pixel_x = -5 - }, -/obj/item/stack/spacecash/c10{ - pixel_x = -5 - }, -/obj/item/stack/spacecash/c10{ - pixel_x = -5 - }, -/obj/machinery/camera/directional/north{ - c_tag = "Cargo Bay - Quartermaster's Room" - }, -/obj/effect/landmark/start/quartermaster, -/turf/open/floor/wood/parquet, -/area/station/command/heads_quarters/qm) -"mSE" = ( -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 1 - }, -/obj/machinery/meter{ - name = "Mixed Air Tank In" +/obj/effect/turf_decal/stripes/line{ + dir = 9 }, -/turf/closed/wall/r_wall, -/area/station/engineering/atmos/upper) +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "mSF" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -45519,38 +47960,69 @@ /obj/machinery/camera/autoname/directional/east, /turf/open/openspace, /area/station/hallway/primary/fore) +"mSG" = ( +/obj/structure/chair/pew/right{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/station/maintenance/starboard) +"mSL" = ( +/obj/structure/table/wood, +/obj/item/storage/fancy/candle_box{ + pixel_y = 5 + }, +/turf/open/floor/wood, +/area/station/maintenance/starboard) +"mSN" = ( +/obj/structure/table/reinforced, +/obj/effect/decal/cleanable/dirt, +/obj/structure/statue/bronze/marx{ + pixel_x = 5; + pixel_y = 16 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) +"mSQ" = ( +/obj/structure/cable, +/obj/machinery/power/apc/auto_name/directional/east, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted{ + dir = 8 + }, +/obj/effect/landmark/start/hangover, +/turf/open/floor/iron/dark, +/area/station/commons/locker) +"mSU" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/hallway/secondary/construction) "mTi" = ( /obj/item/banhammer, /obj/effect/turf_decal/tile/purple/opposingcorners, /turf/open/floor/iron/dark, /area/station/maintenance/starboard/aft) -"mTp" = ( -/obj/structure/table, -/obj/item/paper{ - pixel_y = 4 - }, -/obj/item/phone{ - pixel_x = -5; - pixel_y = 11 - }, -/obj/item/pen/blue{ - pixel_x = -5; - pixel_y = -1 - }, -/obj/item/stamp{ - pixel_x = 13; - pixel_y = 12 +"mTo" = ( +/obj/item/cigbutt{ + pixel_x = -11; + pixel_y = 14 }, -/obj/machinery/computer/security/telescreen/aiupload/directional/north, -/obj/machinery/camera/autoname/directional/west, -/turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "mTq" = ( /obj/structure/chair{ dir = 1 }, /turf/open/floor/iron/dark, /area/station/security/courtroom) +"mTv" = ( +/obj/effect/landmark/event_spawn, +/obj/machinery/holopad, +/turf/open/floor/iron, +/area/station/commons/locker) "mTx" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, @@ -45560,25 +48032,24 @@ }, /turf/open/floor/wood/large, /area/station/service/kitchen) -"mTH" = ( -/obj/structure/sign/warning/secure_area/directional/south, -/turf/open/floor/plating/airless, -/area/station/maintenance/starboard/lesser) -"mTL" = ( -/obj/effect/decal/cleanable/crayon{ - icon_state = "body"; - name = "body" +"mTJ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/obj/machinery/firealarm/directional/south, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "mTP" = ( /obj/structure/railing{ dir = 4 }, /turf/open/openspace, /area/station/medical/medbay/central) +"mTT" = ( +/obj/machinery/firealarm/directional/east, +/turf/open/floor/iron, +/area/station/commons/dorms) "mUm" = ( /obj/effect/turf_decal/tile/neutral/opposingcorners{ dir = 1 @@ -45592,6 +48063,10 @@ /obj/item/clothing/glasses/science, /turf/open/floor/iron/dark, /area/station/medical/chemistry) +"mUt" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron, +/area/station/commons/dorms) "mUC" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment{ @@ -45600,30 +48075,15 @@ /turf/open/floor/iron/dark, /area/station/maintenance/starboard/aft) "mUD" = ( -/obj/structure/chair/office{ - name = "CMO's Chair" - }, -/obj/effect/turf_decal/tile/blue/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) -"mUN" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 6 +/obj/structure/cable, +/obj/effect/turf_decal/tile/dark_blue/half/contrasted{ + dir = 4 }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "mUR" = ( /turf/closed/wall, /area/station/service/bar/backroom) -"mUS" = ( -/obj/machinery/light_switch/directional/west, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/hallway) "mUY" = ( /obj/structure/railing{ dir = 1 @@ -45636,11 +48096,12 @@ /turf/open/floor/iron/kitchen, /area/station/service/kitchen) "mVm" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/any/command/maintenance, +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, /area/station/maintenance/central) "mVp" = ( @@ -45660,38 +48121,45 @@ /obj/effect/landmark/start/chemist, /turf/open/floor/iron/dark, /area/station/medical/chemistry) -"mVw" = ( -/obj/structure/cable, -/obj/machinery/power/apc/auto_name/directional/east, -/obj/machinery/modular_computer/preset/engineering{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/hallway) "mVC" = ( /obj/structure/lattice, /obj/effect/spawner/random/maintenance, /obj/structure/window/reinforced/spawner/directional/east, /turf/open/space/openspace, /area/space/nearstation) -"mVE" = ( -/obj/structure/transport/linear{ - radial_travel = 0 - }, -/obj/machinery/elevator_control_panel/directional/south{ - linked_elevator_id = "catwalk_engi"; - preset_destination_names = list("2"="Lower Engine","3"="Upper Engine.") - }, -/turf/open/openspace, -/area/station/engineering/break_room) "mVM" = ( /obj/machinery/atmospherics/components/unary/vent_pump/high_volume/siphon/monitored/air_output, /turf/open/floor/engine/air, /area/station/engineering/atmos/upper) -"mWu" = ( -/obj/effect/spawner/random/maintenance, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) +"mWg" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/landmark/start/hangover, +/obj/structure/sign/poster/official/random/directional/south, +/turf/open/floor/iron, +/area/station/commons/dorms) +"mWB" = ( +/obj/structure/table, +/obj/item/storage/box/metalfoam{ + pixel_y = 2; + pixel_x = 2 + }, +/obj/item/grenade/chem_grenade/smart_metal_foam, +/obj/item/grenade/chem_grenade/smart_metal_foam{ + pixel_x = 3; + pixel_y = 1 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"mWC" = ( +/obj/structure/table, +/obj/effect/spawner/random/food_or_drink/booze, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/aft/upper) "mWF" = ( /obj/structure/railing/corner{ dir = 4 @@ -45714,17 +48182,7 @@ dir = 1 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"mWI" = ( -/obj/structure/table, -/obj/item/toy/gun{ - pixel_x = 1; - pixel_y = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/broken_floor, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) +/area/station/ai/satellite/interior) "mWQ" = ( /obj/structure/table/wood/poker, /obj/effect/spawner/random/entertainment/gambling{ @@ -45772,6 +48230,14 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/engineering/storage_shared) +"mXq" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "mXs" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -45781,6 +48247,15 @@ }, /turf/open/floor/iron/dark, /area/station/service/chapel/office) +"mXI" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/any/engineering/construction, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "mXL" = ( /obj/effect/turf_decal/weather/snow, /turf/open/floor/plating, @@ -45834,50 +48309,17 @@ "mYf" = ( /obj/structure/chair/comfy/brown, /obj/structure/plaque/static_plaque/golden/captain{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, -/obj/structure/cable, /obj/effect/landmark/start/captain, -/turf/open/floor/wood, +/obj/effect/turf_decal/siding/wood, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) -"mYh" = ( -/obj/structure/lattice/catwalk, -/obj/structure/table/glass, -/obj/item/phone{ - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/openspace, -/area/station/engineering/break_room) -"mYm" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/disposalpipe/segment, -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 1 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) "mYo" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/space/nearstation) -"mYy" = ( -/obj/structure/sign/poster/contraband/power/directional/north, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) -"mYK" = ( -/obj/machinery/door/airlock{ - name = "Emergency Storage" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "mYV" = ( /obj/structure/flora/bush/sparsegrass/style_random, /turf/open/floor/grass, @@ -45902,24 +48344,9 @@ }, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"mZf" = ( -/obj/structure/disposalpipe/segment{ - dir = 9 - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"mZo" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/heat_exchanging/simple, -/obj/structure/lattice/catwalk, -/turf/open/space/basic, -/area/space/nearstation) "mZq" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/aft) @@ -45947,47 +48374,42 @@ /obj/machinery/camera/autoname/directional/east, /turf/open/openspace, /area/station/hallway/primary/central) -"naa" = ( -/obj/structure/closet/firecloset, -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 5 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "nah" = ( /obj/structure/cable, /turf/closed/wall/r_wall, /area/station/maintenance/port/aft) -"nak" = ( -/obj/structure/table/reinforced, -/obj/item/pen, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/right/directional/east{ - name = "Cargo Desk"; - req_access = list("cargo") +"nai" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 }, -/obj/effect/turf_decal/tile/brown/fourcorners, +/obj/machinery/vending/assist, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) +"nak" = ( /obj/effect/landmark/navigate_destination/cargo, /turf/open/floor/iron, -/area/station/cargo/storage) -"naq" = ( -/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ - dir = 1 +/area/station/hallway/primary/starboard) +"nar" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 6 }, -/obj/effect/turf_decal/stripes/line, -/obj/structure/cable, -/obj/effect/turf_decal/stripes/line{ +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ dir = 4 }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"nar" = ( -/obj/structure/railing/corner{ +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/obj/structure/cable, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) +"nax" = ( +/obj/structure/toilet{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet/auxiliary) "naC" = ( /obj/machinery/door/poddoor/shutters/preopen{ id = "hydropony_shutters"; @@ -45996,10 +48418,6 @@ /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/service/kitchen) -"naR" = ( -/obj/effect/spawner/random/structure/crate, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) "naS" = ( /turf/open/openspace, /area/station/science/xenobiology) @@ -46021,20 +48439,21 @@ }, /turf/open/floor/wood, /area/station/security/detectives_office) -"nbb" = ( -/obj/structure/table/reinforced, -/obj/item/flashlight/lamp{ - pixel_y = 7 - }, -/obj/item/stamp/head/qm{ - pixel_x = -5 +"nba" = ( +/obj/structure/sign/clock/directional/east, +/obj/machinery/rnd/production/techfab/department/cargo, +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 4 }, -/obj/item/stamp/denied{ - pixel_x = 6 +/turf/open/floor/iron, +/area/station/cargo/storage) +"nbb" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 }, -/obj/machinery/light_switch/directional/north, -/turf/open/floor/wood/parquet, -/area/station/command/heads_quarters/qm) +/obj/effect/landmark/start/cargo_technician, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "nbj" = ( /obj/effect/turf_decal/bot, /obj/effect/decal/cleanable/dirt, @@ -46052,9 +48471,6 @@ /turf/open/floor/wood/large, /area/station/commons/lounge) "nbE" = ( -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, /obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/machinery/door/airlock/medical/glass{ name = "Cryogenics Room" @@ -46064,31 +48480,25 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /obj/effect/turf_decal/tile/blue/full, -/turf/open/floor/iron/dark, -/area/station/medical/cryo) -"nbP" = ( -/obj/structure/rack, -/obj/item/circuitboard/machine/oven{ - pixel_y = -3 - }, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 +/obj/effect/mapping_helpers/airlock/unres{ + dir = 4 }, /turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) -"nbY" = ( -/obj/structure/table, -/obj/effect/turf_decal/siding/wood{ - dir = 5 - }, -/obj/effect/turf_decal/siding/wood{ +/area/station/medical/cryo) +"nbQ" = ( +/obj/structure/window/reinforced/spawner/directional/east, +/obj/machinery/atmospherics/components/unary/thermomachine/heater/on, +/obj/effect/turf_decal/bot_red, +/turf/open/floor/iron/freezer, +/area/station/engineering/atmos/pumproom) +"nbU" = ( +/obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/item/modular_computer/laptop/preset/civilian{ - pixel_y = 3 +/turf/open/floor/iron/edge{ + dir = 1 }, -/turf/open/floor/wood, -/area/station/engineering/lobby) +/area/station/hallway/primary/central) "nct" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -46100,36 +48510,25 @@ /obj/item/storage/box/lights/mixed, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"ncF" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/yellow/visible, -/obj/structure/lattice/catwalk, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) -"ncI" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +"ncC" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 2 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/edge{ dir = 1 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"ncJ" = ( -/obj/effect/turf_decal/siding/brown, -/obj/structure/closet/athletic_mixed, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +/area/station/hallway/primary/central) "ncO" = ( /turf/open/floor/glass/reinforced, /area/station/hallway/secondary/entry) -"ncT" = ( -/obj/machinery/electrolyzer, -/obj/effect/turf_decal/delivery, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/mapping_helpers/broken_floor, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +"ncS" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable, +/obj/effect/spawner/random/structure/steam_vent, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "ncV" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 @@ -46140,17 +48539,25 @@ dir = 4 }, /area/station/engineering/main) +"nda" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/structure/fluff/paper/stack{ + desc = "A stack of various papers, absolutely unreadable due to scorch marks and aging." + }, +/obj/structure/fluff/paper{ + dir = 1 + }, +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "nde" = ( /obj/effect/turf_decal/trimline/blue/filled/warning{ dir = 4 }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/storage) -"ndg" = ( -/obj/effect/turf_decal/bot, -/obj/machinery/portable_atmospherics/canister/nitrogen, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/atmos/upper) "ndl" = ( /obj/item/radio/intercom/directional/north, /obj/machinery/module_duplicator, @@ -46170,7 +48577,11 @@ "ndK" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet, +/obj/effect/turf_decal/siding/wood/corner, +/obj/effect/turf_decal/siding/wood/corner{ + dir = 8 + }, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) "ndQ" = ( /obj/machinery/door/airlock{ @@ -46197,6 +48608,13 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"neh" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/wood, +/area/station/commons/dorms) "nej" = ( /obj/machinery/nuclearbomb/beer{ pixel_x = -2; @@ -46204,21 +48622,23 @@ }, /obj/structure/table/reinforced, /obj/structure/window/reinforced/spawner/directional/west, +/obj/machinery/status_display/ai/directional/east, /turf/open/floor/iron/dark, /area/station/command/corporate_showroom) -"nen" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Medbay Maintenance" +"nev" = ( +/obj/structure/lattice/catwalk, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 }, -/obj/structure/disposalpipe/segment{ - dir = 4 +/obj/structure/railing{ + dir = 1 }, -/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/maintenance/port) +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) +"new" = ( +/obj/machinery/light/floor, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "ney" = ( /obj/effect/turf_decal/trimline/dark_blue/filled/warning{ dir = 1 @@ -46233,7 +48653,15 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/status_display/evac/directional/east, /turf/open/floor/iron/dark/textured_edge, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) +"neA" = ( +/obj/machinery/door/airlock/external, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 1 + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/external, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "neB" = ( /obj/structure/railing{ dir = 4 @@ -46252,12 +48680,6 @@ pixel_y = 26; preset_destination_names = list("2"="Lower Deck","3"="Upper Deck") }, -/obj/structure/sign/directions/upload/directional/north{ - desc = "It stands for Up Le Dable"; - dir = 2; - name = "Button Indicator"; - pixel_y = 40 - }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, @@ -46273,57 +48695,55 @@ }, /turf/open/floor/iron/dark, /area/station/service/chapel) +"neN" = ( +/obj/structure/closet/secure_closet/personal/cabinet, +/obj/machinery/button/door/directional/west{ + id = "Cabin10"; + name = "Cabin Bolt Control"; + normaldoorcontrol = 1; + specialfunctions = 4 + }, +/obj/effect/landmark/start/hangover, +/obj/structure/sign/poster/official/random/directional/south, +/turf/open/floor/wood, +/area/station/commons/dorms) "nfa" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) +"nfd" = ( +/obj/structure/bed, +/obj/effect/spawner/random/bedsheet, +/obj/machinery/light/small/directional/south, +/turf/open/floor/wood, +/area/station/commons/dorms) "nfe" = ( /obj/machinery/atmospherics/pipe/multiz/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/multiz/scrubbers/hidden/layer2, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "nfg" = ( -/obj/structure/railing{ - dir = 8 - }, /obj/effect/turf_decal/siding/blue{ dir = 8 }, -/obj/structure/chair/office{ - dir = 4; - name = "HoP's Chair" - }, -/obj/effect/turf_decal/tile/green/opposingcorners{ - dir = 1 - }, -/obj/structure/railing/corner/end{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) -"nfB" = ( -/obj/structure/lattice/catwalk, -/obj/structure/disposalpipe/segment, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) -"nfE" = ( /obj/structure/railing{ dir = 8 }, -/obj/structure/railing/corner/end, -/obj/structure/railing/corner/end{ +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ dir = 8 }, -/obj/effect/mapping_helpers/burnt_floor, -/turf/open/floor/iron/stairs/left, -/area/station/maintenance/disposal/incinerator) +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 8 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "nfG" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -46331,10 +48751,10 @@ /obj/effect/spawner/random/engineering/tracking_beacon, /turf/open/floor/iron/dark, /area/station/science/lobby) -"nfM" = ( -/obj/structure/cable, -/turf/open/floor/iron/freezer, -/area/station/engineering/atmos/pumproom) +"nfO" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/iron/dark/textured_large, +/area/station/maintenance/aft/upper) "nfR" = ( /turf/closed/wall, /area/station/medical/break_room) @@ -46368,7 +48788,7 @@ /turf/open/floor/iron/white/textured_corner{ dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ngp" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -46388,31 +48808,33 @@ /turf/open/floor/iron/dark/smooth_half{ dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ngF" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/confetti, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"ngH" = ( -/turf/closed/wall/r_wall, -/area/station/engineering/break_room) -"ngQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "ngZ" = ( /obj/effect/turf_decal/delivery, /obj/structure/table, /obj/effect/spawner/random/entertainment/cigarette_pack, /turf/open/floor/iron/dark, /area/station/hallway/secondary/entry) +"nhc" = ( +/obj/machinery/door/airlock{ + id_tag = "Cabin6"; + name = "Cabin 2" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/duct, +/turf/open/floor/iron/dark/textured_large, +/area/station/commons/dorms) "nhg" = ( /turf/open/floor/iron/smooth_edge{ dir = 4 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "nhj" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -46421,39 +48843,51 @@ dir = 2 }, /obj/effect/mapping_helpers/mail_sorting/service/law_office, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) -"nhz" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/engineering/lobby) -"nhE" = ( -/obj/structure/sign/poster/contraband/communist_state/directional/north, -/obj/effect/decal/cleanable/crayon{ - icon_state = "body"; - name = "body"; - pixel_x = 12; - pixel_y = 1 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"nhG" = ( -/obj/effect/turf_decal/siding/wood{ +"nht" = ( +/obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 }, -/obj/structure/railing{ +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/security/checkpoint/engineering) +"nhv" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 }, -/obj/item/kirbyplants/random, +/obj/structure/cable, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos/office) +"nhG" = ( /obj/machinery/airalarm/directional/east, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) -"nhP" = ( -/obj/machinery/vending/coffee, -/turf/open/floor/iron, -/area/station/hallway/secondary/exit/departure_lounge) +/obj/effect/turf_decal/stripes/end, +/obj/structure/table, +/obj/item/grenade/chem_grenade/smart_metal_foam{ + pixel_x = 6; + pixel_y = 8 + }, +/obj/item/grenade/chem_grenade/smart_metal_foam{ + pixel_x = 2; + pixel_y = 7 + }, +/obj/item/grenade/chem_grenade/smart_metal_foam{ + pixel_x = -2; + pixel_y = 6 + }, +/obj/item/grenade/chem_grenade/smart_metal_foam{ + pixel_x = -6; + pixel_y = 5 + }, +/turf/open/floor/iron/textured, +/area/station/command/eva) "nhQ" = ( /obj/effect/turf_decal/siding/purple/corner{ dir = 8 @@ -46471,22 +48905,6 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) -"nhU" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/openspace, -/area/station/engineering/atmos/project) -"nhY" = ( -/obj/effect/decal/remains/human, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) "nia" = ( /obj/machinery/light/floor, /obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ @@ -46499,16 +48917,7 @@ dir = 9 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"nic" = ( -/obj/structure/transport/linear{ - radial_travel = 0 - }, -/obj/structure/railing/corner/end{ - dir = 8 - }, -/turf/open/openspace, -/area/station/engineering/atmos/project) +/area/station/ai/satellite/interior) "nir" = ( /obj/machinery/status_display/ai/directional/east, /turf/open/floor/iron/dark, @@ -46545,30 +48954,48 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) +"njc" = ( +/obj/structure/table, +/obj/item/clothing/head/cone{ + pixel_x = -10; + pixel_y = -11 + }, +/obj/item/clothing/head/cone{ + pixel_x = -10; + pixel_y = -11 + }, +/obj/item/clothing/head/cone{ + pixel_x = -10; + pixel_y = -11 + }, +/obj/item/clothing/head/cone{ + pixel_x = -10; + pixel_y = -11 + }, +/obj/item/clothing/head/cone{ + pixel_x = -10; + pixel_y = -11 + }, +/obj/item/airlock_painter/decal{ + pixel_y = 12 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) +"njf" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/duct, +/turf/open/floor/plating, +/area/station/commons/dorms) "njh" = ( /obj/machinery/door/airlock{ id_tag = "AuxToilet1"; name = "Unit 1" }, /turf/open/floor/iron/freezer, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "njk" = ( /turf/closed/wall, /area/station/engineering/main) -"njA" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "njH" = ( /turf/closed/wall/r_wall, /area/station/maintenance/department/medical) @@ -46576,13 +49003,9 @@ /obj/structure/chair{ dir = 1 }, +/obj/machinery/status_display/evac/directional/east, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) -"njY" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/simple/orange/visible, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "nkh" = ( /obj/machinery/holopad, /turf/open/floor/iron/dark/smooth_large, @@ -46594,7 +49017,7 @@ }, /obj/machinery/light/directional/west, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "nky" = ( /obj/effect/turf_decal/trimline/dark_blue/filled/warning{ dir = 8 @@ -46608,7 +49031,7 @@ /turf/open/floor/iron/dark/textured_edge{ dir = 4 }, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "nkD" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table/reinforced, @@ -46622,8 +49045,19 @@ /area/station/hallway/secondary/entry) "nkF" = ( /obj/machinery/light/directional/east, -/turf/open/floor/iron/large, +/turf/open/floor/iron/corner{ + dir = 8 + }, /area/station/hallway/primary/central) +"nkW" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/structure/crate, +/obj/item/toy/foamfinger, +/obj/item/toy/foamfinger, +/obj/item/toy/foamfinger, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "nkZ" = ( /obj/effect/decal/cleanable/glitter{ color = "ff8080" @@ -46638,32 +49072,26 @@ }, /turf/open/space/basic, /area/space/nearstation) -"nli" = ( -/obj/structure/railing/corner, -/obj/structure/table/wood, -/obj/item/camera{ - pixel_x = -3; - pixel_y = 8 - }, -/obj/item/tape, -/obj/item/pen/fourcolor{ - pixel_x = 8; - pixel_y = 7 - }, +"nlk" = ( /obj/structure/cable, -/turf/open/floor/wood/large, -/area/station/service/library/private) +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "nlm" = ( /turf/open/space/openspace, /area/space) -"nlo" = ( -/obj/machinery/photocopier/prebuilt, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "nlt" = ( /turf/open/floor/iron/dark/textured, /area/station/engineering/supermatter/room) +"nlw" = ( +/obj/machinery/firealarm/directional/south, +/obj/machinery/camera/directional/south, +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 6 + }, +/obj/item/kirbyplants/random, +/turf/open/floor/iron, +/area/station/engineering/lobby) "nlD" = ( /turf/closed/wall/r_wall, /area/station/medical/abandoned) @@ -46674,7 +49102,7 @@ network = list("aicore") }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "nlO" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 @@ -46686,15 +49114,6 @@ }, /turf/open/floor/iron/dark, /area/station/security/brig) -"nlP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "nmf" = ( /obj/structure/cable, /turf/open/floor/iron/textured_large, @@ -46702,17 +49121,15 @@ "nml" = ( /obj/machinery/button/door/directional/east{ id = "qm_cargobay"; - name = "Cargo Bay Door Control" + name = "Cargo Bay Inner Shutters" }, /obj/machinery/camera/directional/east{ c_tag = "Cargo Bay - Reception" }, -/obj/machinery/fax{ - fax_name = "Cargo Office"; - name = "Cargo Office Fax Machine" - }, -/obj/structure/table, /obj/effect/turf_decal/trimline/brown/filled/corner, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 + }, /turf/open/floor/iron, /area/station/cargo/storage) "nmn" = ( @@ -46730,16 +49147,12 @@ /obj/effect/spawner/random/vending/colavend, /turf/open/floor/wood, /area/station/maintenance/hallway/abandoned_recreation) -"nmH" = ( -/obj/item/pushbroom, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/lesser) -"nmO" = ( -/obj/effect/spawner/random/entertainment/arcade{ +"nmE" = ( +/obj/structure/chair{ dir = 1 }, -/turf/open/floor/iron, -/area/station/hallway/secondary/exit/departure_lounge) +/turf/open/floor/plating, +/area/station/maintenance/starboard) "nmQ" = ( /obj/effect/turf_decal/trimline/brown/filled/warning{ dir = 1 @@ -46755,6 +49168,16 @@ }, /turf/open/floor/wood/large, /area/station/service/library) +"nmW" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/camera/autoname/directional/west, +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 9 + }, +/turf/open/floor/iron, +/area/station/hallway/primary/starboard) "nnf" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -46769,20 +49192,15 @@ /obj/machinery/light/floor, /turf/open/floor/iron/dark, /area/station/security/checkpoint/medical) -"nns" = ( -/obj/effect/spawner/random/trash/grille_or_waste, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "nny" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/segment, /turf/open/floor/wood, /area/station/hallway/primary/central) -"nnB" = ( -/obj/structure/reagent_dispensers/fueltank, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) +"nnD" = ( +/obj/machinery/firealarm/directional/south, +/turf/open/floor/carpet/black, +/area/station/service/library/private) "nnH" = ( /turf/closed/wall, /area/station/commons/storage/primary) @@ -46819,50 +49237,26 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/science/genetics) +"nnQ" = ( +/obj/machinery/airalarm/directional/west, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "nnS" = ( /obj/structure/table/reinforced, /turf/open/floor/engine/hull, /area/space/nearstation) "nnW" = ( -/obj/structure/table/wood, -/obj/item/folder/yellow{ - pixel_x = 6; - pixel_y = 2 - }, -/obj/item/folder/yellow{ - pixel_x = -5; - pixel_y = 2 - }, -/obj/item/stamp{ - pixel_x = -4; - pixel_y = 6 - }, -/obj/item/stamp/denied{ - pixel_x = 6; - pixel_y = 6 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) -"nog" = ( -/obj/structure/lattice/catwalk, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/structure/table/glass, -/obj/item/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/item/pen, -/obj/item/folder/yellow{ - pixel_x = 2; - pixel_y = -12 +/obj/machinery/computer/security/telescreen/normal/directional/west, +/obj/structure/chair/comfy/carp{ + name = "Captain's Chair" }, -/turf/open/openspace, -/area/station/engineering/break_room) +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"nnX" = ( +/obj/machinery/duct, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "noi" = ( /obj/effect/turf_decal/tile/bar/opposingcorners, /obj/effect/spawner/random/structure/table_or_rack, @@ -46872,14 +49266,12 @@ /turf/open/floor/iron, /area/station/service/kitchen/abandoned) "nol" = ( -/obj/effect/spawner/random/engineering/tracking_beacon, -/obj/machinery/button/door/directional/north{ - id = "evashutter"; - name = "E.V.A. Storage Shutter Control"; - req_access = list("command") +/obj/effect/turf_decal/siding/dark{ + dir = 5 }, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) +/obj/structure/sign/warning/secure_area/directional/north, +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "nom" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -46887,6 +49279,19 @@ /obj/machinery/camera/autoname/directional/west, /turf/open/floor/iron/dark, /area/station/security/interrogation) +"now" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/duct, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central) +"nox" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 1 + }, +/obj/machinery/vending/engivend, +/obj/structure/sign/poster/official/moth_delam/directional/north, +/turf/open/floor/iron/smooth, +/area/station/engineering/main) "noz" = ( /obj/structure/chair/office/light{ dir = 8 @@ -46895,14 +49300,6 @@ /obj/effect/landmark/start/research_director, /turf/open/floor/wood, /area/station/command/heads_quarters/rd) -"noC" = ( -/obj/structure/table, -/obj/item/paper_bin{ - pixel_x = 2; - pixel_y = 7 - }, -/turf/open/floor/wood, -/area/station/commons/dorms) "noF" = ( /obj/effect/turf_decal/stripes/asteroid/corner{ dir = 1 @@ -46951,12 +49348,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/lab) -"noM" = ( -/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/n2o{ - dir = 8 - }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "noU" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on, /obj/effect/turf_decal/siding/red{ @@ -46977,17 +49368,20 @@ /turf/open/floor/plating, /area/station/maintenance/port/fore) "npf" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/station/ai_monitored/command/storage/eva) -"npj" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/machinery/light_switch/directional/north, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/storage_shared) +/obj/effect/turf_decal/tile/brown/opposingcorners, +/obj/structure/chair/office/light{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"npo" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 1 + }, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "nps" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 8 @@ -46997,6 +49391,15 @@ }, /turf/open/floor/iron/dark, /area/station/science/lobby) +"npt" = ( +/obj/machinery/shower/directional/west, +/obj/machinery/light/small/directional/south, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet/restrooms) +"npw" = ( +/obj/structure/closet/firecloset, +/turf/open/floor/plating, +/area/station/maintenance/aft) "npx" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/broken_floor, @@ -47013,19 +49416,6 @@ /obj/structure/extinguisher_cabinet/directional/east, /turf/open/floor/wood, /area/station/command/teleporter) -"npG" = ( -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/green/filled/mid_joiner{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ - dir = 6 - }, -/turf/open/floor/iron/textured_large, -/area/station/medical/virology) "npH" = ( /obj/machinery/door/firedoor, /obj/structure/cable, @@ -47050,7 +49440,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/carpet/black, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "npS" = ( /obj/item/stack/sheet/mineral/wood{ pixel_x = -12; @@ -47066,6 +49456,11 @@ }, /turf/open/floor/iron/dark, /area/station/security/evidence) +"nqf" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "nqg" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -47081,29 +49476,17 @@ }, /turf/open/floor/iron/dark, /area/station/science/server) -"nqm" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +"nqo" = ( +/obj/structure/closet/secure_closet/engineering_personal{ + anchored = 1 + }, +/obj/effect/turf_decal/bot, +/obj/machinery/digital_clock/directional/north, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "nqt" = ( /turf/open/floor/plating/elevatorshaft, /area/station/engineering/supermatter/room) -"nqu" = ( -/obj/structure/light_construct/directional/east{ - dir = 1 - }, -/obj/structure/closet/secure_closet/bar/all_access{ - pixel_x = -3; - pixel_y = -1 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) -"nqy" = ( -/obj/effect/landmark/event_spawn, -/turf/open/openspace, -/area/station/medical/medbay/central) "nqC" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 @@ -47179,30 +49562,14 @@ /obj/machinery/holopad, /turf/open/floor/carpet, /area/station/command/corporate_showroom) -"nrj" = ( -/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/plasma{ - dir = 8 - }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "nrw" = ( /obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/arrows{ - dir = 1 + dir = 5 }, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ +/turf/open/floor/iron/dark/smooth_corner{ dir = 8 }, -/turf/open/floor/iron/dark, /area/station/command/gateway) -"nrO" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/oven, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) "nrP" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 8 @@ -47213,12 +49580,33 @@ /obj/structure/railing{ dir = 8 }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 8 + }, /area/station/hallway/primary/central) +"nrT" = ( +/obj/structure/rack, +/obj/item/storage/crayons{ + pixel_x = -4; + pixel_y = 4 + }, +/obj/item/storage/box/lights/bulbs{ + pixel_x = 5 + }, +/obj/item/assembly/prox_sensor{ + pixel_x = -4; + pixel_y = -7 + }, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "nrZ" = ( /obj/effect/spawner/random/engineering/tracking_beacon, /turf/open/floor/iron, /area/station/commons/storage/primary) +"nsn" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/maintenance/aft) "nsp" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/orange/visible, /obj/machinery/meter, @@ -47226,6 +49614,22 @@ /obj/machinery/portable_atmospherics/canister, /turf/open/floor/iron/dark, /area/station/science/ordnance) +"nsr" = ( +/obj/structure/cable, +/obj/effect/landmark/start/hangover, +/obj/structure/disposalpipe/segment{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/yellow/arrow_ccw{ + dir = 6 + }, +/obj/effect/turf_decal/trimline/yellow/arrow_ccw{ + dir = 6 + }, +/turf/open/floor/iron/corner{ + dir = 1 + }, +/area/station/hallway/secondary/exit/departure_lounge) "nsD" = ( /obj/machinery/power/tracker, /obj/structure/lattice/catwalk, @@ -47243,7 +49647,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "nsM" = ( /obj/structure/chair{ dir = 1 @@ -47251,14 +49655,6 @@ /obj/effect/landmark/start/prisoner, /turf/open/floor/iron/textured_large, /area/station/security/prison/rec) -"nsN" = ( -/obj/structure/cable, -/obj/structure/tank_dispenser{ - pixel_x = -1 - }, -/obj/effect/turf_decal/bot, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "nsO" = ( /obj/effect/landmark/event_spawn, /obj/effect/turf_decal/tile/green/opposingcorners{ @@ -47302,33 +49698,22 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/wood/tile, /area/station/science/robotics) -"nts" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) -"ntw" = ( -/obj/machinery/camera/directional/north{ - c_tag = "Dormitories - Lower Entrance" - }, -/turf/open/floor/iron/dark, -/area/station/commons/dorms) "ntx" = ( /obj/effect/landmark/start/cargo_technician, /turf/open/floor/iron, /area/station/cargo/storage) -"ntA" = ( -/obj/machinery/atmospherics/pipe/smart/simple/orange/visible, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +"ntz" = ( +/obj/structure/ladder, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/starboard/central/upper) "ntJ" = ( /obj/structure/railing, /obj/machinery/camera/autoname/directional/north{ network = list("aicore") }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ntN" = ( /turf/open/floor/iron/dark/smooth_large, /area/station/science/lab) @@ -47348,14 +49733,14 @@ }, /turf/open/floor/iron/dark, /area/station/medical/chemistry) -"ntW" = ( -/obj/structure/cable, -/obj/effect/spawner/random/maintenance, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +"nuh" = ( +/obj/machinery/light/floor, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/poster/contraband/random/directional/west, -/turf/open/floor/catwalk_floor, -/area/station/maintenance/starboard/fore) +/obj/effect/turf_decal/stripes/white/line{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "nuw" = ( /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating, @@ -47368,11 +49753,11 @@ /turf/open/floor/engine/hull/air, /area/station/hallway/secondary/construction) "nuz" = ( -/obj/effect/turf_decal/siding/wood, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/stripes, +/turf/open/floor/iron/textured, +/area/station/command/eva) "nuG" = ( /obj/machinery/atmospherics/components/unary/thermomachine/freezer/on/coldroom, /turf/open/floor/iron/kitchen_coldroom/freezerfloor, @@ -47385,13 +49770,15 @@ /obj/effect/spawner/random/maintenance, /turf/open/floor/iron/white, /area/station/maintenance/department/medical) -"nuP" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Abandoned Bar" +"nuR" = ( +/obj/structure/cable, +/obj/effect/landmark/start/hangover, +/obj/machinery/light/floor, +/obj/effect/turf_decal/stripes/white/line{ + dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "nuT" = ( /obj/machinery/status_display/evac/directional/east, /obj/machinery/light/directional/east, @@ -47457,7 +49844,7 @@ /obj/structure/lattice/catwalk, /obj/structure/railing, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "nvt" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -47482,12 +49869,6 @@ /obj/machinery/light/floor, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) -"nvA" = ( -/obj/effect/turf_decal/siding/blue{ - dir = 8 - }, -/turf/open/floor/catwalk_floor, -/area/station/science/server) "nvB" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/machinery/power/terminal{ @@ -47501,10 +49882,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood, /area/station/security/courtroom) -"nvM" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/white, -/area/station/maintenance/starboard/lesser) "nvO" = ( /obj/structure/barricade/wooden, /obj/effect/spawner/random/maintenance/two, @@ -47541,48 +49918,43 @@ /obj/effect/mapping_helpers/airlock/access/all/command/general, /turf/open/floor/plating, /area/station/maintenance/central) -"nwd" = ( -/obj/effect/turf_decal/tile/purple/half{ - dir = 1 - }, -/obj/structure/railing/corner{ - dir = 4 - }, -/turf/open/floor/iron/white/textured_half, -/area/station/science/robotics) -"nwe" = ( -/obj/machinery/vatgrower, -/obj/effect/turf_decal/trimline/purple/filled/line{ - dir = 6 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) "nwo" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 }, /turf/open/floor/wood, /area/station/commons/storage/tools) -"nws" = ( -/obj/effect/spawner/random/engineering/atmospherics_portable, -/turf/open/floor/catwalk_floor, -/area/station/maintenance/starboard/fore) "nwG" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet, -/area/station/command/bridge) +/obj/effect/turf_decal/tile/dark_blue/anticorner/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) +"nwH" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "nwJ" = ( /obj/effect/turf_decal/stripes/line, /obj/machinery/atmospherics/pipe/smart/simple/cyan/visible, /turf/open/floor/engine, /area/station/engineering/supermatter/room) +"nwK" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/wood/large, +/area/station/hallway/primary/central) "nwQ" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 5 +/obj/machinery/conveyor{ + dir = 6; + id = "mining" }, -/obj/structure/chair/sofa/corner/brown, -/obj/effect/spawner/random/maintenance, /turf/open/floor/iron/textured, /area/station/cargo/storage) "nwT" = ( @@ -47622,30 +49994,18 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"nxi" = ( -/obj/machinery/door/airlock/external, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 +"nxq" = ( +/obj/machinery/power/turbine/turbine_outlet{ + dir = 8 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/external, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/turf/open/floor/engine, +/area/station/engineering/atmos/upper) "nxr" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/rack, /obj/effect/spawner/random/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/central) -"nxv" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/item/clothing/head/wig/random, -/obj/item/bodypart/head/lizard, -/obj/effect/mapping_helpers/broken_floor, -/obj/effect/decal/cleanable/blood/old, -/obj/structure/cable, -/turf/open/floor/plating/airless, -/area/space/nearstation) "nxG" = ( /obj/structure/lattice/catwalk, /obj/structure/railing/corner/end{ @@ -47661,14 +50021,6 @@ /obj/effect/mapping_helpers/airlock/access/all/security/armory, /turf/open/floor/plating, /area/station/security/execution/education) -"nxN" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/holopad, -/obj/effect/landmark/start/depsec/engineering, -/turf/open/floor/iron/dark, -/area/station/security/checkpoint/engineering) "nxR" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -47691,27 +50043,28 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "nyb" = ( /obj/structure/closet, /obj/effect/spawner/random/clothing/funny_hats, /turf/open/floor/plating, /area/station/maintenance/port) -"nym" = ( -/obj/structure/table, -/obj/effect/spawner/random/bureaucracy/paper, -/obj/item/pen, -/obj/structure/sign/poster/contraband/missing_gloves/directional/west, -/turf/open/floor/wood, -/area/station/commons/dorms) -"nyq" = ( -/turf/open/floor/iron/dark/smooth_half, -/area/station/service/library) -"nyz" = ( -/obj/structure/ladder, -/obj/effect/turf_decal/stripes/box, +"nye" = ( +/obj/effect/turf_decal/tile/dark{ + dir = 1 + }, +/obj/effect/turf_decal/tile/purple{ + dir = 4 + }, /turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +/area/station/engineering/atmos) +"nyh" = ( +/obj/item/stack/rods{ + amount = 7 + }, +/obj/structure/closet/firecloset, +/turf/open/floor/plating, +/area/station/maintenance/aft/upper) "nyA" = ( /obj/machinery/camera/motion{ c_tag = "Vault - Lower"; @@ -47724,11 +50077,17 @@ /turf/open/floor/circuit/green{ luminosity = 2 }, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "nyB" = ( /obj/structure/chair/stool/bar/directional/west, /turf/open/floor/iron/dark/smooth_large, /area/station/commons/lounge) +"nyF" = ( +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "nyG" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 4 @@ -47757,25 +50116,6 @@ dir = 8 }, /area/station/commons/lounge) -"nyR" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/effect/turf_decal/tile/blue/opposingcorners{ - dir = 1 - }, -/obj/structure/disposalpipe/junction, -/turf/open/floor/iron/white, -/area/station/medical/medbay/central) -"nyX" = ( -/obj/machinery/door/poddoor/preopen{ - id = "ceprivacy"; - name = "Chief Engineers Privacy Shutters" - }, -/obj/effect/spawner/structure/window/reinforced/plasma, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/command/heads_quarters/ce) "nyY" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -47783,20 +50123,16 @@ /turf/open/floor/engine, /area/station/engineering/atmos/hfr_room) "nzd" = ( -/obj/structure/chair{ - dir = 8 - }, /obj/effect/turf_decal/trimline/green/filled/line{ dir = 4 }, /obj/machinery/light/directional/east, -/obj/structure/sign/directions/medical/directional/east{ - dir = 2 - }, /obj/effect/turf_decal/trimline/green/filled/mid_joiner{ dir = 4 }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 4 + }, /area/station/hallway/primary/central) "nzj" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ @@ -47820,6 +50156,13 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) +"nzx" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 10 + }, +/obj/machinery/firealarm/directional/south, +/turf/open/floor/iron/smooth, +/area/station/engineering/main) "nzy" = ( /obj/structure/closet/crate/trashcart/filled, /obj/structure/sign/poster/contraband/random/directional/west, @@ -47836,16 +50179,6 @@ /obj/item/radio/intercom/directional/east, /turf/open/floor/iron/dark/smooth_large, /area/station/security/lockers) -"nzG" = ( -/obj/structure/transport/linear{ - radial_travel = 0 - }, -/turf/open/openspace, -/area/station/engineering/break_room) -"nzZ" = ( -/obj/effect/mapping_helpers/broken_floor, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "nAc" = ( /obj/structure/fans/tiny/invisible, /obj/effect/turf_decal/stripes/line{ @@ -47859,8 +50192,8 @@ /obj/machinery/door/airlock/grunge{ name = "Under The Stairs" }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/aft) "nAf" = ( @@ -47881,14 +50214,19 @@ /obj/structure/closet/crate/trashcart/filled, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"nAA" = ( -/obj/structure/sign/poster/random/directional/north, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/effect/decal/cleanable/dirt, +"nAv" = ( +/obj/structure/closet/secure_closet/personal, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/iron/dark, +/area/station/commons/locker) +"nAx" = ( +/obj/effect/spawner/random/trash/moisture_trap, /turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/area/station/maintenance/starboard/fore/upper) "nAB" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -47897,23 +50235,13 @@ }, /turf/open/floor/plating, /area/station/science/cytology) -"nAN" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 9 - }, -/obj/machinery/atmospherics/components/binary/valve/digital{ - name = "Waste Release"; - dir = 1 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) -"nAS" = ( -/obj/item/cigbutt{ - pixel_x = 7; - pixel_y = 14 +"nAM" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "nAY" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/line{ @@ -47921,51 +50249,18 @@ }, /turf/open/floor/iron, /area/station/construction/storage_wing) -"nBg" = ( -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "nBi" = ( /obj/structure/barricade/sandbags, /obj/effect/decal/cleanable/dirt, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"nBq" = ( -/obj/structure/table/wood, -/obj/item/food/grown/poppy{ - pixel_y = 2 - }, -/obj/item/food/grown/poppy{ - pixel_y = 2 - }, -/obj/item/food/grown/poppy{ - pixel_y = 2 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) -"nBr" = ( -/obj/structure/frame/computer{ - anchored = 1 - }, -/obj/effect/turf_decal/trimline/purple/filled/line{ - dir = 1 +"nBm" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) -"nBs" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 4 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +/area/station/engineering/supermatter/room/upper) "nBu" = ( /obj/structure/closet/crate/trashcart/laundry, /turf/open/floor/plating, @@ -47980,7 +50275,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "nBE" = ( /obj/effect/spawner/random/trash/graffiti{ pixel_y = 32 @@ -47997,11 +50292,12 @@ }, /turf/open/floor/iron/white/smooth_corner, /area/station/hallway/secondary/entry) -"nBH" = ( -/obj/machinery/light/directional/west, -/obj/effect/turf_decal/stripes/corner, -/turf/open/floor/engine, -/area/station/engineering/atmos/upper) +"nBR" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/lattice/catwalk, +/obj/structure/railing/corner, +/turf/open/water/no_planet_atmos, +/area/station/maintenance/starboard/fore) "nBS" = ( /obj/structure/closet, /obj/effect/landmark/start/hangover, @@ -48029,10 +50325,20 @@ /turf/open/floor/iron, /area/station/science/lab) "nCg" = ( -/obj/item/kirbyplants/random, -/obj/effect/turf_decal/tile/brown/fourcorners, -/turf/open/floor/iron, -/area/station/hallway/primary/starboard) +/obj/effect/turf_decal/trimline/brown/filled/line, +/obj/structure/chair/sofa/left/brown{ + dir = 1 + }, +/obj/effect/landmark/start/shaft_miner, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/cargo/storage) +"nCh" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "nCo" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/dark_blue{ @@ -48041,6 +50347,11 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) +"nCp" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/mapping_helpers/broken_floor, +/turf/open/floor/wood, +/area/station/maintenance/aft) "nCt" = ( /obj/machinery/modular_computer/preset/civilian{ dir = 1 @@ -48063,24 +50374,7 @@ dir = 5 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) -"nCx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/sorting/mail/flip{ - dir = 1 - }, -/obj/effect/mapping_helpers/mail_sorting/science/genetics, -/obj/effect/mapping_helpers/mail_sorting/science/rd_office, -/obj/effect/mapping_helpers/mail_sorting/science/xenobiology, -/obj/effect/mapping_helpers/mail_sorting/science/research, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"nCC" = ( -/obj/machinery/light/directional/north, -/obj/machinery/light_switch/directional/north, -/obj/structure/closet/wardrobe/white, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) +/area/station/ai/upload/chamber) "nCI" = ( /obj/machinery/component_printer, /obj/effect/turf_decal/bot_white, @@ -48090,23 +50384,16 @@ /obj/structure/reagent_dispensers/watertank, /turf/open/floor/plating, /area/station/maintenance/port) -"nCO" = ( -/obj/machinery/airalarm/directional/south, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"nCR" = ( -/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 1 +"nCT" = ( +/obj/structure/table/wood, +/obj/item/radio/intercom{ + broadcasting = 1; + dir = 8; + listening = 0; + name = "Station Intercom (Court)" }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/turf/open/floor/carpet, +/area/station/security/courtroom) "nDe" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -48132,17 +50419,6 @@ /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/security/courtroom) -"nDB" = ( -/obj/structure/railing{ - dir = 8 - }, -/obj/effect/turf_decal/siding/wood{ - dir = 8 - }, -/obj/structure/table, -/obj/item/pai_card, -/turf/open/floor/wood, -/area/station/commons/fitness/recreation) "nDS" = ( /obj/effect/turf_decal/siding/blue, /obj/effect/turf_decal/siding/blue{ @@ -48151,6 +50427,10 @@ /obj/effect/turf_decal/arrows{ dir = 4 }, +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=2"; + location = "Head of Personnel" + }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "nDX" = ( @@ -48167,11 +50447,11 @@ /obj/effect/landmark/start/hangover, /turf/open/openspace, /area/station/hallway/primary/fore) -"nEq" = ( -/obj/structure/table/wood, -/obj/item/food/grown/harebell, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) +"nEn" = ( +/obj/structure/railing, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/upper) "nEr" = ( /obj/structure/railing{ dir = 4 @@ -48182,10 +50462,12 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/white, /area/station/maintenance/department/medical) -"nEA" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) +"nEt" = ( +/obj/structure/girder, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/spawner/structure/electrified_grille, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "nEM" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -48195,61 +50477,64 @@ /area/station/maintenance/starboard/central) "nEO" = ( /obj/machinery/piratepad/civilian, -/obj/effect/turf_decal/tile/brown/fourcorners, /obj/machinery/camera/autoname/directional/west, /obj/machinery/status_display/ai/directional/west, +/obj/effect/turf_decal/tile/brown/fourcorners, /turf/open/floor/iron, /area/station/hallway/primary/starboard) "nEQ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"nES" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/area/station/ai/satellite/interior) +"nEW" = ( +/obj/effect/decal/cleanable/dirt, /obj/structure/cable, /turf/open/floor/plating, -/area/station/maintenance/starboard/central) -"nFx" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/cable/layer1, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +/area/station/maintenance/starboard) +"nEX" = ( +/obj/structure/table, +/obj/effect/spawner/random/bureaucracy/paper, +/obj/item/pen, +/obj/machinery/light/small/directional/west, +/turf/open/floor/wood/large, +/area/station/commons/dorms) +"nFp" = ( +/obj/effect/landmark/firealarm_sanity, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/wood, +/area/station/commons/dorms) "nFz" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) "nFA" = ( -/obj/machinery/airalarm/directional/north, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/light/directional/north, /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/carpet, +/obj/structure/cable, +/obj/effect/turf_decal/siding/wood, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) "nFB" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/dark/visible, +/obj/machinery/button/door/incinerator_vent_ordmix{ + pixel_y = 8; + pixel_x = -8 + }, /turf/closed/wall/r_wall, /area/station/science/ordnance/burnchamber) -"nFE" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ - dir = 8 - }, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) "nFI" = ( /obj/effect/spawner/random/maintenance, /obj/effect/mapping_helpers/burnt_floor, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "nFL" = ( /turf/closed/wall/r_wall, /area/station/security/execution/transfer) @@ -48299,8 +50584,9 @@ /obj/structure/railing/corner, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/openspace, -/area/station/command/bridge) +/area/station/command/meeting_room/council) "nGs" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -48326,32 +50612,27 @@ /obj/effect/spawner/random/trash/grime, /turf/open/floor/iron/sepia, /area/station/hallway/secondary/construction) -"nGB" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/junction, -/obj/structure/cable, -/turf/open/floor/catwalk_floor, -/area/station/engineering/main) +"nGA" = ( +/turf/open/floor/glass/plasma, +/area/station/engineering/atmos/upper) "nGH" = ( -/obj/effect/turf_decal/siding/red{ - dir = 6 - }, -/obj/structure/filingcabinet{ - pixel_x = 4 - }, /obj/structure/railing{ dir = 6 }, -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 +/obj/effect/turf_decal/siding/wood{ + dir = 6 }, -/turf/open/floor/iron/dark, +/obj/structure/reagent_dispensers/water_cooler, +/turf/open/floor/wood/large, /area/station/hallway/primary/central) -"nGI" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +"nGP" = ( +/obj/machinery/button/door/directional/west{ + id = "Disposal Exit"; + name = "Disposal Vent Control"; + pixel_x = -10 + }, +/turf/closed/wall, +/area/station/maintenance/disposal) "nGR" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -48359,6 +50640,21 @@ }, /turf/open/openspace, /area/station/command/gateway) +"nGV" = ( +/obj/structure/cable, +/obj/machinery/power/apc/auto_name/directional/north, +/obj/machinery/newscaster/directional/west, +/obj/structure/table/reinforced/rglass, +/obj/item/storage/toolbox/emergency{ + pixel_x = -2 + }, +/obj/item/storage/toolbox/emergency{ + pixel_x = -2; + pixel_y = 8 + }, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "nGW" = ( /obj/structure/lattice/catwalk, /obj/structure/railing/corner{ @@ -48410,6 +50706,18 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"nHG" = ( +/obj/item/training_toolbox{ + pixel_y = 6 + }, +/obj/item/training_toolbox, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 8 + }, +/obj/structure/rack, +/obj/machinery/newscaster/directional/east, +/turf/open/floor/iron/dark, +/area/station/commons/fitness/recreation) "nHL" = ( /mob/living/basic/slime, /turf/open/floor/engine, @@ -48418,16 +50726,11 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, /area/station/maintenance/hallway/abandoned_recreation) -"nIi" = ( -/obj/machinery/atmospherics/pipe/multiz/cyan/visible{ - dir = 8; - name = "Air Mix Multideck Adapter" - }, -/obj/machinery/meter{ - name = "Mix Meter" - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +"nIa" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "nIo" = ( /obj/machinery/door/airlock/command{ name = "Captain's Quarters" @@ -48438,14 +50741,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/carpet, +/obj/structure/cable, +/obj/machinery/door/firedoor, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) -"nIq" = ( -/obj/effect/turf_decal/siding/brown/end{ - dir = 8 - }, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) "nIu" = ( /obj/structure/table, /obj/item/reagent_containers/cup/beaker/large{ @@ -48463,20 +50762,16 @@ /obj/item/folder/red, /turf/open/floor/iron/dark/smooth_large, /area/station/security/courtroom) -"nID" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 1 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) -"nIH" = ( -/obj/structure/weightmachine, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +"nIC" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/turf/open/floor/plating/airless, +/area/station/maintenance/starboard/aft/upper) "nIL" = ( /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -48496,6 +50791,13 @@ }, /turf/open/floor/iron/textured_large, /area/station/medical/virology) +"nIX" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "nIY" = ( /obj/machinery/portable_atmospherics/canister/plasma, /obj/effect/turf_decal/box/red, @@ -48527,10 +50829,6 @@ /obj/machinery/firealarm/directional/south, /turf/open/floor/wood, /area/station/command/heads_quarters/hos) -"nJJ" = ( -/obj/structure/table, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "nJN" = ( /obj/structure/showcase/cyborg/old{ dir = 4; @@ -48538,7 +50836,7 @@ pixel_y = 2 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "nJS" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/disposal/bin, @@ -48548,9 +50846,12 @@ /turf/open/floor/iron/freezer, /area/station/commons/toilet/auxiliary) "nJU" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 8 +/obj/effect/mapping_helpers/airlock/access/all/supply/general, +/obj/machinery/door/firedoor, +/obj/machinery/door/airlock/mining/glass{ + name = "Cargo Bay" }, +/obj/effect/turf_decal/tile/brown/fourcorners, /turf/open/floor/iron, /area/station/cargo/storage) "nJV" = ( @@ -48566,21 +50867,52 @@ }, /turf/open/floor/engine, /area/station/medical/chemistry) +"nKe" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 1 + }, +/obj/structure/railing, +/turf/open/openspace, +/area/station/engineering/lobby) +"nKf" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "nKj" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/barricade/sandbags, /turf/open/floor/wood, /area/station/maintenance/hallway/abandoned_recreation) +"nKk" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "nKn" = ( /obj/structure/stairs/south, /turf/open/floor/iron/textured_large, /area/station/medical/virology) +"nKp" = ( +/obj/structure/disposalpipe/segment{ + dir = 2 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "nKr" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 5 }, -/obj/structure/rack, /obj/machinery/firealarm/directional/east, +/obj/structure/rack, +/obj/item/pushbroom, /turf/open/floor/iron, /area/station/cargo/storage) "nKs" = ( @@ -48595,22 +50927,22 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) -"nKz" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer2, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "nKB" = ( /obj/machinery/shower/directional/south, /obj/effect/turf_decal/tile/blue/full, /obj/effect/turf_decal/siding/blue/end, /turf/open/floor/iron/showroomfloor, /area/station/medical/medbay/central) -"nKD" = ( -/obj/effect/landmark/start/station_engineer, -/obj/structure/cable/layer1, -/turf/open/floor/catwalk_floor, -/area/station/engineering/main) +"nKE" = ( +/obj/machinery/door/airlock{ + id_tag = "Cabin2"; + name = "Decomissioned Cabin" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/duct, +/turf/open/floor/iron/dark/textured_large, +/area/station/commons/dorms) "nKJ" = ( /obj/effect/turf_decal/siding/dark{ dir = 8 @@ -48619,7 +50951,7 @@ /turf/open/floor/iron/dark/textured_half{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "nKP" = ( /obj/structure/sign/departments/restroom/directional/east, /obj/effect/turf_decal/trimline/dark_blue/warning, @@ -48629,7 +50961,11 @@ /turf/open/floor/iron/white/smooth_corner{ dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) +"nKW" = ( +/obj/effect/spawner/random/structure/grille, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "nLl" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt/dust, @@ -48648,6 +50984,10 @@ "nLp" = ( /turf/open/floor/iron, /area/station/hallway/secondary/construction) +"nLt" = ( +/obj/structure/lattice/catwalk, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/department/crew_quarters/dorms) "nLC" = ( /obj/effect/turf_decal/siding/brown, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -48682,19 +51022,21 @@ }, /turf/open/floor/plating, /area/station/medical/surgery) -"nMp" = ( -/obj/effect/turf_decal/siding/brown, -/obj/structure/chair/sofa/corp/left{ - dir = 1 +"nLZ" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 }, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +/turf/open/floor/plating, +/area/station/maintenance/aft/upper) +"nMr" = ( +/obj/machinery/power/apc/auto_name/directional/west, +/obj/structure/cable, +/turf/open/floor/carpet/black, +/area/station/service/library/private) "nMC" = ( -/obj/structure/disposalpipe/segment{ - dir = 2 - }, -/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/blood/oil/slippery, /turf/open/floor/plating, /area/station/maintenance/starboard/central) "nML" = ( @@ -48721,10 +51063,35 @@ /obj/machinery/light/floor, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) +"nNg" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"nNi" = ( +/obj/machinery/door/airlock/maintenance, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "atmosengimainttriangle" + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/main) "nNj" = ( +/obj/machinery/door/airlock/highsecurity{ + name = "Bridge Escape" + }, +/obj/machinery/door/firedoor, /obj/structure/cable, -/turf/closed/wall, -/area/station/maintenance/central) +/obj/effect/turf_decal/tile/dark_blue/fourcorners, +/obj/effect/mapping_helpers/airlock/access/all/command/general, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "nNt" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/mecha_wreckage/ripley{ @@ -48734,15 +51101,21 @@ /turf/open/floor/iron, /area/station/maintenance/starboard/central) "nNu" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 8 +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/stripes{ + dir = 4 }, -/obj/structure/railing{ +/obj/effect/turf_decal/stripes{ dir = 8 }, -/obj/machinery/light/directional/east, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/turf/open/floor/iron/textured, +/area/station/command/eva) +"nNA" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/abandoned, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/aft) "nNC" = ( /obj/machinery/power/smes, /obj/structure/cable, @@ -48778,7 +51151,7 @@ /turf/open/floor/iron/smooth_edge{ dir = 4 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "nNY" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 8 @@ -48786,9 +51159,25 @@ /turf/open/floor/iron/smooth, /area/station/engineering/main) "nOe" = ( -/obj/structure/statue/sandstone/venus, +/obj/machinery/requests_console/auto_name/directional/north, +/obj/effect/mapping_helpers/requests_console/announcement, +/obj/effect/mapping_helpers/requests_console/information, +/obj/effect/mapping_helpers/requests_console/assistance, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/structure/window/reinforced/spawner/directional/west, +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"nOm" = ( +/obj/structure/closet/secure_closet/personal/cabinet, +/obj/machinery/button/door/directional/east{ + id = "Cabin9"; + name = "Cabin Bolt Control"; + normaldoorcontrol = 1; + specialfunctions = 4 + }, +/obj/structure/sign/poster/official/random/directional/south, /turf/open/floor/wood, -/area/station/command/meeting_room/council) +/area/station/commons/dorms) "nOo" = ( /obj/structure/closet/crate/coffin, /obj/effect/decal/cleanable/dirt, @@ -48814,39 +51203,50 @@ /obj/machinery/airalarm/directional/south, /obj/machinery/washing_machine, /turf/open/floor/iron/white/textured_half, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "nOF" = ( -/obj/machinery/conveyor_switch/oneway{ - dir = 8; - id = "HoPsToy"; - name = "Loading Conveyor"; - pixel_x = -13; - pixel_y = 8 - }, -/obj/structure/chair/comfy/brown{ +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/siding/wood/corner{ dir = 8 }, -/obj/effect/landmark/start/head_of_personnel, -/turf/open/floor/carpet, +/obj/effect/turf_decal/siding/wood/corner{ + dir = 1 + }, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) -"nOU" = ( -/obj/structure/table/reinforced, -/obj/item/storage/toolbox/mechanical, -/obj/item/storage/toolbox/mechanical, -/obj/item/stack/package_wrap, -/turf/open/floor/iron, -/area/station/commons/storage/primary) +"nOK" = ( +/obj/machinery/power/apc/auto_name/directional/east, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) +"nOT" = ( +/obj/item/statuebust, +/obj/machinery/light/cold/no_nightlight/directional/east, +/turf/open/floor/iron/vaporwave, +/area/station/maintenance/starboard/aft/upper) +"nOV" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/port) "nPb" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/reagent_dispensers/watertank, /obj/structure/sign/poster/contraband/space_cola/directional/north, +/obj/effect/turf_decal/bot, /turf/open/floor/iron/dark/textured, /area/station/cargo/warehouse) "nPe" = ( /obj/structure/railing{ dir = 4 }, -/turf/open/floor/carpet, +/obj/effect/turf_decal/siding/wood{ + dir = 6 + }, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) "nPf" = ( /obj/effect/decal/cleanable/dirt, @@ -48866,39 +51266,16 @@ /obj/machinery/suit_storage_unit/security, /turf/open/floor/iron/dark/smooth_large, /area/station/security/eva) -"nPB" = ( -/obj/effect/spawner/random/structure/girder, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "nPN" = ( /turf/open/floor/wood/large, /area/station/hallway/secondary/service) -"nPP" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/cable/layer1, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"nPS" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/yellow/filled/corner, -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, -/obj/machinery/atmospherics/components/binary/pump/on/layer5{ - name = "N2 to Airmix" - }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "nPW" = ( /obj/structure/disposalpipe/segment{ dir = 5 }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 8 + }, /area/station/hallway/primary/central) "nPY" = ( /obj/effect/decal/cleanable/dirt, @@ -48927,15 +51304,6 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"nQs" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 1 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "nQu" = ( /obj/machinery/light_switch/directional/east, /obj/effect/turf_decal/tile/yellow/opposingcorners{ @@ -48958,6 +51326,15 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/construction/storage_wing) +"nQE" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark/corner, +/obj/effect/turf_decal/trimline/dark/corner, +/turf/open/floor/iron, +/area/station/hallway/secondary/exit/departure_lounge) "nQG" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -48996,12 +51373,10 @@ /turf/open/floor/iron/dark, /area/station/security/checkpoint/customs) "nRz" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/wood/parquet, -/area/station/command/heads_quarters/qm) +/obj/effect/turf_decal/stripes/line, +/obj/machinery/firealarm/directional/south, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "nRE" = ( /turf/open/openspace, /area/station/medical/medbay/central) @@ -49013,6 +51388,12 @@ /obj/effect/landmark/start/depsec/science, /turf/open/floor/iron/dark, /area/station/security/checkpoint/science) +"nRN" = ( +/obj/effect/turf_decal/siding/dark{ + dir = 9 + }, +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "nRP" = ( /obj/machinery/power/solar_control{ dir = 1; @@ -49022,18 +51403,6 @@ /obj/structure/cable, /turf/open/floor/glass/reinforced, /area/station/solars/starboard/fore) -"nRS" = ( -/obj/structure/chair/office{ - dir = 8 - }, -/obj/machinery/computer/security/telescreen/minisat/directional/west, -/obj/machinery/light/directional/south, -/turf/open/floor/iron/dark, -/area/station/engineering/transit_tube) -"nSp" = ( -/obj/structure/closet/radiation, -/turf/open/floor/iron, -/area/station/engineering/gravity_generator) "nSs" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -49054,7 +51423,7 @@ /obj/structure/bodycontainer/morgue{ dir = 1 }, -/obj/machinery/newscaster/directional/south, +/obj/machinery/status_display/evac/directional/south, /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) "nSx" = ( @@ -49062,20 +51431,29 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/carpet, /area/station/service/abandoned_gambling_den) -"nSS" = ( -/obj/effect/turf_decal/trimline/brown/filled/line, -/obj/machinery/firealarm/directional/south, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 +"nSK" = ( +/obj/structure/table/reinforced, +/obj/item/trash/candle{ + pixel_x = 11; + pixel_y = 11 }, -/obj/machinery/conveyor{ - dir = 8; - id = "mining" +/obj/item/trash/candle{ + pixel_x = 7; + pixel_y = 3 }, -/obj/machinery/bouldertech/refinery, -/obj/structure/railing{ - dir = 1 +/obj/item/trash/candle{ + pixel_x = -9; + pixel_y = 9 + }, +/turf/open/floor/wood, +/area/station/maintenance/starboard) +"nSS" = ( +/obj/item/radio/intercom/directional/south, +/obj/structure/closet/secure_closet/miner, +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 10 }, +/obj/structure/sign/poster/random/directional/west, /turf/open/floor/iron, /area/station/cargo/miningoffice) "nSX" = ( @@ -49092,6 +51470,19 @@ }, /turf/open/floor/iron, /area/station/science/explab) +"nTf" = ( +/obj/machinery/computer/atmos_control/nitrous_tank, +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/effect/turf_decal/tile/red{ + dir = 4 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "nTg" = ( /obj/machinery/camera/autoname/directional/south, /turf/open/floor/plating, @@ -49108,7 +51499,7 @@ /turf/open/floor/iron/dark/textured_edge{ dir = 4 }, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "nTl" = ( /obj/structure/table, /obj/item/clothing/head/soft/grey{ @@ -49125,16 +51516,6 @@ }, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"nTp" = ( -/obj/structure/railing{ - dir = 8 - }, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/turf_decal/stripes/corner, -/obj/structure/tank_dispenser, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "nTv" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -49150,6 +51531,9 @@ }, /turf/open/floor/glass/reinforced, /area/station/service/library) +"nTy" = ( +/turf/open/floor/engine/hull/air, +/area/station/commons/fitness/recreation) "nTA" = ( /obj/structure/lattice/catwalk, /turf/open/space/basic, @@ -49167,49 +51551,41 @@ /obj/machinery/light/directional/south, /turf/open/floor/iron, /area/station/science/lab) -"nTM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/iron/white, -/area/station/maintenance/starboard/lesser) +"nTU" = ( +/obj/item/ammo_casing/spent{ + pixel_x = 8; + pixel_y = 6 + }, +/obj/item/ammo_casing/spent{ + pixel_x = -6; + pixel_y = -5 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "nTX" = ( /obj/structure/lattice/catwalk, /obj/machinery/airalarm/directional/south, /turf/open/floor/engine/hull/air, /area/station/construction/storage_wing) "nUd" = ( -/obj/machinery/firealarm/directional/south, -/obj/effect/decal/cleanable/wrapping, -/obj/effect/turf_decal/tile/brown/fourcorners, -/obj/structure/railing{ +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/decal/cleanable/blood/oil/slippery, +/obj/structure/closet/crate, +/obj/item/stack/package_wrap, +/obj/item/stack/package_wrap, +/obj/item/stack/package_wrap, +/obj/item/stack/package_wrap, +/obj/item/stack/wrapping_paper, +/obj/item/stack/wrapping_paper, +/obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/railing/corner/end{ - dir = 8 - }, -/turf/open/floor/iron, +/turf/open/floor/iron/dark/textured, /area/station/cargo/sorting) -"nUj" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ - dir = 8 - }, -/turf/open/openspace, -/area/station/engineering/break_room) -"nUk" = ( -/obj/structure/railing{ - dir = 8 - }, -/obj/structure/railing{ - dir = 4 - }, -/obj/machinery/door/firedoor/border_only{ - dir = 8 - }, -/obj/structure/cable, -/obj/effect/landmark/start/hangover, -/turf/open/floor/wood, -/area/station/commons/toilet/restrooms) +"nUi" = ( +/turf/open/floor/iron/vaporwave, +/area/station/maintenance/starboard/aft/upper) "nUo" = ( /obj/structure/lattice/catwalk, /obj/effect/spawner/random/maintenance, @@ -49218,7 +51594,18 @@ "nUq" = ( /obj/structure/ladder, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) +"nUr" = ( +/obj/machinery/door/airlock{ + name = "Unisex Restrooms" + }, +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/structure/fluff/shower_drain, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet/restrooms) "nUw" = ( /mob/living/carbon/human/species/monkey, /obj/effect/turf_decal/weather/dirt{ @@ -49237,15 +51624,6 @@ /obj/machinery/light/directional/south, /turf/open/floor/iron, /area/station/science/lobby) -"nUB" = ( -/obj/structure/lattice/catwalk, -/obj/item/kirbyplants/random/dead{ - desc = "You guys had ONE job."; - name = "the community's plant" - }, -/obj/structure/railing, -/turf/open/openspace, -/area/station/commons/dorms) "nUC" = ( /obj/machinery/newscaster/directional/east{ pixel_y = 2 @@ -49266,6 +51644,13 @@ }, /turf/open/floor/iron/dark/smooth_edge, /area/station/commons/lounge) +"nUF" = ( +/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ + dir = 4 + }, +/obj/machinery/holopad, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "nUV" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, @@ -49277,11 +51662,12 @@ /turf/open/floor/iron/dark, /area/station/science/xenobiology) "nVc" = ( -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 - }, /obj/machinery/light/directional/west, -/turf/open/floor/iron/dark, +/obj/structure/chair/plastic, +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/turf/open/floor/wood/large, /area/station/hallway/primary/central) "nVg" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/orange/visible, @@ -49303,16 +51689,21 @@ /obj/effect/turf_decal/tile/bar/opposingcorners, /turf/open/floor/iron, /area/station/security/prison) +"nVz" = ( +/obj/structure/railing/corner, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "nVE" = ( /turf/closed/wall/r_wall, /area/station/service/abandoned_gambling_den) -"nVH" = ( -/obj/structure/closet/emcloset, -/obj/effect/landmark/start/hangover, -/obj/machinery/light/directional/west, -/obj/machinery/camera/autoname/directional/west, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +"nVV" = ( +/obj/item/banner/command/mundane, +/turf/open/floor/plating, +/area/station/maintenance/port) +"nVY" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/recharge_floor, +/area/station/maintenance/starboard/aft/upper) "nWe" = ( /obj/structure/cable, /obj/machinery/power/emitter/welded{ @@ -49331,14 +51722,16 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/smooth, /area/station/science/robotics) -"nWs" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/cigbutt{ - pixel_x = -12; - pixel_y = 11 +"nWu" = ( +/obj/machinery/atmospherics/pipe/multiz/scrubbers/visible/layer2{ + dir = 4 }, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) +/obj/machinery/atmospherics/pipe/multiz/supply/visible/layer4{ + dir = 4 + }, +/obj/structure/sign/warning/directional/west, +/turf/open/floor/plating, +/area/station/engineering/atmos/office) "nWD" = ( /obj/structure/railing{ dir = 8 @@ -49357,7 +51750,7 @@ pixel_y = 8 }, /turf/open/floor/catwalk_floor/iron_smooth, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "nWI" = ( /obj/effect/spawner/random/contraband/permabrig_weapon, /obj/effect/spawner/random/structure/crate_loot, @@ -49373,8 +51766,11 @@ /turf/open/floor/wood/large, /area/station/commons/lounge) "nWO" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet, +/obj/machinery/light/directional/east, +/obj/effect/landmark/start/captain, +/obj/structure/bed/double, +/obj/item/bedsheet/captain/double, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) "nWS" = ( /obj/effect/turf_decal/stripes/line{ @@ -49393,16 +51789,12 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/smooth, /area/station/science/robotics) -"nWV" = ( -/obj/item/radio/intercom/directional/south, -/obj/structure/lattice/catwalk, -/obj/machinery/camera/directional/south{ - c_tag = "Cargo Bay - Security Post (High)"; - pixel_x = 14 - }, -/obj/effect/landmark/event_spawn, -/turf/open/openspace, -/area/station/security/checkpoint/supply) +"nWX" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "nWY" = ( /obj/structure/disposalpipe/trunk/multiz/down{ dir = 2 @@ -49419,6 +51811,14 @@ /obj/machinery/firealarm/directional/east, /turf/open/floor/iron/dark/textured, /area/station/science/xenobiology) +"nXh" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/duct, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "nXi" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -49435,24 +51835,31 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat_interior) -"nXp" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating/airless, -/area/space/nearstation) -"nXr" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, -/obj/machinery/camera/autoname/directional/south, -/turf/open/floor/iron/freezer, -/area/station/engineering/atmos/pumproom) +/area/station/ai/satellite/interior) +"nXq" = ( +/obj/effect/turf_decal/bot, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos) "nXw" = ( /obj/structure/disposalpipe/segment{ dir = 4 }, /turf/open/floor/plating, /area/station/medical/medbay/central) +"nXB" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/structure/chair/plastic{ + dir = 8 + }, +/obj/effect/landmark/start/hangover, +/obj/effect/turf_decal/siding/wood/corner, +/turf/open/floor/wood, +/area/station/commons/toilet/restrooms) "nXQ" = ( /obj/effect/turf_decal/siding/dark{ dir = 8 @@ -49467,7 +51874,15 @@ name = "AI Core Access" }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"nXR" = ( +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/showcase/horrific_experiment, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/upper) "nXY" = ( /obj/effect/turf_decal/siding/dark{ dir = 8 @@ -49478,7 +51893,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "nYc" = ( /obj/structure/rack, /obj/effect/spawner/random/maintenance/no_decals/six, @@ -49517,7 +51932,17 @@ network = list("minisat") }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"nYA" = ( +/obj/machinery/camera/autoname/directional/east, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/hfr_room) "nYD" = ( /obj/machinery/door/poddoor/shutters/radiation/preopen{ id = "SM_shutters"; @@ -49527,47 +51952,31 @@ /area/station/engineering/supermatter) "nYQ" = ( /turf/open/floor/iron/smooth_half, -/area/station/ai_monitored/turret_protected/aisat/foyer) -"nYR" = ( -/obj/effect/landmark/blobstart, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/area/station/ai/satellite/foyer) "nYT" = ( +/obj/structure/ladder, /obj/structure/railing{ dir = 4 }, -/obj/structure/ladder, -/obj/effect/turf_decal/siding/wood{ +/obj/effect/turf_decal/stripes{ dir = 4 }, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/station/ai_monitored/command/storage/eva) -"nYZ" = ( -/obj/effect/turf_decal/plaque{ - icon_state = "L4" - }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/hallway/primary/central) -"nZa" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/unres{ +/turf/open/floor/iron/textured, +/area/station/command/eva) +"nYV" = ( +/obj/machinery/atmospherics/components/unary/passive_vent, +/obj/machinery/camera/autoname/directional/west, +/obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"nZb" = ( -/obj/structure/flora/bush/fullgrass/style_random, -/obj/structure/flora/bush/jungle{ - pixel_y = -7 - }, -/obj/structure/flora/bush/pale/style_random, -/turf/open/floor/grass, -/area/station/maintenance/starboard/fore) +/obj/structure/sign/warning/hot_temp/directional/west, +/turf/open/floor/plating/airless, +/area/space/nearstation) +"nYZ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/carpet/royalblue, +/area/station/command/heads_quarters/captain/private) "nZd" = ( /obj/machinery/mass_driver/ordnance{ dir = 4; @@ -49577,6 +51986,14 @@ /obj/effect/turf_decal/tile/red/opposingcorners, /turf/open/floor/iron/dark, /area/station/science/ordnance) +"nZq" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/obj/machinery/duct, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "nZt" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 @@ -49588,13 +52005,6 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"nZD" = ( -/obj/machinery/light/floor, -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "nZF" = ( /obj/effect/turf_decal/tile/dark_blue{ dir = 1 @@ -49680,25 +52090,41 @@ "oam" = ( /turf/open/floor/engine/hull/air, /area/station/medical/medbay/central) -"oaA" = ( -/obj/machinery/camera/autoname/directional/north, -/obj/structure/lattice, -/turf/open/space/basic, -/area/space/nearstation) +"oan" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/status_display/ai/directional/north, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "oaF" = ( -/obj/structure/window/reinforced/spawner/directional/north, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/window/reinforced/spawner/directional/west, /obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/command/heads_quarters/qm) +/obj/effect/turf_decal/trimline/brown/filled/warning{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/cargo/storage) "oaQ" = ( /obj/structure/disposalpipe/segment{ dir = 10 }, /turf/closed/wall/r_wall, /area/station/science/xenobiology) +"oaX" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/chair/office{ + dir = 1 + }, +/obj/effect/landmark/start/chief_engineer, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/dark/small, +/area/station/command/heads_quarters/ce) "obn" = ( /turf/closed/wall/r_wall, /area/station/hallway/primary/central) @@ -49712,7 +52138,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "obv" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/holopad, @@ -49725,17 +52151,27 @@ /obj/structure/flora/rock/style_4, /obj/structure/flora/bush/flowers_br/style_3, /turf/open/floor/grass, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "obJ" = ( +/obj/effect/mapping_helpers/airlock/access/all/supply/mining, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 4 + }, /obj/machinery/door/airlock/external{ name = "Mining Dock Airlock" }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ - cycle_id = "miningshuttleexit" - }, -/obj/effect/mapping_helpers/airlock/access/all/supply/mining, /turf/open/floor/iron, /area/station/cargo/miningoffice) +"obM" = ( +/obj/structure/table, +/obj/effect/spawner/random/food_or_drink/refreshing_beverage{ + pixel_x = 5; + pixel_y = 9 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "obQ" = ( /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/tile/red/half/contrasted{ @@ -49791,14 +52227,6 @@ }, /turf/open/floor/iron/kitchen_coldroom/freezerfloor, /area/station/service/kitchen/coldroom) -"ocF" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 10 - }, -/obj/structure/cable, -/obj/machinery/firealarm/directional/south, -/turf/open/floor/iron/smooth, -/area/station/engineering/main) "ocG" = ( /obj/structure/table/wood, /obj/item/paper_bin, @@ -49811,16 +52239,13 @@ /turf/open/floor/iron/grimy, /area/station/security/detectives_office/private_investigators_office) "ocL" = ( -/obj/structure/table/wood, -/obj/machinery/computer/security/wooden_tv{ - pixel_x = 1; - pixel_y = 6 - }, -/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) +/obj/effect/landmark/event_spawn, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "ocN" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -49848,19 +52273,18 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/service/hydroponics/garden/abandoned) -"ocZ" = ( -/obj/effect/turf_decal/tile/purple/half{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ - name = "Plasma Multideck Adapter"; - dir = 4 +"ocW" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/door/airlock{ + id_tag = "Cabin9"; + name = "Cabin 9" }, -/obj/machinery/meter{ - name = "Plasma meter" +/obj/effect/turf_decal/siding/wood{ + dir = 8 }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +/turf/open/floor/iron/dark/textured, +/area/station/commons/dorms) "odd" = ( /obj/structure/railing{ dir = 1 @@ -49883,17 +52307,13 @@ /obj/machinery/door/firedoor, /turf/open/floor/iron/dark, /area/station/service/chapel/office) -"odB" = ( -/obj/item/cigbutt{ - pixel_x = 8; - pixel_y = -2 - }, +"odo" = ( +/obj/machinery/door/airlock/maintenance, +/obj/structure/disposalpipe/segment, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"odE" = ( -/obj/effect/landmark/start/hangover, -/turf/open/floor/wood, -/area/station/commons/fitness/recreation) +/area/station/maintenance/starboard/upper) "odM" = ( /obj/item/bodypart/head/lizard, /obj/effect/decal/cleanable/blood/old, @@ -49905,7 +52325,7 @@ }, /obj/machinery/light/directional/south, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "odZ" = ( /obj/structure/cable, /obj/effect/turf_decal/tile/dark_blue{ @@ -49944,21 +52364,22 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/wood/tile, /area/station/science/robotics) -"oeF" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/lattice/catwalk, +"oeH" = ( +/obj/structure/closet/firecloset, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) +"oeQ" = ( +/obj/machinery/door/airlock/maintenance, /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) -"oeR" = ( -/obj/structure/table, -/obj/item/radio/intercom/directional/north, -/turf/open/floor/wood, -/area/station/commons/fitness/recreation) +/obj/structure/cable, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/turf/open/floor/carpet, +/area/station/maintenance/starboard) "ofc" = ( /obj/machinery/digital_clock/directional/west, /obj/structure/disposalpipe/trunk{ @@ -49989,6 +52410,12 @@ /obj/machinery/atmospherics/components/unary/thermomachine/freezer, /turf/open/floor/iron/dark, /area/station/medical/cryo) +"ofs" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/decal/cleanable/blood/drip, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "ofE" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -49997,6 +52424,13 @@ /obj/machinery/door/firedoor, /turf/open/floor/wood/large, /area/station/service/bar) +"ofK" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos/office) "ofL" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 1 @@ -50040,31 +52474,22 @@ /obj/structure/sign/warning/yes_smoking/circle/directional/west, /turf/open/floor/iron, /area/station/science/research) -"ogn" = ( -/obj/structure/bed, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/white, -/area/station/maintenance/starboard/lesser) -"ogB" = ( -/obj/machinery/power/turbine/core_rotor{ - dir = 8; - mapping_id = "main_turbine" - }, -/obj/structure/cable, -/turf/open/floor/engine, -/area/station/maintenance/disposal/incinerator) "ogF" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/plating, /area/station/hallway/primary/central) -"ogG" = ( -/obj/structure/table, -/obj/effect/spawner/random/bureaucracy/paper, -/obj/item/newspaper, -/turf/open/floor/wood, -/area/station/commons/dorms) +"ogR" = ( +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ + dir = 4 + }, +/obj/machinery/computer/atmos_control/plasma_tank, +/obj/effect/turf_decal/tile/purple/half{ + dir = 1 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "ohb" = ( /obj/machinery/airalarm/directional/south, /obj/item/toy/crayon/white{ @@ -50081,9 +52506,20 @@ }, /turf/open/floor/iron/dark, /area/station/security/brig) +"ohd" = ( +/obj/machinery/shieldgen, +/obj/effect/turf_decal/bot_white, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "ohh" = ( /turf/open/floor/grass, /area/station/science/cytology) +"ohi" = ( +/obj/effect/turf_decal/tile/yellow/fourcorners, +/obj/item/kirbyplants/random, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/lobby) "ohp" = ( /obj/effect/spawner/random/trash/graffiti{ pixel_y = 32 @@ -50102,13 +52538,6 @@ /obj/machinery/firealarm/directional/east, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) -"ohw" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "ohy" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -50117,13 +52546,20 @@ /obj/machinery/camera/autoname/directional/south, /turf/open/openspace, /area/station/hallway/primary/port) -"ohJ" = ( -/obj/structure/disposalpipe/trunk/multiz/down{ +"ohG" = ( +/turf/closed/wall, +/area/station/maintenance/aft) +"ohH" = ( +/obj/effect/spawner/random/vending/colavend, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ dir = 4 }, -/obj/structure/lattice/catwalk, -/turf/open/openspace, -/area/station/maintenance/starboard/fore) +/obj/structure/cable, +/obj/machinery/light_switch/directional/west{ + pixel_y = -6 + }, +/turf/open/floor/iron/dark, +/area/station/commons/fitness/recreation) "ohP" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -50148,23 +52584,38 @@ /obj/structure/sign/departments/virology/directional/east, /turf/open/floor/plating, /area/station/medical/virology) -"oil" = ( -/obj/structure/ladder, -/obj/effect/turf_decal/stripes/box, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) +"oim" = ( +/obj/item/cigbutt{ + pixel_x = -12; + pixel_y = 9 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "oio" = ( /obj/structure/window/reinforced/spawner/directional/north, /obj/machinery/light/warm/directional/south, /obj/structure/flora/grass/jungle/a/style_2, /obj/structure/flora/bush/flowers_br/style_2, /turf/open/floor/grass, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "oip" = ( /obj/structure/railing, /obj/effect/turf_decal/trimline/brown/filled/line, /turf/open/floor/iron, /area/station/cargo/storage) +"oit" = ( +/obj/structure/rack, +/obj/item/clothing/gloves/color/fyellow, +/obj/effect/spawner/random/maintenance, +/obj/machinery/light/small/directional/east, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) +"oiw" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "oiz" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 4 @@ -50199,11 +52650,6 @@ /obj/item/electronics/apc, /turf/open/floor/wood, /area/station/commons/storage/tools) -"oiQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/yellow/visible, -/turf/open/floor/iron/smooth, -/area/station/engineering/hallway) "oiR" = ( /obj/effect/turf_decal/trimline/green/filled/corner{ dir = 4 @@ -50213,6 +52659,13 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/virology) +"oiV" = ( +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) "oiW" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, @@ -50230,19 +52683,13 @@ /turf/open/floor/plating, /area/station/maintenance/starboard/aft) "ojj" = ( -/obj/effect/turf_decal/plaque{ - icon_state = "L2" +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/obj/effect/turf_decal/siding/white/corner{ - dir = 8 +/turf/open/floor/iron/edge{ + dir = 1 }, -/turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) -"ojr" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "ojx" = ( /obj/effect/turf_decal/tile/blue/opposingcorners, /turf/open/floor/iron/dark/smooth_large, @@ -50272,23 +52719,36 @@ /turf/open/floor/wood/tile, /area/station/science/robotics) "ojU" = ( -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/wood, /area/station/service/library) +"ojV" = ( +/obj/structure/lattice/catwalk, +/obj/item/grenade/chem_grenade/smart_metal_foam{ + pixel_x = 1; + pixel_y = 2 + }, +/obj/item/grenade/chem_grenade/smart_metal_foam{ + pixel_x = 1; + pixel_y = 2 + }, +/obj/item/grenade/chem_grenade/smart_metal_foam{ + pixel_x = 1; + pixel_y = 2 + }, +/obj/item/wrench, +/obj/item/crowbar/red, +/obj/structure/table, +/obj/machinery/newscaster/directional/south, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "ojW" = ( /obj/structure/disposalpipe/segment{ dir = 4 }, /turf/closed/wall, /area/station/service/chapel/office) -"ojZ" = ( -/obj/structure/bed, -/obj/structure/window/reinforced/tinted/spawner/directional/south, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/wood, -/area/station/commons/dorms) "okc" = ( /obj/structure/lattice/catwalk, /obj/structure/window/reinforced/spawner/directional/south, @@ -50310,17 +52770,13 @@ /obj/effect/spawner/random/maintenance, /turf/open/floor/engine/hull/air, /area/station/hallway/secondary/exit/departure_lounge) -"okm" = ( -/obj/structure/window/reinforced/plasma/spawner/directional/north, -/obj/machinery/power/energy_accumulator/tesla_coil/anchored{ - cable_layer = 1 - }, -/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ - dir = 5 +"okt" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ + dir = 8 }, -/obj/structure/cable/layer1, -/turf/open/floor/engine, -/area/station/engineering/supermatter) +/turf/open/openspace, +/area/station/maintenance/aft/upper) "oky" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -50332,14 +52788,14 @@ /turf/open/floor/wood/large, /area/station/hallway/secondary/service) "okC" = ( -/obj/effect/turf_decal/siding/blue{ - dir = 8 - }, -/obj/machinery/flasher/directional/east{ - id = "hopflash" +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters{ + dir = 1; + id = "Lcommissaryshutter"; + name = "Vacant Commissary Shutter" }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/hallway/primary/central) +/turf/open/floor/iron/dark, +/area/station/commons/vacant_room/office) "okE" = ( /obj/structure/railing{ dir = 9 @@ -50354,6 +52810,21 @@ }, /turf/open/floor/engine/hull/air, /area/station/maintenance/port) +"okG" = ( +/obj/machinery/light/floor, +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) +"okJ" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/landmark/generic_maintenance_landmark, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "okM" = ( /obj/structure/closet/crate{ name = "Spare Chairs" @@ -50370,36 +52841,17 @@ /obj/structure/sign/poster/official/random/directional/north, /turf/open/floor/wood, /area/station/service/library/printer) -"okO" = ( -/obj/structure/railing/corner{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) -"okP" = ( -/obj/machinery/airalarm/directional/east, -/obj/machinery/camera/autoname/directional/east, -/turf/open/openspace, -/area/station/engineering/lobby) "olm" = ( /obj/structure/stairs/west, /obj/structure/railing, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"olr" = ( -/obj/machinery/firealarm/directional/west, -/obj/structure/rack, -/obj/item/radio{ - pixel_x = -5; - pixel_y = 5 - }, -/obj/item/radio{ - pixel_x = 5; - pixel_y = 5 +/area/station/ai/satellite/interior) +"oln" = ( +/obj/structure/disposalpipe/segment{ + dir = 6 }, -/obj/item/radio, -/turf/open/floor/iron, -/area/station/commons/storage/primary) +/turf/open/floor/plating, +/area/station/maintenance/starboard) "olv" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -50407,48 +52859,49 @@ /obj/effect/landmark/navigate_destination/court, /turf/open/floor/carpet, /area/station/security/courtroom) -"olL" = ( -/obj/effect/turf_decal/trimline/white/corner, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/obj/structure/disposalpipe/segment{ - dir = 4 +"olB" = ( +/obj/structure/table, +/obj/effect/spawner/random/bureaucracy/paper, +/obj/item/paper/pamphlet/gateway{ + pixel_x = -13; + pixel_y = 4 }, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) -"olM" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/item/storage/toolbox/emergency, +/obj/structure/sign/poster/contraband/missing_gloves/directional/south, +/turf/open/floor/wood/large, +/area/station/commons/dorms) +"olG" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/disposalpipe/segment, +/obj/effect/turf_decal/stripes/white/line{ + dir = 4 + }, /turf/open/floor/iron, -/area/station/science/breakroom) -"olU" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/area/station/commons/fitness/recreation) +"olH" = ( +/obj/machinery/duct, /obj/structure/cable, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron, -/area/station/commons/dorms) -"omc" = ( -/obj/effect/turf_decal/trimline/yellow/filled, -/obj/item/kirbyplants/random/fullysynthetic, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "omu" = ( -/obj/structure/chair/stool/directional/south, -/obj/machinery/mineral/stacking_unit_console{ - pixel_x = 32 - }, +/obj/item/storage/bag/trash/filled, /turf/open/floor/plating, /area/station/maintenance/disposal) -"omx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/vending/colavend, -/obj/effect/mapping_helpers/broken_machine, -/turf/open/floor/iron, -/area/station/engineering/storage_shared) +"omw" = ( +/obj/machinery/door/window/brigdoor/left/directional/north{ + req_access = list("command"); + name = "Conference Room" + }, +/turf/open/floor/iron/stairs/medium{ + dir = 1 + }, +/area/station/hallway/secondary/command) +"omF" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/engineering/storage/tech) "omG" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /obj/effect/turf_decal/siding/purple/corner{ @@ -50459,6 +52912,10 @@ }, /turf/open/floor/iron, /area/station/science/lab) +"omU" = ( +/obj/effect/spawner/structure/window, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "omX" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -50467,13 +52924,6 @@ /obj/structure/steam_vent, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"onh" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/broken_floor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/engineering/hallway) "onj" = ( /obj/structure/reagent_dispensers/water_cooler, /obj/machinery/newscaster/directional/north, @@ -50482,24 +52932,11 @@ }, /turf/open/floor/wood/large, /area/station/medical/psychology) -"onm" = ( -/obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/decal/cleanable/dirt, -/obj/structure/barricade/wooden/crude, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/machinery/door/airlock/command{ - name = "Abandoned Lab" - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "onn" = ( /obj/effect/turf_decal/trimline/brown/filled/warning{ dir = 8 }, -/obj/effect/decal/cleanable/generic, +/obj/structure/disposalpipe/segment, /turf/open/floor/iron, /area/station/cargo/storage) "onv" = ( @@ -50515,16 +52952,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/station/maintenance/port) -"onG" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/maintenance, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "onV" = ( /obj/effect/turf_decal/trimline/red/filled/line, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -50532,13 +52959,15 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/primary/port) -"oob" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable/layer1, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/catwalk_floor, -/area/station/engineering/main) +"onW" = ( +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible/layer2{ + dir = 9 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "ood" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured_large, @@ -50553,35 +52982,14 @@ /obj/structure/frame/machine, /turf/open/floor/iron, /area/station/service/kitchen/abandoned) +"oov" = ( +/obj/machinery/light/directional/south, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "oox" = ( /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/carpet, /area/station/security/courtroom) -"ooy" = ( -/obj/machinery/door/airlock/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"ooF" = ( -/obj/machinery/atmospherics/pipe/smart/manifold/scrubbers/visible{ - dir = 4 - }, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) -"ooK" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/item/multitool{ - pixel_x = 7; - pixel_y = -4 - }, -/obj/structure/disposalpipe/trunk/multiz, -/obj/item/stamp/head/qm{ - pixel_x = -6; - pixel_y = 6 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "ooS" = ( /obj/effect/turf_decal/siding/dark/corner{ dir = 1 @@ -50589,7 +52997,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/textured_edge, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ooY" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/structure/closet_maintenance, @@ -50607,18 +53015,17 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/security/processing) "opj" = ( -/obj/structure/extinguisher_cabinet/directional/west, -/turf/open/floor/carpet, +/obj/machinery/firealarm/directional/west, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 + }, +/obj/effect/turf_decal/siding/wood, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) -"ops" = ( -/obj/structure/rack, -/obj/item/storage/toolbox/emergency, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "opu" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, /area/station/maintenance/port/aft) "opA" = ( @@ -50653,20 +53060,8 @@ /turf/open/floor/iron/white, /area/station/maintenance/department/medical) "opL" = ( -/obj/machinery/door/airlock/mining{ - name = "Deliveries" - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/access/all/supply/shipping, -/obj/effect/turf_decal/tile/brown/fourcorners, -/obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 1 - }, -/turf/open/floor/iron, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, /area/station/cargo/sorting) "opO" = ( /obj/structure/reagent_dispensers/water_cooler, @@ -50685,6 +53080,16 @@ }, /turf/open/floor/glass, /area/station/science/zoo) +"opV" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/effect/turf_decal/siding/wood/corner, +/turf/open/floor/wood, +/area/station/commons/toilet/restrooms) "opW" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 @@ -50706,10 +53111,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/textured_large, /area/station/medical/virology) -"oqd" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) "oqi" = ( /obj/machinery/door/poddoor/shutters/preopen{ id = "hydropony_shutters"; @@ -50718,6 +53119,17 @@ /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/service/hydroponics) +"oql" = ( +/obj/machinery/door/airlock/highsecurity{ + name = "Gravity Generator Room" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/construction, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/door/firedoor, +/obj/effect/landmark/navigate_destination, +/turf/open/floor/iron, +/area/station/engineering/gravity_generator) "oqq" = ( /obj/structure/table, /obj/item/folder/red, @@ -50731,18 +53143,9 @@ /turf/open/floor/plating, /area/station/construction/storage_wing) "oqA" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/fake_stairs/directional/east, /turf/open/floor/iron, /area/station/cargo/storage) -"oqW" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/machinery/power/apc/auto_name/directional/east, -/obj/structure/cable, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/engineering/storage_shared) "ora" = ( /obj/structure/railing/corner/end, /obj/effect/turf_decal/stripes/corner{ @@ -50757,19 +53160,13 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron, /area/station/science/robotics/lab) -"orb" = ( -/obj/item/storage/toolbox/mechanical, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"orm" = ( +"ork" = ( /obj/structure/cable, -/obj/structure/sign/poster/random/directional/north, -/obj/effect/mapping_helpers/burnt_floor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/landmark/firealarm_sanity, -/turf/open/floor/iron, -/area/station/engineering/main) +/obj/structure/disposalpipe/segment{ + dir = 2 + }, +/turf/open/floor/catwalk_floor/iron, +/area/station/commons/dorms) "orr" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/trash/graffiti, @@ -50807,6 +53204,23 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/science/research) +"orR" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 4 + }, +/obj/machinery/meter, +/turf/open/floor/iron, +/area/station/engineering/atmos/upper) +"osf" = ( +/obj/effect/turf_decal/trimline/red/filled/corner{ + dir = 1 + }, +/obj/structure/extinguisher_cabinet/directional/north, +/turf/open/floor/iron/edge{ + dir = 1 + }, +/area/station/hallway/primary/central) "osp" = ( /obj/machinery/door/airlock/public/glass{ name = "Departure Balcony" @@ -50814,21 +53228,14 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/engine/hull/air, /area/station/hallway/primary/fore) -"osu" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/engineering/lobby) "osx" = ( -/obj/machinery/door/poddoor/shutters{ - id = "qm_cargobay"; - name = "Cargo Bay Shutters" +/obj/effect/decal/cleanable/dirt, +/obj/machinery/door/window/right/directional/south{ + req_access = list("maint_tunnels"); + name = "Danger: Conveyor Access" }, -/obj/effect/spawner/random/maintenance, -/obj/machinery/door/firedoor, /turf/open/floor/plating, -/area/station/cargo/storage) +/area/station/maintenance/disposal) "osC" = ( /obj/structure/table, /obj/item/clipboard{ @@ -50852,6 +53259,10 @@ /obj/machinery/light/directional/east, /turf/open/floor/carpet/royalblack, /area/station/command/heads_quarters/hos) +"osD" = ( +/obj/structure/lattice, +/turf/open/openspace, +/area/station/maintenance/department/crew_quarters/dorms) "osO" = ( /turf/open/floor/engine{ name = "Holodeck Projector Floor" @@ -50899,17 +53310,6 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/storage) -"otb" = ( -/obj/structure/sign/directions/command/directional/west{ - dir = 2; - pixel_y = 5 - }, -/obj/structure/sign/directions/evac/directional/west{ - dir = 2; - pixel_y = -3 - }, -/turf/open/floor/iron, -/area/station/commons/dorms) "oti" = ( /obj/machinery/door/airlock/virology{ name = "Genetics Lab" @@ -50935,7 +53335,21 @@ dir = 8 }, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"otW" = ( +/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/red/line{ + dir = 4 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) +"oui" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/mop_bucket, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "ouo" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -50971,15 +53385,11 @@ }, /turf/open/floor/iron/kitchen, /area/station/hallway/secondary/service) -"ouH" = ( +"ouJ" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/trunk/multiz{ - dir = 4 - }, +/obj/effect/decal/cleanable/blood/footprints, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard) "ouK" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk{ @@ -50989,7 +53399,8 @@ /area/station/hallway/secondary/service) "ouW" = ( /obj/structure/sign/plaques/kiddie/library{ - pixel_x = -32 + pixel_x = -32; + dir = 8 }, /obj/structure/railing{ dir = 4 @@ -51034,16 +53445,26 @@ }, /turf/open/floor/iron, /area/station/maintenance/port/greater) -"ovN" = ( -/obj/machinery/power/smes/engineering, -/obj/structure/sign/warning/electric_shock/directional/north, -/obj/structure/cable, -/turf/open/floor/iron/dark/textured, -/area/station/engineering/engine_smes) +"ovJ" = ( +/obj/structure/closet/secure_closet/personal/cabinet, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "ovQ" = ( /obj/effect/spawner/random/maintenance, +/obj/structure/disposalpipe/segment{ + dir = 9 + }, /turf/open/floor/plating, /area/station/maintenance/starboard/central) +"ovV" = ( +/obj/machinery/shower/directional/west, +/obj/structure/fluff/shower_drain, +/obj/machinery/light/small/directional/south, +/turf/open/floor/iron/dark/smooth_corner{ + dir = 1 + }, +/area/station/engineering/main) "owf" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/stairs/north, @@ -51056,6 +53477,10 @@ /obj/structure/window/reinforced/spawner/directional/east, /turf/open/floor/engine, /area/station/service/hydroponics) +"owk" = ( +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "own" = ( /turf/closed/wall, /area/station/hallway/secondary/service) @@ -51080,10 +53505,6 @@ /obj/machinery/light/directional/east, /turf/open/floor/iron/dark/smooth_large, /area/station/security/brig) -"owz" = ( -/obj/item/radio/intercom/directional/north, -/turf/open/floor/glass, -/area/station/commons/fitness/recreation) "owK" = ( /obj/structure/mineral_door/wood, /turf/open/floor/plating, @@ -51107,11 +53528,11 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/fore) -"oxe" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/glass, -/area/station/maintenance/starboard/aft) +"oxc" = ( +/obj/machinery/holopad, +/obj/effect/spawner/random/engineering/tracking_beacon, +/turf/open/floor/iron/large, +/area/station/engineering/lobby) "oxg" = ( /obj/machinery/photocopier/prebuilt, /obj/structure/railing{ @@ -51119,40 +53540,31 @@ }, /turf/open/floor/wood/large, /area/station/service/library/private) -"oxi" = ( -/obj/effect/mapping_helpers/broken_floor, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/table/wood, -/obj/item/paper/crumpled{ - pixel_x = 2; - pixel_y = 7 +"oxo" = ( +/obj/item/cigbutt{ + pixel_x = 8; + pixel_y = -2 }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) -"oxn" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) +"oxy" = ( /obj/structure/cable, -/obj/machinery/door/airlock/engineering{ - name = "Engine Room" +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ + dir = 10 }, -/obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/obj/effect/landmark/navigate_destination/atmos, -/turf/open/floor/iron/freezer, -/area/station/engineering/main) -"oxu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/simple/dark/visible{ +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos/office) +"oxC" = ( +/obj/structure/cable, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "oxG" = ( /obj/effect/turf_decal/siding/dark{ dir = 8 @@ -51166,21 +53578,21 @@ name = "Teleporter Shutters" }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) +"oxH" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/item/ammo_casing/spent{ + pixel_x = -6; + pixel_y = 6 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "oxJ" = ( /obj/structure/table/reinforced, /obj/item/wrench, /obj/item/crowbar, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) -"oxM" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper/stack, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) +/area/station/ai/satellite/chamber) "oxS" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/shower/directional/east, @@ -51194,6 +53606,18 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"oym" = ( +/obj/item/tank/internals/emergency_oxygen/engi{ + pixel_x = 5; + pixel_y = -3 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"oyp" = ( +/obj/structure/lattice, +/turf/open/openspace, +/area/station/maintenance/starboard/central/upper) "oyy" = ( /obj/machinery/portable_atmospherics/canister/oxygen, /obj/effect/turf_decal/box/white, @@ -51201,6 +53625,22 @@ dir = 4 }, /area/station/science/ordnance/storage) +"oyz" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/engineering/lobby) +"oyA" = ( +/obj/effect/mapping_helpers/burnt_floor, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/office) "oyB" = ( /obj/structure/lattice/catwalk, /obj/structure/sign/warning/explosives/alt/directional/west, @@ -51212,38 +53652,27 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"oyG" = ( -/obj/structure/table/reinforced, -/obj/item/clothing/suit/hazardvest{ - desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; - name = "emergency lifejacket" - }, -/obj/item/tank/internals/oxygen, -/obj/item/clothing/mask/breath, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"oyI" = ( -/obj/machinery/light/small/directional/south, -/obj/structure/table, -/obj/item/paper_bin/carbon{ - pixel_x = -5; - pixel_y = 6 - }, -/obj/item/book/manual/wiki/tcomms{ - pixel_x = 14; - pixel_y = 5 - }, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 +"oyJ" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Chapel Office Maintenance" }, -/obj/machinery/computer/security/telescreen/tcomms/directional/south{ - name = "Telecomms Camera Monitor" +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 }, -/obj/item/pen, -/obj/item/radio/intercom/directional/east, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tcomms) +/turf/open/floor/wood, +/area/station/maintenance/starboard) +"oyS" = ( +/obj/effect/spawner/random/structure/crate, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/upper) +"oyU" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/landmark/event_spawn, +/obj/machinery/holopad, +/turf/open/floor/iron/dark/smooth_large, +/area/station/engineering/storage) "ozh" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -51271,9 +53700,6 @@ /obj/effect/mapping_helpers/airlock/access/all/command/gateway, /turf/open/floor/wood, /area/station/command/gateway) -"ozp" = ( -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) "ozt" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -51284,29 +53710,14 @@ /obj/effect/mapping_helpers/mail_sorting/science/research, /turf/open/floor/iron, /area/station/science/research) -"ozw" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/abandoned, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"ozE" = ( -/obj/structure/cable, -/obj/structure/sign/poster/contraband/random/directional/east, -/turf/open/floor/catwalk_floor, -/area/station/maintenance/starboard/fore) "ozK" = ( /obj/effect/turf_decal/trimline/blue/filled/corner{ dir = 1 }, /obj/structure/extinguisher_cabinet/directional/west, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 8 + }, /area/station/hallway/primary/central) "ozL" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ @@ -51334,11 +53745,29 @@ }, /turf/open/space/openspace, /area/space/nearstation) +"ozS" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 4 + }, +/obj/machinery/camera/autoname/directional/north, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "oAa" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, /turf/open/space/basic, /area/station/solars/starboard/aft) +"oAf" = ( +/obj/structure/light_construct/directional/east{ + dir = 1 + }, +/obj/structure/closet/secure_closet/bar/all_access{ + pixel_x = -3; + pixel_y = -1 + }, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "oAo" = ( /obj/effect/decal/cleanable/dirt, /obj/item/kirbyplants/photosynthetic, @@ -51349,7 +53778,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "oAL" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ @@ -51381,14 +53810,10 @@ dir = 1 }, /area/station/science/robotics/lab) -"oBa" = ( -/obj/structure/sign/poster/random/directional/north, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +"oBl" = ( +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/starboard/central/upper) "oBo" = ( /obj/machinery/door/airlock/grunge{ name = "Cell 1" @@ -51403,6 +53828,13 @@ /obj/structure/window/reinforced/plasma/spawner/directional/south, /turf/open/floor/engine/co2, /area/station/engineering/atmos/upper) +"oBr" = ( +/obj/structure/bed, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/spawner/random/medical/memeorgans, +/turf/open/floor/iron/white, +/area/station/maintenance/starboard) "oBy" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 10 @@ -51427,6 +53859,15 @@ /obj/machinery/light/directional/south, /turf/open/floor/wood/large, /area/station/service/library) +"oBO" = ( +/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "oBT" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 1 @@ -51463,30 +53904,11 @@ }, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"oCr" = ( -/obj/structure/chair/office{ - dir = 1 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) -"oCs" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/trunk/multiz/down{ - dir = 4 - }, -/turf/open/floor/wood, -/area/station/commons/dorms) -"oCA" = ( -/obj/effect/decal/cleanable/dirt, +"oCp" = ( +/obj/effect/turf_decal/stripes/line, /obj/structure/cable, -/obj/effect/decal/cleanable/blood/footprints{ - dir = 8 - }, -/turf/open/floor/catwalk_floor, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "oCE" = ( /obj/machinery/door/airlock/maintenance{ name = "Delinquent Confiscation Storage" @@ -51498,17 +53920,16 @@ /obj/structure/girder, /turf/open/space/basic, /area/space/nearstation) +"oCN" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/engineering/lobby) "oCO" = ( /obj/machinery/light/small/directional/north, /turf/open/floor/plating, /area/station/hallway/secondary/entry) -"oCS" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - dir = 4; - initialize_directions = 4 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/hallway) "oCT" = ( /obj/effect/turf_decal/trimline/yellow/warning{ dir = 4 @@ -51550,6 +53971,19 @@ }, /turf/open/floor/plating, /area/station/maintenance/department/medical) +"oDp" = ( +/obj/item/book/manual/wiki/atmospherics, +/obj/structure/table, +/obj/item/book/manual/wiki/atmospherics{ + pixel_y = 4; + pixel_x = 3 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/machinery/newscaster/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "oDq" = ( /obj/machinery/airalarm/directional/west, /obj/structure/table/reinforced, @@ -51569,13 +54003,30 @@ /turf/open/floor/iron/dark, /area/station/security/checkpoint/medical) "oDs" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/command/heads_quarters/ce) +"oDu" = ( +/obj/item/stack/sheet/mineral/wood{ + pixel_x = -5; + pixel_y = -6 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/area/station/security/detectives_office/private_investigators_office) +"oDx" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/item/clothing/gloves/color/rainbow, +/obj/item/clothing/shoes/sneakers/rainbow, +/obj/item/clothing/under/color/rainbow, +/obj/item/clothing/head/soft/rainbow, +/obj/effect/decal/remains/human, +/turf/open/floor/engine/hull, +/area/space/nearstation) +"oDB" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/commons/dorms) "oDC" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 8 @@ -51607,7 +54058,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "oDN" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/bed{ @@ -51617,15 +54068,24 @@ /obj/machinery/light/floor, /turf/open/floor/iron/textured, /area/station/security/brig) +"oDZ" = ( +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/effect/mapping_helpers/burnt_floor, +/obj/effect/turf_decal/bot, +/turf/open/floor/iron, +/area/station/maintenance/starboard/fore) +"oEh" = ( +/obj/structure/table/glass, +/obj/item/flashlight/flare/candle{ + pixel_x = 9; + pixel_y = 4 + }, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "oEi" = ( /obj/effect/turf_decal/bot, /turf/open/floor/iron/dark/textured_large, /area/station/science/robotics/lab) -"oEl" = ( -/obj/structure/closet/secure_closet/atmospherics, -/obj/machinery/camera/autoname/directional/south, -/turf/open/floor/glass/reinforced/plasma, -/area/station/engineering/atmos/project) "oEw" = ( /obj/machinery/vending/cigarette, /obj/effect/decal/cleanable/dirt, @@ -51644,17 +54104,15 @@ /obj/effect/spawner/random/maintenance, /turf/open/openspace, /area/station/maintenance/port/aft) -"oEN" = ( -/obj/machinery/light_switch/directional/east, -/obj/structure/lattice/catwalk, -/turf/open/floor/engine/hull/air, -/area/station/engineering/break_room) "oET" = ( -/obj/structure/table, -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 +/obj/structure/chair/plastic{ + dir = 4 }, -/turf/open/floor/iron/dark, +/obj/effect/turf_decal/siding/wood{ + dir = 9 + }, +/obj/effect/landmark/start/hangover, +/turf/open/floor/wood/large, /area/station/hallway/primary/central) "oEU" = ( /obj/structure/lattice/catwalk, @@ -51664,6 +54122,11 @@ /obj/machinery/vending/games, /turf/open/openspace, /area/station/construction/storage_wing) +"oFa" = ( +/obj/effect/landmark/start/assistant, +/obj/machinery/duct, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "oFg" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -51673,11 +54136,14 @@ /turf/open/floor/iron/textured_large, /area/station/medical/virology) "oFh" = ( -/obj/structure/rack, -/obj/item/tattoo_kit, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/obj/machinery/power/apc/auto_name/directional/south, +/obj/structure/cable, +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "oFj" = ( /obj/machinery/door/airlock/mining/glass{ name = "Bitrunning Den" @@ -51706,6 +54172,11 @@ }, /turf/open/floor/engine, /area/station/engineering/supermatter/room) +"oFo" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/engineering/storage/tech) "oFw" = ( /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable, @@ -51717,15 +54188,29 @@ /obj/machinery/firealarm/directional/east, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) +"oFI" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "oFQ" = ( /turf/closed/wall/r_wall, /area/station/security/prison/rec) -"oFU" = ( -/obj/structure/rack, -/obj/item/pai_card, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +"oGb" = ( +/obj/effect/turf_decal/tile/purple/half{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ + name = "Plasma Multideck Adapter"; + dir = 4 + }, +/obj/machinery/meter{ + name = "Plasma meter" + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "oGu" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -51758,42 +54243,40 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "oGH" = ( -/obj/structure/chair{ - dir = 8 - }, /obj/effect/turf_decal/trimline/green/filled/line{ dir = 4 }, /obj/effect/turf_decal/trimline/green/filled/mid_joiner{ dir = 4 }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 4 + }, /area/station/hallway/primary/central) -"oGO" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/emcloset, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) -"oGW" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, +"oGX" = ( +/obj/item/kirbyplants/random/dead{ + name = "dead plant" + }, +/obj/machinery/button/door/directional/east{ + id = "Cabin2"; + name = "Cabin Bolt Control"; + normaldoorcontrol = 1; + specialfunctions = 4 + }, /obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) "oHf" = ( /obj/effect/turf_decal/trimline/red/warning{ dir = 10 }, /turf/open/floor/iron/dark/smooth_large, /area/station/security/office) -"oHs" = ( -/obj/structure/closet/wardrobe/grey, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) "oHu" = ( /obj/structure/sign/departments/restroom/directional/east, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 4 + }, /area/station/hallway/primary/central) "oHw" = ( /obj/effect/decal/cleanable/dirt, @@ -51806,10 +54289,14 @@ /turf/open/floor/iron/textured_large, /area/station/security/prison/rec) "oHE" = ( -/obj/machinery/holopad/secure, /obj/structure/disposalpipe/segment, -/turf/open/floor/carpet, +/obj/machinery/holopad/secure, +/obj/effect/turf_decal/siding/wood, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) +"oHF" = ( +/turf/open/floor/plating, +/area/station/maintenance/aft) "oHH" = ( /turf/open/openspace, /area/station/maintenance/port) @@ -51820,6 +54307,18 @@ }, /turf/open/floor/plating, /area/station/maintenance/starboard/central) +"oHY" = ( +/obj/structure/table/wood, +/obj/item/book/bible{ + pixel_y = 4 + }, +/turf/open/floor/wood, +/area/station/maintenance/starboard) +"oIe" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "oIi" = ( /obj/effect/turf_decal/trimline/yellow/warning{ dir = 5 @@ -51829,10 +54328,6 @@ }, /turf/open/floor/engine/hull, /area/space/nearstation) -"oIk" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet/black, -/area/station/service/library/private) "oIv" = ( /obj/structure/table, /obj/item/flashlight/lamp{ @@ -51841,16 +54336,48 @@ /turf/open/floor/wood/large, /area/station/medical/psychology) "oIA" = ( -/obj/structure/stairs/north, -/obj/structure/sign/departments/medbay/alt/directional/north, -/turf/open/floor/iron/stairs/medium, -/area/station/medical/medbay/central) -"oII" = ( +/obj/effect/turf_decal/tile/blue/opposingcorners{ + dir = 1 + }, +/obj/machinery/newscaster/directional/north, +/obj/structure/table, +/obj/item/bodybag{ + pixel_y = 8; + pixel_x = -1 + }, +/obj/item/bodybag{ + pixel_y = 6; + pixel_x = 3 + }, +/obj/item/storage/medkit/emergency{ + pixel_z = 8 + }, +/turf/open/floor/iron/dark, +/area/station/medical/medbay/lobby) +"oIB" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 1 + }, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"oID" = ( /obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/structure/crate, -/obj/machinery/light/small/directional/west, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"oII" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/disposalpipe/segment, +/obj/effect/turf_decal/arrows/red{ + dir = 8 + }, +/obj/effect/turf_decal/box/red, /turf/open/floor/iron/dark/textured, -/area/station/cargo/warehouse) +/area/station/cargo/sorting) "oIR" = ( /obj/machinery/camera/autoname/directional/west, /turf/open/openspace, @@ -51861,7 +54388,7 @@ /turf/open/floor/circuit/green{ luminosity = 2 }, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "oIU" = ( /obj/item/canvas/twentythree_nineteen, /obj/item/canvas/nineteen_nineteen, @@ -51873,24 +54400,15 @@ }, /obj/structure/closet/crate, /obj/structure/sign/painting/library{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/glass/reinforced, /area/station/service/library) "oJd" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 4 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/light/warm/dim/directional/east, -/obj/structure/disposalpipe/segment{ - dir = 9 - }, -/obj/machinery/keycard_auth/wall_mounted/directional/east, -/turf/open/floor/iron, -/area/station/command/heads_quarters/qm) +/obj/effect/spawner/random/maintenance, +/turf/open/floor/engine/hull/air, +/area/station/cargo/storage) "oJe" = ( /obj/effect/spawner/structure/window, /obj/machinery/door/poddoor/shutters/preopen{ @@ -51912,7 +54430,10 @@ }, /obj/structure/cable, /obj/machinery/keycard_auth/wall_mounted/directional/south, -/turf/open/floor/wood, +/obj/effect/turf_decal/siding/wood{ + dir = 6 + }, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) "oJj" = ( /obj/structure/table/reinforced, @@ -51925,7 +54446,7 @@ pixel_y = 11 }, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "oJs" = ( /obj/structure/table/reinforced, /obj/structure/displaycase/forsale{ @@ -51943,6 +54464,16 @@ }, /turf/open/floor/iron/dark, /area/station/science/lobby) +"oJt" = ( +/obj/machinery/camera/directional/north{ + c_tag = "Dormitories - Lower Entrance" + }, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) "oJv" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -51963,7 +54494,7 @@ dir = 4 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "oJz" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/sign/warning/vacuum/directional/west, @@ -51972,18 +54503,42 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"oJK" = ( -/obj/structure/closet/secure_closet/personal/cabinet, -/obj/item/radio/intercom/directional/north, -/turf/open/floor/wood, -/area/station/commons/dorms) "oJX" = ( /obj/structure/cable, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) +"oKe" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/upper) "oKg" = ( /turf/closed/wall, /area/station/engineering/storage/tcomms) +"oKk" = ( +/obj/machinery/button/elevator{ + id = "catwalk_engi"; + pixel_y = -24 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/caution/stand_clear{ + dir = 8 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) +"oKr" = ( +/obj/structure/window/reinforced/plasma/spawner/directional/south, +/obj/machinery/power/energy_accumulator/tesla_coil/anchored, +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ + dir = 6 + }, +/obj/structure/cable, +/turf/open/floor/engine, +/area/station/engineering/supermatter) "oKt" = ( /obj/structure/falsewall, /obj/effect/decal/cleanable/blood/tracks{ @@ -51997,10 +54552,10 @@ /obj/effect/landmark/start/hangover, /turf/open/openspace, /area/station/hallway/primary/central) -"oKx" = ( -/obj/structure/cable, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) +"oKy" = ( +/obj/effect/landmark/start/hangover, +/turf/open/floor/carpet, +/area/station/maintenance/starboard) "oKA" = ( /obj/effect/turf_decal/siding/dark/corner{ dir = 8 @@ -52010,7 +54565,7 @@ /turf/open/floor/iron/dark/textured_edge{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "oKD" = ( /obj/structure/filingcabinet/chestdrawer, /obj/structure/disposalpipe/segment{ @@ -52018,10 +54573,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/explab) -"oKN" = ( -/obj/structure/broken_flooring/singular/directional/north, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "oLa" = ( /obj/structure/table/wood, /obj/item/book/bible{ @@ -52043,8 +54594,24 @@ /turf/open/floor/iron/freezer, /area/station/security/prison/shower) "oLi" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/airlock/access/all/command/general, +/obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/preopen{ + id = "bridge blast-2"; + name = "Bridge Blast Door" + }, +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/obj/machinery/door/airlock/command/glass{ + name = "Bridge Access"; + id_tag = "innerbridge" + }, +/obj/effect/turf_decal/tile/dark_blue/fourcorners, +/turf/open/floor/iron/dark, /area/station/command/bridge) "oLj" = ( /obj/effect/turf_decal/trimline/yellow/warning, @@ -52069,7 +54636,7 @@ }, /obj/effect/turf_decal/siding/dark, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "oLv" = ( /obj/machinery/door/airlock/public/glass{ name = "Arrivals Lounge" @@ -52083,18 +54650,11 @@ /obj/effect/landmark/navigate_destination/dockarrival, /turf/open/floor/iron/white/side, /area/station/hallway/primary/aft) -"oLx" = ( -/obj/structure/broken_flooring/side/directional/east, -/turf/open/floor/plating, -/area/station/engineering/storage_shared) "oLA" = ( /obj/structure/closet/firecloset, /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"oLE" = ( -/turf/open/floor/carpet, -/area/station/maintenance/starboard/lesser) "oLH" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -52102,7 +54662,7 @@ }, /obj/structure/railing, /turf/open/openspace, -/area/station/command/bridge) +/area/station/command/meeting_room/council) "oLJ" = ( /obj/effect/turf_decal/siding/purple/corner{ dir = 4 @@ -52130,7 +54690,9 @@ /obj/effect/turf_decal/trimline/red/filled/corner{ dir = 8 }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 8 + }, /area/station/hallway/primary/central) "oLW" = ( /obj/structure/railing/corner{ @@ -52138,18 +54700,6 @@ }, /turf/open/floor/engine/hull/air, /area/station/maintenance/port) -"oLX" = ( -/obj/structure/cable/layer1, -/obj/effect/turf_decal/stripes/corner, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"oMd" = ( -/obj/effect/spawner/random/maintenance/two, -/obj/item/grown/bananapeel{ - name = "stealthy banana peel" - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "oMr" = ( /obj/structure/plasticflaps/kitchen, /obj/machinery/door/airlock/medical{ @@ -52199,20 +54749,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/carpet/stellar, /area/station/maintenance/hallway/abandoned_recreation) -"oNb" = ( -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 9 - }, -/obj/effect/turf_decal/trimline/green/filled/mid_joiner{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/green/filled/mid_joiner{ - dir = 8 - }, -/obj/machinery/airalarm/directional/west, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/textured_large, -/area/station/medical/virology) "oNc" = ( /obj/structure/closet/lasertag/red, /obj/effect/decal/cleanable/dirt, @@ -52227,10 +54763,6 @@ /obj/structure/window/reinforced/tinted/frosted/spawner/directional/east, /turf/open/floor/glass/reinforced, /area/station/service/library) -"oNp" = ( -/obj/effect/landmark/start/assistant, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) "oNs" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -52240,7 +54772,20 @@ "oNu" = ( /obj/effect/turf_decal/siding/dark, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"oNy" = ( +/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ + name = "O2 Multideck Adapter"; + dir = 8 + }, +/obj/machinery/meter{ + name = "O2 meter" + }, +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "oNA" = ( /obj/item/clothing/head/cone{ pixel_x = -6; @@ -52257,47 +54802,22 @@ }, /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) -"oNI" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ - dir = 6 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) +"oNH" = ( +/obj/item/kirbyplants/photosynthetic, +/obj/effect/spawner/random/trash/mess, +/turf/open/floor/eighties, +/area/station/maintenance/department/crew_quarters/dorms) "oNM" = ( -/obj/effect/turf_decal/siding/white{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ +/obj/effect/spawner/random/engineering/tracking_beacon, +/obj/effect/turf_decal/siding/dark{ dir = 4 }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/hallway/primary/central) +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "oOc" = ( /obj/machinery/light/floor, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) -"oOd" = ( -/obj/structure/showcase/machinery/oldpod{ - desc = "An old NT branded sleeper, decommissioned after the lead acetate incident. None of the functional machinery remains inside."; - name = "decommissioned sleeper" - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/white, -/area/station/maintenance/starboard/lesser) -"oOm" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) -"oOn" = ( -/obj/machinery/light/directional/west, -/obj/effect/mapping_helpers/burnt_floor, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) "oOs" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 8 @@ -52313,28 +54833,21 @@ /obj/structure/chair, /obj/effect/landmark/start/hangover, /obj/machinery/light/directional/east, -/obj/machinery/status_display/evac/directional/east, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) -"oOz" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Holodeck Door" - }, -/obj/machinery/door/firedoor, -/obj/effect/turf_decal/trimline/neutral/filled/line{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/neutral/filled/line, -/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ - cycle_id = "holodeck" - }, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "oOB" = ( /obj/machinery/power/shieldwallgen, /obj/effect/turf_decal/stripes/line, /turf/open/floor/wood, /area/station/command/teleporter) +"oOE" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 8 + }, +/obj/item/storage/medkit/toxin, +/obj/structure/rack, +/turf/open/floor/iron/smooth, +/area/station/engineering/main) "oON" = ( /obj/effect/turf_decal/box/white{ color = "#52B4E9" @@ -52348,10 +54861,8 @@ dir = 1 }, /obj/structure/cable, -/obj/structure/disposalpipe/sorting/mail{ - dir = 1 - }, /obj/effect/mapping_helpers/mail_sorting/medbay/general, +/obj/structure/disposalpipe/sorting/mail/flip, /turf/open/floor/iron/white, /area/station/medical/medbay/central) "oOY" = ( @@ -52372,6 +54883,17 @@ /obj/machinery/light/directional/south, /turf/open/floor/iron/dark, /area/station/security/brig) +"oPf" = ( +/obj/structure/disposalpipe/segment{ + dir = 2 + }, +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "atmosmaintedge" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "oPh" = ( /obj/item/kirbyplants/random, /obj/effect/turf_decal/tile/dark_blue{ @@ -52380,11 +54902,21 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"oPu" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, -/obj/item/radio/intercom/directional/north, -/turf/open/floor/iron/freezer, -/area/station/engineering/atmos/pumproom) +"oPm" = ( +/obj/machinery/computer/security/telescreen/engine/directional/south{ + name = "Engine Camera Monitor" + }, +/obj/effect/turf_decal/trimline/red/filled/line, +/obj/machinery/light/directional/south, +/obj/item/kirbyplants/random, +/turf/open/floor/iron/dark, +/area/station/security/checkpoint/engineering) +"oPH" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/openspace, +/area/station/maintenance/starboard/upper) "oPM" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -52396,32 +54928,23 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/openspace, -/area/station/command/bridge) +/area/station/command/meeting_room/council) +"oPO" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/structure/chair/office{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "oPP" = ( /obj/effect/decal/cleanable/blood/tracks{ dir = 6 }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/port/fore) -"oPS" = ( -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible, -/obj/effect/turf_decal/tile/neutral/half{ - dir = 1 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) -"oPU" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"oPW" = ( -/obj/effect/mob_spawn/corpse/human/assistant, -/obj/structure/closet/crate/trashcart, -/obj/effect/mob_spawn/corpse/human/monkey, +/obj/structure/cable, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/port/fore) "oPY" = ( /obj/structure/table, /obj/item/hand_labeler{ @@ -52434,10 +54957,6 @@ /obj/item/hand_tele, /turf/open/floor/wood, /area/station/command/teleporter) -"oQk" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "oQn" = ( /obj/effect/landmark/firealarm_sanity, /turf/open/openspace, @@ -52475,6 +54994,17 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/service/cafeteria) +"oRA" = ( +/obj/structure/closet/firecloset, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"oRD" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/effect/turf_decal/siding/green/corner{ + dir = 8 + }, +/turf/open/floor/plating, +/area/station/hallway/primary/central) "oRG" = ( /obj/structure/railing, /obj/structure/rack, @@ -52488,8 +55018,17 @@ /obj/item/circuitboard/machine/exoscanner{ pixel_y = -3 }, +/obj/machinery/door/firedoor/border_only, /turf/open/floor/iron, /area/station/cargo/storage) +"oRH" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "oRI" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/dark_blue/opposingcorners{ @@ -52504,7 +55043,7 @@ pixel_y = 16 }, /turf/open/floor/iron/checker, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "oRM" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -52513,36 +55052,16 @@ /obj/machinery/airalarm/directional/east, /turf/open/openspace, /area/station/command/gateway) -"oRU" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/simple/green/visible, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "oSb" = ( -/obj/structure/chair/comfy/black{ - dir = 8 - }, /obj/machinery/keycard_auth/wall_mounted/directional/east, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 }, -/obj/effect/landmark/start/captain, -/turf/open/floor/carpet, -/area/station/command/heads_quarters/captain/private) -"oSo" = ( -/obj/machinery/door/airlock/command{ - name = "Auxiliary E.V.A. Storage" +/obj/machinery/computer/communications{ + dir = 8 }, -/obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/turf/open/floor/wood/large, +/area/station/command/heads_quarters/captain/private) "oSq" = ( /obj/effect/spawner/structure/window/reinforced/plasma, /obj/structure/cable, @@ -52550,13 +55069,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/engineering/atmos/hfr_room) -"oSs" = ( -/obj/machinery/light/directional/south, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) "oSt" = ( /obj/structure/broken_flooring/singular/directional, /obj/effect/decal/cleanable/dirt, @@ -52567,42 +55079,25 @@ /obj/effect/decal/cleanable/blood/old, /turf/open/floor/plating, /area/station/maintenance/department/medical) -"oSE" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "oSI" = ( /obj/effect/turf_decal/siding/wood, /turf/open/floor/wood, /area/station/hallway/primary/central) "oST" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/arrows{ - dir = 1 - }, /obj/machinery/camera/autoname/directional/west, -/turf/open/floor/iron/dark, -/area/station/command/gateway) -"oSU" = ( -/obj/structure/window/reinforced/plasma/spawner/directional/east, -/obj/machinery/computer/station_alert{ - dir = 8 +/obj/effect/turf_decal/stripes/red/end, +/obj/effect/turf_decal/siding/red/end, +/turf/open/floor/iron/textured_corner{ + dir = 4 }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) -"oSX" = ( -/obj/structure/urinal/directional/north, +/area/station/command/gateway) +"oSV" = ( +/obj/structure/closet/emcloset, +/obj/effect/spawner/random/maintenance, +/obj/effect/spawner/random/contraband/narcotics, +/obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"oSZ" = ( -/obj/structure/chair/stool/directional/east, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard/fore/upper) "oTd" = ( /obj/structure/lattice, /turf/open/openspace, @@ -52613,6 +55108,18 @@ }, /turf/open/floor/glass, /area/station/science/zoo) +"oTg" = ( +/obj/structure/lattice, +/obj/structure/sign/nanotrasen{ + pixel_y = -32 + }, +/turf/open/space/basic, +/area/space/nearstation) +"oTi" = ( +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "oTn" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -52627,52 +55134,33 @@ /obj/effect/landmark/start/paramedic, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"oTp" = ( -/obj/structure/sign/warning/yes_smoking/circle/directional/east, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "oTq" = ( /obj/structure/sink/directional/east, /obj/machinery/iv_drip, /obj/structure/mirror/directional/west, /turf/open/floor/iron/dark/textured_corner, /area/station/medical/surgery) -"oTr" = ( -/obj/structure/railing/corner{ - dir = 8 - }, -/obj/machinery/duct, -/obj/machinery/airalarm/directional/north, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/restrooms) "oTu" = ( /obj/structure/flora/bush/fullgrass/style_random, /obj/structure/flora/bush/pale/style_random, /obj/machinery/camera/autoname/directional/south, /turf/open/floor/grass, /area/station/hallway/secondary/entry) -"oTE" = ( -/obj/structure/broken_flooring/singular/directional/north, -/obj/item/stack/sheet/cotton{ - pixel_x = 8; - pixel_y = 10 +"oTF" = ( +/obj/structure/sign/directions/engineering/directional/north{ + dir = 8; + pixel_y = 0 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"oTJ" = ( -/obj/effect/spawner/random/structure/closet_maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/turf/closed/wall, +/area/station/maintenance/starboard/aft) "oTK" = ( -/obj/machinery/button/door/directional/north{ +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/button/door/directional/east{ id = "gateshutter"; name = "Gateway Shutter Control"; - pixel_x = 24; - pixel_y = 0; req_access = list("command") }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet, +/turf/open/floor/carpet/purple, /area/station/command/gateway) "oTO" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ @@ -52724,6 +55212,7 @@ /obj/item/stack/cable_coil{ pixel_x = -12 }, +/obj/item/multitool, /turf/open/floor/iron/dark, /area/station/medical/chemistry) "oTR" = ( @@ -52794,17 +55283,14 @@ /obj/effect/turf_decal/trimline/purple/filled/line, /turf/open/floor/iron/dark, /area/station/science/ordnance) -"oUo" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/machinery/power/terminal{ - dir = 1; - cable_layer = 1 +"oUr" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/obj/structure/cable/multilayer/layer1, -/turf/open/floor/catwalk_floor, -/area/station/engineering/engine_smes) +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "oUC" = ( /obj/effect/turf_decal/stripes/line{ dir = 10 @@ -52834,25 +55320,35 @@ /obj/structure/table/wood/fancy, /turf/open/openspace, /area/station/maintenance/port/fore) -"oUO" = ( -/obj/machinery/door/firedoor, -/obj/structure/sign/directions/evac/directional/north{ - dir = 8; - pixel_y = 28 - }, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) +"oUL" = ( +/obj/machinery/bookbinder, +/turf/open/floor/wood, +/area/station/service/library/printer) "oUQ" = ( /obj/machinery/telecomms/processor/preset_two, /obj/effect/turf_decal/tile/green/fourcorners, /turf/open/floor/iron/dark/telecomms, /area/station/tcommsat/server) -"oVg" = ( -/obj/machinery/atmospherics/pipe/layer_manifold/scrubbers/hidden{ +"oUS" = ( +/obj/machinery/camera/autoname/directional/north, +/turf/open/floor/plating/airless, +/area/station/maintenance/starboard/aft) +"oVe" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/closed/wall/r_wall, -/area/station/maintenance/starboard/aft) +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"oVh" = ( +/obj/machinery/computer/security/mining{ + dir = 8 + }, +/obj/effect/turf_decal/tile/brown/opposingcorners, +/obj/structure/window/reinforced/spawner/directional/south, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "oVn" = ( /obj/machinery/dna_scannernew, /obj/machinery/firealarm/directional/south, @@ -52870,13 +55366,6 @@ /obj/structure/cable, /turf/open/floor/iron/sepia, /area/station/hallway/secondary/construction) -"oVF" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "oVK" = ( /obj/structure/chair/office{ dir = 4 @@ -52887,30 +55376,43 @@ /obj/structure/displaycase/trophy, /turf/open/floor/wood/large, /area/station/service/library) -"oVY" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/table, -/obj/item/reagent_containers/cup/soda_cans/thirteenloko{ - pixel_x = 14; +"oVQ" = ( +/obj/machinery/photocopier/prebuilt, +/obj/machinery/firealarm/directional/east{ pixel_y = 3 }, -/obj/item/book/manual/wiki/engineering_construction, -/turf/open/floor/iron, -/area/station/engineering/lobby) +/obj/machinery/light_switch/directional/east{ + pixel_y = -8 + }, +/obj/effect/turf_decal/siding/yellow, +/turf/open/floor/engine, +/area/station/command/heads_quarters/ce) +"oWt" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/closet/firecloset, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "oWy" = ( /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/engine/hull/reinforced/air, /area/station/maintenance/port) +"oWD" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) +"oWJ" = ( +/obj/structure/rack, +/obj/item/pai_card, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "oWL" = ( /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"oWN" = ( -/obj/machinery/camera/autoname/directional/west, -/turf/open/openspace, -/area/station/engineering/lobby) "oWO" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 1 @@ -52930,7 +55432,7 @@ dir = 10 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "oWU" = ( /obj/item/wrench, /turf/open/floor/plating, @@ -52945,10 +55447,6 @@ }, /turf/open/floor/engine, /area/station/engineering/supermatter) -"oXh" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/lesser) "oXn" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/railing/corner{ @@ -52956,6 +55454,27 @@ }, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"oXp" = ( +/mob/living/basic/turtle{ + name = "John Arbuckle" + }, +/obj/structure/chair{ + dir = 4 + }, +/obj/effect/mapping_helpers/mob_buckler, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/aft/upper) +"oXv" = ( +/obj/effect/decal/cleanable/blood/oil/slippery, +/turf/open/floor/iron, +/area/station/engineering/storage_shared) +"oXB" = ( +/obj/structure/ladder, +/obj/structure/railing{ + dir = 1 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "oXE" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -52973,20 +55492,11 @@ dir = 1 }, /obj/machinery/camera/autoname/directional/south{ - dir = 5; - network = list("aicore") + network = list("aicore"); + pixel_x = 24 }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) -"oXO" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) +/area/station/ai/satellite/chamber) "oXQ" = ( /obj/structure/lattice/catwalk, /obj/structure/table, @@ -52996,20 +55506,6 @@ /obj/effect/spawner/random/maintenance, /turf/open/openspace, /area/station/maintenance/port/aft) -"oXS" = ( -/obj/structure/cable, -/obj/machinery/light_switch/directional/east, -/obj/item/crowbar, -/obj/item/pipe_dispenser{ - pixel_y = 8 - }, -/obj/item/wrench, -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/obj/structure/rack, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "oXT" = ( /obj/effect/turf_decal/stripes/asteroid/corner{ dir = 8 @@ -53021,18 +55517,6 @@ /obj/effect/spawner/random/entertainment/money_large, /turf/open/floor/plating, /area/station/service/abandoned_gambling_den) -"oXX" = ( -/obj/structure/window/reinforced/plasma/spawner/directional/east, -/obj/structure/closet/secure_closet/engineering_personal, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) -"oXZ" = ( -/obj/effect/spawner/random/maintenance/two, -/obj/structure/rack{ - pixel_y = 1 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "oYd" = ( /obj/structure/disposalpipe/trunk{ dir = 2 @@ -53042,12 +55526,10 @@ }, /turf/open/floor/engine, /area/station/science/xenobiology) -"oYn" = ( -/obj/effect/landmark/start/hangover, -/obj/machinery/light/directional/west, -/obj/item/radio/intercom/directional/west, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +"oYm" = ( +/obj/machinery/airalarm/directional/south, +/turf/open/floor/iron/dark, +/area/station/engineering/transit_tube) "oYp" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/railing/corner/end/flip{ @@ -53066,7 +55548,22 @@ }, /obj/structure/lattice/catwalk, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) +"oYu" = ( +/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible/layer2{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"oYy" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/light/floor, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "oYE" = ( /obj/structure/cable, /obj/effect/turf_decal/tile/green/opposingcorners{ @@ -53084,6 +55581,16 @@ }, /turf/open/floor/glass/reinforced, /area/station/service/library) +"oZe" = ( +/obj/machinery/newscaster/directional/north, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/commons/storage/primary) "oZh" = ( /obj/structure/rack, /turf/open/floor/plating, @@ -53096,23 +55603,6 @@ }, /turf/open/floor/plating, /area/station/medical/surgery) -"oZt" = ( -/obj/vehicle/ridden/wheelchair, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"oZA" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "oZC" = ( /obj/effect/landmark/firealarm_sanity, /turf/open/openspace, @@ -53147,6 +55637,16 @@ "oZJ" = ( /turf/open/floor/glass/reinforced, /area/station/service/library) +"oZK" = ( +/obj/structure/table, +/obj/item/petri_dish{ + pixel_x = 4; + pixel_y = 7 + }, +/obj/item/petri_dish, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/upper) "oZO" = ( /obj/structure/railing/corner/end{ dir = 8 @@ -53154,14 +55654,9 @@ /obj/effect/spawner/random/trash/botanical_waste, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"oZV" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line, -/obj/machinery/power/apc/auto_name/directional/south, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/smooth, -/area/station/engineering/main) +"oZS" = ( +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "oZX" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/carpet/black, @@ -53186,22 +55681,10 @@ /obj/machinery/door/firedoor/border_only, /turf/open/floor/glass, /area/station/service/kitchen) -"paq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/vending/cigarette, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "paE" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/monitored/nitrous_input, /turf/open/floor/engine/n2o, /area/station/engineering/atmos/upper) -"paI" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 - }, -/turf/open/floor/plating, -/area/station/commons/dorms) "paM" = ( /obj/structure/curtain/bounty/start_closed, /turf/open/floor/plating, @@ -53210,17 +55693,32 @@ /obj/structure/window/reinforced/tinted/spawner/directional/north, /turf/open/openspace, /area/station/medical/virology) +"paZ" = ( +/obj/machinery/door/airlock/external, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 1 + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/external, +/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "pbc" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 5 +/obj/machinery/firealarm/directional/north, +/obj/structure/railing, +/obj/structure/railing{ + dir = 8 }, -/obj/machinery/camera/autoname/directional/north, -/obj/machinery/disposal/bin, -/obj/effect/turf_decal/bot, -/obj/structure/disposalpipe/trunk, -/obj/structure/extinguisher_cabinet/directional/east, -/turf/open/floor/iron, -/area/station/command/heads_quarters/qm) +/obj/effect/turf_decal/stripes/end{ + dir = 8 + }, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) +"pbe" = ( +/obj/item/radio/intercom/directional/east, +/obj/structure/lattice/catwalk, +/turf/open/floor/engine/hull/air, +/area/station/engineering/supermatter/room/upper) "pbk" = ( /obj/effect/turf_decal/stripes/corner{ dir = 4 @@ -53238,7 +55736,6 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/machinery/door/airlock/medical, /turf/open/floor/plating, /area/station/medical/break_room) @@ -53248,18 +55745,13 @@ /obj/structure/table/reinforced, /turf/open/floor/engine/hull, /area/space/nearstation) -"pbt" = ( -/obj/machinery/portable_atmospherics/canister/nitrogen, -/obj/machinery/atmospherics/components/unary/portables_connector/visible, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +"pbE" = ( +/obj/item/radio/intercom/directional/north, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"pbB" = ( -/obj/effect/landmark/start/station_engineer, -/turf/open/floor/iron/dark, -/area/station/engineering/storage) +/turf/open/floor/wood, +/area/station/commons/dorms) "pbG" = ( /obj/structure/rack, /obj/item/book/manual/wiki/engineering_construction{ @@ -53289,18 +55781,12 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) -"pbU" = ( +"pbY" = ( /obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/maintenance, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"pbZ" = ( -/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/decal/cleanable/blood/oil, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "pca" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -53320,10 +55806,14 @@ /turf/open/floor/iron, /area/station/science/research) "pce" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 +/obj/effect/landmark/start/cargo_technician, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 5 }, -/turf/open/floor/iron, +/turf/open/floor/catwalk_floor, /area/station/cargo/storage) "pcf" = ( /obj/effect/turf_decal/siding/green{ @@ -53331,13 +55821,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) -"pcg" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ - dir = 10 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/hallway) "pch" = ( /obj/structure/flora/bush/sparsegrass/style_random, /obj/structure/flora/bush/flowers_pp/style_random, @@ -53380,20 +55863,35 @@ dir = 8 }, /area/station/hallway/secondary/exit/departure_lounge) -"pcL" = ( -/obj/structure/rack, -/obj/effect/spawner/random/maintenance, -/obj/structure/sign/warning/vacuum/directional/north, +"pcD" = ( +/obj/machinery/power/apc/auto_name/directional/west, +/obj/structure/cable, +/obj/structure/closet/emcloset, /turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"pcQ" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 +/area/station/maintenance/starboard/fore) +"pcE" = ( +/obj/structure/cable, +/obj/machinery/light/directional/west, +/obj/effect/turf_decal/tile/yellow{ + dir = 1 }, -/turf/open/floor/plating, -/area/station/maintenance/port/aft) +/obj/structure/table/reinforced, +/obj/item/radio{ + pixel_x = 5; + pixel_y = 5 + }, +/obj/item/radio, +/obj/item/radio{ + pixel_x = -5; + pixel_y = 5 + }, +/turf/open/floor/iron, +/area/station/commons/storage/primary) +"pcM" = ( +/obj/machinery/atmospherics/components/tank/air/layer4, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos/upper) "pcR" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -53401,20 +55899,35 @@ /turf/open/floor/iron, /area/station/hallway/secondary/construction) "pdf" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/turf_decal/arrows{ - dir = 1 + dir = 10 }, -/turf/open/floor/iron/dark, +/turf/open/floor/iron/dark/smooth_large, /area/station/command/gateway) +"pdg" = ( +/obj/effect/decal/cleanable/glitter, +/obj/machinery/airalarm/directional/west, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "pdr" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 +/obj/effect/turf_decal/stripes{ + dir = 1 }, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) +/obj/structure/sign/poster/official/safety_internals/directional/north, +/obj/structure/table, +/obj/item/storage/toolbox/mechanical{ + pixel_x = -3; + pixel_y = 8 + }, +/obj/item/storage/toolbox/mechanical{ + pixel_x = -3; + pixel_y = 2 + }, +/turf/open/floor/iron/textured, +/area/station/command/eva) "pdy" = ( /obj/structure/bed, /obj/effect/decal/cleanable/dirt, @@ -53457,6 +55970,14 @@ "pdO" = ( /turf/closed/wall, /area/station/medical/pharmacy) +"pdY" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/engineering/main) "pec" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 1 @@ -53485,11 +56006,6 @@ }, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"pee" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "pef" = ( /obj/structure/transport/linear/public, /obj/structure/table, @@ -53505,47 +56021,40 @@ pixel_x = -7; pixel_y = -3 }, -/obj/machinery/barsign{ - pixel_y = 32 - }, /turf/open/floor/plating/elevatorshaft, /area/station/service/kitchen) "pen" = ( /obj/structure/extinguisher_cabinet/directional/east, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/wood, +/turf/open/floor/iron/dark, /area/station/command/gateway) -"peo" = ( -/obj/machinery/computer/atmos_control/mix_tank{ - dir = 4 - }, -/obj/effect/mapping_helpers/burnt_floor, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) "pev" = ( /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/maintenance/port/fore) -"pey" = ( -/obj/machinery/door/airlock/external, -/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ - cycle_id = "space-outpost" +"peI" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/external, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"peF" = ( -/obj/effect/spawner/structure/window, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/wood, -/area/station/security/courtroom) +/area/station/maintenance/starboard) +"peL" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 2; + name = "Air to Mix" + }, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "peQ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, +/obj/structure/railing, /turf/open/floor/iron/textured, /area/station/cargo/storage) "peS" = ( @@ -53596,41 +56105,65 @@ /obj/effect/turf_decal/trimline/yellow/arrow_cw, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) -"pfx" = ( -/obj/effect/spawner/random/maintenance, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"pfK" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment{ - dir = 8 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 +"pfM" = ( +/obj/structure/sign/directions/supply/directional/east{ + dir = 2; + pixel_x = 0 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/turf/closed/wall, +/area/station/maintenance/starboard/central) "pfN" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/wood/tile, /area/station/maintenance/port/aft) -"pgh" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 4 +"pfO" = ( +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/structure/disposalpipe/segment, +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"pfQ" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/light/floor, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/hfr_room) +"pfR" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/structure/disposalpipe/junction{ + dir = 2 }, -/obj/machinery/firealarm/directional/east, +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=22-Mech-Bay"; + location = "21-Central" + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/catwalk_floor/iron, +/area/station/hallway/primary/central) +"pfS" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/door/airlock/public/glass{ + name = "Abandoned Hallway" + }, +/obj/machinery/door/firedoor, /turf/open/floor/iron, -/area/station/engineering/lobby) +/area/station/hallway/secondary/construction) +"pfY" = ( +/obj/structure/closet/secure_closet/personal/cabinet, +/obj/item/reagent_containers/cup/soda_cans/pwr_game, +/obj/item/radio/intercom/directional/north, +/obj/effect/landmark/start/hangover, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "pgo" = ( /obj/structure/flora/bush/flowers_br/style_random, /obj/structure/flora/bush/fullgrass/style_random, @@ -53647,11 +56180,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/lab) -"pgu" = ( -/obj/structure/cable, -/obj/effect/spawner/random/trash/cigbutt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "pgw" = ( /obj/effect/turf_decal/trimline/yellow/warning{ dir = 5 @@ -53659,18 +56187,14 @@ /turf/open/floor/engine/hull, /area/space/nearstation) "pgx" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/obj/effect/decal/cleanable/dirt/dust, /obj/structure/disposalpipe/segment{ - dir = 4 + dir = 5 }, /turf/open/floor/iron, /area/station/cargo/storage) -"pgA" = ( -/turf/open/floor/iron/stairs{ - dir = 4 - }, -/area/station/maintenance/starboard/aft) "pgI" = ( /obj/effect/decal/cleanable/dirt, /obj/item/clothing/suit/apron/surgical, @@ -53696,26 +56220,14 @@ "pgN" = ( /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) -"pgQ" = ( -/obj/structure/table, -/obj/effect/spawner/random/bureaucracy/paper, -/obj/item/paper/pamphlet/gateway{ - pixel_x = -13; - pixel_y = 4 - }, -/obj/item/storage/toolbox/emergency, -/turf/open/floor/wood, -/area/station/commons/dorms) -"pha" = ( -/obj/machinery/atmospherics/pipe/smart/simple/pink/visible/layer2{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/simple/supply{ - dir = 4 +"pgT" = ( +/obj/machinery/vatgrower, +/obj/effect/turf_decal/trimline/purple/filled/line{ + dir = 10 }, -/obj/machinery/camera/autoname/directional/west, -/turf/open/floor/engine, -/area/station/maintenance/disposal/incinerator) +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) "phc" = ( /obj/item/radio/intercom/directional/west, /obj/machinery/light/small/directional/west, @@ -53728,52 +56240,42 @@ /obj/item/gun/energy/e_gun, /obj/item/gun/energy/e_gun, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "phd" = ( -/obj/structure/chair/office{ - name = "CE's Chair" - }, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/turf/open/floor/iron/dark, -/area/station/command/bridge) -"phf" = ( -/obj/structure/rack, -/obj/item/clothing/suit/hazardvest{ - pixel_x = 7; - pixel_y = 3 - }, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/suit/hazardvest{ - pixel_x = 3 - }, -/obj/item/clothing/suit/hazardvest{ - pixel_x = -5; - pixel_y = 3 - }, -/obj/item/clothing/gloves/color/black{ - pixel_y = 3 - }, -/obj/item/clothing/gloves/color/black, -/obj/item/clothing/gloves/color/black{ - pixel_y = -3 - }, -/obj/item/clothing/mask/gas, -/obj/structure/railing{ - dir = 6 +/obj/effect/turf_decal/tile/dark_blue/half/contrasted{ + dir = 8 }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "phh" = ( /obj/machinery/status_display/evac/directional/north, /turf/open/openspace, /area/station/medical/medbay/central) +"phn" = ( +/obj/machinery/power/apc/auto_name/directional/north, +/obj/structure/cable, +/obj/structure/sign/poster/contraband/grey_tide/directional/west, +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/structure/table/reinforced, +/obj/item/storage/box/shipping{ + pixel_y = 5; + pixel_x = -2 + }, +/obj/item/storage/box/lights/mixed{ + pixel_y = 2; + pixel_x = 1 + }, +/turf/open/floor/iron, +/area/station/commons/storage/primary) "phu" = ( /obj/structure/transit_tube, /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/window/reinforced/spawner/directional/west, /obj/machinery/light/floor, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "phw" = ( /obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/machinery/door/airlock/medical/glass{ @@ -53816,6 +56318,13 @@ /obj/effect/spawner/random/maintenance, /turf/open/floor/engine/hull/air, /area/station/construction/storage_wing) +"phI" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "phL" = ( /obj/structure/railing{ dir = 8 @@ -53852,7 +56361,7 @@ dir = 1 }, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "pim" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/blue/full, @@ -53860,6 +56369,33 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) +"pio" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 1 + }, +/obj/structure/railing, +/obj/structure/cable, +/turf/open/openspace, +/area/station/command/meeting_room/council) +"piC" = ( +/obj/structure/ladder, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"piF" = ( +/obj/machinery/computer/cargo, +/obj/effect/turf_decal/tile/brown/fourcorners, +/turf/open/floor/iron, +/area/station/cargo/storage) +"piN" = ( +/obj/effect/turf_decal/siding/brown, +/obj/structure/railing, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/commons/dorms) "piR" = ( /obj/structure/table, /obj/effect/decal/cleanable/dirt, @@ -53869,12 +56405,10 @@ /obj/machinery/light/small/blacklight/directional/north, /turf/open/floor/eighties/red, /area/station/maintenance/hallway/abandoned_recreation) -"piT" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/fore) +"piW" = ( +/obj/item/radio/intercom/directional/east, +/turf/open/floor/iron, +/area/station/commons/dorms) "pjd" = ( /obj/machinery/camera/directional/west{ c_tag = "Kitchen" @@ -53892,6 +56426,57 @@ /obj/structure/closet/firecloset, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) +"pji" = ( +/obj/structure/table, +/obj/effect/turf_decal/tile/dark_blue/fourcorners, +/obj/effect/turf_decal/siding/dark{ + dir = 4 + }, +/obj/structure/sign/poster/official/state_laws/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/transit_tube) +"pjj" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark/arrow_ccw{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark/arrow_ccw{ + dir = 4 + }, +/turf/open/floor/iron/edge{ + dir = 4 + }, +/area/station/hallway/primary/fore) +"pjk" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/suit_storage_unit/medical, +/obj/effect/turf_decal/bot_white{ + color = "#52B4E9" + }, +/turf/open/floor/iron/dark/textured_large, +/area/station/medical/storage) +"pjn" = ( +/obj/machinery/camera/autoname/directional/north, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/cable, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) +"pjp" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/duct, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) "pjt" = ( /obj/machinery/disposal/bin, /obj/effect/decal/cleanable/dirt, @@ -53900,6 +56485,13 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/maintenance/port) +"pjB" = ( +/obj/effect/landmark/start/depsec/engineering, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/security/checkpoint/engineering) "pjC" = ( /obj/structure/table/wood/poker, /obj/effect/spawner/random/entertainment/cigar, @@ -53909,6 +56501,15 @@ "pjN" = ( /turf/open/floor/iron/kitchen, /area/station/maintenance/port/aft) +"pka" = ( +/obj/docking_port/stationary/mining_home{ + dir = 4 + }, +/obj/effect/turf_decal/caution/stand_clear{ + dir = 4 + }, +/turf/open/floor/engine/hull, +/area/space/nearstation) "pkh" = ( /obj/effect/turf_decal/siding/blue{ dir = 8 @@ -53921,14 +56522,6 @@ }, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"pkl" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/camera/autoname/directional/north, -/turf/open/openspace, -/area/station/engineering/atmos/project) "pkn" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -53964,10 +56557,20 @@ }, /turf/open/floor/glass, /area/station/security/brig) -"pkx" = ( +"pkw" = ( /obj/structure/lattice/catwalk, -/obj/machinery/camera/autoname/directional/north, -/turf/open/openspace, +/obj/structure/railing{ + dir = 1 + }, +/turf/open/water/no_planet_atmos, +/area/station/maintenance/port/fore) +"pkx" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/iron/edge{ + dir = 8 + }, /area/station/hallway/primary/central) "pkz" = ( /obj/machinery/dna_infuser, @@ -53975,19 +56578,31 @@ /obj/structure/extinguisher_cabinet/directional/north, /turf/open/floor/iron/dark, /area/station/science/cytology) +"pkI" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/portable_atmospherics/pump, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos) "pkK" = ( /obj/structure/rack, /turf/open/floor/iron/dark/textured_large, /area/station/medical/virology) -"pkO" = ( -/obj/structure/lattice, -/obj/structure/barricade/wooden, -/turf/open/space/basic, -/area/space/nearstation) "pkS" = ( /obj/machinery/camera/autoname/directional/north, /turf/open/floor/glass/reinforced, /area/station/medical/chemistry) +"pkW" = ( +/obj/machinery/atmospherics/pipe/layer_manifold/supply/visible{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/station/engineering/atmos/pumproom) +"plk" = ( +/obj/machinery/power/smes/engineering, +/obj/structure/cable, +/obj/machinery/status_display/ai/directional/north, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/engine_smes) "plq" = ( /obj/effect/spawner/random/trash/moisture_trap, /turf/open/floor/plating, @@ -53997,6 +56612,12 @@ /obj/machinery/atmospherics/pipe/heat_exchanging/simple, /turf/open/space/basic, /area/space/nearstation) +"plQ" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "plW" = ( /obj/structure/railing{ dir = 8 @@ -54015,6 +56636,11 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/port) +"pmd" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/machinery/holopad, +/turf/open/floor/iron, +/area/station/engineering/storage_shared) "pmf" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, @@ -54030,11 +56656,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) -"pmn" = ( -/obj/structure/window/reinforced/tinted/spawner/directional/east, -/obj/machinery/shower/directional/east, -/turf/open/floor/iron/freezer, -/area/station/commons/dorms) "pms" = ( /obj/machinery/door/airlock/grunge, /obj/effect/turf_decal/siding/dark{ @@ -54047,7 +56668,7 @@ /turf/open/floor/iron/dark/textured_half{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "pmw" = ( /obj/effect/turf_decal/stripes/line{ dir = 6 @@ -54058,19 +56679,12 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"pmx" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 5 - }, -/obj/structure/lattice/catwalk, -/turf/open/space/basic, -/area/space/nearstation) "pmD" = ( /obj/structure/railing{ dir = 8 }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "pmI" = ( /obj/effect/spawner/random/structure/grille, /turf/open/floor/plating, @@ -54120,18 +56734,10 @@ /turf/open/floor/plating, /area/station/maintenance/port/fore) "pmX" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 4 - }, -/obj/structure/railing{ - dir = 4 - }, -/obj/structure/bookcase/random/reference, -/obj/machinery/door/firedoor/border_only{ - dir = 4 - }, -/turf/open/floor/wood, -/area/station/command/meeting_room/council) +/obj/machinery/modular_computer/preset/civilian, +/obj/effect/turf_decal/tile/blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "pna" = ( /obj/item/sticker/star, /obj/structure/closet/crate/wooden, @@ -54145,7 +56751,6 @@ /area/station/maintenance/port/aft) "pnc" = ( /obj/machinery/door/firedoor, -/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/mapping_helpers/airlock/access/all/security/general, @@ -54155,26 +56760,21 @@ /obj/effect/turf_decal/tile/red/fourcorners, /turf/open/floor/iron/dark, /area/station/security/checkpoint/engineering) -"pnd" = ( -/turf/open/floor/wood, -/area/station/commons/toilet/restrooms) "pno" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/carpet, /area/station/commons/storage/tools) "pnq" = ( -/obj/structure/sign/poster/random/directional/north, -/obj/machinery/door/airlock/maintenance, +/obj/effect/decal/cleanable/blood/oil/slippery, /obj/structure/disposalpipe/segment{ - dir = 4 + dir = 5 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 +/obj/effect/turf_decal/stripes/corner{ + dir = 1 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/turf/open/floor/iron/dark/textured, +/area/station/cargo/sorting) "pnu" = ( /obj/effect/turf_decal/trimline/red/filled/warning{ dir = 4 @@ -54184,6 +56784,22 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/smooth_large, /area/station/security/brig) +"pny" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/camera/autoname/directional/east, +/obj/machinery/light_switch/directional/east, +/obj/structure/disposalpipe/segment{ + dir = 2 + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/main) +"pnF" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/mecha_wreckage/ripley/deathripley, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "pnG" = ( /obj/machinery/requests_console/directional/north{ department = "Robotics"; @@ -54196,16 +56812,6 @@ }, /turf/open/floor/iron, /area/station/science/robotics) -"pnN" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 - }, -/obj/structure/sign/warning/radiation/rad_area/directional/west, -/turf/open/floor/iron, -/area/station/hallway/primary/starboard) "pnS" = ( /obj/machinery/hydroponics/soil, /obj/item/cultivator, @@ -54224,16 +56830,9 @@ /area/station/science/ordnance) "pog" = ( /obj/machinery/gateway/centerstation, -/turf/open/floor/iron/dark, +/obj/structure/cable, +/turf/open/floor/iron/textured_large, /area/station/command/gateway) -"pom" = ( -/obj/machinery/door/airlock/engineering/glass{ - name = "Supermatter Engine Room" - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/machinery/door/firedoor/heavy, -/turf/open/floor/engine, -/area/station/engineering/main) "por" = ( /obj/effect/turf_decal/siding/wood, /turf/open/floor/glass, @@ -54252,30 +56851,11 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/science/xenobiology) -"pov" = ( -/obj/structure/cable, -/turf/open/floor/catwalk_floor, -/area/station/maintenance/starboard/fore) -"poD" = ( -/obj/structure/transport/linear{ - radial_travel = 0 - }, -/obj/machinery/elevator_control_panel/directional/south{ - linked_elevator_id = "catwalk_atmos"; - preset_destination_names = list("2"="Lower Atmos","3"="Upper Atmos") - }, -/obj/effect/landmark/transport/transport_id{ - specific_transport_id = "catwalk_atmos" - }, -/turf/open/openspace, -/area/station/engineering/atmos/project) -"ppa" = ( -/obj/effect/turf_decal/trimline/blue/filled/mid_joiner{ - dir = 4 - }, -/obj/structure/cable, -/turf/closed/wall, -/area/station/medical/surgery) +"ppe" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "ppp" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/dark_blue, @@ -54285,18 +56865,40 @@ /obj/machinery/light/directional/west, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"ppA" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 - }, -/obj/effect/spawner/structure/window/reinforced, +"ppu" = ( +/obj/structure/railing, +/obj/structure/flora/bush/fullgrass/style_random, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/light/warm/directional/west, +/obj/effect/turf_decal/siding/thinplating, +/turf/open/floor/grass, +/area/station/hallway/primary/starboard) +"ppY" = ( +/obj/effect/turf_decal/siding{ + dir = 10 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, /turf/open/floor/plating, -/area/station/engineering/lobby) -"ppL" = ( -/obj/effect/turf_decal/bot, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/atmos/upper) +/area/station/maintenance/starboard) +"pqc" = ( +/obj/effect/turf_decal/trimline/yellow/corner, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) +"pqd" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 + }, +/obj/structure/sign/poster/official/work_for_a_future/directional/west, +/obj/machinery/camera/autoname/directional/west, +/obj/structure/cable, +/obj/effect/landmark/event_spawn, +/turf/open/floor/carpet/black, +/area/station/service/library/private) "pqj" = ( /turf/closed/wall/r_wall, /area/station/security/interrogation) @@ -54307,39 +56909,23 @@ }, /turf/open/floor/carpet, /area/station/service/chapel/office) -"pqQ" = ( -/obj/effect/mapping_helpers/broken_floor, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/port) -"prn" = ( -/obj/effect/decal/cleanable/blood/old, +"pqo" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/vatgrower, -/turf/open/floor/engine, -/area/station/maintenance/starboard/lesser) +/obj/effect/spawner/random/maintenance, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "prr" = ( -/obj/structure/table/wood, -/obj/machinery/recharger, -/obj/item/assembly/flash/handheld{ - pixel_x = -11; - pixel_y = 5 +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/siding/wood{ + dir = 10 }, -/obj/effect/turf_decal/siding/wood, /obj/machinery/status_display/evac/directional/south, -/obj/machinery/camera/autoname/directional/south, -/turf/open/floor/wood, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) -"prv" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 - }, -/obj/machinery/camera/autoname/directional/east, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/hfr_room) "prB" = ( /obj/effect/turf_decal/box/white{ color = "#CCDCFF" @@ -54348,7 +56934,7 @@ uses = 10 }, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "prC" = ( /obj/effect/turf_decal/siding/wideplating_new{ dir = 1 @@ -54373,31 +56959,67 @@ dir = 8 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"prO" = ( +/obj/structure/chair/comfy{ + dir = 1 + }, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/upper) "prV" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/medical/medbay/lobby) -"psi" = ( -/obj/structure/table/wood/poker, -/obj/item/toy/cards/deck{ - pixel_y = 4 +"prX" = ( +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 8 }, -/turf/open/floor/engine/hull, -/area/space/nearstation) +/obj/effect/turf_decal/trimline/yellow/filled/corner, +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 4 + }, +/obj/machinery/light/directional/north, +/obj/machinery/status_display/ai/directional/north, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) +"prZ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted{ + dir = 4 + }, +/obj/effect/landmark/start/hangover, +/turf/open/floor/iron/dark, +/area/station/commons/locker) +"psi" = ( +/obj/effect/landmark/event_spawn, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/cargo/storage) "psj" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/evidence) "psk" = ( -/turf/closed/wall, -/area/station/command/gateway) +/obj/effect/turf_decal/stripes{ + dir = 1 + }, +/obj/machinery/light_switch/directional/north, +/turf/open/floor/iron/textured, +/area/station/command/eva) "psn" = ( /obj/effect/turf_decal/tile/red/fourcorners, /obj/machinery/light/directional/north, /turf/open/floor/iron/dark, /area/station/security/brig) +"psp" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/extinguisher_cabinet/directional/east, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "pss" = ( /obj/structure/chair/sofa/right/brown{ dir = 4 @@ -54405,13 +57027,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"psw" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/machinery/computer/station_alert, -/turf/open/floor/engine/hull/reinforced/air, -/area/station/engineering/atmos/project) "psC" = ( /turf/open/openspace, /area/station/hallway/primary/fore) @@ -54430,7 +57045,7 @@ /obj/structure/cable, /obj/machinery/power/apc/auto_name/directional/south, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "psK" = ( /obj/machinery/status_display/ai/directional/east, /obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ @@ -54441,7 +57056,7 @@ }, /obj/structure/table/reinforced, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "psO" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -54449,6 +57064,13 @@ }, /turf/open/floor/plating, /area/station/hallway/secondary/entry) +"psU" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/machinery/atmospherics/components/binary/crystallizer{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/engineering/atmos/upper) "ptt" = ( /obj/structure/table, /obj/effect/decal/cleanable/dirt, @@ -54468,6 +57090,23 @@ /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/maintenance/department/medical) +"ptM" = ( +/obj/effect/turf_decal/siding/blue{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue/opposingcorners{ + dir = 1 + }, +/obj/structure/cable, +/turf/open/floor/iron/white, +/area/station/medical/medbay/central) +"ptS" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/cable, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "ptT" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 4 @@ -54481,24 +57120,38 @@ /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) -"pub" = ( -/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ - dir = 1 - }, -/obj/structure/cable, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "puf" = ( /obj/structure/cable/layer3, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/smooth_half, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "puh" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/service/chapel) +"pul" = ( +/obj/structure/ladder, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) +"puv" = ( +/obj/effect/turf_decal/stripes, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) +"pux" = ( +/obj/item/stack/sticky_tape{ + pixel_x = 8; + pixel_y = 14 + }, +/obj/structure/table, +/obj/item/stack/sticky_tape{ + pixel_x = -4; + pixel_y = 11 + }, +/obj/item/screwdriver, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "puC" = ( /obj/structure/lattice/catwalk, /obj/machinery/camera/autoname/directional/west, @@ -54527,93 +57180,70 @@ /obj/structure/extinguisher_cabinet/directional/south, /turf/open/floor/iron/dark, /area/station/security/checkpoint/supply) +"pva" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "pvg" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood, /area/station/maintenance/hallway/abandoned_recreation) -"pvp" = ( -/obj/effect/spawner/structure/window/reinforced/plasma, -/turf/open/floor/plating, -/area/station/engineering/main) "pvC" = ( -/obj/structure/table/glass, /obj/effect/turf_decal/siding/blue{ dir = 9 }, -/obj/item/paper_bin{ - pixel_x = -1; - pixel_y = 11 - }, +/obj/structure/bookcase/random/reference, /obj/structure/railing{ dir = 8 }, -/obj/item/stamp{ - pixel_x = -3; - pixel_y = 1 - }, -/obj/item/stamp/denied{ - pixel_x = 6 +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 9 }, -/obj/item/pen{ - pixel_x = -1; - pixel_y = 13 +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 8 }, -/obj/effect/turf_decal/tile/green/opposingcorners{ +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ dir = 1 }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/item/book/manual/wiki/engineering_construction{ + pixel_y = 9 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "pvF" = ( /obj/effect/turf_decal/tile/red/fourcorners, /obj/machinery/camera/autoname/directional/north, /turf/open/floor/iron/dark, /area/station/security/brig) -"pvP" = ( -/obj/structure/safe/floor{ - name = "Critical Supplies Safe" - }, -/obj/item/reagent_containers/cup/glass/bottle/wine_voltaic{ - pixel_y = 5; - pixel_x = 7 - }, -/obj/item/reagent_containers/cup/glass/shaker{ - pixel_y = 6; - pixel_x = -6 - }, -/obj/item/reagent_containers/cup/glass/bottle/vodka{ - pixel_y = 15; - pixel_x = 6 - }, -/obj/item/reagent_containers/cup/glass/bottle/juice/orangejuice{ - pixel_x = -5; - pixel_y = 15 - }, -/obj/item/reagent_containers/cup/glass/flask{ - pixel_x = -6 +"pvN" = ( +/obj/effect/turf_decal/trimline/white/line{ + dir = 8 }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) -"pvQ" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/engine, -/area/station/engineering/break_room) -"pvS" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/glass/reinforced/plasma, -/area/station/engineering/break_room) +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "pvT" = ( /obj/structure/railing{ dir = 8 }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai_upload) -"pvU" = ( -/obj/structure/cable/layer1, -/obj/structure/sign/warning/radiation/rad_area/directional/east, -/turf/open/floor/catwalk_floor, -/area/station/engineering/main) +/area/station/ai/upload/chamber) +"pwj" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/door/airlock{ + id_tag = "Cabin10"; + name = "Cabin 10" + }, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/turf/open/floor/iron/dark/textured, +/area/station/commons/dorms) "pwy" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 @@ -54625,7 +57255,9 @@ dir = 1 }, /obj/machinery/door/firedoor, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 8 + }, /area/station/hallway/primary/central) "pwB" = ( /obj/structure/table, @@ -54642,7 +57274,7 @@ dir = 1 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "pwO" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment{ @@ -54675,26 +57307,52 @@ dir = 8 }, /area/station/hallway/primary/fore) +"pwW" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/upper) +"pwY" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing/corner/end, +/obj/structure/railing/corner/end{ + pixel_y = 2 + }, +/obj/structure/cable/multilayer/multiz, +/turf/open/openspace, +/area/station/maintenance/aft/upper) +"pxe" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/ladder, +/obj/structure/fluff/paper/corner, +/turf/open/floor/wood, +/area/station/maintenance/aft) "pxv" = ( /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/wood, /area/station/commons/storage/tools) -"pxN" = ( -/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ - name = "N2 Multideck Adapter"; - dir = 8 - }, -/obj/machinery/meter{ - name = "N2 meter" - }, -/obj/effect/turf_decal/tile/red/fourcorners, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) +"pxz" = ( +/obj/structure/ladder, +/turf/open/floor/plating, +/area/station/maintenance/aft) +"pxK" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/effect/turf_decal/siding/green/corner, +/turf/open/floor/plating, +/area/station/hallway/primary/central) "pxS" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/bar/opposingcorners, /turf/open/floor/iron, /area/station/security/prison/mess) +"pxX" = ( +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 4 + }, +/obj/machinery/computer/cargo{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/cargo/storage) "pxZ" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/red/filled/line{ @@ -54753,9 +57411,24 @@ /turf/open/floor/plating, /area/station/maintenance/port) "pyB" = ( -/obj/machinery/light_switch/directional/east, -/turf/open/floor/carpet, +/obj/structure/secure_safe/directional/east, +/obj/effect/turf_decal/siding/wood, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) +"pyN" = ( +/obj/effect/turf_decal/trimline/white/line{ + dir = 8; + pixel_x = 8 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/obj/effect/landmark/generic_maintenance_landmark, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "pyY" = ( /obj/machinery/portable_atmospherics/canister/air, /turf/open/floor/plating, @@ -54808,6 +57481,11 @@ /obj/structure/table/wood/fancy, /turf/open/openspace, /area/station/maintenance/port/fore) +"pzr" = ( +/obj/structure/sign/poster/official/random/directional/east, +/obj/effect/turf_decal/siding/wood, +/turf/open/floor/wood, +/area/station/commons/toilet/restrooms) "pzy" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -54815,7 +57493,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) "pzQ" = ( /obj/structure/lattice/catwalk, @@ -54832,14 +57510,10 @@ /obj/item/reagent_containers/cup/glass/waterbottle/large, /turf/open/floor/plating, /area/station/service/kitchen/abandoned) -"pzZ" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 1 - }, -/obj/structure/sign/poster/contraband/missing_gloves/directional/north, -/obj/machinery/rnd/production/circuit_imprinter, -/turf/open/floor/iron/dark, -/area/station/engineering/storage) +"pAd" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard) "pAf" = ( /obj/effect/turf_decal/trimline/dark_blue/filled/corner{ dir = 1 @@ -54851,7 +57525,7 @@ }, /obj/item/radio/intercom/directional/north, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "pAn" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -54861,14 +57535,11 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/storage) -"pAz" = ( -/obj/machinery/light/directional/east, -/turf/open/floor/iron, +"pAp" = ( +/obj/item/chair/plastic, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/engine/hull/air, /area/station/commons/fitness/recreation) -"pAH" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/yellow/visible, -/turf/closed/wall/r_wall, -/area/station/maintenance/starboard/aft) "pAJ" = ( /obj/item/radio/intercom/directional/east, /turf/open/floor/wood, @@ -54880,12 +57551,62 @@ /obj/effect/landmark/start/medical_doctor, /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) +"pAX" = ( +/obj/machinery/camera/preset/ordnance{ + c_tag = "Glass Floor"; + dir = 8 + }, +/turf/open/floor/glass/airless, +/area/station/maintenance/aft) "pBa" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 4 }, /turf/open/floor/iron, /area/station/cargo/storage) +"pBe" = ( +/obj/structure/ladder, +/obj/structure/sign/warning/directional/east, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/fore) +"pBf" = ( +/obj/machinery/vending/cigarette, +/turf/open/floor/plating, +/area/station/maintenance/aft) +"pBh" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/obj/machinery/door/airlock/engineering{ + name = "Engine Room" + }, +/obj/machinery/door/firedoor, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 1 + }, +/obj/machinery/duct, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/main) +"pBm" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 8 + }, +/turf/open/openspace, +/area/station/maintenance/aft/upper) +"pBv" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/wood, +/area/station/maintenance/aft) +"pBw" = ( +/obj/structure/bed, +/obj/effect/spawner/random/bedsheet, +/obj/machinery/light/small/directional/north, +/obj/effect/landmark/start/hangover, +/turf/open/floor/wood, +/area/station/commons/dorms) "pBz" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/cable, @@ -54893,7 +57614,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -54910,10 +57631,6 @@ /obj/structure/sign/poster/contraband/grey_tide/directional/south, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"pBG" = ( -/obj/machinery/vending/autodrobe, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "pBH" = ( /obj/item/key/janitor, /obj/vehicle/ridden/janicart, @@ -54932,18 +57649,6 @@ }, /turf/open/floor/wood/large, /area/station/service/library) -"pBJ" = ( -/obj/machinery/power/apc/auto_name/directional/east, -/obj/machinery/camera/directional/east{ - c_tag = "Cargo Bay - Unloading (Low)" - }, -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 4 - }, -/obj/structure/railing/corner/end, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/cargo/storage) "pBP" = ( /turf/open/floor/engine/air, /area/station/engineering/atmos/upper) @@ -54977,46 +57682,43 @@ }, /turf/open/floor/glass, /area/station/security/brig) -"pDa" = ( +"pCB" = ( +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/door/airlock/maintenance, -/obj/effect/decal/cleanable/dirt, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/engineering/storage_shared) -"pDf" = ( -/obj/docking_port/stationary{ - dir = 8; - dwidth = 3; - height = 5; - name = "SS13: Common Mining Dock"; - roundstart_template = /datum/map_template/shuttle/mining_common/meta; - shuttle_id = "commonmining_home"; - width = 7 +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 8 }, /turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"pDm" = ( -/obj/machinery/portable_atmospherics/canister, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/camera/autoname/directional/south, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) +/area/station/maintenance/starboard/fore/upper) +"pCX" = ( +/obj/effect/turf_decal/tile/neutral/opposingcorners{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/airalarm/directional/north, +/turf/open/floor/iron/dark, +/area/station/medical/chemistry) +"pCZ" = ( +/obj/effect/turf_decal/tile/yellow, +/obj/structure/ladder, +/turf/open/floor/iron, +/area/station/commons/storage/primary) +"pDi" = ( +/obj/structure/lattice, +/turf/open/openspace, +/area/station/commons/fitness/recreation) "pDp" = ( /obj/structure/disposalpipe/segment{ dir = 4 }, /turf/open/floor/wood, /area/station/command/heads_quarters/rd) -"pDt" = ( -/obj/effect/landmark/start/hangover, -/obj/effect/turf_decal/siding/brown/corner{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "pDO" = ( /obj/structure/railing{ dir = 1 @@ -55032,6 +57734,15 @@ }, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) +"pDQ" = ( +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 8 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "pDR" = ( /obj/effect/landmark/firealarm_sanity, /obj/structure/lattice/catwalk, @@ -55056,6 +57767,16 @@ }, /turf/open/floor/iron/dark, /area/station/security/warden) +"pEm" = ( +/obj/structure/railing/corner/end/flip{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/item/radio/intercom/directional/south, +/obj/effect/turf_decal/tile/red, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "pEx" = ( /obj/structure/railing{ dir = 1 @@ -55072,7 +57793,7 @@ dir = 1 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "pEG" = ( /obj/effect/turf_decal/stripes/red/line{ dir = 4 @@ -55082,16 +57803,6 @@ }, /turf/open/floor/engine, /area/station/engineering/supermatter) -"pEI" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 1 - }, -/obj/structure/chair{ - dir = 1 - }, -/obj/effect/mapping_helpers/broken_floor, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "pEK" = ( /turf/open/floor/engine, /area/station/service/hydroponics) @@ -55103,7 +57814,7 @@ /obj/structure/disposalpipe/segment{ dir = 2 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/wood, /area/station/service/chapel) "pEW" = ( @@ -55138,27 +57849,12 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/science/robotics/lab) -"pFb" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/effect/turf_decal/trimline/purple/filled/line{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) "pFp" = ( /obj/machinery/sparker/directional/west{ id = "Xenobio" }, /turf/open/openspace, /area/station/science/xenobiology) -"pFJ" = ( -/obj/machinery/atmospherics/components/trinary/mixer/flipped, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "pFR" = ( /obj/structure/cable, /obj/effect/turf_decal/tile/dark_green{ @@ -55167,14 +57863,14 @@ /turf/open/floor/iron/checker, /area/station/service/bar) "pFS" = ( -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/door/airlock/maintenance{ name = "Medbay Maintenance" }, /obj/structure/disposalpipe/segment, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/port) "pFX" = ( @@ -55184,30 +57880,26 @@ /obj/effect/spawner/random/engineering/tracking_beacon, /turf/open/floor/carpet, /area/station/security/courtroom) +"pFY" = ( +/obj/structure/railing/corner/end, +/obj/effect/turf_decal/siding/dark/corner{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "pGe" = ( /obj/structure/table, /obj/effect/spawner/random/engineering/toolbox, /obj/machinery/light/directional/north, /turf/open/floor/catwalk_floor/iron_smooth, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "pGf" = ( -/obj/structure/railing, -/obj/effect/turf_decal/tile/green{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) -"pGk" = ( -/obj/effect/mapping_helpers/broken_floor, -/obj/structure/disposalpipe/segment{ - dir = 4 +/obj/effect/turf_decal/trimline/dark_blue/filled/corner{ + dir = 8 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"pGl" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/engine/hull/air, -/area/station/engineering/atmos/project) +/obj/effect/turf_decal/trimline/dark_blue/filled/corner, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "pGn" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 @@ -55215,16 +57907,20 @@ /turf/open/floor/wood/large, /area/station/medical/psychology) "pGs" = ( -/obj/structure/table/reinforced, -/obj/item/folder/red{ - pixel_y = 11 - }, -/obj/item/pen{ - pixel_y = 8 - }, /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 }, +/obj/machinery/camera/directional/south, +/obj/structure/cable, +/obj/structure/table/reinforced, +/obj/machinery/recharger{ + pixel_x = 7; + pixel_y = 6 + }, +/obj/item/paper_bin{ + pixel_x = -6; + pixel_y = 7 + }, /turf/open/floor/iron/dark, /area/station/security/checkpoint/supply) "pGt" = ( @@ -55234,12 +57930,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"pGv" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/start/hangover, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/ai/satellite/interior) "pGD" = ( /obj/machinery/camera/directional/west{ c_tag = "Science - Xenobiology South"; @@ -55266,18 +57957,23 @@ dir = 1 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) +"pGL" = ( +/obj/effect/turf_decal/trimline/yellow/filled/corner, +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 9 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "pGP" = ( /obj/structure/grille, /turf/closed/wall/r_wall, /area/station/engineering/atmos/upper) "pGV" = ( /obj/effect/turf_decal/plaque{ - icon_state = "L5" - }, -/obj/effect/turf_decal/siding/green{ - dir = 1 + icon_state = "L6" }, +/obj/effect/turf_decal/siding/white, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "pHc" = ( @@ -55295,17 +57991,6 @@ }, /turf/open/floor/iron, /area/station/science/lab) -"pHd" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ - dir = 9 - }, -/obj/machinery/light/directional/east, -/turf/open/floor/iron/textured_large, -/area/station/medical/virology) "pHf" = ( /turf/open/floor/carpet, /area/station/commons/storage/tools) @@ -55323,42 +58008,15 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/white, /area/station/maintenance/hallway/abandoned_recreation) -"pHq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, +"pHJ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment{ - dir = 2 - }, -/turf/open/floor/iron/dark/textured_large, -/area/station/maintenance/port) -"pHx" = ( -/obj/machinery/door/airlock{ - name = "Emergency Storage" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"pHC" = ( -/obj/effect/turf_decal/trimline/green/filled/corner, -/turf/open/floor/iron/dark/textured_large, -/area/station/medical/virology) -"pHQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) -"pIf" = ( -/obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/table, -/obj/item/stack/sheet/iron, -/turf/open/floor/iron/dark, -/area/station/commons/dorms) +/obj/structure/sign/flag/ssc/directional/south, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "pIm" = ( /obj/structure/chair/comfy/black{ dir = 1 @@ -55367,19 +58025,6 @@ /obj/machinery/air_sensor, /turf/open/floor/carpet/royalblack, /area/station/command/heads_quarters/hos) -"pIn" = ( -/obj/structure/cable, -/obj/effect/mapping_helpers/broken_floor, -/obj/machinery/light/small/directional/north, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/airalarm/directional/north, -/turf/open/floor/iron, -/area/station/engineering/main) -"pIr" = ( -/obj/structure/chair, -/turf/open/floor/wood, -/area/station/commons/dorms) "pIt" = ( /obj/structure/disposalpipe/segment, /obj/effect/mapping_helpers/airlock/access/all/security/general, @@ -55389,10 +58034,6 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/port) -"pID" = ( -/obj/effect/landmark/start/atmospheric_technician, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) "pIP" = ( /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/tile/dark_blue{ @@ -55402,17 +58043,6 @@ /obj/machinery/light/floor, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"pIV" = ( -/obj/structure/lattice/catwalk, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) -"pJf" = ( -/obj/machinery/portable_atmospherics/pump, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "pJi" = ( /obj/machinery/rnd/experimentor, /turf/open/floor/engine, @@ -55427,7 +58057,9 @@ /obj/structure/railing/corner/end/flip{ dir = 1 }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 8 + }, /area/station/hallway/primary/central) "pJp" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -55445,11 +58077,11 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/science/explab) -"pJC" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/mecha_wreckage/ripley/deathripley, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"pJt" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/landmark/start/hangover, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "pJD" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -55463,7 +58095,7 @@ dir = 1 }, /turf/open/floor/iron/checker, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "pJG" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 @@ -55486,7 +58118,7 @@ }, /obj/structure/cable/layer3, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "pJK" = ( /obj/machinery/power/apc/auto_name/directional/south, /obj/structure/cable, @@ -55526,6 +58158,11 @@ "pJS" = ( /turf/open/floor/iron, /area/station/hallway/primary/aft) +"pJW" = ( +/obj/structure/lattice, +/obj/structure/sign/warning/directional/west, +/turf/open/space/basic, +/area/space/nearstation) "pKb" = ( /obj/machinery/vending/cigarette, /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -55535,6 +58172,7 @@ /area/station/science/xenobiology/hallway) "pKd" = ( /obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable, /turf/open/floor/plating, /area/station/command/gateway) "pKk" = ( @@ -55558,12 +58196,6 @@ }, /turf/open/floor/glass, /area/station/medical/medbay/central) -"pKp" = ( -/obj/item/trash/can{ - pixel_x = -8 - }, -/turf/open/floor/wood, -/area/station/commons/dorms) "pKA" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -55584,29 +58216,35 @@ /turf/open/floor/wood/tile, /area/station/science/robotics) "pKC" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 1 +/obj/effect/turf_decal/caution/stand_clear{ + dir = 4 }, -/obj/effect/landmark/start/shaft_miner, -/turf/open/floor/iron, -/area/station/cargo/miningoffice) -"pKJ" = ( -/obj/machinery/door/airlock/command/glass{ - name = "Gravity Generator Area" +/turf/open/floor/engine/hull, +/area/space/nearstation) +"pKI" = ( +/obj/machinery/atmospherics/pipe/multiz/supply/visible/layer4{ + dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/access/all/engineering/construction, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/gravity_generator) -"pKT" = ( -/obj/effect/turf_decal/stripes/corner, -/obj/machinery/button/door/directional/south{ - id = "evashutter"; - name = "E.V.A. Storage Shutter Control"; - req_access = list("command") +/obj/machinery/atmospherics/pipe/multiz/scrubbers/visible/layer2{ + dir = 4 + }, +/obj/machinery/light/small/directional/north, +/obj/structure/extinguisher_cabinet/directional/west, +/turf/open/floor/plating, +/area/station/engineering/atmos/office) +"pKP" = ( +/obj/effect/turf_decal/siding, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/obj/structure/disposalpipe/segment{ + dir = 4 }, /turf/open/floor/iron/large, +/area/station/maintenance/starboard) +"pKT" = ( +/obj/structure/sign/warning/secure_area/directional/south, +/turf/open/floor/iron/edge, /area/station/hallway/primary/central) "pKU" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -55614,14 +58252,19 @@ /obj/structure/cable, /turf/open/floor/glass, /area/station/security/brig) +"pLa" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "pLd" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 1 }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment, +/obj/machinery/photocopier/prebuilt, +/obj/item/radio/intercom/directional/west, /turf/open/floor/iron, /area/station/cargo/storage) "pLg" = ( @@ -55646,14 +58289,15 @@ /turf/open/floor/iron/dark, /area/station/medical/medbay/central) "pLv" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/abandoned, -/obj/machinery/door/airlock/mining/glass{ - name = "Quartermaster's Storage" +/obj/structure/cable, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 }, -/obj/effect/mapping_helpers/airlock/access/all/supply/qm, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "pLx" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -55675,7 +58319,7 @@ dir = 4 }, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "pLL" = ( /obj/structure/sign/departments/medbay/alt/directional/west, /turf/open/floor/iron, @@ -55689,22 +58333,10 @@ /obj/structure/noticeboard/directional/north, /turf/open/floor/wood/large, /area/station/service/library/private) -"pLP" = ( -/obj/machinery/power/terminal{ - dir = 1; - cable_layer = 1 - }, -/obj/structure/cable/multilayer/layer1, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/catwalk_floor, -/area/station/engineering/engine_smes) -"pLQ" = ( -/obj/effect/spawner/random/maintenance, -/turf/open/floor/engine/hull, -/area/space/nearstation) +"pLS" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "pLT" = ( /obj/structure/closet/secure_closet/hydroponics, /obj/effect/turf_decal/tile/green/full, @@ -55758,6 +58390,13 @@ /obj/effect/mapping_helpers/broken_machine, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) +"pMu" = ( +/obj/structure/chair/comfy/brown{ + dir = 4 + }, +/obj/machinery/status_display/evac/directional/west, +/turf/open/floor/carpet, +/area/station/security/courtroom) "pMy" = ( /obj/effect/turf_decal/trimline/yellow/line{ dir = 4 @@ -55767,39 +58406,31 @@ }, /obj/machinery/airalarm/directional/north, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) +"pMC" = ( +/obj/machinery/door/airlock/maintenance, +/obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "pME" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) -"pMH" = ( -/obj/effect/decal/cleanable/crayon{ - icon_state = "!"; - pixel_x = 9; - pixel_y = -1 - }, -/turf/closed/wall, -/area/station/maintenance/starboard/lesser) "pML" = ( -/obj/structure/table/wood, -/obj/item/folder/blue{ - pixel_x = 4; - pixel_y = -6 - }, -/obj/item/toy/figure/hop{ - pixel_x = -1; - pixel_y = 7 - }, -/obj/item/toy/figure/ian{ - pixel_x = -8; - pixel_y = 4 +/obj/structure/chair/comfy/brown{ + dir = 8 }, -/obj/machinery/door/firedoor/border_only{ +/obj/effect/landmark/start/head_of_personnel, +/obj/effect/turf_decal/siding/wood/end{ dir = 8 }, -/turf/open/floor/carpet, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) "pMS" = ( /obj/effect/turf_decal/tile/red/half/contrasted{ @@ -55850,12 +58481,16 @@ pixel_y = -2 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "pNh" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/closed/wall, /area/station/service/abandoned_gambling_den) +"pNj" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "pNk" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/abandoned, @@ -55864,10 +58499,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/central) "pNl" = ( @@ -55877,12 +58512,10 @@ /obj/effect/turf_decal/tile/red/opposingcorners, /turf/open/floor/iron/dark, /area/station/security/brig) -"pNA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table, -/obj/item/kitchen/rollingpin, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) +"pNr" = ( +/obj/effect/spawner/random/trash/mess, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "pNF" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -55903,6 +58536,12 @@ }, /turf/open/openspace, /area/station/maintenance/port/aft) +"pNV" = ( +/obj/machinery/door/airlock/external, +/obj/effect/mapping_helpers/airlock/cyclelink_helper, +/obj/effect/mapping_helpers/airlock/access/all/engineering/external, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "pOh" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -55914,6 +58553,11 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/wood, /area/station/maintenance/hallway/abandoned_recreation) +"pOu" = ( +/obj/machinery/airalarm/directional/north, +/obj/machinery/duct, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "pOD" = ( /obj/effect/turf_decal/stripes/line{ dir = 6 @@ -55921,13 +58565,6 @@ /obj/structure/closet/l3closet, /turf/open/floor/iron/textured_large, /area/station/medical/virology) -"pOF" = ( -/obj/structure/closet/secure_closet/personal, -/obj/item/clothing/suit/hooded/wintercoat, -/obj/item/clothing/shoes/winterboots, -/obj/effect/spawner/random/clothing/backpack, -/turf/open/floor/iron, -/area/station/commons/dorms) "pOM" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -55946,12 +58583,19 @@ }, /turf/open/floor/plating, /area/station/maintenance/department/science/central) -"pOQ" = ( +"pOP" = ( +/obj/structure/window/reinforced/spawner/directional/east, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment{ - dir = 5 +/obj/structure/transit_tube/horizontal, +/obj/effect/turf_decal/tile/dark_blue/fourcorners, +/turf/open/floor/iron/dark, +/area/station/engineering/transit_tube) +"pOQ" = ( +/obj/effect/turf_decal/trimline/brown/arrow_cw, +/obj/effect/turf_decal/trimline/brown/arrow_ccw{ + dir = 1 }, /turf/open/floor/iron, /area/station/cargo/storage) @@ -55959,11 +58603,6 @@ /obj/machinery/light/directional/east, /turf/open/floor/engine, /area/station/science/auxlab/firing_range) -"pOW" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/table/wood, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "pPb" = ( /obj/effect/turf_decal/trimline/dark/arrow_cw{ dir = 8 @@ -55981,13 +58620,6 @@ /obj/machinery/camera/autoname/directional/west, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) -"pPg" = ( -/obj/machinery/camera/preset/ordnance{ - c_tag = "Glass Floor"; - dir = 10 - }, -/turf/open/floor/glass/airless, -/area/station/maintenance/starboard/lesser) "pPk" = ( /obj/effect/spawner/random/vending/snackvend, /turf/open/floor/iron, @@ -56017,30 +58649,17 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/medical/chem_storage) "pPt" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/poddoor/preopen{ - id = "hop"; - name = "Privacy Shutters" - }, -/obj/item/paper_bin{ - pixel_x = -5; - pixel_y = 4 - }, -/obj/item/pen, /obj/item/pen, /obj/item/pen, -/obj/machinery/door/window/left/directional/west, -/obj/machinery/door/window/brigdoor/right/directional/east{ - name = "Head of Personnel's Desk"; - req_access = list("hop") +/obj/effect/landmark/start/head_of_personnel, +/obj/structure/chair/office{ + dir = 8 }, -/turf/open/floor/plating, +/obj/effect/turf_decal/siding/wood/end{ + dir = 8 + }, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) -"pPu" = ( -/obj/effect/spawner/structure/window/reinforced/plasma, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) "pPA" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -56058,22 +58677,18 @@ /obj/machinery/light_switch/directional/north, /turf/open/floor/iron, /area/station/science/xenobiology/hallway) -"pPG" = ( -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "pPO" = ( /obj/machinery/door/airlock/maintenance{ name = "Medbay Maintenance" }, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/structure/disposalpipe/segment, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/port) "pPS" = ( @@ -56086,29 +58701,18 @@ /obj/structure/railing{ dir = 4 }, -/obj/effect/turf_decal/siding/wood{ - dir = 6 - }, -/obj/structure/table, -/obj/item/storage/toolbox/electrical{ - pixel_x = -3; - pixel_y = 11 - }, -/obj/item/storage/belt/utility{ - pixel_x = -3 - }, -/obj/item/storage/belt/utility{ - pixel_x = -3 - }, -/obj/machinery/camera/autoname/directional/south, /obj/machinery/atmospherics/pipe/multiz/scrubbers/visible/layer2{ dir = 8 }, /obj/machinery/atmospherics/pipe/multiz/supply/visible/layer4{ dir = 8 }, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) +/obj/machinery/status_display/ai/directional/south, +/obj/effect/turf_decal/stripes{ + dir = 6 + }, +/turf/open/floor/iron/textured, +/area/station/command/eva) "pQa" = ( /obj/machinery/door/firedoor, /turf/open/floor/engine/hull/air, @@ -56140,24 +58744,24 @@ /obj/effect/spawner/structure/window/reinforced/tinted, /turf/open/floor/plating, /area/station/service/hydroponics/garden/abandoned) +"pQp" = ( +/obj/effect/decal/cleanable/dirt, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/iron, +/area/station/engineering/storage_shared) "pQq" = ( -/obj/structure/table, -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 8 - }, -/obj/item/paper_bin/carbon{ - pixel_x = -5; - pixel_y = 6 - }, -/obj/item/pen/fountain{ - pixel_x = 9; - pixel_y = 4 +/obj/effect/turf_decal/stripes/corner{ + dir = 4 }, -/obj/machinery/light_switch/directional/west{ - pixel_y = 6 +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/effect/turf_decal/stripes/line{ + dir = 10 }, -/turf/open/floor/iron, -/area/station/command/heads_quarters/qm) +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "pQt" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 @@ -56181,11 +58785,6 @@ /obj/machinery/light/directional/west, /turf/open/floor/iron/kitchen_coldroom/freezerfloor, /area/station/service/kitchen/coldroom) -"pQG" = ( -/obj/structure/cable, -/obj/effect/spawner/random/trash/mess, -/turf/open/floor/plating, -/area/station/maintenance/port) "pQK" = ( /obj/structure/railing/corner, /obj/machinery/door/firedoor, @@ -56193,14 +58792,10 @@ /turf/open/floor/iron/white, /area/station/medical/medbay/central) "pQQ" = ( -/obj/machinery/door/airlock/maintenance, +/obj/structure/cable, +/obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 1 - }, /turf/open/floor/plating, /area/station/maintenance/starboard/central) "pQS" = ( @@ -56218,13 +58813,6 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"pRm" = ( -/obj/structure/lattice/catwalk, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) "pRt" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 1 @@ -56243,16 +58831,13 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/commissary) -"pRx" = ( -/obj/structure/sign/poster/contraband/random/directional/west, -/obj/machinery/power/port_gen/pacman/pre_loaded, -/obj/effect/turf_decal/bot, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"pRA" = ( -/obj/effect/decal/cleanable/blood, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) +"pRB" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron, +/area/station/engineering/gravity_generator) "pRG" = ( /obj/effect/turf_decal/tile/purple/half{ dir = 8 @@ -56292,15 +58877,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/construction/storage_wing) -"pRW" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/openspace, -/area/station/engineering/atmos/project) "pSd" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -56310,11 +58886,34 @@ /obj/structure/extinguisher_cabinet/directional/north, /turf/open/floor/iron/dark, /area/station/medical/medbay/central) +"pSi" = ( +/obj/item/cigbutt{ + pixel_x = -11; + pixel_y = -5 + }, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "pSj" = ( /obj/machinery/atmospherics/pipe/multiz/scrubbers/visible/layer2, /obj/machinery/atmospherics/pipe/multiz/supply/visible/layer4, /turf/open/floor/plating, /area/station/security/interrogation) +"pSk" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/curtain, +/obj/machinery/duct, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/structure/fluff/shower_drain, +/turf/open/floor/iron/freezer, +/area/station/commons/dorms) +"pSv" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/commons/dorms) "pSz" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 @@ -56332,17 +58931,6 @@ /obj/effect/landmark/start/hangover, /turf/open/openspace, /area/station/hallway/primary/aft) -"pSF" = ( -/obj/effect/mapping_helpers/broken_floor, -/obj/structure/broken_flooring/singular/directional/west, -/obj/structure/broken_flooring/singular/always_floorplane/directional, -/obj/structure/broken_flooring/singular, -/obj/item/assembly/mousetrap, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/port) "pSI" = ( /obj/machinery/firealarm/directional/south, /obj/structure/cable, @@ -56428,14 +59016,6 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/maintenance/starboard/central) -"pTS" = ( -/obj/machinery/power/emitter/prototype{ - desc = "Hell yeah."; - dir = 4; - name = "Betsy" - }, -/turf/open/floor/engine, -/area/station/engineering/break_room) "pTT" = ( /obj/effect/turf_decal/trimline/red/filled/warning, /obj/structure/cable, @@ -56453,11 +59033,6 @@ }, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"pTX" = ( -/obj/structure/table/wood, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "pUe" = ( /obj/effect/turf_decal/trimline/dark_green/filled/line{ dir = 10 @@ -56471,6 +59046,25 @@ /obj/effect/decal/cleanable/blood/old, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) +"pUp" = ( +/obj/effect/turf_decal/trimline/brown/filled/end, +/obj/structure/closet/emcloset, +/turf/open/floor/iron, +/area/station/cargo/miningoffice) +"pUx" = ( +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/yellow/filled/corner, +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, +/obj/machinery/atmospherics/components/binary/pump/on/layer5{ + name = "N2 to Airmix" + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "pUE" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -56501,6 +59095,16 @@ /obj/machinery/firealarm/directional/south, /turf/open/floor/iron/dark, /area/station/science/cytology) +"pUY" = ( +/obj/machinery/firealarm/directional/east, +/obj/effect/turf_decal/tile/red/fourcorners, +/obj/structure/table, +/obj/machinery/recharger{ + pixel_x = 7; + pixel_y = 8 + }, +/turf/open/floor/iron/dark, +/area/station/security/checkpoint/engineering) "pUZ" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -56517,7 +59121,12 @@ dir = 1 }, /turf/open/floor/iron/checker, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"pVr" = ( +/obj/structure/cable, +/obj/structure/sign/poster/contraband/fake_bombable/directional/south, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "pVw" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/structure/mirror/directional/north, @@ -56529,26 +59138,53 @@ /area/station/maintenance/hallway/abandoned_recreation) "pVy" = ( /obj/effect/landmark/start/assistant, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 1 + }, /area/station/hallway/primary/central) -"pVA" = ( -/obj/effect/turf_decal/stripes/line{ +"pVM" = ( +/obj/structure/disposalpipe/sorting/mail{ dir = 4 }, -/obj/machinery/door/firedoor/heavy, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"pWh" = ( -/obj/machinery/button/door/directional/west{ - id = "Cabin6"; - name = "Cabin Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 24; - specialfunctions = 4 +/obj/effect/mapping_helpers/mail_sorting/engineering/general, +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 8 }, -/obj/item/kirbyplants/random, -/turf/open/floor/wood, -/area/station/commons/dorms) +/turf/open/floor/iron, +/area/station/engineering/lobby) +"pVO" = ( +/obj/effect/turf_decal/tile/red/fourcorners, +/obj/structure/closet/secure_closet/security/engine, +/turf/open/floor/iron/dark, +/area/station/security/checkpoint/engineering) +"pWi" = ( +/obj/machinery/atmospherics/pipe/layer_manifold/yellow/visible, +/obj/machinery/meter, +/turf/closed/wall/r_wall, +/area/station/engineering/atmos) +"pWk" = ( +/obj/structure/chair{ + dir = 4; + pixel_y = -2 + }, +/obj/structure/disposalpipe/segment{ + dir = 8 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"pWl" = ( +/obj/effect/turf_decal/siding, +/obj/effect/turf_decal/trimline/white/corner{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "pWn" = ( /turf/open/floor/iron/stairs/medium{ dir = 8 @@ -56586,6 +59222,11 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/textured_large, /area/station/medical/abandoned) +"pWQ" = ( +/obj/effect/landmark/blobstart, +/obj/effect/turf_decal/tile/purple/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/aft) "pWR" = ( /obj/structure/sign/clock/directional/north, /obj/machinery/disposal/bin, @@ -56629,6 +59270,13 @@ /obj/machinery/holopad, /turf/open/floor/iron/dark/diagonal, /area/station/service/theater) +"pXF" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/cargo/warehouse) "pXL" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -56638,10 +59286,15 @@ }, /turf/open/floor/iron/dark, /area/station/engineering/storage/tech) -"pXM" = ( -/obj/structure/railing/corner, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +"pYg" = ( +/obj/structure/table/wood, +/obj/item/radio{ + pixel_y = 4; + pixel_x = -4 + }, +/obj/machinery/airalarm/directional/north, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "pYi" = ( /obj/item/kirbyplants/random, /obj/machinery/firealarm/directional/south, @@ -56657,7 +59310,26 @@ /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /obj/effect/landmark/navigate_destination/aiupload, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) +"pZd" = ( +/obj/item/radio/intercom/directional/south, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/turf/open/floor/wood, +/area/station/commons/dorms) +"pZv" = ( +/obj/effect/turf_decal/tile/brown{ + dir = 8 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/hallway/primary/central) +"pZJ" = ( +/turf/closed/wall/r_wall, +/area/station/engineering/atmos) "pZQ" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -56669,28 +59341,28 @@ /turf/open/floor/iron/dark, /area/station/medical/medbay/central) "pZT" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/supply/general, -/obj/structure/cable, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, +/obj/structure/chair/sofa/right/brown, +/obj/item/clothing/head/soft{ + pixel_x = 2; + pixel_y = -2 + }, +/obj/structure/lattice/catwalk, +/turf/open/openspace, /area/station/cargo/storage) -"pZX" = ( -/turf/closed/wall, -/area/station/ai_monitored/command/storage/eva) -"qac" = ( -/obj/effect/turf_decal/siding/brown{ +"pZW" = ( +/obj/structure/chair/greyscale{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/disposalpipe/junction{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/commons/dorms) +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/aft/upper) +"pZX" = ( +/turf/closed/wall, +/area/station/command/eva) +"pZZ" = ( +/obj/effect/spawner/random/engineering/tank, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "qae" = ( /obj/effect/turf_decal/trimline/blue/filled/line, /obj/structure/cable, @@ -56700,7 +59372,6 @@ /obj/effect/turf_decal/tile/blue{ dir = 1 }, -/obj/machinery/firealarm/directional/south, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) "qaf" = ( @@ -56721,6 +59392,13 @@ }, /turf/open/floor/wood, /area/station/security/detectives_office) +"qaq" = ( +/obj/machinery/atmospherics/components/trinary/mixer/airmix/flipped/layer5{ + dir = 8; + name = "air mixer" + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "qat" = ( /obj/effect/decal/cleanable/dirt, /obj/item/wirecutters{ @@ -56735,16 +59413,27 @@ /obj/machinery/wall_healer/directional/south, /turf/open/floor/iron, /area/station/science/research) +"qaw" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/structure/railing, +/turf/open/floor/plating, +/area/station/maintenance/aft) "qaA" = ( /obj/effect/turf_decal/siding/wood{ dir = 8 }, /turf/open/floor/wood/large, /area/station/hallway/primary/central) +"qaH" = ( +/obj/structure/dresser, +/obj/machinery/newscaster/directional/north, +/turf/open/floor/wood, +/area/station/commons/dorms) "qaI" = ( /obj/structure/table/reinforced, /obj/item/flashlight/lamp, /obj/structure/lattice/catwalk, +/obj/structure/cable, /turf/open/openspace, /area/station/security/checkpoint/supply) "qaK" = ( @@ -56771,10 +59460,14 @@ }, /turf/open/floor/wood, /area/station/service/lawoffice) -"qbm" = ( -/obj/structure/closet/secure_closet/engineering_welding, -/turf/open/floor/iron/smooth, -/area/station/engineering/main) +"qbq" = ( +/obj/machinery/computer/records/security{ + dir = 4 + }, +/obj/item/radio/intercom/directional/west, +/obj/effect/turf_decal/tile/red/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "qbw" = ( /obj/effect/turf_decal/trimline/yellow/warning{ dir = 8 @@ -56787,6 +59480,22 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/engineering/storage_shared) +"qbI" = ( +/obj/machinery/washing_machine, +/obj/machinery/airalarm/directional/north, +/obj/machinery/firealarm/directional/east, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) +"qbM" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "qbT" = ( /turf/closed/wall/r_wall, /area/station/security/prison/mess) @@ -56808,6 +59517,12 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/science/xenobiology) +"qcc" = ( +/obj/structure/transport/linear{ + radial_travel = 0 + }, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "qcx" = ( /obj/structure/stairs/south, /turf/open/floor/iron/stairs/medium{ @@ -56833,10 +59548,20 @@ }, /turf/open/floor/iron, /area/station/maintenance/starboard/central) -"qcT" = ( -/obj/structure/lattice/catwalk, -/turf/open/openspace, -/area/station/engineering/break_room) +"qcQ" = ( +/obj/effect/mapping_helpers/airlock/access/all/supply/general, +/obj/machinery/door/airlock/maintenance, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"qcW" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "qdd" = ( /obj/machinery/power/apc/auto_name/directional/east, /obj/item/tank/internals/anesthetic, @@ -56881,6 +59606,13 @@ }, /turf/open/floor/iron/airless, /area/station/maintenance/starboard/aft) +"qdP" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 1 + }, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "qdR" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/decal/cleanable/dirt, @@ -56918,15 +59650,6 @@ /obj/machinery/light/directional/west, /turf/open/openspace, /area/station/hallway/primary/fore) -"qei" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white, -/area/station/maintenance/starboard/lesser) -"qek" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "qel" = ( /obj/machinery/door/airlock/external, /obj/effect/mapping_helpers/airlock/access/all/engineering/external, @@ -56954,6 +59677,12 @@ /obj/effect/turf_decal/tile/blue/fourcorners, /turf/open/floor/iron/dark/telecomms, /area/station/tcommsat/server) +"qeN" = ( +/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/n2o{ + dir = 8 + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "qeP" = ( /obj/structure/table/reinforced, /obj/item/stack/sheet/glass/fifty{ @@ -56972,19 +59701,20 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/science/robotics/lab) -"qeQ" = ( -/turf/open/floor/engine/vacuum, -/area/station/maintenance/disposal/incinerator) +"qeV" = ( +/obj/machinery/atmospherics/components/binary/valve/digital/on{ + dir = 4; + name = "Waste Release" + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "qeX" = ( /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "qeZ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, /obj/structure/disposalpipe/segment, /obj/machinery/light/directional/south, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge, /area/station/hallway/primary/central) "qfh" = ( /obj/effect/turf_decal/tile/red/half/contrasted, @@ -57008,6 +59738,28 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/construction) +"qfz" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/yellow/visible, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos/office) +"qfB" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/duct, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/fore) +"qfF" = ( +/obj/structure/sign/warning/directional/west, +/turf/open/space/openspace, +/area/space/nearstation) "qfS" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -57032,6 +59784,12 @@ /obj/structure/table/reinforced/rglass, /turf/open/floor/glass, /area/station/security/brig) +"qge" = ( +/obj/structure/railing{ + dir = 8 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "qgj" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -57053,40 +59811,21 @@ /turf/open/floor/iron, /area/station/science/lab) "qgr" = ( -/obj/structure/table, -/obj/item/dest_tagger{ - pixel_x = 8; - pixel_y = 8 - }, -/obj/item/dest_tagger{ - pixel_x = -6; - pixel_y = 8 - }, -/obj/item/clothing/head/soft{ - pixel_x = 2; - pixel_y = 2 - }, -/obj/effect/turf_decal/trimline/brown/filled, -/turf/open/floor/iron, -/area/station/cargo/sorting) -"qgD" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Storage Room" - }, -/obj/structure/disposalpipe/segment{ - dir = 4 +/obj/machinery/light/warm/dim/directional/west, +/obj/effect/turf_decal/siding/wood{ + dir = 10 }, -/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/port) +/obj/item/kirbyplants/random, +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) "qgI" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ +/obj/machinery/door/poddoor/shutters/preopen{ + name = "Cargo Lockdown Shutters"; + id = "cargolockdown"; dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/iron, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, /area/station/cargo/storage) "qgV" = ( /obj/structure/reagent_dispensers/watertank, @@ -57098,12 +59837,6 @@ /obj/structure/railing/corner/end, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"qhl" = ( -/obj/machinery/pipedispenser/disposal, -/obj/effect/turf_decal/bot, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/engineering/main) "qhq" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -57131,6 +59864,12 @@ /obj/effect/turf_decal/box, /turf/open/floor/iron/dark/textured_half, /area/station/science/ordnance/storage) +"qhz" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 + }, +/turf/open/floor/iron/corner, +/area/station/hallway/primary/central) "qhB" = ( /obj/structure/closet/firecloset, /turf/open/floor/plating, @@ -57173,33 +59912,6 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"qhP" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"qhW" = ( -/obj/machinery/airalarm/directional/east, -/obj/effect/landmark/start/depsec/engineering, -/obj/effect/turf_decal/trimline/red/filled/line{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/security/checkpoint/engineering) -"qic" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/chair/office{ - dir = 1 - }, -/obj/effect/landmark/start/chief_engineer, -/turf/open/floor/iron/dark/small, -/area/station/command/heads_quarters/ce) "qid" = ( /obj/machinery/door/airlock/research{ name = "Research Division Backdoor" @@ -57213,6 +59925,14 @@ /obj/effect/mapping_helpers/airlock/access/any/science/xenobio, /turf/open/floor/iron, /area/station/science/xenobiology/hallway) +"qie" = ( +/obj/machinery/door/poddoor/shutters/radiation/preopen{ + id = "SM_shutters"; + name = "Supermatter Radiation Shutters"; + dir = 1 + }, +/turf/open/floor/plating, +/area/station/engineering/supermatter) "qih" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/griddle, @@ -57220,21 +59940,20 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/security/prison/mess) -"qij" = ( +"qim" = ( /obj/effect/decal/cleanable/dirt, +/obj/structure/rack, /turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/area/station/maintenance/starboard/central) "qip" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/cigbutt{ - pixel_x = 6; - pixel_y = 12 - }, -/obj/machinery/modular_computer/preset/id{ +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "qir" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, @@ -57303,12 +60022,6 @@ /obj/structure/sign/poster/official/moth_hardhat/directional/west, /turf/open/floor/iron, /area/station/maintenance/starboard/aft) -"qjt" = ( -/obj/structure/lattice/catwalk, -/obj/effect/spawner/random/maintenance/two, -/obj/structure/rack, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) "qjy" = ( /obj/machinery/computer/slot_machine{ pixel_y = 2 @@ -57343,7 +60056,7 @@ "qjT" = ( /obj/machinery/status_display/ai/directional/south, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "qjV" = ( /obj/structure/disposalpipe/segment, /turf/closed/wall, @@ -57386,6 +60099,14 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/primary/aft) +"qkn" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/machinery/atmospherics/pipe/multiz/green/visible{ + dir = 2; + name = "mix to space multi-deck adaper" + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "qkv" = ( /obj/structure/railing{ dir = 4 @@ -57424,40 +60145,31 @@ }, /turf/open/floor/plating, /area/station/maintenance/department/science/central) -"qlf" = ( -/obj/machinery/computer/station_alert, -/obj/effect/turf_decal/siding/wood{ - dir = 1 - }, -/turf/open/floor/wood, -/area/station/engineering/lobby) "qlg" = ( /obj/machinery/mech_bay_recharge_port, /turf/open/floor/iron/smooth, /area/station/science/robotics) -"qlx" = ( -/obj/structure/closet/crate/engineering{ - name = "Basic Materials" - }, -/obj/item/stock_parts/power_store/cell/high, -/obj/item/stock_parts/power_store/cell/high, -/obj/item/electronics/airlock, -/obj/item/electronics/airlock, -/obj/item/electronics/airlock, -/obj/effect/turf_decal/delivery/white{ - color = "#52B4E9" - }, -/obj/item/stack/rods{ - amount = 50 +"qlj" = ( +/obj/structure/table/wood, +/obj/machinery/computer/arcade/orion_trail{ + desc = "For gamers only. Casuals need not apply."; + icon_screen = "library"; + icon_state = "oldcomp"; + name = "Gamer Computer" }, -/obj/item/stack/sheet/glass{ - amount = 50 +/obj/structure/sign/calendar/directional/north, +/turf/open/floor/wood/large, +/area/station/commons/dorms) +"qlu" = ( +/obj/machinery/atmospherics/pipe/smart/simple/pink/visible/layer2{ + dir = 1 }, -/obj/item/stack/sheet/iron{ - amount = 50 +/obj/machinery/atmospherics/pipe/smart/simple/dark/visible, +/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/incinerator_atmos{ + dir = 4 }, /turf/open/floor/engine, -/area/station/engineering/break_room) +/area/station/engineering/atmos/upper) "qly" = ( /obj/machinery/camera/autoname/directional/north, /turf/open/floor/engine/hull/air, @@ -57504,33 +60216,28 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"qmc" = ( -/obj/effect/turf_decal/siding, -/obj/effect/turf_decal/trimline/white/corner{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) -"qmd" = ( -/obj/structure/lattice/catwalk, -/obj/structure/ladder, -/obj/structure/sign/poster/official/pda_ad/directional/west, -/turf/open/openspace, -/area/station/maintenance/starboard/fore) "qmh" = ( /obj/effect/spawner/random/trash/box, /turf/open/floor/plating, /area/station/maintenance/port) +"qms" = ( +/obj/effect/turf_decal/trimline/yellow/warning{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/yellow/mid_joiner{ + dir = 1 + }, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) +"qmy" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/vending/colavend, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "qmB" = ( /obj/machinery/light_switch/directional/east, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "qmD" = ( /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 @@ -57540,11 +60247,11 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, /area/station/maintenance/department/medical) -"qmI" = ( +"qmT" = ( /obj/structure/cable, -/obj/effect/spawner/random/trash/garbage, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "qmY" = ( /obj/effect/turf_decal/siding/blue{ dir = 6 @@ -57561,29 +60268,29 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/port) -"qnn" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/mail_sorting/engineering/ce_office, -/obj/structure/disposalpipe/sorting/mail/flip{ - dir = 1 +"qnh" = ( +/obj/structure/disposalpipe/segment{ + dir = 5 }, -/obj/machinery/power/apc/auto_name/directional/west, -/turf/open/floor/iron/dark/small, -/area/station/command/heads_quarters/ce) +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "qnt" = ( -/obj/structure/table/wood, -/obj/item/storage/photo_album{ - pixel_x = 2; - pixel_y = 2 +/obj/structure/chair/comfy/black{ + dir = 1 }, -/obj/item/paper_bin{ - pixel_x = -5; - pixel_y = 6 +/obj/effect/landmark/start/captain, +/obj/effect/turf_decal/siding/wood{ + dir = 1 }, -/turf/open/floor/carpet, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) +"qnB" = ( +/obj/structure/window/reinforced/spawner/directional/east, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, +/obj/machinery/meter/monitored/distro_loop, +/obj/effect/turf_decal/box/red, +/turf/open/floor/iron/freezer, +/area/station/engineering/atmos/pumproom) "qnC" = ( /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plating, @@ -57592,18 +60299,6 @@ /obj/machinery/vending/coffee, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"qnN" = ( -/obj/effect/turf_decal/siding/brown, -/obj/structure/rack, -/obj/item/clothing/ears/earmuffs, -/obj/item/clothing/under/color/blue, -/obj/item/clothing/neck/tie/blue{ - pixel_x = -3; - pixel_y = -3 - }, -/obj/item/clothing/head/soft/blue, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "qnR" = ( /obj/structure/lattice/catwalk, /obj/structure/sign/poster/contraband/clown/directional/south, @@ -57618,12 +60313,14 @@ }, /turf/open/openspace, /area/station/maintenance/port/aft) -"qnS" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating, -/area/station/maintenance/port) +"qnU" = ( +/obj/machinery/camera/directional/north{ + c_tag = "Atmospherics - Nitrogen Cell"; + name = "atmospherics camera" + }, +/obj/machinery/light/small/directional/north, +/turf/open/floor/engine/n2, +/area/station/engineering/atmos/upper) "qnW" = ( /obj/effect/turf_decal/tile/dark_blue/anticorner{ dir = 8 @@ -57634,6 +60331,28 @@ dir = 4 }, /area/station/science/robotics) +"qod" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper/stack{ + dir = 1 + }, +/obj/structure/fluff/paper/corner{ + dir = 8 + }, +/obj/item/paper/crumpled{ + pixel_x = -3; + pixel_y = 2 + }, +/turf/open/floor/plating, +/area/station/maintenance/aft) +"qol" = ( +/obj/machinery/camera/directional/west, +/obj/effect/spawner/random/vending/colavend, +/obj/machinery/airalarm/directional/north, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "qom" = ( /obj/machinery/teleport/hub, /obj/effect/turf_decal/tile/green/opposingcorners{ @@ -57658,11 +60377,18 @@ /obj/machinery/suit_storage_unit/hos, /turf/open/floor/wood, /area/station/command/heads_quarters/hos) -"qoD" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/hallway/primary/starboard) +"qoB" = ( +/obj/structure/barricade/sandbags, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/aft/upper) +"qoL" = ( +/obj/machinery/atmospherics/components/tank/air/layer4{ + dir = 4 + }, +/obj/structure/sign/warning/vacuum/external/directional/north, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "qoN" = ( /obj/effect/turf_decal/siding/purple{ dir = 1 @@ -57693,7 +60419,6 @@ input_dir = 2; output_dir = 1 }, -/obj/structure/window/reinforced/spawner/directional/south, /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/plating, /area/station/maintenance/disposal) @@ -57705,15 +60430,21 @@ /obj/structure/cable, /turf/open/floor/engine, /area/station/engineering/supermatter/room) -"qpc" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/turf/open/floor/plating, -/area/station/engineering/main) +"qpn" = ( +/obj/structure/chair/office{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/yellow/filled/warning{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "qpt" = ( -/obj/structure/closet/secure_closet/captains, -/turf/open/floor/wood, +/obj/machinery/camera/autoname/directional/east, +/obj/structure/displaycase/captain{ + pixel_y = 5 + }, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) "qpu" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -57722,31 +60453,31 @@ /obj/machinery/power/apc/auto_name/directional/south, /turf/open/floor/plating, /area/station/maintenance/port) -"qpD" = ( -/obj/machinery/power/apc/auto_name/directional/north, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/station/engineering/transit_tube) "qpG" = ( -/obj/structure/railing{ - dir = 4 - }, -/obj/effect/turf_decal/siding/wood{ - dir = 4 - }, -/obj/effect/spawner/random/vending/snackvend, -/obj/machinery/door/firedoor/border_only{ - dir = 4 +/obj/machinery/newscaster/directional/south, +/turf/open/floor/iron/edge, +/area/station/hallway/primary/central) +"qpH" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/disposalpipe/segment{ + dir = 5 }, /turf/open/floor/wood, -/area/station/command/meeting_room/council) +/area/station/maintenance/aft) "qpI" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/structure/closet_maintenance, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) +"qpJ" = ( +/obj/structure/sign/poster/official/no_erp/directional/north, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted, +/obj/effect/landmark/start/hangover, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) "qpL" = ( /turf/open/floor/engine/co2, /area/station/engineering/atmos/upper) @@ -57754,12 +60485,6 @@ /obj/effect/turf_decal/siding/wood/corner, /turf/open/floor/wood, /area/station/hallway/primary/central) -"qpY" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 5 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "qqd" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/sign/warning/electric_shock/directional/east, @@ -57767,19 +60492,12 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/construction/storage_wing) -"qqe" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/effect/landmark/start/hangover, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "qqi" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/greater) "qqj" = ( @@ -57790,6 +60508,13 @@ /obj/machinery/light/blacklight/directional/south, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"qqs" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "qqv" = ( /obj/machinery/door/window/brigdoor/left/directional/east{ name = "Creature Pen"; @@ -57806,7 +60531,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/fore) "qqC" = ( @@ -57814,7 +60539,7 @@ dir = 1 }, /turf/open/floor/iron/white/textured_corner, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "qqD" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 8 @@ -57834,20 +60559,24 @@ /obj/effect/landmark/start/lawyer, /turf/open/floor/carpet, /area/station/service/lawoffice) -"qqY" = ( -/obj/effect/turf_decal/trimline/yellow/warning{ - dir = 1 +"qqV" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 4 }, -/obj/structure/cable, -/turf/open/floor/engine/hull, -/area/space/nearstation) +/turf/open/floor/wood/large, +/area/station/engineering/lobby) "qrd" = ( /turf/open/openspace, /area/station/medical/abandoned) -"qrt" = ( -/obj/effect/turf_decal/stripes/corner, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) +"qrq" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ + dir = 4 + }, +/obj/structure/cable, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "qrz" = ( /obj/effect/turf_decal/siding/wood{ dir = 8 @@ -57897,12 +60626,16 @@ dir = 4 }, /area/station/hallway/primary/port) -"qrS" = ( -/obj/structure/railing/corner/end/flip{ - dir = 8 +"qrY" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 }, -/turf/open/floor/eighties, -/area/station/maintenance/starboard/fore) +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/cable, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "qrZ" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 4 @@ -57915,7 +60648,9 @@ "qsb" = ( /obj/machinery/camera/autoname/directional/east, /obj/item/radio/intercom/directional/east, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 4 + }, /area/station/hallway/primary/central) "qsd" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -57932,15 +60667,12 @@ /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) "qsi" = ( -/obj/structure/chair/office, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment{ +/obj/machinery/conveyor{ + id = "cargounload"; dir = 4 }, -/turf/open/floor/iron, -/area/station/command/heads_quarters/qm) +/turf/open/floor/iron/dark/textured, +/area/station/cargo/storage) "qsm" = ( /obj/machinery/door/airlock/security/glass{ name = "Security E.V.A. Storage" @@ -57954,29 +60686,29 @@ /obj/effect/mapping_helpers/airlock/red_alert_access, /turf/open/floor/iron/dark, /area/station/security/eva) -"qsC" = ( -/obj/structure/ladder, +"qsr" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, /turf/open/floor/iron/dark, /area/station/engineering/storage/tech) +"qsx" = ( +/obj/machinery/atmospherics/components/unary/outlet_injector/monitored/incinerator_input, +/turf/open/floor/engine/airless, +/area/station/engineering/atmos/upper) "qsD" = ( /obj/machinery/door/airlock/maintenance{ name = "Medbay Maintenance" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical) -"qsM" = ( -/obj/effect/turf_decal/trimline/red/filled/line{ - dir = 1 - }, -/obj/structure/sign/directions/command/directional/north{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/hallway/primary/port) "qsO" = ( /obj/effect/turf_decal/delivery, /obj/structure/closet/firecloset, @@ -58007,14 +60739,25 @@ }, /turf/open/floor/iron, /area/station/engineering/lobby) -"qtC" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 4; - name = "Port to Engine" +"qtl" = ( +/obj/machinery/door/airlock/maintenance, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/obj/effect/turf_decal/trimline/brown, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 8 + }, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) +"qtv" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 2 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "qtM" = ( /obj/machinery/libraryscanner, /obj/machinery/camera/autoname/directional/north, @@ -58032,15 +60775,17 @@ /obj/effect/turf_decal/siding/blue{ dir = 1 }, -/obj/effect/turf_decal/arrows{ - dir = 8 - }, +/obj/machinery/newscaster/directional/south, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "qtW" = ( /obj/effect/turf_decal/stripes/line, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge, /area/station/hallway/primary/central) +"quk" = ( +/obj/structure/closet/emcloset, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "quB" = ( /obj/structure/chair/comfy/brown{ color = "#596479"; @@ -58102,35 +60847,18 @@ /obj/item/crowbar{ pixel_y = 5 }, -/obj/machinery/status_display/evac/directional/north, -/obj/machinery/light_switch/directional/east{ - pixel_y = -5 - }, /obj/machinery/firealarm/directional/east{ pixel_y = 5 }, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/stripes{ + dir = 5 + }, +/turf/open/floor/iron/textured, +/area/station/command/eva) "qvo" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/science/zoo) -"qvr" = ( -/obj/effect/turf_decal/stripes/red/line{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/red/line{ - dir = 8 - }, -/obj/structure/sign/warning/radiation/rad_area/directional/south, -/turf/open/floor/engine, -/area/station/engineering/supermatter) -"qvu" = ( -/obj/machinery/light/directional/south, -/obj/structure/lattice/catwalk, -/obj/machinery/firealarm/directional/south, -/turf/open/openspace, -/area/station/security/checkpoint/supply) "qvL" = ( /obj/machinery/airalarm/directional/south, /obj/machinery/light/directional/south, @@ -58146,15 +60874,6 @@ }, /turf/open/floor/wood, /area/station/service/library) -"qvU" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "qvW" = ( /obj/item/toy/plush/moth{ name = "Moff #1"; @@ -58169,12 +60888,33 @@ /area/station/maintenance/starboard/aft) "qwa" = ( /obj/machinery/camera/autoname/directional/south, +/obj/effect/turf_decal/trimline/green/filled/corner{ + dir = 8 + }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) +"qwb" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/spawner/random/bureaucracy/paper, +/obj/structure/fluff/paper/corner, +/obj/structure/fluff/paper/stack{ + dir = 9 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "qwn" = ( /obj/structure/window/reinforced/spawner/directional/east, /turf/open/space/openspace, /area/space/nearstation) +"qww" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 10 + }, +/obj/structure/closet/radiation, +/obj/machinery/light/small/directional/south, +/obj/structure/sign/poster/official/safety_eye_protection/directional/west, +/turf/open/floor/iron, +/area/station/engineering/lobby) "qwy" = ( /obj/machinery/space_heater, /turf/open/floor/plating, @@ -58194,6 +60934,14 @@ }, /turf/open/floor/glass, /area/station/service/kitchen) +"qwG" = ( +/obj/item/cigbutt{ + pixel_x = 7; + pixel_y = 14 + }, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "qwJ" = ( /obj/machinery/door/firedoor, /obj/structure/table/reinforced, @@ -58208,29 +60956,44 @@ /turf/open/space/openspace, /area/station/solars/starboard/aft) "qxr" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 6 +/obj/structure/disposalpipe/segment{ + dir = 5 }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron, +/turf/open/floor/iron/dark/textured, /area/station/cargo/sorting) +"qxw" = ( +/obj/structure/urinal/directional/west, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "qxA" = ( /obj/effect/turf_decal/trimline/brown/warning{ dir = 8 }, +/obj/effect/decal/cleanable/generic, +/obj/effect/spawner/random/engineering/tracking_beacon, +/obj/effect/landmark/event_spawn, /turf/open/floor/iron, /area/station/cargo/storage) -"qxE" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating/airless, -/area/station/maintenance/starboard/lesser) "qxI" = ( /obj/machinery/camera/autoname/directional/west, /turf/open/floor/engine, /area/station/science/xenobiology) +"qxL" = ( +/obj/structure/table, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/maintenance, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/item/petri_dish/random{ + pixel_x = -14; + pixel_y = 7 + }, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/upper) "qxM" = ( /obj/structure/closet/secure_closet/hydroponics, /obj/effect/turf_decal/tile/green/full, @@ -58242,6 +61005,12 @@ /obj/structure/window/spawner/directional/south, /turf/open/floor/iron, /area/station/maintenance/hallway/abandoned_recreation) +"qxQ" = ( +/obj/machinery/light/warm/dim/directional/west, +/obj/effect/turf_decal/bot_white, +/obj/effect/spawner/random/structure/crate, +/turf/open/floor/iron/dark/textured_large, +/area/station/cargo/storage) "qxR" = ( /obj/item/radio/intercom/directional/west{ freerange = 1; @@ -58250,57 +61019,60 @@ }, /obj/structure/lattice/catwalk, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) -"qxT" = ( -/obj/machinery/atmospherics/pipe/smart/simple/green/visible, -/obj/machinery/meter, +/area/station/ai/satellite/chamber) +"qxV" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper/stack, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) +"qxW" = ( +/obj/item/storage/box/lights/mixed, +/obj/structure/cable, /turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) +/area/station/maintenance/starboard) +"qya" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/commons/fitness/recreation) "qye" = ( /obj/machinery/suit_storage_unit/standard_unit, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/item/radio/intercom/directional/north, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/siding/dark{ + dir = 9 + }, +/obj/effect/turf_decal/box, +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "qyf" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/railing/corner/end/flip, /turf/open/floor/plating, /area/station/maintenance/port/aft) "qyg" = ( -/obj/structure/table/glass, -/obj/item/storage/toolbox/mechanical{ - pixel_y = 11 +/obj/machinery/airalarm/directional/east, +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 8 }, -/obj/item/multitool{ - pixel_x = 6; - pixel_y = 2 +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 8 }, -/obj/structure/fireaxecabinet/directional/south, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/turf/open/floor/iron/dark, -/area/station/command/bridge) -"qyu" = ( -/obj/structure/lattice/catwalk, -/obj/structure/table/glass, -/obj/item/grenade/chem_grenade/smart_metal_foam{ - pixel_x = 1; - pixel_y = 2 +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 4 }, -/obj/item/grenade/chem_grenade/smart_metal_foam{ - pixel_x = 1; - pixel_y = 2 +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 4 }, -/obj/item/grenade/chem_grenade/smart_metal_foam{ - pixel_x = 1; - pixel_y = 2 +/obj/machinery/vending/cigarette{ + pixel_x = 5 }, -/obj/item/wrench, -/obj/item/crowbar/red, -/turf/open/openspace, -/area/station/engineering/break_room) +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "qyy" = ( /obj/effect/turf_decal/siding/blue, /obj/effect/turf_decal/siding/blue{ @@ -58325,12 +61097,14 @@ /obj/item/stack/sheet/plasteel/twenty, /turf/open/floor/iron/dark/textured_corner, /area/station/science/robotics/lab) -"qyU" = ( -/obj/structure/chair{ - dir = 1 +"qyT" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 }, /turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/area/station/maintenance/starboard/upper) "qyW" = ( /obj/machinery/firealarm/directional/north, /obj/effect/turf_decal/stripes/line{ @@ -58338,25 +61112,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/ordnance/storage) -"qzb" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"qzf" = ( -/obj/machinery/door/airlock{ - name = "Kitchen" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) "qzo" = ( /obj/effect/turf_decal/tile/blue/anticorner/contrasted{ dir = 1 @@ -58374,12 +61129,6 @@ dir = 8 }, /area/station/science/ordnance/storage) -"qzB" = ( -/obj/structure/rack, -/obj/item/clothing/gloves/color/fyellow, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "qzF" = ( /obj/structure/cable, /obj/machinery/power/apc/auto_name/directional/north, @@ -58399,19 +61148,13 @@ dir = 4 }, /area/station/medical/abandoned) -"qzQ" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment, -/obj/effect/turf_decal/stripes/white/line{ - dir = 1 - }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/engineering/main) "qzY" = ( /obj/effect/turf_decal/tile/red/opposingcorners, /obj/machinery/firealarm/directional/south, +/obj/machinery/button/door/directional/south{ + name = "Privacy Shutters Control"; + id = "hosprivacy" + }, /turf/open/floor/iron/dark, /area/station/security/brig) "qzZ" = ( @@ -58421,18 +61164,6 @@ }, /turf/open/openspace, /area/station/maintenance/port/aft) -"qAd" = ( -/obj/effect/turf_decal/siding/brown{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/commons/dorms) "qAj" = ( /obj/item/assembly/signaler{ pixel_y = 8 @@ -58452,19 +61183,18 @@ /obj/structure/table/reinforced, /turf/open/floor/iron/dark, /area/station/science/ordnance) -"qAw" = ( +"qAk" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) +"qAq" = ( +/obj/structure/reagent_dispensers/watertank, /obj/effect/decal/cleanable/dirt, -/obj/structure/chair/office, -/obj/structure/fluff/paper/stack{ - dir = 5 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) +/turf/open/floor/iron, +/area/station/maintenance/starboard) "qAx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/trash/mess, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "qAC" = ( /obj/structure/railing{ dir = 10 @@ -58476,17 +61206,13 @@ /turf/open/openspace, /area/station/maintenance/department/medical) "qAI" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 1 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/junction{ +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ dir = 1 }, -/turf/open/floor/iron, -/area/station/cargo/miningoffice) +/obj/machinery/camera/autoname/directional/north, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "qAJ" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -58495,15 +61221,6 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron/dark/smooth_large, /area/station/security/courtroom) -"qAQ" = ( -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ - dir = 9 - }, -/obj/effect/turf_decal/tile/dark/half{ - dir = 1 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "qBe" = ( /obj/machinery/door/airlock/wood{ name = "Curator Office" @@ -58531,18 +61248,6 @@ /obj/structure/cable, /turf/open/floor/wood/large, /area/station/hallway/secondary/service) -"qBj" = ( -/obj/effect/turf_decal/tile/neutral/opposingcorners{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/camera/autoname/directional/north, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/medical/chemistry) "qBm" = ( /obj/structure/disposalpipe/junction/flip, /obj/effect/turf_decal/tile/dark_blue{ @@ -58551,6 +61256,10 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) +"qBr" = ( +/obj/structure/stairs/north, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "qBx" = ( /obj/structure/lattice/catwalk, /obj/structure/railing, @@ -58584,23 +61293,34 @@ /obj/item/tank/internals/anesthetic, /turf/open/floor/iron/white, /area/station/maintenance/hallway/abandoned_recreation) +"qCc" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "space-outpost" + }, +/obj/machinery/door/airlock/external, +/obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/all/engineering/external, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "qCe" = ( /obj/structure/chair/comfy/brown{ dir = 4 }, /obj/machinery/firealarm/directional/west, -/obj/machinery/newscaster/directional/south, -/turf/open/floor/wood, -/area/station/command/heads_quarters/captain/private) -"qCj" = ( /obj/effect/turf_decal/siding/wood{ - dir = 8 - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 }, -/turf/open/floor/wood, -/area/station/commons/fitness/recreation) +/obj/machinery/airalarm/directional/south, +/turf/open/floor/carpet/royalblue, +/area/station/command/heads_quarters/captain/private) +"qCr" = ( +/obj/effect/turf_decal/trimline/neutral, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "qCx" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, @@ -58643,7 +61363,7 @@ }, /obj/effect/landmark/start/cyborg, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "qDe" = ( /obj/structure/disposalpipe/segment{ dir = 2 @@ -58661,21 +61381,6 @@ /obj/machinery/medical_kiosk, /turf/open/floor/iron/dark, /area/station/medical/medbay/central) -"qDi" = ( -/obj/effect/landmark/firealarm_sanity, -/turf/open/openspace, -/area/station/commons/dorms) -"qDn" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Storage Room" - }, -/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 1 - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/port) "qDM" = ( /obj/structure/chair, /obj/machinery/light/directional/west, @@ -58696,6 +61401,18 @@ /obj/structure/cable, /turf/open/floor/iron/dark/textured_large, /area/station/security/prison/safe) +"qEj" = ( +/obj/effect/spawner/random/structure/grille, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) +"qEC" = ( +/obj/machinery/camera/directional/north{ + c_tag = "Atmospherics - Oxygen Supply"; + name = "atmospherics camera" + }, +/obj/machinery/light/small/directional/north, +/turf/open/floor/engine/o2, +/area/station/engineering/atmos/upper) "qEE" = ( /obj/structure/chair{ dir = 8 @@ -58725,6 +61442,11 @@ /obj/structure/extinguisher_cabinet/directional/south, /turf/open/floor/iron, /area/station/science/zoo) +"qEN" = ( +/obj/item/radio/intercom/directional/south, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/security/checkpoint/supply) "qEQ" = ( /obj/structure/rack, /obj/item/clothing/suit/jacket/straight_jacket, @@ -58742,15 +61464,6 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/checkpoint/science) -"qEZ" = ( -/obj/structure/railing/corner{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "qFa" = ( /obj/machinery/airalarm/directional/south, /obj/structure/table/glass, @@ -58778,6 +61491,13 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/medical/cryo) +"qFk" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/turf/open/floor/engine, +/area/station/engineering/atmos/upper) "qFr" = ( /obj/machinery/door/airlock/command{ name = "Teleport Access" @@ -58814,6 +61534,25 @@ "qFO" = ( /turf/open/floor/circuit/green/telecomms/mainframe, /area/station/tcommsat/server) +"qFS" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/firealarm/directional/south, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/gravity_generator) +"qFV" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/lattice/catwalk, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/openspace, +/area/station/maintenance/starboard/central/upper) +"qGe" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "qGi" = ( /obj/machinery/light/small/directional/north, /turf/open/floor/carpet/black, @@ -58827,19 +61566,30 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"qGv" = ( -/obj/structure/chair/sofa/right/brown{ - dir = 1 +"qGn" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/table, +/obj/item/chisel{ + pixel_x = 7; + pixel_y = 4 }, /turf/open/floor/wood, -/area/station/commons/dorms) -"qGx" = ( -/obj/structure/chair/pew/left{ - dir = 4 +/area/station/service/library) +"qGr" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 6 }, -/obj/effect/landmark/start/hangover, -/turf/open/floor/carpet, -/area/station/maintenance/starboard/lesser) +/obj/structure/closet/toolcloset, +/turf/open/floor/iron/dark, +/area/station/engineering/storage) +"qGC" = ( +/obj/effect/spawner/random/structure/crate, +/obj/machinery/power/apc/auto_name/directional/north, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "qGF" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -58852,7 +61602,7 @@ "qGG" = ( /obj/structure/cable, /turf/open/floor/iron/smooth_half, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "qGW" = ( /obj/machinery/door/airlock/command{ name = "E.V.A. Storage" @@ -58862,19 +61612,27 @@ /obj/effect/mapping_helpers/airlock/access/all/command/eva, /obj/machinery/door/firedoor, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "qGZ" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple/layer4{ dir = 9 }, /turf/open/space/openspace, /area/space/nearstation) -"qHf" = ( -/turf/closed/wall, -/area/station/maintenance/disposal/incinerator) "qHg" = ( /turf/open/floor/iron/stairs, /area/station/service/library) +"qHk" = ( +/obj/structure/table, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"qHz" = ( +/obj/machinery/airalarm/directional/north, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/duct, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "qHB" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -58883,11 +61641,10 @@ /turf/open/floor/plating, /area/station/maintenance/central) "qHH" = ( -/obj/structure/table/wood, -/obj/item/camera{ - pixel_y = 4 - }, -/turf/open/floor/wood, +/obj/machinery/power/apc/auto_name/directional/south, +/obj/structure/cable, +/obj/structure/closet/secure_closet/captains, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) "qHJ" = ( /obj/structure/railing{ @@ -58900,27 +61657,51 @@ /obj/effect/turf_decal/tile/brown/full, /turf/open/floor/iron/large, /area/station/maintenance/starboard/central) -"qHN" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"qHP" = ( +/obj/structure/table/reinforced, +/obj/item/flashlight, +/obj/item/storage/toolbox/mechanical, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/item/analyzer, +/obj/item/analyzer, +/obj/machinery/status_display/evac/directional/north, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "qHQ" = ( -/obj/effect/turf_decal/trimline/brown/filled/corner{ - dir = 1 +/obj/machinery/light/directional/east, +/obj/machinery/status_display/supply{ + pixel_x = 32 }, -/obj/machinery/conveyor_switch/oneway{ - id = "cargoload"; - name = "Loading Conveyor"; - pixel_x = -13; - pixel_y = -5 +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 4 }, +/obj/machinery/conveyor{ + dir = 1; + id = "cargoload" + }, +/obj/effect/turf_decal/stripes/end, /turf/open/floor/iron, /area/station/cargo/storage) -"qHT" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"qHW" = ( +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/effect/turf_decal/bot_white, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"qHX" = ( +/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ + dir = 4 + }, +/obj/effect/turf_decal/siding/dark{ + dir = 1 + }, +/obj/structure/railing{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "qHZ" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -58933,18 +61714,6 @@ }, /turf/open/floor/wood/large, /area/station/command/heads_quarters/cmo) -"qIa" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/chair{ - dir = 8; - pixel_y = -2 - }, -/obj/structure/disposalpipe/sorting/mail/flip{ - dir = 1 - }, -/obj/effect/mapping_helpers/mail_sorting/science/ordnance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "qIc" = ( /obj/structure/table/glass, /obj/item/book/manual/wiki/surgery{ @@ -58958,12 +61727,20 @@ }, /turf/open/floor/iron/dark/textured_half, /area/station/medical/surgery) +"qIo" = ( +/obj/machinery/door/airlock/engineering/glass{ + name = "Supermatter Engine Room" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/obj/machinery/door/firedoor/heavy, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "qIp" = ( /obj/item/kirbyplants/organic/plant9{ pixel_x = 4 }, /turf/open/floor/carpet/black, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "qIz" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/burnt_floor, @@ -58975,35 +61752,63 @@ /turf/open/openspace, /area/station/maintenance/port/aft) "qII" = ( -/obj/structure/railing/corner{ +/obj/machinery/modular_computer/preset/id{ dir = 4 }, -/obj/structure/lattice/catwalk, -/obj/structure/railing{ +/obj/effect/turf_decal/tile/green/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"qIL" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/structure/broken_flooring/singular/directional/west, +/obj/structure/broken_flooring/singular/always_floorplane/directional, +/obj/structure/broken_flooring/singular, +/obj/item/assembly/mousetrap, +/obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/openspace, -/area/station/hallway/primary/central) -"qJb" = ( -/obj/machinery/disposal/bin, -/obj/item/radio/intercom/directional/south, -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 10 +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/port) +"qIQ" = ( +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 6 }, -/obj/effect/turf_decal/bot, -/obj/structure/disposalpipe/trunk{ +/obj/effect/turf_decal/trimline/green/filled/mid_joiner, +/obj/effect/turf_decal/trimline/green/filled/mid_joiner{ + dir = 4 + }, +/turf/open/floor/iron/textured_large, +/area/station/medical/virology) +"qIZ" = ( +/obj/structure/reagent_dispensers/plumbed{ dir = 1 }, -/turf/open/floor/iron, +/obj/machinery/airalarm/directional/south, +/turf/open/floor/plating, +/area/station/maintenance/aft/upper) +"qJb" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/light/directional/south, +/turf/open/floor/iron/dark/textured, /area/station/cargo/sorting) "qJf" = ( /turf/open/floor/wood, /area/station/service/lawoffice) -"qJn" = ( -/obj/structure/mirror/directional/north, -/obj/structure/sink/directional/south, -/turf/open/floor/iron/dark, -/area/station/commons/dorms) +"qJk" = ( +/mob/living/basic/axolotl{ + name = "The Lost Axolotl" + }, +/obj/structure/sink/directional/west, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/structure/mirror/broken/directional/east, +/obj/structure/cable, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard/upper) "qJo" = ( /obj/effect/turf_decal/trimline/green/filled/corner{ dir = 8 @@ -59011,16 +61816,6 @@ /obj/machinery/light/directional/west, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) -"qJA" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/item/weldingtool/empty{ - pixel_x = -5; - pixel_y = -6 - }, -/obj/effect/turf_decal/bot, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "qJB" = ( /obj/effect/turf_decal/bot_white/right, /turf/open/floor/iron/dark/textured_large, @@ -59064,7 +61859,7 @@ dir = 9 }, /turf/open/floor/engine/hull/reinforced/air, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "qKq" = ( /turf/open/openspace, /area/station/science/zoo) @@ -59088,12 +61883,17 @@ /turf/open/floor/engine/hull/air, /area/station/maintenance/port) "qKB" = ( -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/siding/dark{ + dir = 1 + }, +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "qKC" = ( -/obj/structure/sign/clock/directional/west, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/obj/structure/lattice/catwalk, +/obj/structure/table/reinforced, +/obj/item/storage/photo_album/qm, +/turf/open/openspace, +/area/station/cargo/storage) "qKG" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -59152,7 +61952,7 @@ /area/station/hallway/secondary/entry) "qKS" = ( /obj/structure/dresser, -/turf/open/floor/wood, +/turf/open/floor/wood/tile, /area/station/command/heads_quarters/hop) "qKV" = ( /obj/effect/spawner/structure/window/reinforced, @@ -59162,9 +61962,20 @@ /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/commons/vacant_room/office) +"qKY" = ( +/obj/structure/closet/secure_closet/personal/cabinet, +/obj/machinery/button/door/directional/west{ + id = "Cabin8"; + name = "Cabin Bolt Control"; + normaldoorcontrol = 1; + specialfunctions = 4 + }, +/obj/structure/sign/poster/official/random/directional/north, +/turf/open/floor/wood, +/area/station/commons/dorms) "qLg" = ( /obj/machinery/door/airlock{ - id_tag = "commissarydoor"; + id_tag = "officecommissarydoor"; name = "Vacant Office" }, /obj/effect/turf_decal/tile/green/fourcorners, @@ -59173,16 +61984,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) -"qLm" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/yellow/filled/corner, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5{ - dir = 4 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "qLy" = ( /obj/structure/lattice/catwalk, /turf/open/openspace, @@ -59209,10 +62010,12 @@ /obj/machinery/camera/autoname/directional/north, /turf/open/floor/wood/large, /area/station/service/theater_dressing) -"qLZ" = ( -/obj/structure/grille, -/turf/open/openspace, -/area/station/maintenance/starboard/fore) +"qLQ" = ( +/obj/item/stack/rods{ + amount = 7 + }, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/aft/upper) "qMe" = ( /obj/effect/decal/cleanable/glitter{ color = "ff8080" @@ -59255,10 +62058,21 @@ dir = 8 }, /area/station/medical/morgue) -"qMC" = ( -/obj/effect/spawner/random/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"qMF" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ + dir = 5 + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "qMI" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 8 @@ -59298,42 +62112,36 @@ }, /obj/machinery/light_switch/directional/east, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "qNd" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/station/maintenance/starboard/central) "qNe" = ( -/turf/open/floor/carpet, +/turf/open/floor/iron/edge{ + dir = 4 + }, /area/station/hallway/primary/central) "qNf" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) -"qNg" = ( -/obj/structure/stairs/south, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +/area/station/ai/satellite/chamber) "qNi" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/door/poddoor/shutters{ - id = "qm_cargobay"; - name = "Cargo Bay Shutters" +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment{ + dir = 8 }, -/turf/open/floor/plating, -/area/station/cargo/storage) -"qNn" = ( -/obj/structure/table, -/obj/effect/spawner/random/bureaucracy/paper, -/obj/item/radio{ - desc = "An old handheld radio. You could use it, if you really wanted to."; - icon_state = "radio"; - name = "old radio" +/obj/effect/decal/cleanable/blood/oil/slippery, +/turf/open/floor/iron/dark/textured, +/area/station/cargo/sorting) +"qNo" = ( +/obj/machinery/computer/slot_machine{ + pixel_y = 2 }, -/obj/structure/sign/poster/contraband/kss13/directional/west, -/turf/open/floor/wood, -/area/station/commons/dorms) +/obj/effect/decal/cleanable/blood/oil, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "qNp" = ( /obj/effect/turf_decal/tile/yellow/opposingcorners{ dir = 1 @@ -59343,31 +62151,23 @@ }, /turf/open/floor/iron/dark, /area/station/engineering/storage/tech) -"qNq" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper/stack, -/obj/structure/fluff/paper/stack{ - dir = 1 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "qNw" = ( /obj/effect/turf_decal/siding/wood{ dir = 4 }, /turf/open/floor/wood, /area/station/hallway/primary/central) +"qNG" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/turf/open/floor/plating, +/area/station/commons/dorms) "qNK" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/portable_atmospherics/canister/air, /obj/machinery/atmospherics/components/unary/portables_connector/visible/layer4, /turf/open/floor/iron, /area/station/hallway/secondary/entry) -"qNM" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/structure/closet/emcloset, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "qNN" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -59376,6 +62176,11 @@ /obj/machinery/camera/autoname/directional/east, /turf/open/floor/iron/dark, /area/station/security/brig) +"qNP" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "qNV" = ( /obj/effect/turf_decal/stripes/corner{ dir = 1 @@ -59388,33 +62193,11 @@ /obj/machinery/camera/autoname/directional/east, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) -"qNW" = ( -/obj/item/trash/ready_donk, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"qNX" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/light/directional/east, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) -"qOm" = ( -/obj/structure/closet/crate, -/obj/item/gps, -/obj/item/assembly/timer, -/obj/item/gps, -/obj/item/assembly/signaler, -/obj/item/analyzer{ - pixel_x = 7; - pixel_y = 3 - }, -/obj/structure/extinguisher_cabinet/directional/west, -/turf/open/floor/iron, -/area/station/commons/storage/primary) -"qOv" = ( -/obj/item/radio/intercom/directional/west, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +"qOj" = ( +/obj/structure/chair/stool/directional/west, +/obj/effect/landmark/start/hangover, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "qOw" = ( /obj/effect/turf_decal/trimline/green/filled/corner{ dir = 4 @@ -59422,6 +62205,15 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) +"qOC" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/stairs/medium, +/area/station/maintenance/starboard) +"qOE" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/aft) "qOG" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -59437,6 +62229,13 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood/large, /area/station/hallway/secondary/service) +"qPf" = ( +/obj/item/grapple_gun{ + pixel_x = 2; + pixel_y = 3 + }, +/turf/open/floor/plating, +/area/station/maintenance/aft/upper) "qPj" = ( /turf/closed/wall, /area/station/cargo/sorting) @@ -59469,10 +62268,6 @@ }, /turf/open/floor/iron/dark, /area/station/engineering/storage/tech) -"qPw" = ( -/obj/effect/spawner/random/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "qPy" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/segment{ @@ -59530,7 +62325,7 @@ /obj/machinery/light/directional/south, /obj/machinery/washing_machine, /turf/open/floor/iron/white/textured_half, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "qQb" = ( /obj/structure/table/wood, /obj/item/newspaper{ @@ -59544,31 +62339,30 @@ "qQd" = ( /turf/closed/wall/r_wall, /area/station/maintenance/central) +"qQe" = ( +/obj/structure/chair/stool/directional/north, +/obj/effect/landmark/start/hangover, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "qQf" = ( /obj/effect/turf_decal/siding/blue{ dir = 5 }, -/obj/machinery/computer/station_alert, /obj/structure/railing{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet, -/area/station/command/bridge) -"qQj" = ( -/obj/item/radio/intercom/directional/south, -/obj/structure/closet/crate/trashcart/laundry, -/obj/effect/spawner/random/clothing/costume, -/obj/effect/spawner/random/clothing/backpack, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) -"qQv" = ( -/obj/effect/decal/cleanable/plasma, -/obj/machinery/atmospherics/pipe/smart/manifold/yellow/visible{ +/obj/effect/turf_decal/trimline/dark_blue/filled/end{ dir = 4 }, -/turf/open/floor/iron/smooth, -/area/station/engineering/hallway) +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "qQx" = ( /obj/structure/reagent_dispensers/wall/peppertank/directional/north, /obj/effect/turf_decal/stripes/end, @@ -59626,16 +62420,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood, /area/station/service/abandoned_gambling_den) -"qRb" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ +"qRg" = ( +/obj/machinery/atmospherics/pipe/layer_manifold/scrubbers/visible/layer2{ dir = 4 }, -/obj/machinery/camera/autoname/directional/east, -/turf/open/floor/iron, -/area/station/engineering/lobby) -"qRp" = ( -/turf/open/floor/glass/reinforced/plasma, -/area/station/engineering/atmos/project) +/turf/closed/wall/r_wall, +/area/station/engineering/atmos/pumproom) "qRq" = ( /obj/effect/turf_decal/tile/neutral/opposingcorners{ dir = 1 @@ -59663,53 +62453,31 @@ }, /turf/open/floor/wood/large, /area/station/service/library) -"qRL" = ( -/obj/effect/turf_decal/siding, -/obj/effect/turf_decal/trimline/white/corner{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) "qSd" = ( /obj/structure/flora/bush/fullgrass/style_random, /turf/open/floor/grass, /area/station/hallway/secondary/entry) "qSf" = ( /turf/closed/wall, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) +"qSj" = ( +/obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ + dir = 5 + }, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "qSk" = ( /turf/closed/wall, /area/station/maintenance/department/science/central) -"qSs" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/trunk/multiz/down{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/commons/dorms) "qSv" = ( /obj/structure/table/wood/poker, -/obj/item/flashlight/lamp/green{ - pixel_x = -8; - pixel_y = 14 - }, /obj/item/clothing/head/fedora/white, -/turf/open/floor/wood, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) "qSy" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -59726,13 +62494,6 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"qSD" = ( -/obj/effect/turf_decal/trimline/purple/filled/line{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) "qSG" = ( /obj/structure/extinguisher_cabinet/directional/south, /obj/machinery/atmospherics/components/trinary/mixer/flipped{ @@ -59741,11 +62502,6 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/iron/dark/textured_edge, /area/station/science/ordnance/storage) -"qSP" = ( -/obj/machinery/vending/coffee, -/obj/machinery/light/directional/east, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "qST" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, @@ -59755,6 +62511,10 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/fore) +"qTa" = ( +/obj/machinery/rnd/production/circuit_imprinter, +/turf/open/floor/iron/dark/smooth_large, +/area/station/engineering/storage) "qTb" = ( /obj/effect/turf_decal/tile/purple/opposingcorners{ dir = 1 @@ -59766,10 +62526,6 @@ /obj/structure/stairs/north, /turf/open/floor/iron/stairs/medium, /area/station/medical/virology) -"qTk" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/iron/dark, -/area/station/engineering/lobby) "qTl" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -59777,21 +62533,6 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron/dark, /area/station/science/lobby) -"qTm" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, -/turf/open/floor/plating/airless, -/area/station/maintenance/starboard/lesser) -"qTt" = ( -/obj/machinery/firealarm/directional/east, -/obj/machinery/camera/autoname/directional/south, -/obj/structure/closet/secure_closet/security/engine, -/obj/effect/turf_decal/trimline/red/filled/line{ - dir = 6 - }, -/turf/open/floor/iron/dark, -/area/station/security/checkpoint/engineering) "qTy" = ( /obj/effect/spawner/random/structure/crate, /turf/open/floor/plating, @@ -59799,9 +62540,14 @@ "qTG" = ( /obj/structure/flora/bush/fullgrass/style_random, /obj/structure/flora/bush/ferny/style_random, -/obj/effect/landmark/start/hangover, /turf/open/floor/grass, /area/station/hallway/primary/central) +"qTT" = ( +/obj/machinery/door/airlock/public/glass, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/door/firedoor, +/turf/open/floor/iron/dark/textured, +/area/station/commons/locker) "qTX" = ( /obj/structure/lattice/catwalk, /obj/machinery/computer/security{ @@ -59809,6 +62555,12 @@ }, /turf/open/openspace, /area/station/security/checkpoint/customs) +"qTZ" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/white, +/area/station/maintenance/starboard) "qUa" = ( /obj/effect/mapping_helpers/airlock/access/all/service/kitchen, /obj/effect/decal/cleanable/dirt, @@ -59818,11 +62570,11 @@ /obj/structure/plasticflaps/kitchen, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"qUq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/mop_bucket, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) +"qUo" = ( +/obj/effect/spawner/random/trash/hobo_squat, +/obj/effect/spawner/random/engineering/toolbox, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "qUt" = ( /obj/effect/turf_decal/trimline/red/filled/line, /obj/structure/chair/office, @@ -59850,8 +62602,21 @@ }, /turf/open/floor/grass, /area/station/science/genetics) +"qUD" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ + dir = 2 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/edge{ + dir = 1 + }, +/area/station/hallway/primary/central) "qUG" = ( /obj/effect/decal/cleanable/dirt, +/obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/central) "qUQ" = ( @@ -59870,13 +62635,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) -"qVd" = ( -/obj/effect/turf_decal/siding/brown{ - dir = 8 - }, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/iron, -/area/station/commons/dorms) "qVj" = ( /obj/effect/turf_decal/siding/thinplating_new/dark, /obj/machinery/power/apc/auto_name/directional/south, @@ -59909,6 +62667,10 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/wood/tile, /area/station/security/detectives_office/private_investigators_office) +"qVv" = ( +/obj/structure/grille/broken, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "qVz" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -59930,6 +62692,11 @@ /obj/machinery/firealarm/directional/west, /turf/open/floor/iron, /area/station/engineering/storage_shared) +"qVE" = ( +/obj/machinery/camera/autoname/directional/south, +/obj/structure/cable, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "qVJ" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 @@ -59942,8 +62709,13 @@ /turf/open/floor/iron/dark, /area/station/service/chapel) "qVO" = ( -/turf/closed/wall, +/turf/closed/wall/r_wall, /area/station/command/bridge) +"qVU" = ( +/obj/machinery/camera/autoname/directional/west, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos) "qVY" = ( /obj/machinery/door/airlock/medical/glass{ name = "Chemistry" @@ -59995,15 +62767,11 @@ }, /obj/machinery/status_display/evac/directional/north, /turf/open/openspace, -/area/station/command/bridge) -"qWv" = ( -/obj/structure/table/wood/poker, -/obj/item/toy/cards/deck{ - pixel_y = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) +/area/station/command/meeting_room/council) +"qWr" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "qWy" = ( /obj/effect/turf_decal/siding/dark_blue/corner{ dir = 1 @@ -60031,32 +62799,36 @@ /area/station/medical/psychology) "qXc" = ( /obj/machinery/medical_kiosk, -/obj/effect/turf_decal/tile/blue/opposingcorners{ - dir = 1 +/obj/effect/turf_decal/box/white{ + color = "#52B4E9" }, -/turf/open/floor/iron/dark, +/turf/open/floor/iron/dark/textured_large, /area/station/medical/medbay/lobby) -"qXj" = ( +"qXh" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +/obj/machinery/duct, +/obj/structure/railing/corner{ + dir = 8 + }, +/turf/open/floor/catwalk_floor/iron, +/area/station/commons/dorms) "qXl" = ( /obj/effect/turf_decal/siding/blue{ dir = 1 }, -/obj/machinery/status_display/evac/directional/north, -/obj/machinery/camera/autoname/directional/north, +/obj/machinery/status_display/ai/directional/north, /turf/open/openspace, -/area/station/command/bridge) +/area/station/command/meeting_room/council) "qXo" = ( /obj/machinery/status_display/ai/directional/north, /obj/structure/chair/sofa/corp/left, /turf/open/floor/carpet/executive, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "qXr" = ( /obj/structure/sign/departments/telecomms/directional/east, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -60065,22 +62837,7 @@ /turf/open/floor/iron/smooth_edge{ dir = 4 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) -"qXx" = ( -/obj/machinery/atmospherics/components/binary/pump{ - name = "Mix to Gas" - }, -/obj/effect/turf_decal/trimline/yellow, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"qXH" = ( -/obj/structure/cable, -/obj/effect/landmark/start/depsec/engineering, -/obj/structure/chair/office{ - dir = 3 - }, -/turf/open/floor/iron/dark, -/area/station/security/checkpoint/engineering) +/area/station/ai/satellite/foyer) "qXI" = ( /obj/machinery/door/airlock/external, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -60106,6 +62863,12 @@ dir = 8 }, /area/station/service/chapel) +"qYb" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/effect/turf_decal/bot, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "qYi" = ( /obj/machinery/portable_atmospherics/scrubber/huge, /obj/effect/turf_decal/bot, @@ -60120,6 +62883,7 @@ /obj/structure/table/reinforced, /obj/effect/decal/cleanable/dirt, /obj/machinery/firealarm/directional/south, +/obj/item/wrench, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) "qYk" = ( @@ -60128,7 +62892,7 @@ /obj/effect/mapping_helpers/burnt_floor, /obj/item/radio/intercom/directional/east, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "qYn" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 @@ -60142,18 +62906,23 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/iron/dark, /area/station/security/brig) -"qYs" = ( -/obj/structure/disposalpipe/segment{ - dir = 10 - }, +"qYr" = ( +/obj/effect/spawner/random/trash/bin, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/engineering/storage_shared) "qYB" = ( /obj/structure/chair/greyscale{ dir = 1 }, /turf/open/floor/glass/reinforced, /area/station/hallway/secondary/construction) +"qYK" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper/stack{ + dir = 1 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "qYM" = ( /obj/item/kirbyplants/random, /obj/machinery/light/directional/east, @@ -60169,6 +62938,22 @@ /obj/item/sticker/pslime, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"qYP" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/door/airlock/engineering{ + name = "Engine Room" + }, +/obj/structure/disposalpipe/segment{ + dir = 2 + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/obj/machinery/door/firedoor, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "atmosengimainttriangle" + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/main) "qYU" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -60190,31 +62975,19 @@ /obj/structure/flora/bush/flowers_pp/style_random, /turf/open/floor/grass, /area/station/science/genetics) -"qYY" = ( -/obj/machinery/airalarm/directional/south, -/obj/structure/reagent_dispensers/fueltank/large, -/obj/effect/turf_decal/bot, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) -"qZv" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/generic_maintenance_landmark, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"qZB" = ( -/obj/machinery/door/airlock{ - name = "Commentator Stand Access" - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 1 +"qZx" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 8 }, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"qZE" = ( -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/lobby) +/area/station/maintenance/department/crew_quarters/dorms) +"qZy" = ( +/obj/structure/closet, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "qZH" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 @@ -60232,14 +63005,7 @@ "qZQ" = ( /obj/machinery/flasher/directional/north, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai_upload) -"qZW" = ( -/obj/item/clothing/head/cone{ - pixel_x = -5; - pixel_y = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/ai/upload/chamber) "qZX" = ( /obj/machinery/door/airlock/security{ name = "Armory" @@ -60249,7 +63015,18 @@ /obj/effect/turf_decal/tile/red/fourcorners, /obj/effect/mapping_helpers/airlock/access/all/security/armory, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) +"qZY" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/structure/rack, +/obj/effect/spawner/random/techstorage/security_all, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "qZZ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -60260,18 +63037,6 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"raa" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) -"rad" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/mix_output{ - dir = 4 - }, -/turf/open/floor/engine/vacuum, -/area/station/maintenance/disposal/incinerator) "rah" = ( /obj/structure/rack, /obj/item/reagent_containers/cup/bottle/iron{ @@ -60290,6 +63055,12 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/chem_storage) +"rai" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/machinery/duct, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "ran" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment{ @@ -60313,13 +63084,21 @@ }, /turf/open/floor/glass, /area/station/security/brig) +"raE" = ( +/obj/structure/tank_dispenser{ + pixel_x = -1 + }, +/obj/effect/turf_decal/bot, +/obj/machinery/status_display/ai/directional/north, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "raF" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 5 +/obj/effect/turf_decal/trimline/brown/arrow_ccw{ + dir = 1 }, -/obj/machinery/computer/order_console/mining, +/obj/effect/turf_decal/trimline/brown/arrow_cw, /turf/open/floor/iron, -/area/station/cargo/miningoffice) +/area/station/cargo/storage) "raN" = ( /obj/machinery/airalarm/directional/north, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -60360,6 +63139,16 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/engine, /area/station/service/hydroponics) +"raU" = ( +/obj/effect/decal/remains/human, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/upper) "rba" = ( /obj/structure/spider/stickyweb, /turf/open/floor/plating, @@ -60370,6 +63159,15 @@ }, /turf/closed/wall/r_wall, /area/station/engineering/atmos/upper) +"rbt" = ( +/obj/effect/turf_decal/stripes{ + dir = 8 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/turf/open/floor/iron/textured, +/area/station/command/eva) "rbx" = ( /obj/machinery/newscaster/directional/west, /obj/effect/turf_decal/tile/blue/opposingcorners{ @@ -60408,27 +63206,39 @@ }, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"rce" = ( -/obj/item/clothing/head/cone{ - pixel_x = 6; - pixel_y = -9 - }, +"rcc" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/structure/tank_holder, +/obj/machinery/airalarm/directional/east, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard/fore/upper) +"rci" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/computer/atmos_control/nocontrol/incinerator, +/obj/machinery/light/directional/north, +/obj/machinery/power/terminal{ + dir = 8 + }, +/obj/machinery/newscaster/directional/north, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos/upper) "rcl" = ( /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, /area/station/engineering/storage_shared) -"rcs" = ( -/obj/structure/table, -/obj/effect/spawner/random/maintenance/two, -/obj/structure/sign/poster/contraband/space_up/directional/east, -/obj/structure/sign/poster/contraband/ambrosia_vulgaris/directional/south, -/turf/open/floor/eighties, -/area/station/maintenance/starboard/fore) "rct" = ( /turf/closed/wall, /area/station/engineering/storage) +"rcA" = ( +/obj/machinery/atmospherics/components/binary/pump/off{ + dir = 2; + name = "Chamber to Mix" + }, +/obj/effect/turf_decal/trimline/purple, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "rcF" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 1 @@ -60440,7 +63250,7 @@ /area/station/cargo/storage) "rcG" = ( /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "rdb" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -60451,6 +63261,13 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/medical/medbay/central) +"rdh" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "rdk" = ( /obj/structure/table, /obj/item/food/chocolatebar{ @@ -60465,10 +63282,6 @@ /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) -"rdl" = ( -/obj/effect/spawner/random/trash/grille_or_waste, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "rdm" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 4 @@ -60497,38 +63310,22 @@ /area/station/hallway/primary/central) "rdx" = ( /obj/machinery/status_display/ai/directional/north, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) -"rdN" = ( -/obj/machinery/door/airlock{ - name = "Emergency Storage" - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"rdV" = ( -/obj/machinery/door/airlock/maintenance, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"rea" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Virology Maintenance" +/turf/open/floor/iron/edge{ + dir = 1 }, -/obj/effect/mapping_helpers/airlock/access/all/medical/virology, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, +/area/station/hallway/primary/central) +"rdz" = ( +/obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/segment{ dir = 4 }, /turf/open/floor/plating, -/area/station/maintenance/port) +/area/station/maintenance/aft) +"rdW" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment, +/turf/open/floor/iron, +/area/station/commons/dorms) "rec" = ( /obj/machinery/light/small/directional/west, /obj/structure/chair/comfy/beige{ @@ -60555,17 +63352,24 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/station/maintenance/solars/starboard/fore) -"req" = ( -/obj/effect/turf_decal/trimline/red/filled/corner{ - dir = 1 - }, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) "rey" = ( /obj/structure/lattice/catwalk, /obj/machinery/camera/autoname/directional/north, /turf/open/openspace, /area/station/hallway/secondary/construction) +"reI" = ( +/obj/structure/table, +/obj/item/wirecutters, +/obj/item/screwdriver{ + pixel_y = 12 + }, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/item/stack/cable_coil, +/obj/machinery/light/small/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "reN" = ( /obj/machinery/airalarm/directional/south, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -60573,6 +63377,16 @@ /obj/machinery/light/small/directional/south, /turf/open/floor/iron/dark, /area/station/security/interrogation) +"reW" = ( +/obj/structure/closet/secure_closet/personal, +/obj/item/clothing/shoes/winterboots, +/obj/item/clothing/suit/hooded/wintercoat, +/obj/effect/turf_decal/tile/dark_green/half/contrasted, +/obj/effect/turf_decal/tile/neutral/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/commons/locker) "rfc" = ( /obj/structure/cable, /obj/effect/turf_decal/siding/dark{ @@ -60592,7 +63406,15 @@ dir = 1 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) +"rfk" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/siding/dark{ + dir = 6 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "rfr" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/airalarm/directional/west, @@ -60609,13 +63431,9 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/effect/decal/cleanable/dirt, +/obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/station/maintenance/starboard/central) -"rfE" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/lattice/catwalk, -/turf/open/water, -/area/station/maintenance/starboard/fore) "rfI" = ( /obj/item/tank/internals/oxygen/yellow, /turf/open/floor/engine/hull, @@ -60630,13 +63448,10 @@ /area/station/medical/medbay/central) "rfU" = ( /obj/machinery/light/directional/west, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 8 + }, /area/station/hallway/primary/central) -"rga" = ( -/obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "rgb" = ( /obj/machinery/vending/cigarette/beach, /turf/open/floor/iron/dark/smooth_large, @@ -60654,17 +63469,24 @@ /turf/open/floor/iron/dark, /area/station/security/interrogation) "rgj" = ( -/obj/structure/table/wood, -/obj/item/flashlight/lamp/green{ - pixel_x = 1; - pixel_y = 16 - }, -/obj/item/book/manual/wiki/security_space_law{ - pixel_x = 1; - pixel_y = 6 +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ + dir = 9 }, -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"rgq" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/firedoor, +/turf/open/floor/plating, +/area/station/engineering/engine_smes) +"rgL" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "rhx" = ( /obj/effect/turf_decal/siding/dark_blue{ dir = 1 @@ -60680,10 +63502,6 @@ /obj/effect/spawner/random/maintenance, /turf/open/floor/iron, /area/station/construction/storage_wing) -"rhD" = ( -/obj/machinery/holopad, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) "rhE" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, @@ -60712,18 +63530,6 @@ /obj/effect/turf_decal/tile/purple/opposingcorners, /turf/open/floor/iron, /area/station/maintenance/starboard/aft) -"rhM" = ( -/obj/effect/turf_decal/trimline/white/corner{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) "rhP" = ( /obj/effect/turf_decal/tile/blue{ dir = 8 @@ -60731,17 +63537,21 @@ /obj/effect/turf_decal/tile/yellow/opposingcorners, /turf/open/floor/iron/dark, /area/station/medical/chemistry) +"rhT" = ( +/obj/effect/spawner/random/structure/crate, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/aft) "rih" = ( /turf/open/floor/plating, /area/station/maintenance/central) -"riv" = ( -/obj/item/trash/shok_roks/berry, -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/port) +"riB" = ( +/obj/machinery/airalarm/directional/west, +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk, +/obj/effect/turf_decal/siding/yellow, +/turf/open/floor/engine, +/area/station/command/heads_quarters/ce) "riD" = ( /turf/closed/wall, /area/station/maintenance/port) @@ -60755,11 +63565,16 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood/large, /area/station/service/library) -"riI" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/light/directional/north, -/turf/open/openspace, -/area/station/engineering/break_room) +"riN" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + name = "Cargo Bay Shutters"; + id = "qm_cargobay"; + dir = 8; + pixel_y = 1 + }, +/turf/open/floor/plating, +/area/station/cargo/storage) "riR" = ( /obj/structure/railing{ dir = 6 @@ -60781,11 +63596,8 @@ /obj/effect/mapping_helpers/airlock/access/any/science/ordnance, /obj/machinery/button/ignition/incinerator/ordmix{ pixel_x = 24; - pixel_y = -6 - }, -/obj/machinery/button/door/incinerator_vent_ordmix{ - pixel_x = 24; - pixel_y = 8 + pixel_y = -6; + dir = 4 }, /obj/machinery/airlock_controller/incinerator_ordmix{ pixel_x = -22 @@ -60813,20 +63625,19 @@ }, /turf/open/floor/carpet, /area/station/command/corporate_showroom) +"rjc" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 2 + }, +/turf/open/floor/iron, +/area/station/commons/dorms) "rjd" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/turf_decal/tile/red/opposingcorners, /turf/open/floor/iron/dark, /area/station/maintenance/port) -"rjj" = ( -/obj/structure/chair/office{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/yellow/filled/warning{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "rjz" = ( /obj/structure/table, /obj/effect/spawner/random/entertainment/drugs, @@ -60854,7 +63665,14 @@ /obj/effect/turf_decal/siding/dark, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) +"rjM" = ( +/obj/structure/reagent_dispensers/fueltank/large, +/obj/effect/turf_decal/bot, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/item/radio/intercom/directional/south, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "rjO" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/blue/full, @@ -60870,12 +63688,6 @@ /obj/structure/table, /turf/open/floor/wood, /area/station/service/library) -"rkf" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/airalarm/directional/south, -/obj/machinery/camera/autoname/directional/south, -/turf/open/floor/carpet/black, -/area/station/service/library/private) "rki" = ( /obj/effect/spawner/structure/window/reinforced/plasma, /turf/open/floor/engine, @@ -60886,6 +63698,18 @@ /obj/effect/turf_decal/tile/blue/opposingcorners, /turf/open/floor/iron/cafeteria, /area/station/maintenance/port) +"rky" = ( +/obj/effect/turf_decal/trimline/green/filled/corner{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/hallway/primary/starboard) +"rkA" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/vatgrower, +/turf/open/floor/engine, +/area/station/maintenance/starboard) "rkB" = ( /obj/effect/spawner/random/vending/colavend, /obj/effect/decal/cleanable/cobweb/cobweb2, @@ -60896,6 +63720,19 @@ /obj/structure/chair/stool/bar/directional/east, /turf/open/floor/carpet/orange, /area/station/commons/lounge) +"rkE" = ( +/obj/effect/turf_decal/siding{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/white/line, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "rkF" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/item/radio/intercom/directional/west, @@ -60945,11 +63782,6 @@ /obj/machinery/newscaster/directional/north, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/commissary) -"rkU" = ( -/obj/structure/cable, -/obj/item/banner/command/mundane, -/turf/open/floor/plating, -/area/station/maintenance/port) "rkW" = ( /obj/effect/turf_decal/bot_white, /turf/open/floor/iron/dark/smooth_large, @@ -60963,7 +63795,8 @@ /area/station/maintenance/port/greater) "rla" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, +/obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/all/command/general, /turf/open/floor/plating, /area/station/maintenance/central) "rlq" = ( @@ -60972,6 +63805,23 @@ /obj/structure/cable, /turf/open/floor/grass, /area/station/hallway/secondary/entry) +"rls" = ( +/obj/effect/turf_decal/siding/brown{ + dir = 4 + }, +/obj/machinery/disposal/bin/tagger, +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/disposalpipe/trunk{ + dir = 1 + }, +/obj/effect/turf_decal/tile/dark_green/anticorner/contrasted{ + dir = 1 + }, +/obj/machinery/digital_clock/directional/south, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) "rlu" = ( /obj/machinery/chem_master, /turf/open/floor/iron/dark/textured, @@ -60996,6 +63846,12 @@ /obj/structure/hedge, /turf/open/floor/glass/reinforced, /area/station/service/library) +"rlF" = ( +/obj/machinery/power/turbine/inlet_compressor{ + dir = 8 + }, +/turf/open/floor/engine, +/area/station/engineering/atmos/upper) "rlR" = ( /obj/item/storage/box/snappops{ pixel_x = 6; @@ -61032,9 +63888,21 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/security/office) +"rmb" = ( +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/yellow/filled/corner, +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 8 + }, +/obj/structure/railing{ + dir = 8 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "rmg" = ( /obj/structure/stairs/north, -/obj/machinery/airalarm/directional/east, /obj/machinery/light/directional/east, /turf/open/floor/iron/stairs/medium, /area/station/command/heads_quarters/hop) @@ -61043,23 +63911,14 @@ /turf/open/floor/iron/smooth, /area/station/science/robotics) "rms" = ( -/obj/machinery/computer/crew{ - dir = 1 - }, -/obj/machinery/requests_console/directional/east{ - department = "Bridge"; - name = "Bridge Requests Console"; - pixel_x = -32 - }, -/obj/effect/mapping_helpers/requests_console/announcement, -/obj/effect/mapping_helpers/requests_console/information, -/obj/effect/mapping_helpers/requests_console/assistance, -/obj/effect/turf_decal/tile/blue/opposingcorners{ - dir = 1 - }, /obj/machinery/light/directional/south, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/effect/turf_decal/tile/dark_blue{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/line, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "rmw" = ( /obj/machinery/door/airlock/public/glass{ name = "Public Zoo" @@ -61072,7 +63931,7 @@ /obj/structure/lattice/catwalk, /obj/machinery/status_display/evac/directional/east, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "rmB" = ( /obj/machinery/power/shieldwallgen, /obj/effect/turf_decal/stripes/line{ @@ -61082,37 +63941,6 @@ /obj/machinery/power/apc/auto_name/directional/east, /turf/open/floor/wood, /area/station/command/teleporter) -"rmC" = ( -/obj/item/melee/flyswatter{ - pixel_x = -2 - }, -/obj/item/toy/plush/lizard_plushie/green{ - name = "Steals-The-Cheese"; - pixel_x = 8; - pixel_y = -3 - }, -/obj/effect/turf_decal/tile/dark_green/opposingcorners, -/obj/effect/turf_decal/tile/green/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/fore) -"rmK" = ( -/obj/structure/table/reinforced, -/obj/item/book/manual/wiki/engineering_hacking{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/book/manual/wiki/engineering_guide, -/obj/item/book/manual/wiki/engineering_construction{ - pixel_x = 3; - pixel_y = -3 - }, -/obj/item/trash/can{ - pixel_x = -8 - }, -/turf/open/floor/iron, -/area/station/commons/storage/primary) "rmM" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -61124,6 +63952,13 @@ /obj/machinery/firealarm/directional/north, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) +"rmN" = ( +/obj/structure/closet/emcloset, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "rmO" = ( /obj/effect/turf_decal/siding/dark/corner, /obj/effect/turf_decal/trimline/dark_blue/filled/line{ @@ -61140,7 +63975,7 @@ }, /obj/effect/landmark/start/cyborg, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "rmS" = ( /obj/structure/railing{ dir = 8 @@ -61154,31 +63989,39 @@ }, /turf/open/floor/iron, /area/station/science/research) -"rmV" = ( -/obj/effect/turf_decal/tile/dark_blue/opposingcorners, -/obj/structure/urinal/directional/west, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) "rnd" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge, /area/station/hallway/primary/central) -"rnh" = ( -/obj/machinery/power/smes{ - charge = 5e+006 +"rnB" = ( +/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/n2{ + dir = 8 }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) +"rnK" = ( /obj/structure/cable, +/obj/effect/landmark/start/hangover, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/effect/turf_decal/stripes/white/line{ + dir = 1 + }, /turf/open/floor/iron, -/area/station/engineering/gravity_generator) -"rnp" = ( -/obj/structure/sign/directions/dorms{ - dir = 1; - pixel_y = 4 +/area/station/commons/fitness/recreation) +"rnN" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 1 }, -/turf/closed/wall, -/area/station/maintenance/starboard/fore) +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/obj/machinery/vending/wardrobe/engi_wardrobe, +/obj/machinery/light/directional/north, +/obj/structure/extinguisher_cabinet/directional/north, +/turf/open/floor/iron/smooth, +/area/station/engineering/main) "rnP" = ( /obj/structure/table/wood, /obj/item/paper_bin{ @@ -61202,11 +64045,11 @@ /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/maintenance/department/medical) -"rnR" = ( -/obj/machinery/atmospherics/pipe/smart/simple/green/visible, -/obj/machinery/camera/autoname/directional/east, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) +"rnV" = ( +/obj/effect/landmark/start/hangover, +/obj/machinery/airalarm/directional/west, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "rnX" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 8 @@ -61217,16 +64060,32 @@ /obj/structure/table/reinforced, /turf/open/floor/iron/dark, /area/station/engineering/storage) -"roj" = ( -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "roq" = ( /obj/effect/spawner/random/medical/patient_stretcher, /obj/effect/decal/cleanable/blood/old, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"ror" = ( +/obj/structure/table, +/obj/item/paper_bin/carbon{ + pixel_x = -5; + pixel_y = 6 + }, +/obj/item/book/manual/wiki/tcomms{ + pixel_x = 14; + pixel_y = 5 + }, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/machinery/computer/security/telescreen/tcomms/directional/south{ + name = "Telecomms Camera Monitor" + }, +/obj/item/pen, +/obj/item/radio/intercom/directional/east, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tcomms) "rot" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -61244,22 +64103,10 @@ /turf/open/floor/iron/dark, /area/station/service/chapel) "roy" = ( -/obj/effect/turf_decal/tile/blue/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) -"roz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/bot, -/obj/machinery/portable_atmospherics/pipe_scrubber, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) -"roB" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/firealarm/directional/east, -/turf/open/openspace, -/area/station/engineering/break_room) +/obj/structure/cable, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "roG" = ( /obj/machinery/mech_bay_recharge_port{ dir = 2 @@ -61279,6 +64126,16 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) +"roM" = ( +/obj/effect/turf_decal/trimline/yellow/warning{ + dir = 6 + }, +/obj/effect/turf_decal/trimline/yellow/mid_joiner, +/obj/effect/turf_decal/trimline/yellow/mid_joiner{ + dir = 4 + }, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "roP" = ( /obj/structure/stairs/north, /obj/structure/railing{ @@ -61287,22 +64144,28 @@ /turf/open/floor/iron, /area/station/science/breakroom) "roY" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/sign/directions/engineering/directional/north{ - dir = 4; - pixel_y = 38 - }, -/obj/structure/sign/directions/engineering/directional/north{ - dir = 4 +/obj/effect/turf_decal/trimline/brown/filled/warning, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/iron, +/area/station/cargo/storage) +"rpd" = ( +/obj/structure/cable, +/obj/structure/sign/poster/contraband/soviet_propaganda/directional/north, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) +"rpj" = ( +/obj/item/toy/plush/lizard_plushie/green{ + name = "Swats-The-Moths"; + pixel_y = -10 }, -/obj/structure/sign/directions/engineering/directional/north{ - dir = 4; - pixel_y = 26 +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/tile/dark_green/opposingcorners, +/obj/effect/turf_decal/tile/green/opposingcorners{ + dir = 1 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/obj/effect/spawner/random/maintenance, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/fore) "rpn" = ( /obj/structure/railing{ dir = 8 @@ -61316,11 +64179,20 @@ }, /turf/open/floor/iron, /area/station/science/research) -"rps" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/broken_floor, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) +"rpq" = ( +/obj/machinery/computer/slot_machine{ + pixel_y = 2 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"rpz" = ( +/obj/structure/chair/office{ + dir = 8 + }, +/obj/machinery/power/apc/auto_name/directional/south, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/engineering/transit_tube) "rpB" = ( /turf/closed/wall/r_wall, /area/station/command/corporate_showroom) @@ -61330,7 +64202,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "rpI" = ( /obj/effect/turf_decal/siding/dark{ dir = 8 @@ -61340,14 +64212,7 @@ }, /obj/machinery/washing_machine, /turf/open/floor/iron/white/textured_half, -/area/station/ai_monitored/turret_protected/aisat_interior) -"rpL" = ( -/obj/effect/turf_decal/siding/brown{ - dir = 1 - }, -/obj/effect/turf_decal/siding/brown/corner, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) +/area/station/ai/satellite/interior) "rpU" = ( /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) @@ -61370,12 +64235,6 @@ /obj/machinery/light/very_dim/directional/north, /turf/open/floor/plating, /area/station/maintenance/disposal) -"rqm" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 5 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) "rqn" = ( /obj/effect/turf_decal/stripes/line{ dir = 9 @@ -61385,15 +64244,17 @@ }, /turf/open/floor/iron, /area/station/science/lobby) -"rqo" = ( -/turf/closed/wall/r_wall, -/area/station/engineering/atmos/project) "rqq" = ( /obj/structure/table/wood, /obj/item/storage/photo_album/chapel, /obj/machinery/newscaster/directional/south, /turf/open/floor/iron/chapel, /area/station/service/chapel) +"rqs" = ( +/obj/effect/turf_decal/trimline/yellow/warning, +/obj/effect/turf_decal/trimline/yellow/mid_joiner, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "rqM" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -61447,18 +64308,6 @@ }, /turf/open/floor/wood, /area/station/security/courtroom) -"rrn" = ( -/obj/machinery/firealarm/directional/south, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) -"rro" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing, -/turf/open/openspace, -/area/station/hallway/primary/central) "rrp" = ( /obj/structure/table, /obj/item/paper_bin{ @@ -61479,30 +64328,25 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"rrz" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 - }, -/obj/item/kirbyplants/random/fullysynthetic, -/turf/open/floor/iron/smooth, -/area/station/engineering/main) +"rrE" = ( +/obj/structure/lattice/catwalk, +/obj/effect/landmark/firealarm_sanity, +/turf/open/openspace, +/area/station/cargo/storage) "rrF" = ( /obj/structure/table, /obj/item/stack/cable_coil, /obj/item/stack/cable_coil, /turf/open/floor/iron/dark/smooth_large, /area/station/science/lab) -"rrY" = ( +"rrI" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, /obj/effect/decal/cleanable/dirt, -/obj/structure/chair{ - dir = 1; - pixel_y = -2 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/engineering/storage_shared) "rsb" = ( /obj/structure/disposalpipe/segment{ dir = 2 @@ -61513,12 +64357,19 @@ /obj/machinery/airalarm/directional/east, /turf/open/floor/wood, /area/station/command/corporate_showroom) -"rsn" = ( -/obj/machinery/vatgrower, -/obj/effect/turf_decal/trimline/green/filled/line, +"rsm" = ( /obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) +/obj/structure/closet/crate, +/obj/item/reagent_containers/cup/glass/bottle/vermouth{ + pixel_x = -4; + pixel_y = 3 + }, +/obj/item/reagent_containers/cup/glass/bottle/ale, +/obj/item/reagent_containers/cup/glass/bottle/beer{ + pixel_x = 6 + }, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard) "rsH" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/disposal/bin, @@ -61527,6 +64378,16 @@ }, /turf/open/floor/iron, /area/station/maintenance/starboard/central) +"rsJ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/general/hidden, +/obj/effect/turf_decal/siding/blue{ + dir = 8 + }, +/obj/machinery/camera/autoname/directional/north, +/turf/open/floor/catwalk_floor{ + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/station/science/server) "rsU" = ( /obj/machinery/wall_healer/directional/north, /obj/effect/turf_decal/box/white{ @@ -61535,17 +64396,10 @@ /turf/open/floor/iron/dark/textured_large, /area/station/medical/medbay/lobby) "rtb" = ( -/obj/effect/turf_decal/trimline/brown/filled/line, -/obj/machinery/conveyor{ - dir = 8; - id = "mining" - }, -/obj/structure/railing{ - dir = 1 - }, /obj/structure/disposalpipe/segment, +/obj/effect/turf_decal/trimline/brown/filled/line, /turf/open/floor/iron, -/area/station/cargo/miningoffice) +/area/station/cargo/storage) "rtd" = ( /obj/effect/turf_decal/tile/blue/full, /obj/structure/table/reinforced, @@ -61572,12 +64426,44 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"rtm" = ( +/obj/item/banner/cargo/mundane{ + pixel_y = 27 + }, +/obj/effect/decal/cleanable/crayon{ + icon_state = "body"; + name = "body"; + pixel_y = 10 + }, +/obj/item/ammo_casing/spent{ + pixel_x = -8; + pixel_y = -4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "rto" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/storage) +"rtr" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, +/obj/structure/railing/corner/end{ + dir = 1 + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) +"rtv" = ( +/obj/machinery/light/small/directional/south, +/obj/structure/closet/firecloset, +/obj/effect/turf_decal/bot, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron, +/area/station/maintenance/starboard/fore) "rtx" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -61589,6 +64475,11 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) +"rtz" = ( +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/smart/simple/green/visible, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "rtD" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -61600,6 +64491,11 @@ }, /turf/open/floor/iron/white/smooth_large, /area/station/hallway/secondary/entry) +"rtL" = ( +/obj/machinery/light/small/directional/west, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/gravity_generator) "rtO" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -61608,12 +64504,35 @@ /turf/open/openspace, /area/station/medical/virology) "ruc" = ( -/obj/effect/turf_decal/siding/green/corner{ +/obj/machinery/vending/coffee, +/obj/effect/turf_decal/siding/green{ dir = 8 }, -/obj/machinery/vending/coffee, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) +"rue" = ( +/obj/item/statuebust, +/obj/machinery/light/cold/no_nightlight/directional/west, +/turf/open/floor/iron/vaporwave, +/area/station/maintenance/starboard/aft/upper) +"ruf" = ( +/obj/item/kirbyplants/random, +/obj/effect/turf_decal/trimline/yellow/filled/warning/corner{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) +"rul" = ( +/obj/machinery/light/floor, +/turf/open/floor/engine/hull/air, +/area/station/engineering/supermatter/room/upper) +"rum" = ( +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 1 + }, +/turf/closed/wall/r_wall, +/area/station/engineering/atmos) "ruq" = ( /obj/effect/turf_decal/trimline/yellow/filled/corner{ dir = 8 @@ -61625,13 +64544,11 @@ }, /obj/machinery/airalarm/directional/south, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) -"ruB" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark/small, -/area/station/command/heads_quarters/ce) +/area/station/ai/satellite/foyer) +"ruA" = ( +/obj/machinery/light/small/dim/directional/north, +/turf/open/water/no_planet_atmos, +/area/station/maintenance/port/fore) "ruD" = ( /obj/effect/turf_decal/tile/neutral/opposingcorners{ dir = 1 @@ -61640,31 +64557,62 @@ /turf/open/floor/iron/dark, /area/station/medical/chemistry) "ruE" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/cigbutt, -/turf/open/floor/iron, -/area/station/maintenance/starboard/central) +/obj/structure/table/wood/fancy/orange, +/obj/item/reagent_containers/cup/glass/bottle/whiskey{ + pixel_x = -5; + pixel_y = 18 + }, +/obj/item/food/fortunecookie{ + pixel_x = 10; + pixel_y = 4 + }, +/obj/item/reagent_containers/cup/glass/drinkingglass/shotglass{ + pixel_x = -4; + pixel_y = 4 + }, +/obj/effect/turf_decal/siding/dark{ + dir = 8 + }, +/obj/effect/turf_decal/siding/dark{ + dir = 4 + }, +/turf/open/floor/carpet/orange, +/area/station/command/heads_quarters/qm) +"ruF" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/machinery/light/small/directional/east, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "ruJ" = ( /obj/item/kirbyplants/random, /obj/structure/sign/departments/medbay/alt/directional/east, /turf/open/floor/iron/textured_large, /area/station/medical/abandoned) "ruK" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Abandoned Hallway" - }, -/obj/effect/turf_decal/trimline/purple/filled/corner{ +/obj/machinery/light/directional/east, +/turf/open/floor/iron/edge{ dir = 4 }, -/obj/machinery/door/firedoor, +/area/station/hallway/primary/central) +"ruR" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment{ + dir = 5 + }, /turf/open/floor/iron, -/area/station/hallway/secondary/construction) +/area/station/hallway/primary/port) "ruS" = ( /obj/effect/mob_spawn/corpse/human/skeleton, /obj/item/mod/module/springlock, /obj/effect/decal/cleanable/blood, /turf/open/floor/iron/checker, /area/station/maintenance/hallway/abandoned_recreation) +"ruZ" = ( +/obj/effect/spawner/random/structure/crate_loot, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "rvk" = ( /obj/structure/table/wood, /obj/item/book/bible, @@ -61680,6 +64628,23 @@ /obj/machinery/airalarm/directional/west, /turf/open/floor/iron/dark/textured, /area/station/science/xenobiology) +"rvo" = ( +/obj/structure/table, +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 8 + }, +/obj/item/folder/yellow{ + pixel_x = 4 + }, +/obj/item/paper/guides/jobs/engi/gravity_gen, +/obj/item/phone{ + pixel_y = -9; + pixel_x = -3 + }, +/obj/structure/cable, +/obj/machinery/power/apc/auto_name/directional/west, +/turf/open/floor/iron, +/area/station/engineering/gravity_generator) "rvs" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/siding/wood{ @@ -61696,7 +64661,6 @@ }, /obj/item/cigbutt, /obj/effect/mapping_helpers/broken_floor, -/obj/structure/disposalpipe/segment, /turf/open/floor/wood, /area/station/maintenance/starboard/central) "rvu" = ( @@ -61709,6 +64673,18 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) +"rvv" = ( +/obj/structure/cable, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) +"rvz" = ( +/obj/effect/decal/cleanable/dirt, +/obj/item/cigbutt{ + pixel_x = -12; + pixel_y = 11 + }, +/turf/open/floor/iron, +/area/station/maintenance/starboard/aft/upper) "rvB" = ( /obj/machinery/computer/pod/old/mass_driver_controller/chapelgun{ pixel_x = -24 @@ -61720,23 +64696,23 @@ }, /turf/open/floor/iron/dark, /area/station/service/chapel) -"rvH" = ( +"rvT" = ( +/obj/machinery/atmospherics/pipe/smart/simple/orange/visible, +/obj/machinery/meter, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) +"rvX" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"rvR" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 6 +/obj/effect/turf_decal/stripes{ + dir = 4 }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage) +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "rvY" = ( /obj/structure/table/reinforced, /obj/item/storage/box/gloves{ @@ -61747,42 +64723,43 @@ /turf/open/floor/iron/dark, /area/station/service/chapel/office) "rwd" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "packageSort2" - }, -/obj/effect/turf_decal/trimline/brown/filled, -/obj/structure/railing/corner/end{ +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) +"rwf" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron, -/area/station/cargo/sorting) +/obj/structure/cable, +/obj/structure/chair/office{ + dir = 1 + }, +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) "rwh" = ( /turf/closed/wall/r_wall, /area/station/security/medical) -"rwG" = ( -/obj/machinery/door/airlock/mining/glass{ - name = "Mining Dock" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ - cycle_id = "miningshuttleexit" +"rwn" = ( +/obj/effect/turf_decal/stripes/red/line{ + dir = 4 }, -/obj/effect/mapping_helpers/airlock/access/all/supply/mining, -/obj/effect/turf_decal/tile/brown/fourcorners, -/turf/open/floor/iron, -/area/station/cargo/miningoffice) -"rwJ" = ( -/obj/structure/railing/corner/end/flip{ +/obj/effect/turf_decal/stripes/red/line{ dir = 8 }, -/obj/structure/railing/corner/end{ - dir = 4 +/obj/structure/sign/warning/radiation/rad_area/directional/north, +/obj/machinery/light/small/directional/west, +/turf/open/floor/engine, +/area/station/engineering/supermatter) +"rwJ" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/effect/turf_decal/trimline/dark_blue/filled/line, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "rwO" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 @@ -61796,7 +64773,7 @@ dir = 10 }, /obj/effect/baseturf_helper/reinforced_plating/ceiling, -/turf/open/floor/carpet, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) "rwU" = ( /obj/effect/mapping_helpers/airlock/access/all/service/general, @@ -61806,25 +64783,42 @@ /obj/machinery/door/airlock/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/greater) +"rwV" = ( +/obj/machinery/computer/atmos_control/carbon_tank, +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ + dir = 4 + }, +/obj/effect/turf_decal/tile/dark/half{ + dir = 1 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "rwW" = ( /obj/structure/disposalpipe/segment, /turf/open/floor/grass, /area/station/hallway/primary/starboard) "rxc" = ( -/obj/structure/table, -/obj/machinery/fax{ - fax_name = "Quartermaster's Office"; - name = "Quartermaster's Fax Machine" - }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/floor/iron, -/area/station/command/heads_quarters/qm) +/area/station/cargo/storage) "rxd" = ( /obj/effect/turf_decal/tile/blue/opposingcorners, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) "rxk" = ( -/obj/machinery/holopad, -/turf/open/floor/iron, +/obj/machinery/camera/autoname/directional/south, +/obj/machinery/door/firedoor/heavy, +/obj/effect/turf_decal/trimline/dark_red/filled/warning{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark_red/filled/warning{ + dir = 4 + }, +/turf/open/floor/iron/dark/textured_half{ + dir = 1 + }, /area/station/cargo/storage) "rxo" = ( /obj/structure/lattice/catwalk, @@ -61864,8 +64858,14 @@ pixel_x = -2; pixel_y = 7 }, +/obj/machinery/newscaster/directional/south, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) +"rxy" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/dresser, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) "rxH" = ( /turf/open/floor/engine, /area/station/engineering/supermatter/room) @@ -61877,22 +64877,22 @@ }, /turf/open/floor/iron/kitchen, /area/station/hallway/secondary/service) -"rxM" = ( +"rxS" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/sink/kitchen/directional/east{ - desc = "A sink used for washing one's hands and face. It looks rusty and home-made"; - name = "old sink" - }, -/obj/structure/mirror/directional/west, -/obj/effect/decal/cleanable/cobweb, +/obj/effect/landmark/generic_maintenance_landmark, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/upper) +"rxW" = ( +/obj/structure/rack, +/obj/effect/spawner/random/maintenance/two, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard) "rya" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/iron, /area/station/maintenance/port/aft) "ryb" = ( @@ -61927,11 +64927,22 @@ name = "Garbage Closet" }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) +"rzf" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ + dir = 4; + initialize_directions = 4 + }, +/obj/effect/turf_decal/bot_red, +/obj/machinery/camera/autoname/directional/west, +/obj/machinery/airalarm/directional/west, +/obj/machinery/firealarm/directional/south, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos/office) "rzm" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 5 @@ -61957,6 +64968,17 @@ /obj/structure/cable, /turf/open/floor/iron/textured_large, /area/station/medical/virology) +"rzu" = ( +/obj/machinery/atmospherics/pipe/layer_manifold/supply/hidden{ + dir = 4 + }, +/turf/closed/wall/r_wall, +/area/station/maintenance/aft/upper) +"rzH" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/disposalpipe/segment, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "rzK" = ( /obj/structure/flora/bush/fullgrass/style_random, /obj/structure/flora/bush/ferny/style_random, @@ -61983,7 +65005,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "rAc" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/structure/cable, @@ -61994,15 +65016,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/wood, /area/station/maintenance/hallway/abandoned_recreation) -"rAq" = ( -/obj/structure/table, -/obj/item/phone{ - pixel_x = 6; - pixel_y = 1 - }, -/obj/item/radio/intercom/directional/south, -/turf/open/floor/iron, -/area/station/engineering/gravity_generator) "rAs" = ( /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, @@ -62018,27 +65031,22 @@ }, /turf/open/openspace, /area/station/maintenance/port/aft) -"rAH" = ( -/obj/structure/lattice/catwalk, -/obj/effect/landmark/start/hangover, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) "rAK" = ( /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/flora/rock/pile/jungle/style_3, /turf/open/floor/grass, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "rAL" = ( -/obj/structure/table/glass, -/turf/open/floor/carpet, -/area/station/command/bridge) -"rAT" = ( -/obj/structure/lattice/catwalk, -/obj/structure/grille, -/turf/open/space/openspace, -/area/space/nearstation) +/obj/effect/turf_decal/siding/green{ + dir = 1 + }, +/obj/effect/turf_decal/plaque{ + icon_state = "L1" + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/hallway/primary/central) "rAV" = ( /obj/machinery/holopad, /obj/machinery/status_display/evac/directional/north, @@ -62050,13 +65058,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/engine/hull/air, /area/station/medical/medbay/central) -"rBh" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "rBm" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -62076,34 +65077,20 @@ /turf/open/floor/plating, /area/station/maintenance/port/greater) "rBE" = ( -/obj/effect/turf_decal/siding/blue{ - dir = 1 +/obj/machinery/door/poddoor/preopen{ + id = "hop"; + name = "Privacy Shutters" }, -/obj/machinery/status_display/ai/directional/north, -/turf/open/openspace, -/area/station/command/bridge) +/obj/structure/cable, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/command/heads_quarters/hop) "rBI" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/decal/cleanable/confetti, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/carpet/black, /area/station/maintenance/hallway/abandoned_recreation) -"rBO" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/yellow/filled/line, -/turf/open/floor/iron/dark, -/area/station/engineering/storage) -"rBP" = ( -/obj/item/bikehorn/rubberducky, -/obj/machinery/duct, -/obj/structure/cable, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/restrooms) "rBQ" = ( /obj/effect/decal/cleanable/blood/old, /turf/open/floor/engine/vacuum, @@ -62138,6 +65125,16 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/virology) +"rCh" = ( +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted{ + dir = 4 + }, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron/dark, +/area/station/commons/locker) "rCp" = ( /obj/structure/table, /obj/item/food/cheese/firm_cheese_slice{ @@ -62161,21 +65158,14 @@ /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) "rCF" = ( -/obj/effect/turf_decal/trimline/brown/filled/line, -/obj/machinery/disposal/bin, -/obj/machinery/firealarm/directional/south, -/obj/effect/turf_decal/bot, /obj/machinery/camera/autoname/directional/south, -/obj/structure/disposalpipe/trunk{ - dir = 8 +/obj/machinery/conveyor{ + dir = 8; + id = "mining" }, +/obj/machinery/bouldertech/refinery/smelter, /turf/open/floor/iron/textured, /area/station/cargo/storage) -"rCO" = ( -/obj/structure/table/reinforced, -/obj/item/storage/box/lights/mixed, -/turf/open/floor/iron, -/area/station/commons/storage/primary) "rCP" = ( /obj/structure/closet/firecloset, /turf/open/floor/plating, @@ -62192,7 +65182,7 @@ }, /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "rDc" = ( /turf/open/floor/iron/dark/smooth_large, /area/station/medical/surgery) @@ -62206,14 +65196,15 @@ }, /turf/open/floor/eighties, /area/station/construction/storage_wing) -"rDm" = ( -/obj/effect/mapping_helpers/burnt_floor, -/turf/open/floor/iron/stairs/right, -/area/station/maintenance/disposal/incinerator) "rDr" = ( /obj/effect/spawner/random/structure/closet_maintenance, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"rDs" = ( +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible, +/obj/structure/lattice/catwalk, +/turf/open/space/basic, +/area/space/nearstation) "rDv" = ( /turf/closed/wall, /area/station/construction/storage_wing) @@ -62227,6 +65218,11 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/wood, /area/station/maintenance/hallway/abandoned_recreation) +"rDz" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/iron/white, +/area/station/maintenance/starboard) "rDC" = ( /obj/structure/table/reinforced, /obj/effect/spawner/random/food_or_drink/snack{ @@ -62255,6 +65251,10 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/medbay/central) +"rDG" = ( +/obj/effect/turf_decal/tile/red, +/turf/closed/wall/r_wall, +/area/station/engineering/lobby) "rDN" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -62282,19 +65282,9 @@ }, /turf/open/floor/iron/white/smooth_large, /area/station/security/prison) -"rEv" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/stairs/medium, -/area/station/maintenance/starboard/lesser) "rED" = ( /turf/closed/wall, /area/station/security/prison/shower) -"rEG" = ( -/obj/structure/mirror/directional/north, -/obj/item/cigbutt, -/obj/structure/sink/directional/south, -/turf/open/floor/iron/freezer, -/area/station/commons/dorms) "rEL" = ( /obj/machinery/requests_console/directional/north{ department = "Medbay"; @@ -62316,13 +65306,9 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/small, /area/station/command/heads_quarters/ce) -"rFi" = ( -/obj/structure/chair{ - dir = 4; - pixel_y = -2 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"rFg" = ( +/turf/open/floor/engine/hull/air, +/area/station/engineering/supermatter/room/upper) "rFj" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -62340,6 +65326,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/power/apc/auto_name/directional/south, +/obj/structure/cable, /turf/open/floor/iron/white, /area/station/medical/office) "rFm" = ( @@ -62348,28 +65335,6 @@ /obj/machinery/disposal/bin, /turf/open/floor/wood, /area/station/hallway/secondary/service) -"rFq" = ( -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 4 - }, -/obj/machinery/duct, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) -"rFr" = ( -/obj/effect/mapping_helpers/broken_floor, -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper/stack{ - dir = 1 - }, -/obj/structure/fluff/paper/stack{ - dir = 4 - }, -/obj/structure/fluff/paper/corner{ - dir = 8 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "rFx" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 4 @@ -62409,6 +65374,11 @@ /obj/machinery/firealarm/directional/north, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) +"rFM" = ( +/obj/structure/stairs/north, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/stairs/medium, +/area/station/maintenance/starboard) "rGb" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 5 @@ -62419,6 +65389,11 @@ /obj/machinery/firealarm/directional/north, /turf/open/floor/iron/dark, /area/station/science/xenobiology) +"rGg" = ( +/obj/structure/table/reinforced, +/obj/item/cigbutt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "rGp" = ( /obj/structure/railing{ dir = 8 @@ -62434,19 +65409,34 @@ /obj/machinery/power/apc/auto_name/directional/south, /turf/open/floor/glass/reinforced, /area/station/solars/starboard/fore) -"rGw" = ( -/obj/structure/cable, -/obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +"rGK" = ( +/obj/structure/fake_stairs/directional/east, +/turf/open/floor/plating, +/area/station/maintenance/port/aft) +"rGY" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) -"rGK" = ( -/obj/structure/fake_stairs/directional/east, +"rHf" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, +/obj/item/pen/blue{ + pixel_x = -9; + pixel_y = 9 + }, +/obj/structure/fluff/paper/stack{ + desc = "A stack of various papers, absolutely unreadable due to scorch marks and aging."; + dir = 1 + }, +/obj/structure/fluff/paper/corner, +/obj/effect/spawner/random/maintenance, +/obj/structure/disposalpipe/segment, /turf/open/floor/plating, -/area/station/maintenance/port/aft) +/area/station/maintenance/aft) "rHk" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 @@ -62461,7 +65451,9 @@ dir = 4 }, /obj/machinery/status_display/evac/directional/west, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 8 + }, /area/station/hallway/primary/central) "rHq" = ( /obj/effect/landmark/event_spawn, @@ -62504,11 +65496,7 @@ }, /obj/item/radio/intercom/directional/north, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"rHN" = ( -/obj/machinery/vending/cigarette, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/area/station/ai/satellite/interior) "rHS" = ( /obj/structure/lattice/catwalk, /obj/machinery/door/window/left/directional/west{ @@ -62516,21 +65504,18 @@ }, /turf/open/openspace, /area/station/command/gateway) -"rHU" = ( -/obj/structure/reflector/double{ - dir = 6 - }, -/obj/machinery/light/directional/north, -/turf/open/floor/plating, -/area/station/engineering/supermatter/room) -"rHZ" = ( -/obj/structure/closet/firecloset, -/obj/item/radio/intercom/directional/south, +"rHT" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 6 + dir = 5 }, -/turf/open/floor/iron, -/area/station/engineering/lobby) +/obj/machinery/vending/tool, +/turf/open/floor/iron/dark, +/area/station/engineering/storage) +"rHX" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/holopad, +/turf/open/floor/wood/large, +/area/station/medical/psychology) "rIi" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -62546,6 +65531,15 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) +"rIm" = ( +/obj/machinery/atmospherics/pipe/multiz/scrubbers/visible/layer2{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/multiz/supply/visible/layer4{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "rIq" = ( /obj/structure/chair/pew/right{ dir = 8 @@ -62553,10 +65547,6 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/wood, /area/station/service/chapel) -"rIw" = ( -/obj/machinery/vending/tool, -/turf/open/floor/iron, -/area/station/commons/storage/primary) "rIA" = ( /obj/effect/turf_decal/tile/red/fourcorners, /obj/structure/window/reinforced/spawner/directional/south, @@ -62574,7 +65564,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/light/directional/east, -/turf/open/floor/wood, +/turf/open/floor/iron/dark, /area/station/command/gateway) "rIU" = ( /obj/structure/disposalpipe/segment{ @@ -62598,17 +65588,6 @@ }, /turf/open/floor/iron/dark, /area/station/science/cytology) -"rIZ" = ( -/obj/effect/turf_decal/stripes/corner, -/obj/effect/turf_decal/trimline/green/filled/corner{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron/textured_large, -/area/station/medical/virology) "rJa" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 9 @@ -62621,12 +65600,6 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/port) -"rJe" = ( -/obj/effect/turf_decal/siding/brown{ - dir = 10 - }, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) "rJi" = ( /obj/machinery/door/airlock{ id_tag = "restroom_3"; @@ -62654,21 +65627,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/station/service/cafeteria) -"rJB" = ( -/obj/structure/table, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/maintenance, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/item/petri_dish/random{ - pixel_x = -14; - pixel_y = 7 - }, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) "rJF" = ( /obj/structure/lattice, /obj/structure/rack, @@ -62686,16 +65644,7 @@ /obj/effect/spawner/random/clothing/costume, /obj/effect/spawner/random/clothing/funny_hats, /turf/open/floor/iron/checker, -/area/station/ai_monitored/turret_protected/aisat_interior) -"rJJ" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/ai/satellite/interior) "rJL" = ( /obj/effect/turf_decal/tile/blue/half/contrasted{ dir = 8 @@ -62706,6 +65655,15 @@ /obj/item/kirbyplants/random, /turf/open/floor/iron, /area/station/hallway/primary/aft) +"rKf" = ( +/obj/machinery/holopad, +/turf/open/floor/iron, +/area/station/cargo/miningoffice) +"rKj" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/structure/cable, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "rKn" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk{ @@ -62715,17 +65673,11 @@ /obj/machinery/firealarm/directional/south, /turf/open/floor/iron/dark, /area/station/service/chapel) -"rKA" = ( -/turf/closed/wall, -/area/station/maintenance/starboard/lesser) "rKJ" = ( /obj/structure/cable, /obj/effect/decal/cleanable/blood/old, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"rKL" = ( -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) "rKN" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -62779,15 +65731,6 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/science/breakroom) -"rLz" = ( -/obj/structure/railing{ - dir = 5 - }, -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/turf/open/openspace, -/area/station/engineering/lobby) "rLA" = ( /obj/effect/turf_decal/tile/purple/fourcorners, /obj/structure/railing{ @@ -62800,13 +65743,6 @@ /obj/item/clothing/glasses/science, /turf/open/floor/iron, /area/station/science/research) -"rLK" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/trimline/yellow/filled/line, -/turf/open/floor/iron, -/area/station/engineering/lobby) "rMc" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -62815,14 +65751,12 @@ /obj/machinery/camera/autoname/directional/south, /turf/open/floor/iron/dark/textured_large, /area/station/security/prison) -"rMe" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/wall_healer/directional/west, -/turf/open/floor/iron, -/area/station/hallway/secondary/construction) -"rMj" = ( -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/lesser) +"rMr" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/engineering/storage) "rMv" = ( /obj/machinery/door/poddoor/shutters/preopen{ dir = 1; @@ -62842,7 +65776,7 @@ }, /obj/effect/mapping_helpers/mail_sorting/security/general, /obj/effect/mapping_helpers/mail_sorting/security/hos_office, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) "rMW" = ( /obj/effect/turf_decal/stripes/line{ @@ -62857,6 +65791,17 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/science/ordnance) +"rNa" = ( +/obj/structure/closet/secure_closet/personal, +/obj/item/clothing/shoes/winterboots, +/obj/item/clothing/suit/hooded/wintercoat, +/obj/effect/turf_decal/tile/dark_green/half/contrasted, +/obj/effect/turf_decal/tile/neutral/half/contrasted{ + dir = 1 + }, +/obj/machinery/light/small/directional/south, +/turf/open/floor/iron/dark, +/area/station/commons/locker) "rNc" = ( /obj/structure/lattice/catwalk, /obj/item/stack/cable_coil{ @@ -62867,46 +65812,20 @@ "rNe" = ( /turf/open/openspace, /area/station/commons/fitness/recreation) -"rNx" = ( -/obj/structure/table, -/obj/item/stamp/denied{ - pixel_x = 8; - pixel_y = 1 - }, -/obj/item/stamp/granted{ - pixel_x = 9; - pixel_y = 8 - }, -/obj/item/paper_bin{ - pixel_x = -5; - pixel_y = 6 - }, -/obj/item/pen{ - pixel_y = 5 - }, -/turf/open/floor/wood, -/area/station/engineering/lobby) "rNA" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 }, /turf/open/floor/engine, /area/station/engineering/atmos/hfr_room) -"rND" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ - dir = 9 +"rNI" = ( +/obj/effect/turf_decal/trimline/brown/filled/warning{ + dir = 8 }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) -"rNG" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/disposalpipe/segment, /turf/open/floor/iron, -/area/station/hallway/secondary/construction) +/area/station/cargo/storage) "rNT" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, @@ -62927,9 +65846,7 @@ /obj/effect/turf_decal/trimline/brown/filled/corner{ dir = 4 }, -/obj/machinery/modular_computer/preset/cargochat/cargo{ - dir = 8 - }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron, /area/station/cargo/storage) "rOc" = ( @@ -62962,6 +65879,17 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/lab) +"rOl" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/structure/steam_vent, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central) "rOn" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -62978,29 +65906,49 @@ }, /turf/open/floor/iron/dark, /area/station/security/office) +"rOy" = ( +/obj/effect/turf_decal/bot{ + dir = 1 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "rOA" = ( /turf/closed/wall/r_wall, /area/station/maintenance/department/science/central) -"rOB" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line, -/obj/structure/cable, -/turf/open/floor/iron/smooth, -/area/station/engineering/main) "rOC" = ( /obj/machinery/light/directional/north, /obj/machinery/computer/cargo/request, /turf/open/floor/iron/white/textured_half, -/area/station/ai_monitored/turret_protected/aisat_interior) -"rOG" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/monitored/mix_input{ - dir = 4 +/area/station/ai/satellite/interior) +"rOE" = ( +/obj/structure/table/wood, +/obj/effect/spawner/random/bureaucracy/paper, +/obj/item/pen{ + pixel_x = -17; + pixel_y = 7 }, -/turf/open/floor/engine/vacuum, -/area/station/maintenance/disposal/incinerator) +/turf/open/floor/wood, +/area/station/maintenance/aft) "rOQ" = ( /obj/machinery/skill_station, /turf/open/floor/engine/hull/air, /area/station/maintenance/port/aft) +"rOW" = ( +/obj/effect/spawner/structure/window/reinforced/plasma, +/obj/machinery/door/poddoor/shutters/preopen{ + id = "SM_Outside_shutters"; + name = "Outside Shutters"; + dir = 4 + }, +/turf/open/floor/plating, +/area/station/engineering/supermatter/room) +"rOX" = ( +/obj/machinery/vending/tool, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/commons/storage/primary) "rPd" = ( /obj/effect/turf_decal/siding/purple{ dir = 8 @@ -63010,6 +65958,15 @@ }, /turf/open/floor/iron, /area/station/science/lab) +"rPg" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) +"rPh" = ( +/obj/structure/lattice/catwalk, +/obj/structure/sign/flag/nanotrasen/directional/north, +/turf/open/openspace, +/area/station/maintenance/aft/upper) "rPn" = ( /obj/structure/table, /obj/item/assembly/flash/handheld{ @@ -63021,11 +65978,6 @@ }, /turf/open/floor/iron/grimy, /area/station/security/interrogation) -"rPs" = ( -/obj/machinery/airalarm/directional/north, -/obj/machinery/light/directional/north, -/turf/open/floor/wood, -/area/station/commons/dorms) "rPw" = ( /obj/item/cigbutt{ pixel_x = -12; @@ -63045,18 +65997,15 @@ /obj/machinery/space_heater, /turf/open/floor/plating, /area/station/maintenance/port) -"rPK" = ( -/obj/structure/table, -/obj/item/paper/guides/jobs/engi/gravity_gen, -/turf/open/floor/iron, -/area/station/engineering/gravity_generator) "rPQ" = ( /obj/structure/chair/comfy/brown{ dir = 4 }, -/obj/item/radio/intercom/directional/west, /obj/machinery/light/directional/west, -/turf/open/floor/wood, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) "rPS" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -63068,26 +66017,6 @@ /obj/effect/mapping_helpers/mail_sorting/service/chapel, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) -"rPU" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, -/turf/open/floor/plating, -/area/station/maintenance/port) -"rPV" = ( -/obj/structure/showcase/machinery/oldpod{ - desc = "An old NT branded sleeper, decommissioned after the lead acetate incident. None of the functional machinery remains inside."; - name = "decommissioned sleeper" - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"rQb" = ( -/obj/machinery/atmospherics/components/binary/pump/off/general/visible, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "rQg" = ( /obj/structure/tank_holder/extinguisher, /obj/machinery/light/directional/east, @@ -63119,6 +66048,25 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/solars/starboard/fore) +"rQG" = ( +/obj/structure/window/reinforced/plasma/spawner/directional/east, +/obj/machinery/modular_computer/preset/engineering{ + dir = 8 + }, +/obj/effect/turf_decal/bot/right, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) +"rQN" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/glass/plasma, +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ + dir = 4 + }, +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos/office) "rQQ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -63171,23 +66119,13 @@ /turf/open/floor/iron/dark, /area/station/science/xenobiology) "rRg" = ( -/obj/structure/filingcabinet/chestdrawer, -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 10 - }, -/obj/machinery/firealarm/directional/south, -/obj/machinery/light/warm/dim/directional/west, -/obj/item/radio/intercom/directional/west, -/turf/open/floor/iron, -/area/station/command/heads_quarters/qm) -"rRh" = ( -/obj/machinery/light/directional/east, -/obj/structure/closet/crate/bin, -/obj/effect/turf_decal/stripes/line{ - dir = 6 +/obj/effect/turf_decal/bot_white, +/obj/effect/spawner/random/structure/crate, +/obj/machinery/status_display/supply{ + pixel_x = -32 }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +/turf/open/floor/iron/dark/textured_large, +/area/station/cargo/storage) "rRn" = ( /obj/structure/cable, /obj/machinery/power/apc/auto_name/directional/south, @@ -63197,13 +66135,6 @@ /obj/effect/turf_decal/tile/blue/half/contrasted, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) -"rRJ" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 9 - }, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/iron, -/area/station/engineering/lobby) "rRM" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 1 @@ -63231,63 +66162,76 @@ /turf/open/floor/iron, /area/station/cargo/storage) "rRN" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/left/directional/south{ - name = "Cargo Desk"; - req_access = list("mining") +/obj/effect/turf_decal/trimline/brown/filled/line, +/obj/effect/turf_decal/trimline/brown/arrow_cw{ + dir = 1 }, -/obj/effect/turf_decal/tile/brown/fourcorners, /turf/open/floor/iron, -/area/station/cargo/miningoffice) -"rRW" = ( -/obj/item/ammo_casing/spent{ - pixel_x = 7; - pixel_y = 9 - }, -/obj/item/ammo_casing/spent{ - pixel_x = 2; - pixel_y = -9 +/area/station/hallway/primary/starboard) +"rRP" = ( +/obj/machinery/vatgrower, +/obj/effect/turf_decal/trimline/purple/filled/line{ + dir = 6 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) +"rRT" = ( +/obj/structure/chair/office, +/obj/effect/turf_decal/trimline/yellow/filled/warning, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "rSb" = ( /obj/machinery/light_switch/directional/south, -/obj/structure/disposaloutlet{ +/obj/structure/table, +/obj/item/stack/package_wrap, +/obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/effect/turf_decal/tile/brown/fourcorners, -/obj/structure/railing{ - dir = 9 +/obj/item/storage/box/shipping{ + pixel_x = 4; + pixel_y = 10 }, -/turf/open/floor/iron, +/obj/item/clothing/head/costume/mailman, +/obj/machinery/firealarm/directional/south, +/turf/open/floor/iron/dark/textured, /area/station/cargo/sorting) "rSj" = ( /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) -"rSk" = ( -/turf/open/floor/plating/elevatorshaft, -/area/station/engineering/atmos/upper) -"rSu" = ( -/obj/machinery/power/apc/auto_name/directional/north, -/obj/structure/cable, -/obj/machinery/camera/autoname/directional/north, -/obj/machinery/washing_machine, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) -"rTa" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ - dir = 1 +"rSD" = ( +/obj/machinery/door/airlock/maintenance, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 }, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) +"rSG" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/machinery/duct, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) +"rSP" = ( +/obj/structure/cable, +/obj/machinery/power/smes/engineering, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos/upper) +"rSX" = ( +/obj/effect/turf_decal/trimline/green/filled/corner, +/turf/open/floor/iron, +/area/station/hallway/primary/starboard) "rTe" = ( /obj/machinery/door/airlock/grunge{ name = "Morgue" }, /obj/machinery/door/firedoor, +/obj/effect/mapping_helpers/airlock/access/all/medical/morgue, /turf/open/floor/iron/dark/small, /area/station/medical/morgue) "rTk" = ( @@ -63318,7 +66262,6 @@ dir = 1 }, /obj/machinery/computer/exoscanner_control, -/obj/machinery/light/directional/north, /turf/open/floor/iron, /area/station/cargo/storage) "rTH" = ( @@ -63332,10 +66275,6 @@ dir = 8 }, /area/station/hallway/primary/fore) -"rTQ" = ( -/obj/machinery/atmospherics/pipe/layer_manifold/cyan/visible, -/turf/closed/wall/r_wall, -/area/station/engineering/atmos/upper) "rTR" = ( /obj/effect/turf_decal/trimline/blue/filled/line, /obj/structure/cable, @@ -63347,15 +66286,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) -"rUf" = ( -/obj/machinery/door/airlock/virology/glass{ - name = "Malpractice Tower" - }, -/obj/effect/turf_decal/tile/green/full, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/access/all/medical/virology, -/turf/open/floor/iron/dark/textured_large, -/area/station/medical/virology) "rUj" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -63383,6 +66313,11 @@ }, /turf/open/floor/engine/hull, /area/space/nearstation) +"rUq" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/wood/tile, +/area/station/security/detectives_office/private_investigators_office) "rUr" = ( /obj/structure/railing{ dir = 4 @@ -63394,18 +66329,6 @@ /obj/machinery/disposal/bin, /turf/open/openspace, /area/station/science/xenobiology) -"rUC" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/table, -/obj/effect/landmark/event_spawn, -/obj/item/chisel{ - pixel_x = 7; - pixel_y = 4 - }, -/turf/open/floor/wood, -/area/station/service/library) "rUE" = ( /obj/structure/table, /obj/effect/decal/cleanable/dirt, @@ -63419,18 +66342,21 @@ /obj/machinery/firealarm/directional/west, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/commissary) -"rUM" = ( -/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ - name = "N2 Multideck Adapter"; - dir = 8 - }, -/obj/machinery/meter{ - name = "N2 meter" +"rUR" = ( +/obj/machinery/door/airlock/external, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 4 }, -/obj/effect/turf_decal/tile/red/half{ - dir = 1 +/obj/effect/mapping_helpers/airlock/access/all/engineering/external, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) +"rVb" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ + dir = 10 }, -/turf/open/floor/iron/smooth, +/obj/effect/turf_decal/siding/yellow, +/turf/open/floor/iron, /area/station/engineering/atmos/upper) "rVc" = ( /obj/effect/turf_decal/siding/dark{ @@ -63442,7 +66368,7 @@ /turf/open/floor/iron/dark/textured_half{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "rVd" = ( /obj/machinery/light/small/directional/south, /obj/structure/table/reinforced, @@ -63463,16 +66389,41 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"rVo" = ( +/obj/structure/frame/computer{ + anchored = 1 + }, +/obj/effect/turf_decal/trimline/purple/filled/line{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/upper) "rVs" = ( /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 }, /turf/open/floor/iron/dark, /area/station/security/checkpoint/science) -"rVx" = ( -/obj/structure/closet/crate/coffin, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"rVt" = ( +/obj/machinery/atmospherics/components/binary/valve/digital/layer2{ + dir = 8; + name = "Incinerator to Waste" + }, +/obj/effect/turf_decal/trimline/purple, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"rVA" = ( +/obj/item/kirbyplants/random, +/obj/machinery/button/door/directional/east{ + id = "Cabin4"; + name = "Cabin Bolt Control"; + normaldoorcontrol = 1; + specialfunctions = 4 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) "rVE" = ( /obj/structure/table/reinforced, /obj/item/food/burger/catburger{ @@ -63480,8 +66431,14 @@ pixel_x = -4; pixel_y = 8 }, +/obj/effect/turf_decal/siding/green, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) +"rVG" = ( +/obj/structure/lattice/catwalk, +/obj/structure/disposalpipe/segment, +/turf/open/openspace, +/area/station/maintenance/starboard/upper) "rVJ" = ( /obj/structure/table, /obj/effect/decal/cleanable/dirt, @@ -63490,6 +66447,21 @@ }, /turf/open/floor/eighties/red, /area/station/maintenance/hallway/abandoned_recreation) +"rVL" = ( +/obj/item/banner/cargo/mundane, +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/trimline/brown/filled/corner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/brown/filled/corner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/brown/filled/corner, +/obj/effect/turf_decal/trimline/brown/filled/corner{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/hallway/primary/starboard) "rVM" = ( /obj/structure/lattice/catwalk, /obj/structure/table/reinforced, @@ -63498,19 +66470,13 @@ /obj/machinery/light_switch/directional/west, /turf/open/openspace, /area/station/security/checkpoint/customs) -"rVT" = ( -/obj/effect/turf_decal/siding/brown{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/effect/mapping_helpers/mail_sorting/service/dormitories, -/obj/structure/disposalpipe/sorting/mail/flip{ - dir = 8 +"rVS" = ( +/obj/structure/table, +/obj/item/tape{ + pixel_x = -4 }, -/turf/open/floor/iron, -/area/station/commons/dorms) +/turf/open/floor/plating, +/area/station/maintenance/starboard) "rVX" = ( /obj/machinery/door/airlock/grunge{ name = "Cell 2" @@ -63520,14 +66486,19 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured_large, /area/station/security/prison/safe) -"rWf" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +"rWg" = ( +/obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/engine/hull, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"rWn" = ( +/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ + dir = 4 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "rWp" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk, @@ -63535,11 +66506,6 @@ /obj/structure/sign/calendar/directional/north, /turf/open/floor/wood, /area/station/command/heads_quarters/hos) -"rWs" = ( -/obj/machinery/light/directional/west, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "rWx" = ( /obj/effect/turf_decal/stripes/corner, /turf/open/floor/engine/hull, @@ -63561,12 +66527,6 @@ dir = 8 }, /area/station/hallway/primary/starboard) -"rWH" = ( -/obj/item/cigbutt, -/obj/effect/landmark/start/hangover, -/obj/machinery/camera/autoname/directional/north, -/turf/open/floor/glass, -/area/station/commons/fitness/recreation) "rWJ" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 @@ -63582,12 +66542,12 @@ /obj/structure/cable, /turf/open/floor/wood, /area/station/command/heads_quarters/hos) -"rWT" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +"rWN" = ( +/obj/structure/reagent_dispensers/plumbed{ + dir = 1 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "rWZ" = ( /obj/effect/turf_decal/tile/blue/half/contrasted{ dir = 8 @@ -63601,28 +66561,46 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/aft) -"rXq" = ( -/obj/effect/turf_decal/trimline/white/corner{ - dir = 1 +"rXj" = ( +/obj/item/stock_parts/water_recycler{ + pixel_y = 2; + pixel_x = -5 }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) +/obj/structure/frame/machine/secured, +/turf/open/floor/iron/freezer, +/area/station/commons/dorms) +"rXt" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=20-Genetics"; + location = "19-Captain" + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/catwalk_floor/iron, +/area/station/hallway/primary/central) "rXD" = ( /obj/effect/decal/cleanable/blood/old, /turf/open/floor/plating, /area/station/security/interrogation) -"rXI" = ( -/obj/structure/chair/pew/left{ - dir = 4 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) "rXL" = ( /turf/open/openspace, /area/station/science/robotics/lab) +"rXM" = ( +/obj/machinery/door/airlock/public/glass{ + name = "Laundromat" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/door/firedoor, +/obj/machinery/duct, +/turf/open/floor/iron/textured, +/area/station/commons/dorms/laundry) "rXS" = ( /turf/open/floor/plating, /area/station/maintenance/department/medical) @@ -63660,44 +66638,61 @@ /obj/structure/lattice, /turf/open/space/openspace, /area/space/nearstation) +"rYh" = ( +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "rYu" = ( /obj/machinery/suit_storage_unit/standard_unit, -/obj/machinery/status_display/evac/directional/west, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) -"rYB" = ( -/obj/effect/turf_decal/trimline/yellow/warning{ +/obj/effect/turf_decal/siding/dark{ + dir = 8 + }, +/obj/effect/turf_decal/box, +/turf/open/floor/iron/dark/small, +/area/station/command/eva) +"rYw" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=18-Bathroom"; + location = "17-Dorms" + }, +/obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/engine/hull/reinforced, -/area/space/nearstation) +/obj/machinery/duct, +/turf/open/floor/iron, +/area/station/commons/dorms) "rYF" = ( /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/trimline/yellow/filled/line, /obj/effect/turf_decal/trimline/yellow/filled/mid_joiner, /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) -"rYH" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) -"rYJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/rack, -/obj/structure/sign/poster/contraband/random/directional/north, -/obj/structure/disposalpipe/segment{ - dir = 6 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) "rYQ" = ( -/obj/structure/window/reinforced/spawner/directional/south, -/obj/effect/spawner/random/trash/mess, +/obj/machinery/conveyor{ + id = "garbage" + }, +/obj/structure/window/spawner/directional/east, +/obj/effect/turf_decal/stripes/red/box, /turf/open/floor/plating, /area/station/maintenance/disposal) +"rYR" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/aft) +"rYU" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/upper) "rYV" = ( /obj/effect/mapping_helpers/airlock/access/any/service/theatre, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -63712,10 +66707,11 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/medical/abandoned) -"rZl" = ( -/obj/structure/railing, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, -/turf/open/floor/catwalk_floor, +"rZp" = ( +/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible/layer2{ + dir = 1 + }, +/turf/open/floor/iron/dark, /area/station/engineering/atmos/upper) "rZs" = ( /obj/structure/chair, @@ -63725,6 +66721,22 @@ /obj/machinery/newscaster/directional/north, /turf/open/floor/iron/dark/smooth_large, /area/station/security/courtroom) +"rZH" = ( +/obj/structure/table, +/obj/item/hand_labeler{ + pixel_y = 7 + }, +/obj/item/camera_film{ + pixel_y = 3 + }, +/obj/machinery/power/apc/auto_name/directional/east, +/obj/structure/cable, +/obj/effect/turf_decal/tile/green/opposingcorners{ + dir = 1 + }, +/obj/machinery/light/small/directional/east, +/turf/open/floor/iron/dark, +/area/station/commons/storage/art) "rZP" = ( /obj/effect/turf_decal/siding/dark_blue/inner_corner{ dir = 4 @@ -63742,6 +66754,13 @@ /obj/machinery/light/small/directional/north, /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) +"sai" = ( +/obj/machinery/door/airlock/public/glass{ + name = "Abandoned Bar" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "saq" = ( /obj/structure/flora/bush/fullgrass/style_random, /obj/effect/landmark/start/hangover, @@ -63753,6 +66772,13 @@ }, /turf/open/floor/iron/dark, /area/station/science/ordnance) +"sau" = ( +/obj/structure/table, +/obj/effect/spawner/random/maintenance/two, +/obj/structure/sign/poster/contraband/space_up/directional/east, +/obj/structure/sign/poster/contraband/ambrosia_vulgaris/directional/south, +/turf/open/floor/eighties, +/area/station/maintenance/department/crew_quarters/dorms) "saE" = ( /obj/structure/window/spawner/directional/north, /obj/machinery/door/firedoor/border_only{ @@ -63777,6 +66803,16 @@ /obj/machinery/firealarm/directional/west, /turf/open/floor/iron/dark, /area/station/engineering/atmos/hfr_room) +"saT" = ( +/turf/closed/wall/r_wall, +/area/station/maintenance/starboard/aft/upper) +"saX" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/remains/human, +/obj/structure/frame/machine, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "sbb" = ( /obj/effect/turf_decal/siding/dark{ dir = 10 @@ -63788,7 +66824,7 @@ /turf/open/floor/iron/dark/textured_half{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "sbd" = ( /obj/item/kirbyplants/random, /obj/effect/turf_decal/siding/wood, @@ -63805,12 +66841,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/smooth_large, /area/station/commons/lounge) -"sbn" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "sbp" = ( /turf/open/floor/engine/plasma, /area/station/engineering/atmos/upper) @@ -63863,62 +66893,6 @@ }, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/commissary) -"sbF" = ( -/obj/item/radio/intercom/directional/east, -/obj/structure/rack, -/obj/item/radio/off{ - pixel_x = -5; - pixel_y = 2 - }, -/obj/item/wrench, -/obj/effect/turf_decal/trimline/red/filled/line{ - dir = 5 - }, -/turf/open/floor/iron/dark, -/area/station/security/checkpoint/engineering) -"sbI" = ( -/obj/item/toy/plush/lizard_plushie/green{ - name = "Swats-The-Moths"; - pixel_y = -10 - }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/tile/dark_green/opposingcorners, -/obj/effect/turf_decal/tile/green/opposingcorners{ - dir = 1 - }, -/obj/effect/spawner/random/maintenance, -/obj/structure/sign/poster/contraband/lizard/directional/north, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/fore) -"sbP" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment{ - dir = 6 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"scc" = ( -/obj/effect/turf_decal/siding{ - dir = 6 - }, -/obj/effect/turf_decal/trimline/white/line{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) -"sce" = ( -/obj/effect/decal/cleanable/crayon{ - icon_state = "nay"; - pixel_y = 32 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "scf" = ( /obj/structure/table, /obj/item/grenade/chem_grenade/teargas/moustache{ @@ -63947,7 +66921,8 @@ pixel_y = 11 }, /obj/structure/sign/painting/library{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/glass/reinforced, /area/station/service/library) @@ -63955,13 +66930,6 @@ /obj/effect/spawner/random/structure/chair_maintenance, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"scy" = ( -/obj/machinery/duct, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/item/radio/intercom/directional/east, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/restrooms) "scE" = ( /obj/machinery/light/directional/south, /obj/machinery/light_switch/directional/south, @@ -63980,11 +66948,14 @@ /turf/open/floor/plating, /area/station/maintenance/port/aft) "scJ" = ( -/obj/effect/turf_decal/tile/neutral/half/contrasted{ +/obj/effect/landmark/start/hangover, +/obj/effect/turf_decal/siding/green{ dir = 1 }, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron/dark, +/obj/effect/turf_decal/plaque{ + icon_state = "L9" + }, +/turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "scK" = ( /obj/effect/turf_decal/bot/right, @@ -63996,6 +66967,19 @@ }, /turf/open/floor/engine/hull, /area/space/nearstation) +"scO" = ( +/obj/structure/cable, +/obj/machinery/light/directional/south, +/obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5{ + dir = 4 + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "scQ" = ( /obj/structure/table, /obj/structure/window/spawner/directional/north, @@ -64018,14 +67002,6 @@ "sdf" = ( /turf/open/floor/iron/dark/smooth_large, /area/station/security/interrogation) -"sdm" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/chair, -/obj/structure/disposalpipe/segment{ - dir = 9 - }, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) "sds" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/remains/human, @@ -64049,12 +67025,16 @@ /obj/machinery/firealarm/directional/east, /turf/open/floor/iron/dark/smooth_large, /area/station/security/office) -"sdI" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 +"sdP" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 }, -/turf/closed/wall/r_wall, -/area/station/command/heads_quarters/ce) +/obj/machinery/computer/atmos_control, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/turf/open/floor/iron/checker, +/area/station/engineering/atmos/upper) "sdV" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -64111,6 +67091,12 @@ /obj/item/radio/intercom/directional/east, /turf/open/floor/grass, /area/station/engineering/lobby) +"seD" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/wood, +/area/station/security/courtroom) "seF" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -64131,13 +67117,10 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/iron/small, /area/station/security/mechbay) -"seW" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ - dir = 9 - }, +"sfc" = ( +/obj/structure/lattice, /turf/open/openspace, -/area/station/engineering/break_room) +/area/station/maintenance/starboard/upper) "sfh" = ( /turf/closed/wall, /area/station/maintenance/disposal) @@ -64146,17 +67129,20 @@ id_tag = "MedbayExit"; name = "Medbay Exit" }, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, /obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/machinery/door/firedoor, /obj/effect/turf_decal/tile/blue/full, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 8 + }, /turf/open/floor/iron/dark, /area/station/medical/medbay/central) "sfn" = ( -/turf/open/floor/carpet, -/area/station/command/bridge) +/obj/structure/chair/comfy/beige{ + dir = 8 + }, +/turf/open/floor/carpet/executive, +/area/station/command/meeting_room/council) "sfp" = ( /obj/structure/table/reinforced, /obj/item/camera{ @@ -64166,14 +67152,11 @@ /obj/structure/cable, /turf/open/floor/wood, /area/station/security/courtroom) -"sfq" = ( -/obj/structure/flora/bush/fullgrass/style_random, -/obj/structure/flora/bush/ferny/style_random, -/obj/structure/flora/bush/flowers_br/style_random, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/grass, -/area/station/commons/dorms) +"sfv" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "sfz" = ( /obj/machinery/door/airlock/security/glass{ name = "Security Post - Cargo" @@ -64181,13 +67164,9 @@ /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/security/general, /obj/effect/turf_decal/tile/red/fourcorners, +/obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/checkpoint/supply) -"sfJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/blood/footprints, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "sfL" = ( /obj/machinery/atmospherics/components/binary/valve, /turf/open/floor/iron/dark, @@ -64199,6 +67178,24 @@ /obj/structure/displaycase/noalert, /turf/open/floor/iron/dark, /area/station/science/lobby) +"sfR" = ( +/obj/machinery/computer/crew, +/obj/structure/sign/poster/official/random/directional/north, +/obj/machinery/camera/autoname/directional/east, +/obj/effect/turf_decal/tile/blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"sfS" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 8 + }, +/obj/structure/cable, +/obj/machinery/power/apc/auto_name/directional/west, +/obj/machinery/modular_computer/preset/engineering{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/storage) "sgf" = ( /obj/structure/ladder, /obj/structure/cable, @@ -64232,23 +67229,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/central) -"sgG" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"sgM" = ( -/obj/structure/table/reinforced, -/obj/item/radio/intercom, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "sgN" = ( /obj/structure/bed/medical/emergency, /obj/effect/landmark/start/paramedic, @@ -64266,26 +67252,24 @@ /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, /obj/machinery/camera/autoname/directional/west, +/obj/structure/chair{ + dir = 4; + pixel_y = -2 + }, /turf/open/floor/iron/dark, /area/station/medical/medbay/lobby) "sgV" = ( /obj/machinery/door/airlock/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/landmark/navigate_destination/disposals, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/plating, /area/station/maintenance/disposal) -"sgX" = ( -/turf/open/floor/glass/reinforced/plasma, -/area/station/engineering/break_room) "shb" = ( /obj/effect/turf_decal/siding/red{ dir = 8 @@ -64295,6 +67279,11 @@ "shi" = ( /turf/closed/wall/r_wall, /area/station/engineering/storage_shared) +"shl" = ( +/obj/structure/railing, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "shs" = ( /turf/closed/wall, /area/station/commons/vacant_room/office) @@ -64315,9 +67304,6 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) -"shx" = ( -/turf/closed/wall/r_wall, -/area/station/maintenance/disposal/incinerator) "shG" = ( /obj/structure/railing{ dir = 8 @@ -64335,6 +67321,9 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/security/mechbay) +"shQ" = ( +/turf/closed/wall/r_wall, +/area/station/engineering/atmos/office) "shR" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light/blacklight/directional/west, @@ -64353,20 +67342,15 @@ /area/station/hallway/secondary/construction) "sik" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/hallway/abandoned_recreation) -"siz" = ( -/obj/machinery/light/directional/south, -/obj/structure/lattice/catwalk, -/turf/open/openspace, -/area/station/engineering/break_room) "siA" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -64376,6 +67360,13 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/primary/aft) +"siD" = ( +/obj/effect/turf_decal/siding/thinplating{ + dir = 10 + }, +/obj/structure/flora/bush/flowers_pp/style_random, +/turf/open/floor/grass, +/area/station/engineering/lobby) "siG" = ( /obj/effect/spawner/random/structure/crate, /obj/effect/spawner/random/maintenance, @@ -64386,23 +67377,6 @@ /obj/effect/landmark/start/depsec/science, /turf/open/openspace, /area/station/security/checkpoint/science) -"siM" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper{ - dir = 4 - }, -/obj/structure/fluff/paper/stack{ - dir = 8 - }, -/obj/structure/filingcabinet/chestdrawer, -/obj/effect/spawner/random/bureaucracy/paper, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) -"siN" = ( -/obj/structure/window/reinforced/plasma/spawner/directional/north, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "siP" = ( /turf/open/floor/iron/dark/smooth_large, /area/station/commons/lounge) @@ -64435,19 +67409,33 @@ }, /turf/open/floor/wood/large, /area/station/commons/lounge) -"sjq" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment{ - dir = 8 +"sjr" = ( +/obj/machinery/door/airlock/maintenance{ + name = "CE's Maintenance Access" }, -/obj/effect/turf_decal/trimline/yellow/arrow_ccw, -/obj/effect/turf_decal/trimline/yellow/arrow_ccw, -/turf/open/floor/iron, -/area/station/hallway/secondary/exit/departure_lounge) +/obj/effect/mapping_helpers/airlock/access/any/engineering/construction, +/turf/open/floor/plating, +/area/station/engineering/storage_shared) "sjx" = ( /turf/closed/wall, /area/station/hallway/primary/port) +"sjy" = ( +/obj/machinery/camera/autoname/directional/west, +/obj/structure/sign/warning/directional/south, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) +"sjz" = ( +/obj/structure/railing{ + dir = 1 + }, +/obj/machinery/vending/cigarette, +/obj/structure/sign/warning/yes_smoking/circle/directional/east, +/obj/machinery/light/small/directional/east, +/turf/open/floor/iron/dark, +/area/station/commons/toilet/restrooms) "sjC" = ( /obj/structure/stairs/south, /turf/open/floor/iron/stairs/medium{ @@ -64467,46 +67455,10 @@ }, /turf/open/floor/iron, /area/station/science/robotics) -"sjO" = ( -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) -"sjQ" = ( -/obj/structure/railing, -/obj/structure/table/wood, -/obj/item/folder/yellow{ - pixel_x = 4; - pixel_y = 6 - }, -/obj/item/folder/blue{ - pixel_x = -9; - pixel_y = 1 - }, -/obj/item/folder/red{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/folder{ - pixel_x = 2 - }, -/obj/item/taperecorder{ - pixel_x = -13; - pixel_y = 5 - }, -/obj/structure/cable, -/turf/open/floor/wood/large, -/area/station/service/library/private) "sjT" = ( /obj/structure/cable, /turf/closed/wall/r_wall, /area/station/security/office) -"ska" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 4 - }, -/obj/machinery/light/directional/south, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "skm" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -64531,12 +67483,6 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) -"skC" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) "skR" = ( /obj/structure/table/wood, /obj/item/vending_refill/cigarette{ @@ -64595,6 +67541,10 @@ }, /turf/open/openspace, /area/station/hallway/secondary/construction) +"slo" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/engineering/storage_shared) "slt" = ( /obj/structure/railing{ dir = 8 @@ -64656,12 +67606,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) -"slP" = ( -/obj/structure/railing{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "slS" = ( /obj/structure/lattice/catwalk, /obj/structure/railing/corner{ @@ -64670,8 +67614,9 @@ /obj/structure/railing/corner/end/flip{ dir = 8 }, +/obj/structure/cable, /turf/open/openspace, -/area/station/command/bridge) +/area/station/command/meeting_room/council) "smc" = ( /obj/machinery/button/door/directional/west{ name = "Kitchen Counter Shutters Control"; @@ -64685,36 +67630,16 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) -"smi" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"smk" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/lobby) -"smt" = ( -/obj/machinery/light/small/directional/north, -/obj/machinery/status_display/evac/directional/north, -/obj/structure/rack, -/obj/item/encryptionkey/headset_sci{ - pixel_x = -6; - pixel_y = 1 - }, -/obj/item/encryptionkey/headset_med, -/obj/item/encryptionkey/headset_eng{ - pixel_x = 6; - pixel_y = -1 - }, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ +"sml" = ( +/obj/effect/turf_decal/trimline/green/filled/line{ dir = 1 }, -/obj/machinery/airalarm/directional/east, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tcomms) +/obj/structure/frame/computer{ + anchored = 1 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) "smz" = ( /obj/machinery/hydroponics/soil, /obj/effect/decal/cleanable/dirt, @@ -64722,16 +67647,6 @@ /obj/structure/cable, /turf/open/floor/iron/textured_large, /area/station/security/prison) -"smD" = ( -/obj/structure/closet/secure_closet/atmospherics, -/turf/open/floor/glass/reinforced/plasma, -/area/station/engineering/atmos/project) -"smV" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark/textured_large, -/area/station/medical/morgue) "snd" = ( /obj/machinery/mecha_part_fabricator{ drop_direction = 4 @@ -64764,11 +67679,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) -"snQ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "snR" = ( /obj/structure/railing/corner{ dir = 1 @@ -64827,53 +67737,30 @@ }, /turf/open/floor/wood/large, /area/station/service/library) -"soH" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing, -/obj/structure/sign/poster/official/random/directional/north, -/obj/effect/landmark/start/hangover, -/turf/open/openspace, -/area/station/commons/dorms) +"soR" = ( +/obj/machinery/airalarm/directional/east, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "soU" = ( /turf/closed/wall, /area/station/science/research) -"spb" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/engine/hull/air, -/area/station/engineering/storage_shared) "spl" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/textured_large, /area/station/medical/abandoned) -"spr" = ( -/obj/structure/table, -/obj/item/hand_labeler{ - pixel_y = 11 - }, -/obj/item/hand_labeler_refill{ - pixel_x = -8; - pixel_y = 3 - }, -/obj/item/folder/yellow{ - pixel_x = 3; - pixel_y = 1 - }, -/obj/machinery/power/apc/auto_name/directional/east, +"spn" = ( +/obj/structure/chair/office, +/obj/machinery/duct, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 5 - }, /turf/open/floor/iron, +/area/station/engineering/lobby) +"spr" = ( +/obj/structure/cable, +/turf/open/floor/iron/dark/textured, /area/station/cargo/sorting) -"spw" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/poddoor/shutters{ - id = "abandoned_kitchen"; - name = "Kitchen Shudders" - }, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) "spC" = ( /obj/machinery/teleport/station, /obj/effect/turf_decal/tile/green/opposingcorners{ @@ -64893,30 +67780,21 @@ /obj/machinery/firealarm/directional/east, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"spK" = ( -/obj/machinery/door/airlock/external, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/obj/effect/mapping_helpers/airlock/access/all/engineering/external, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "spO" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 }, /turf/open/floor/wood/large, /area/station/service/library) -"sql" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) -"sqo" = ( -/obj/structure/chair/greyscale{ - dir = 1 +"sqj" = ( +/obj/structure/window/reinforced/plasma/spawner/directional/south, +/obj/machinery/power/energy_accumulator/tesla_coil/anchored, +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ + dir = 10 }, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/lesser) +/obj/structure/cable, +/turf/open/floor/engine, +/area/station/engineering/supermatter) "sqp" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/blue{ @@ -64952,47 +67830,52 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/virology) -"sqz" = ( -/obj/structure/cable, -/obj/item/cigbutt{ - pixel_x = -12; - pixel_y = 13 - }, -/obj/item/cigbutt{ - pixel_x = 1; - pixel_y = 9 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"sqy" = ( +/obj/machinery/light/directional/north, +/obj/machinery/status_display/evac/directional/north, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "sqQ" = ( -/obj/effect/turf_decal/siding/wood/corner, -/obj/structure/railing/corner, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/iron/textured, +/area/station/command/eva) "sqR" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/remains/human, /obj/structure/window/spawner/directional/south, /turf/open/floor/plating, /area/station/maintenance/hallway/abandoned_recreation) -"src" = ( -/obj/structure/table, -/obj/machinery/microwave/engineering/cell_included, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) -"srx" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/landmark/event_spawn, +"srh" = ( +/obj/effect/spawner/random/structure/grille, +/obj/structure/cable, /turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) +"sri" = ( +/obj/machinery/newscaster/directional/east, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/item/kirbyplants/random, +/obj/item/storage/box/lights/mixed, +/turf/open/floor/iron/dark/smooth_large, /area/station/commons/dorms) -"sry" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/dark_blue/opposingcorners, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) +"sru" = ( +/obj/effect/landmark/start/atmospheric_technician, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"srA" = ( +/obj/structure/table, +/obj/item/lipstick/purple{ + pixel_x = -2; + pixel_y = -2 + }, +/obj/item/clothing/mask/animal/horsehead{ + pixel_x = 4; + pixel_y = 15 + }, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/aft/upper) "srB" = ( /obj/machinery/camera/directional/west, /obj/effect/turf_decal/trimline/red/filled/line{ @@ -65026,9 +67909,7 @@ /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/supply/general, /obj/effect/turf_decal/tile/brown/fourcorners, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, +/obj/structure/cable, /turf/open/floor/iron, /area/station/cargo/storage) "ssc" = ( @@ -65042,16 +67923,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"ssm" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "sso" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/engineering/atmospherics_portable, @@ -65087,14 +67958,6 @@ }, /turf/open/misc/asteroid, /area/station/science/xenobiology/hallway) -"ssO" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/light/directional/north, -/turf/open/floor/iron/textured_large, -/area/station/medical/virology) "ssT" = ( /obj/structure/table/wood, /obj/structure/desk_bell{ @@ -65115,6 +67978,29 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/service/cafeteria) +"ssX" = ( +/obj/structure/sink/directional/east, +/turf/open/floor/iron/freezer, +/area/station/commons/dorms) +"sta" = ( +/obj/effect/turf_decal/tile/brown/fourcorners, +/obj/machinery/door/airlock/mining{ + name = "Deliveries" + }, +/obj/machinery/door/firedoor, +/obj/effect/mapping_helpers/airlock/access/any/supply/shipping, +/obj/effect/mapping_helpers/airlock/access/any/supply/mining, +/obj/effect/mapping_helpers/airlock/access/any/supply/bit_den, +/turf/open/floor/iron, +/area/station/cargo/sorting) +"sti" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing/corner{ + dir = 1 + }, +/obj/structure/railing, +/turf/open/openspace, +/area/station/engineering/lobby) "stk" = ( /obj/structure/table, /obj/machinery/recharger{ @@ -65135,7 +68021,7 @@ /area/station/security/range) "stm" = ( /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "stq" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 6 @@ -65153,6 +68039,12 @@ /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/security/checkpoint/science) +"stt" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/structure/tank_dispenser, +/obj/structure/sign/poster/official/moth_hardhat/directional/south, +/turf/open/floor/iron/dark, +/area/station/engineering/engine_smes) "stv" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -65162,30 +68054,31 @@ dir = 4 }, /turf/open/openspace, -/area/station/command/bridge) -"stR" = ( -/obj/effect/turf_decal/siding{ - dir = 5 +/area/station/command/meeting_room/council) +"stC" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 10 }, -/obj/effect/turf_decal/trimline/white/line, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "stW" = ( /obj/item/radio/intercom/directional/north, /obj/machinery/light/directional/east, /turf/open/floor/glass/reinforced, /area/station/medical/chemistry) -"stY" = ( -/obj/item/storage/box/lights/mixed, -/obj/structure/cable, -/turf/open/floor/catwalk_floor, -/area/station/maintenance/starboard/lesser) "sus" = ( /turf/open/floor/plating, /area/station/engineering/storage_shared) +"sux" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/duct, +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) "suy" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, @@ -65201,14 +68094,50 @@ }, /turf/open/floor/iron/dark, /area/station/science/lobby) +"suI" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/machinery/atmospherics/components/trinary/mixer{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/engineering/atmos/upper) "suJ" = ( /obj/structure/sign/poster/official/moth_meth/directional/east, /turf/open/floor/plating, /area/station/maintenance/port/greater) +"suK" = ( +/obj/effect/turf_decal/trimline/white/corner{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/maintenance, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "suM" = ( /obj/effect/turf_decal/tile/yellow, /turf/open/floor/iron/dark, /area/station/medical/chemistry) +"suQ" = ( +/obj/machinery/computer/mecha, +/obj/structure/sign/poster/official/random/directional/north, +/obj/machinery/camera/autoname/directional/west, +/obj/effect/turf_decal/tile/purple/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"suV" = ( +/obj/machinery/meter{ + name = "C02 meter" + }, +/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ + name = "CO2 Multideck Adapter"; + dir = 2 + }, +/obj/effect/turf_decal/tile/dark/fourcorners, +/obj/effect/turf_decal/box/white, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "svh" = ( /obj/machinery/door/airlock/external, /obj/effect/mapping_helpers/airlock/access/all/engineering/external, @@ -65222,15 +68151,11 @@ /turf/open/floor/plating, /area/station/solars/starboard/aft) "svp" = ( -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) -"svt" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/openspace, -/area/station/engineering/atmos/project) +/obj/effect/turf_decal/stripes{ + dir = 1 + }, +/turf/open/floor/iron/textured, +/area/station/command/eva) "svw" = ( /obj/effect/turf_decal/siding/wood/corner{ dir = 1 @@ -65239,44 +68164,36 @@ /obj/structure/railing/corner, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"svB" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line, -/obj/machinery/firealarm/directional/south, -/obj/machinery/light/directional/south, -/obj/item/kirbyplants/random, -/turf/open/floor/iron, -/area/station/engineering/lobby) "svC" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) -"svL" = ( -/obj/machinery/door/poddoor/massdriver_ordnance, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +"svH" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/obj/machinery/atmos_shield_gen/active, -/obj/machinery/atmos_shield_gen/active{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) -"svM" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ +/turf/open/floor/iron, +/area/station/commons/dorms) +"svT" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ dir = 5 }, -/obj/machinery/light/directional/east, -/obj/structure/sign/poster/random/directional/east, -/turf/open/floor/iron, -/area/station/engineering/lobby) +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "svW" = ( /obj/effect/turf_decal/siding/thinplating/dark{ dir = 1 }, /turf/open/floor/wood, /area/station/service/library) +"swa" = ( +/obj/effect/turf_decal/stripes/line, +/obj/item/radio/intercom/directional/south, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "swd" = ( /obj/effect/decal/cleanable/blood/gibs, /turf/open/floor/engine/hull, @@ -65285,17 +68202,6 @@ /obj/structure/disposalpipe/segment, /turf/open/openspace, /area/station/hallway/secondary/construction) -"swp" = ( -/obj/effect/spawner/random/entertainment/arcade, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) -"sws" = ( -/obj/structure/railing{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/fore) "swH" = ( /obj/item/gun/ballistic/shotgun/doublebarrel, /obj/structure/table/wood, @@ -65323,7 +68229,13 @@ /turf/open/floor/iron/dark/textured_half{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"swS" = ( +/obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ + dir = 9 + }, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "swU" = ( /obj/structure/cable, /obj/effect/turf_decal/tile/yellow/opposingcorners{ @@ -65397,15 +68309,24 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) -"sxT" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 4 +"sxO" = ( +/obj/machinery/vending/coffee, +/obj/machinery/digital_clock/directional/south, +/turf/open/floor/iron, +/area/station/hallway/secondary/exit/departure_lounge) +"sxP" = ( +/obj/structure/window/reinforced/plasma/spawner/directional/east, +/obj/structure/closet/secure_closet/engineering_personal, +/obj/effect/turf_decal/bot, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) +"sxR" = ( +/obj/machinery/firealarm/directional/west, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "sxY" = ( /obj/structure/reflector/double/anchored{ dir = 10 @@ -65441,6 +68362,11 @@ /obj/structure/transit_tube/diagonal, /turf/open/space/openspace, /area/space/nearstation) +"sym" = ( +/obj/machinery/light/warm/dim/directional/west, +/obj/structure/lattice, +/turf/open/openspace, +/area/station/hallway/primary/central) "syw" = ( /obj/structure/flora/bush/pale/style_random, /obj/structure/flora/bush/fullgrass/style_random, @@ -65458,22 +68384,30 @@ /obj/structure/cable, /turf/open/openspace, /area/station/medical/medbay/central) +"syK" = ( +/obj/structure/closet/firecloset, +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/spawner/random/maintenance, +/obj/effect/turf_decal/bot, +/turf/open/floor/iron, +/area/station/maintenance/starboard/fore) +"syN" = ( +/obj/structure/showcase/machinery/oldpod{ + desc = "An old NT branded sleeper, decommissioned after the lead acetate incident. None of the functional machinery remains inside."; + name = "decommissioned sleeper" + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/white, +/area/station/maintenance/starboard) "syR" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple, /obj/structure/lattice/catwalk, /turf/open/space/basic, /area/space/nearstation) -"syU" = ( -/obj/item/ammo_casing/spent{ - pixel_x = 8; - pixel_y = 6 - }, -/obj/item/ammo_casing/spent{ - pixel_x = -6; - pixel_y = -5 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +"syT" = ( +/obj/structure/table/wood, +/turf/open/floor/carpet, +/area/station/maintenance/starboard) "syZ" = ( /obj/effect/turf_decal/tile/bar/opposingcorners, /obj/structure/railing/corner{ @@ -65482,6 +68416,14 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/station/maintenance/port/aft) +"szf" = ( +/obj/structure/extinguisher_cabinet/directional/north, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) "szi" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/effect/turf_decal/trimline/green/filled/line{ @@ -65499,17 +68441,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/telecomms, /area/station/tcommsat/server) -"szn" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/structure/table, -/obj/structure/microscope, -/obj/effect/turf_decal/trimline/purple/filled/line{ - dir = 9 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) "szp" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -65533,14 +68464,41 @@ }, /obj/item/radio/intercom/directional/east, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet, +/turf/open/floor/carpet/purple, /area/station/command/gateway) +"szA" = ( +/obj/structure/closet/crate/freezer, +/obj/item/reagent_containers/cup/soda_cans/monkey_energy, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/upper) +"szG" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/engineering/engine_smes) "szK" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt/dust, /obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/storage) +"szL" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/rack, +/obj/item/wrench, +/obj/item/crowbar, +/obj/item/pipe_dispenser, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "sAa" = ( /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/wood, @@ -65551,14 +68509,19 @@ /turf/open/openspace, /area/station/hallway/primary/central) "sAm" = ( -/obj/machinery/holopad, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/structure/disposalpipe/segment{ dir = 5 }, -/turf/open/floor/carpet, +/obj/effect/turf_decal/siding/wood/corner{ + dir = 4 + }, +/obj/effect/turf_decal/siding/wood/corner{ + dir = 1 + }, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) "sAn" = ( /obj/structure/table, @@ -65573,13 +68536,6 @@ /obj/effect/mapping_helpers/broken_machine, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) -"sAB" = ( -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) "sAE" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/blue/full, @@ -65588,15 +68544,16 @@ /obj/structure/sign/poster/contraband/missing_gloves/directional/south, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) -"sAG" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +"sAI" = ( +/obj/item/food/grown/sunflower, +/turf/open/floor/iron/vaporwave, +/area/station/maintenance/starboard/aft/upper) +"sAR" = ( +/obj/effect/decal/cleanable/dirt, +/obj/item/radio/intercom/directional/south, +/obj/structure/reagent_dispensers/watertank, /turf/open/floor/plating, -/area/station/maintenance/port) +/area/station/maintenance/starboard/central) "sAT" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -65627,6 +68584,13 @@ /obj/structure/cable, /turf/open/floor/engine/hull/air, /area/station/hallway/primary/fore) +"sBv" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/junction/flip{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/hallway/secondary/exit/departure_lounge) "sBz" = ( /obj/structure/rack, /obj/item/storage/toolbox/emergency, @@ -65662,6 +68626,10 @@ /obj/effect/spawner/structure/window/reinforced/plasma, /turf/open/floor/plating, /area/station/engineering/supermatter/room) +"sCI" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/cargo/miningoffice) "sCP" = ( /obj/structure/table/reinforced, /obj/item/storage/toolbox/emergency, @@ -65673,7 +68641,7 @@ /area/station/maintenance/port/aft) "sDo" = ( /turf/open/floor/iron/freezer, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "sDu" = ( /obj/effect/landmark/navigate_destination/library, /obj/machinery/door/firedoor, @@ -65682,16 +68650,20 @@ }, /turf/open/floor/wood, /area/station/service/library) -"sDG" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +"sDD" = ( +/obj/effect/turf_decal/siding/thinplating{ + dir = 8 + }, +/obj/structure/flora/bush/grassy/style_random, +/obj/machinery/camera/autoname/directional/north, +/obj/structure/flora/bush/flowers_pp/style_random, +/obj/machinery/light/small/directional/north, +/turf/open/floor/grass, +/area/station/engineering/lobby) "sDX" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -65704,6 +68676,11 @@ /obj/machinery/airalarm/directional/south, /turf/open/floor/iron, /area/station/science/lab) +"sEc" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "sEn" = ( /obj/structure/disposalpipe/trunk/multiz{ dir = 4 @@ -65718,15 +68695,6 @@ }, /turf/open/floor/engine, /area/station/science/xenobiology) -"sEt" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ - dir = 2 - }, -/turf/open/floor/iron/dark/textured_large, -/area/station/maintenance/port) "sEI" = ( /obj/structure/tank_holder/extinguisher, /obj/machinery/camera/directional/north{ @@ -65767,6 +68735,10 @@ }, /turf/open/floor/engine/hull, /area/space/nearstation) +"sEV" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "sFa" = ( /obj/machinery/modular_computer/preset/id{ dir = 1 @@ -65800,9 +68772,6 @@ /turf/open/floor/iron, /area/station/science/lobby) "sFz" = ( -/obj/structure/chair{ - dir = 8 - }, /obj/structure/railing/corner, /obj/effect/turf_decal/trimline/green/filled/line{ dir = 4 @@ -65810,7 +68779,9 @@ /obj/effect/turf_decal/trimline/green/filled/mid_joiner{ dir = 4 }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 4 + }, /area/station/hallway/primary/central) "sFB" = ( /obj/structure/chair/office/light{ @@ -65838,6 +68809,14 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/science/zoo) +"sFL" = ( +/obj/machinery/computer/station_alert{ + dir = 8 + }, +/obj/item/radio/intercom/directional/east, +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "sFQ" = ( /obj/machinery/light/floor, /turf/open/floor/iron/textured_large, @@ -65858,38 +68837,23 @@ /obj/machinery/light/directional/east, /turf/open/floor/plating, /area/station/security/execution/education) -"sFV" = ( -/obj/structure/table/reinforced, -/obj/item/gun/ballistic/shotgun/toy/crossbow, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "sFW" = ( /obj/effect/turf_decal/trimline/dark_blue/corner{ dir = 1 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"sFZ" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 4 - }, -/obj/structure/table, -/obj/item/clothing/head/soft/grey{ - pixel_x = -2; - pixel_y = 3 - }, -/turf/open/floor/wood, -/area/station/commons/fitness/recreation) +/area/station/ai/satellite/interior) "sGb" = ( /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/port/greater) "sGj" = ( -/obj/effect/turf_decal/siding/wood, -/obj/structure/railing, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/stripes{ + dir = 2 + }, +/turf/open/floor/iron/textured, +/area/station/command/eva) "sGy" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -65911,14 +68875,6 @@ /obj/effect/turf_decal/tile/dark/full, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) -"sGR" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/effect/mapping_helpers/burnt_floor, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) "sGS" = ( /obj/structure/railing{ dir = 1 @@ -65927,14 +68883,37 @@ /obj/structure/cable, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) +"sGT" = ( +/obj/structure/chair/pew/left{ + dir = 4 + }, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "sGV" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/maintenance/starboard/central) +"sHh" = ( +/obj/structure/table/wood, +/obj/item/flashlight/lamp, +/turf/open/floor/wood, +/area/station/maintenance/starboard) +"sHi" = ( +/obj/structure/lattice/catwalk, +/obj/structure/disposalpipe/trunk/multiz/down{ + dir = 1 + }, +/turf/open/openspace, +/area/station/maintenance/starboard/upper) +"sHr" = ( +/obj/item/assembly/mousetrap/armed, +/turf/open/floor/plating, +/area/station/maintenance/port) "sHu" = ( /obj/structure/ladder, /turf/open/floor/glass/reinforced/airless, @@ -66001,13 +68980,6 @@ /obj/machinery/light/floor/broken, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"sIn" = ( -/obj/item/stack/rods{ - amount = 7 - }, -/obj/structure/closet/firecloset, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "sIp" = ( /obj/structure/table/wood, /obj/item/book/manual/wiki/detective{ @@ -66020,10 +68992,6 @@ }, /turf/open/floor/iron/grimy, /area/station/security/detectives_office/private_investigators_office) -"sIq" = ( -/obj/effect/spawner/random/structure/steam_vent, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "sIr" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/window/spawner/directional/south, @@ -66040,14 +69008,10 @@ /obj/structure/closet/secure_closet/security/sec, /turf/open/floor/iron/dark/smooth_large, /area/station/security/lockers) -"sIB" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 5 - }, -/obj/structure/closet/toolcloset, -/obj/machinery/firealarm/directional/east, -/turf/open/floor/iron/dark, -/area/station/engineering/storage) +"sII" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/turf/open/floor/iron/large, +/area/station/engineering/lobby) "sIO" = ( /obj/effect/turf_decal/trimline/green/filled/corner{ dir = 1 @@ -66068,23 +69032,8 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/sign/directions/engineering/directional/west{ - dir = 2 - }, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"sIW" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ - dir = 4 - }, -/obj/structure/railing{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/openspace, -/area/station/engineering/lobby) "sJc" = ( /obj/machinery/door/airlock/maintenance_hatch{ name = "MiniSat Maintenance" @@ -66100,7 +69049,11 @@ dir = 1 }, /turf/open/floor/iron/checker, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) +"sJt" = ( +/obj/machinery/camera/autoname/directional/south, +/turf/open/floor/glass, +/area/station/medical/medbay/central) "sJv" = ( /obj/effect/turf_decal/trimline/brown/filled/corner{ dir = 8 @@ -66126,17 +69079,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood, /area/station/service/lawoffice) -"sJK" = ( -/obj/structure/mop_bucket{ - pixel_y = 9 - }, -/obj/item/reagent_containers/cup/bucket{ - pixel_x = 6; - pixel_y = -4 - }, -/obj/item/mop, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "sJQ" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 @@ -66144,7 +69086,9 @@ /obj/effect/turf_decal/trimline/red/filled/mid_joiner{ dir = 8 }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 8 + }, /area/station/hallway/primary/central) "sJR" = ( /turf/closed/wall, @@ -66161,6 +69105,24 @@ }, /turf/open/floor/plating, /area/station/maintenance/port) +"sKn" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/engineering/transit_tube) +"sKs" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible, +/obj/machinery/light/directional/east, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) +"sKx" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/command/heads_quarters/ce) "sKD" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/fluff/paper/stack{ @@ -66171,27 +69133,7 @@ "sKF" = ( /obj/machinery/status_display/ai/directional/west, /turf/open/floor/carpet/black, -/area/station/ai_monitored/turret_protected/ai_upload) -"sKH" = ( -/obj/structure/table, -/obj/machinery/computer/arcade/orion_trail{ - desc = "For gamers only. Casuals need not apply."; - icon_screen = "library"; - icon_state = "oldcomp"; - name = "Gamer Computer" - }, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/lesser) -"sKI" = ( -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ - dir = 4 - }, -/obj/machinery/computer/atmos_control/plasma_tank, -/obj/effect/turf_decal/tile/purple/half{ - dir = 1 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +/area/station/ai/upload/chamber) "sKL" = ( /obj/structure/chair/stool/bar/directional/south, /obj/effect/landmark/start/hangover, @@ -66208,16 +69150,13 @@ /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/commons/storage/primary) -"sKO" = ( -/obj/machinery/duct, -/obj/structure/rack, -/obj/machinery/light_switch/directional/south, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/restrooms) -"sKT" = ( -/obj/structure/sign/poster/official/random/directional/north, +"sLa" = ( +/obj/effect/turf_decal/tile/blue/opposingcorners, +/obj/structure/chair/office/light{ + dir = 1 + }, /turf/open/floor/iron/dark, -/area/station/commons/dorms) +/area/station/command/bridge) "sLd" = ( /obj/effect/landmark/firealarm_sanity, /turf/open/openspace, @@ -66233,12 +69172,6 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/wood, /area/station/commons/storage/tools) -"sLx" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "sLB" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/green/filled/line{ @@ -66261,13 +69194,20 @@ /turf/open/openspace, /area/station/hallway/primary/central) "sLK" = ( -/obj/effect/turf_decal/trimline/brown/filled/line, -/obj/item/kirbyplants/random, -/obj/machinery/status_display/supply{ - pixel_y = -32 - }, -/turf/open/floor/iron/textured, +/obj/structure/extinguisher_cabinet/directional/south, +/obj/effect/turf_decal/delivery, +/obj/effect/decal/cleanable/rubble, +/turf/open/floor/iron/dark/smooth_large, /area/station/cargo/storage) +"sLO" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/lattice/catwalk, +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/turf/open/openspace, +/area/station/maintenance/starboard/central/upper) "sLQ" = ( /obj/machinery/suit_storage_unit/ce, /obj/item/radio/intercom/directional/north, @@ -66277,32 +69217,26 @@ /turf/open/floor/carpet/orange, /area/station/command/heads_quarters/ce) "sLS" = ( -/obj/structure/table/reinforced, -/obj/item/paper_bin{ - pixel_x = -6; - pixel_y = 7 - }, -/obj/machinery/recharger{ - pixel_x = 7; - pixel_y = 6 - }, -/obj/structure/cable, /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 }, -/obj/machinery/power/apc/auto_name/directional/west, +/obj/structure/reagent_dispensers/wall/peppertank/directional/west, +/obj/structure/cable, +/obj/structure/table/reinforced, +/obj/item/folder/red{ + pixel_y = 11 + }, +/obj/item/pen{ + pixel_y = 8 + }, /turf/open/floor/iron/dark, /area/station/security/checkpoint/supply) "sLY" = ( -/turf/open/floor/engine/hull/air, -/area/station/command/meeting_room/council) -"sMa" = ( -/obj/effect/mapping_helpers/burnt_floor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, +/obj/machinery/light/floor, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, /turf/open/floor/iron/dark, -/area/station/engineering/hallway) +/area/station/command/bridge) "sMp" = ( /obj/item/paint/violet{ pixel_x = -7; @@ -66314,6 +69248,13 @@ }, /turf/open/floor/glass/reinforced, /area/station/service/library) +"sMr" = ( +/obj/machinery/mineral/stacking_unit_console{ + pixel_x = 32 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/disposal) "sMt" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -66327,16 +69268,6 @@ /obj/machinery/power/smes, /turf/open/floor/glass/reinforced, /area/station/maintenance/solars/port/aft) -"sMw" = ( -/obj/machinery/door/airlock/highsecurity{ - name = "Gravity Generator Room" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/construction, -/turf/open/floor/iron, -/area/station/engineering/gravity_generator) "sMy" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -66355,6 +69286,11 @@ /obj/structure/table/reinforced, /turf/open/floor/engine, /area/station/engineering/supermatter/room) +"sMK" = ( +/obj/structure/cable, +/obj/effect/spawner/random/trash/garbage, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "sMQ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, @@ -66378,7 +69314,20 @@ /turf/open/floor/iron/dark/textured_half{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) +"sNj" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/machinery/light/floor, +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"sNz" = ( +/obj/structure/sign/flag/nanotrasen/directional/east, +/turf/open/floor/iron, +/area/station/commons/dorms) "sNC" = ( /obj/structure/cable, /turf/open/floor/plating, @@ -66387,6 +69336,13 @@ /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) +"sNF" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "sNG" = ( /obj/machinery/conveyor{ dir = 4; @@ -66396,6 +69352,7 @@ dir = 8 }, /obj/effect/decal/cleanable/blood/oil, +/obj/effect/turf_decal/stripes/red/box, /turf/open/floor/plating, /area/station/maintenance/disposal) "sNN" = ( @@ -66405,12 +69362,17 @@ }, /turf/open/floor/engine, /area/station/science/xenobiology) -"sNW" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ +"sNT" = ( +/obj/machinery/camera/autoname/directional/south, +/obj/effect/turf_decal/trimline/red/filled/line{ + dir = 6 + }, +/obj/machinery/airalarm/directional/south, +/obj/machinery/computer/records/security{ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/engineering/transit_tube) +/area/station/security/checkpoint/engineering) "sOa" = ( /obj/structure/lattice/catwalk, /obj/effect/turf_decal/siding/blue/corner{ @@ -66421,6 +69383,9 @@ }, /turf/open/openspace, /area/station/medical/medbay/central) +"sOm" = ( +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/aft/upper) "sOn" = ( /turf/open/floor/engine, /area/station/science/auxlab/firing_range) @@ -66430,14 +69395,11 @@ }, /obj/machinery/light_switch/directional/east, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat_interior) -"sOw" = ( -/obj/structure/extinguisher_cabinet/directional/south, -/obj/structure/closet/crate/trashcart/laundry, -/obj/effect/spawner/random/clothing/backpack, -/obj/effect/spawner/random/clothing/backpack, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) +/area/station/ai/satellite/interior) +"sOy" = ( +/obj/item/kirbyplants/photosynthetic, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "sOz" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -66461,6 +69423,22 @@ /obj/structure/cable, /turf/open/floor/wood, /area/station/service/cafeteria) +"sOU" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 8 + }, +/obj/structure/ladder, +/obj/effect/turf_decal/stripes/box, +/turf/open/floor/iron/smooth, +/area/station/engineering/main) +"sOV" = ( +/obj/structure/reflector/double{ + dir = 6 + }, +/obj/machinery/light/directional/north, +/obj/machinery/status_display/ai/directional/north, +/turf/open/floor/plating, +/area/station/engineering/supermatter/room) "sPc" = ( /obj/structure/table/reinforced/rglass, /obj/item/storage/belt/medical, @@ -66493,20 +69471,27 @@ /obj/machinery/rnd/production/protolathe/department/science, /turf/open/floor/iron/dark, /area/station/science/lobby) -"sPk" = ( -/obj/structure/ladder, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) -"sPp" = ( +"sPl" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, -/obj/effect/decal/cleanable/blood/oil, -/obj/item/cigbutt{ - pixel_x = -12; - pixel_y = 11 +/obj/effect/landmark/start/hangover, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/obj/machinery/duct, +/turf/open/floor/catwalk_floor/iron, +/area/station/commons/dorms) +"sPr" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 1 + }, +/obj/structure/chair{ + dir = 1 + }, +/turf/open/openspace, +/area/station/maintenance/aft/upper) "sPt" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/closet/crate/preopen, @@ -66546,10 +69531,6 @@ }, /turf/open/floor/iron/dark, /area/station/hallway/secondary/service) -"sPC" = ( -/obj/machinery/holopad, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) "sPT" = ( /obj/structure/rack, /obj/effect/spawner/random/food_or_drink, @@ -66569,7 +69550,7 @@ "sQg" = ( /obj/effect/turf_decal/siding/dark, /turf/open/floor/iron/white/textured_half, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "sQi" = ( /obj/machinery/photocopier/prebuilt, /obj/machinery/requests_console/directional/north{ @@ -66642,6 +69623,37 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/iron, /area/station/hallway/secondary/construction) +"sQK" = ( +/obj/effect/turf_decal/trimline/red, +/obj/effect/turf_decal/trimline/red/mid_joiner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/red/mid_joiner, +/obj/effect/turf_decal/trimline/red/mid_joiner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/red/mid_joiner{ + dir = 4 + }, +/obj/item/cigbutt{ + pixel_x = 7; + pixel_y = 14 + }, +/obj/item/cigbutt{ + pixel_x = 1; + pixel_y = 1 + }, +/obj/item/cigbutt{ + pixel_x = -5; + pixel_y = 6 + }, +/obj/item/cigbutt{ + pixel_x = -9; + pixel_y = -2 + }, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "sQW" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/frame/computer{ @@ -66657,16 +69669,6 @@ }, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"sRa" = ( -/obj/effect/landmark/start/atmospheric_technician, -/turf/open/floor/iron/freezer, -/area/station/engineering/atmos/pumproom) -"sRd" = ( -/obj/machinery/power/turbine/turbine_outlet{ - dir = 8 - }, -/turf/open/floor/engine, -/area/station/maintenance/disposal/incinerator) "sRg" = ( /obj/structure/cable, /obj/machinery/power/apc/auto_name/directional/north, @@ -66685,13 +69687,6 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/port) -"sRj" = ( -/obj/structure/lattice/catwalk, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/openspace, -/area/station/engineering/break_room) "sRn" = ( /obj/structure/table/reinforced, /obj/item/multitool{ @@ -66748,27 +69743,17 @@ }, /turf/open/floor/iron, /area/station/cargo/storage) -"sRP" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/openspace, -/area/station/engineering/atmos/project) "sRY" = ( /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/station/maintenance/port/greater) "sSc" = ( -/obj/structure/railing, /obj/effect/landmark/event_spawn, -/turf/open/floor/iron/dark, -/area/station/command/bridge) -"sSk" = ( -/obj/structure/closet/firecloset, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +/obj/machinery/light/floor, +/obj/effect/turf_decal/trimline/dark_blue/filled/line, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "sSs" = ( /obj/structure/chair/office/light, /obj/effect/landmark/start/research_director, @@ -66786,6 +69771,20 @@ "sSw" = ( /turf/closed/wall, /area/station/security/detectives_office) +"sSx" = ( +/obj/machinery/computer/atmos_control/nitrogen_tank, +/obj/effect/turf_decal/tile/red/half{ + dir = 1 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) +"sSy" = ( +/obj/structure/lattice/catwalk, +/obj/effect/spawner/random/trash/garbage{ + spawn_scatter_radius = 1 + }, +/turf/open/openspace, +/area/station/maintenance/aft/upper) "sSz" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -66816,11 +69815,6 @@ /obj/effect/spawner/random/trash/cigbutt, /turf/open/floor/carpet, /area/station/maintenance/starboard/aft) -"sSR" = ( -/obj/machinery/vending/coffee, -/obj/structure/window/spawner/directional/west, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "sSW" = ( /obj/effect/turf_decal/siding/wood{ dir = 8 @@ -66835,7 +69829,7 @@ /obj/item/storage/dice{ pixel_y = 8 }, -/turf/open/floor/wood, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) "sTa" = ( /obj/structure/table/wood/fancy/red, @@ -66860,20 +69854,15 @@ /obj/structure/lattice, /turf/open/openspace, /area/station/maintenance/port/aft) +"sTp" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/landmark/generic_maintenance_landmark, +/obj/structure/rack, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central) "sTv" = ( /turf/closed/wall, /area/station/security/courtroom) -"sTO" = ( -/obj/effect/turf_decal/bot, -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/atmos/upper) -"sTS" = ( -/obj/machinery/firealarm/directional/west, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "sTT" = ( /obj/structure/broken_flooring/pile/directional/east, /turf/open/floor/plating, @@ -66884,17 +69873,7 @@ }, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/aisat/exterior) -"sUi" = ( -/obj/structure/railing{ - dir = 8 - }, -/obj/machinery/duct, -/obj/machinery/light/directional/east, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/light_switch/directional/east, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/restrooms) +/area/station/ai/satellite/exterior) "sUm" = ( /obj/machinery/atmospherics/components/tank, /turf/open/floor/iron/dark/textured_corner{ @@ -66922,6 +69901,13 @@ }, /turf/open/floor/iron/dark, /area/station/security/warden) +"sUw" = ( +/obj/machinery/light/floor, +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "sUx" = ( /turf/open/openspace, /area/station/service/chapel) @@ -66943,6 +69929,26 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/dark, /area/station/maintenance/starboard/aft) +"sUH" = ( +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 + }, +/obj/machinery/newscaster/directional/west, +/obj/structure/closet/firecloset, +/turf/open/floor/iron/dark, +/area/station/commons/fitness/recreation) +"sUK" = ( +/obj/machinery/camera/autoname/directional/north, +/obj/structure/cable, +/obj/item/radio/intercom/directional/north, +/obj/effect/turf_decal/stripes/white/corner{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/white/corner{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "sUM" = ( /obj/effect/turf_decal/box/white{ color = "#EFB341" @@ -66954,10 +69960,6 @@ /obj/effect/mapping_helpers/turn_off_lights_with_lightswitch, /turf/open/floor/engine, /area/station/engineering/atmos/hfr_room) -"sUV" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "sUW" = ( /obj/structure/lattice/catwalk, /obj/structure/railing, @@ -66966,13 +69968,26 @@ }, /turf/open/openspace, /area/station/engineering/lobby) -"sVb" = ( -/obj/item/wrench, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/commons/dorms) +"sUY" = ( +/obj/machinery/atmospherics/pipe/multiz/cyan/visible{ + dir = 2; + name = "Air Mix Multideck Adapter" + }, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/meter{ + name = "Mix Meter" + }, +/obj/effect/turf_decal/box/white, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"sVc" = ( +/obj/structure/lattice/catwalk, +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/turf/open/openspace, +/area/station/maintenance/starboard/upper) "sVj" = ( -/obj/structure/cable, /obj/machinery/vending/sustenance{ req_access = list("command") }, @@ -66980,6 +69995,19 @@ /obj/machinery/light/small/directional/north, /turf/open/floor/plating, /area/station/maintenance/central) +"sVo" = ( +/obj/structure/closet/crate, +/obj/item/stack/sheet/glass{ + amount = 12 + }, +/obj/item/stack/cable_coil{ + pixel_x = -1; + pixel_y = -3 + }, +/obj/item/extinguisher/mini, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "sVq" = ( /obj/machinery/door/airlock{ id_tag = "restroom_2"; @@ -66988,10 +70016,6 @@ /obj/machinery/duct, /turf/open/floor/iron/freezer, /area/station/commons/toilet/restrooms) -"sVA" = ( -/obj/structure/grille, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "sVG" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, @@ -67008,6 +70032,13 @@ /obj/effect/spawner/random/contraband/permabrig_weapon, /turf/open/floor/iron/dark, /area/station/security/evidence) +"sVO" = ( +/obj/effect/turf_decal/trimline/brown/filled/corner, +/obj/effect/turf_decal/trimline/brown/arrow_cw{ + dir = 9 + }, +/turf/open/floor/iron, +/area/station/hallway/primary/starboard) "sWg" = ( /obj/effect/turf_decal/box/corners{ dir = 8 @@ -67030,11 +70061,16 @@ }, /obj/effect/mapping_helpers/airlock/abandoned, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/iron/dark, /area/station/construction/storage_wing) +"sWH" = ( +/obj/effect/spawner/structure/window, +/obj/machinery/door/firedoor, +/turf/open/floor/plating, +/area/station/commons/locker) "sWI" = ( /obj/machinery/camera/autoname/directional/south, /obj/structure/disposalpipe/segment{ @@ -67049,6 +70085,14 @@ /obj/effect/spawner/structure/window/hollow/middle, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"sWM" = ( +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) "sWN" = ( /obj/structure/closet/crate/bin, /obj/effect/spawner/random/maintenance, @@ -67064,9 +70108,15 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) +"sWX" = ( +/obj/structure/sign/warning/electric_shock/directional/south, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "sWY" = ( /obj/structure/cable, +/obj/effect/spawner/random/trash/mess, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/disposal) "sXd" = ( @@ -67079,30 +70129,41 @@ }, /turf/open/floor/wood/large, /area/station/medical/psychology) +"sXf" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/engineering/lobby) "sXj" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/structure/disposalpipe/segment, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) "sXk" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/checkpoint/supply) "sXq" = ( /turf/open/floor/iron/dark/smooth_large, /area/station/security/execution/transfer) -"sXv" = ( -/obj/machinery/atmospherics/pipe/layer_manifold/cyan/visible, -/obj/machinery/meter, -/turf/closed/wall/r_wall, -/area/station/engineering/atmos/upper) +"sXu" = ( +/obj/machinery/conveyor_switch/oneway{ + id = "packageSort2"; + name = "Belt Conveyor" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/iron/dark/textured, +/area/station/cargo/sorting) "sXI" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/door/airlock/public/glass{ @@ -67131,17 +70192,9 @@ /obj/structure/railing, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/openspace, -/area/station/command/bridge) -"sYg" = ( -/obj/machinery/modular_computer/preset/civilian{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage) +/area/station/command/meeting_room/council) "sYh" = ( /obj/machinery/firealarm/directional/north, /obj/structure/filingcabinet/medical, @@ -67158,12 +70211,6 @@ /obj/structure/flora/bush/flowers_br, /turf/open/floor/grass, /area/station/command/heads_quarters/hos) -"sYH" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "sYL" = ( /turf/open/floor/iron, /area/station/construction/storage_wing) @@ -67176,15 +70223,26 @@ /obj/effect/spawner/random/engineering/tool, /turf/open/floor/plating, /area/station/construction/storage_wing) -"sZh" = ( -/obj/structure/lattice/catwalk, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) +"sZi" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "sZj" = ( /turf/open/floor/iron/stairs/medium{ dir = 1 }, /area/station/science/xenobiology) +"sZk" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 5 + }, +/obj/machinery/atmospherics/components/binary/volume_pump{ + dir = 1 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "sZn" = ( /obj/structure/chair/office/light{ dir = 1 @@ -67214,17 +70272,17 @@ /obj/effect/turf_decal/trimline/purple/filled/mid_joiner, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) -"sZu" = ( -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 1 - }, -/obj/machinery/meter, -/turf/closed/wall/r_wall, -/area/station/engineering/atmos/upper) "sZy" = ( /obj/structure/table, /turf/open/floor/glass, /area/station/science/zoo) +"sZA" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) "sZL" = ( /obj/structure/marker_beacon/yellow, /obj/effect/decal/cleanable/dirt/dust, @@ -67250,12 +70308,10 @@ /obj/machinery/airalarm/directional/north, /turf/open/floor/iron, /area/station/service/kitchen/abandoned) -"tah" = ( -/obj/effect/spawner/random/trash/mess, -/obj/item/toy/crayon/spraycan{ - pixel_x = 12; - pixel_y = 13 - }, +"taf" = ( +/obj/structure/sign/poster/contraband/random/directional/west, +/obj/effect/spawner/random/structure/crate, +/obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) "tai" = ( @@ -67264,15 +70320,46 @@ }, /obj/effect/spawner/random/engineering/tracking_beacon, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "tan" = ( /obj/effect/turf_decal/tile/blue/half, /obj/effect/landmark/event_spawn, /turf/open/floor/iron/dark, /area/station/medical/chemistry) +"tao" = ( +/obj/item/clothing/head/wig/random, +/obj/item/bodypart/head/lizard, +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/decal/cleanable/blood/old, +/obj/machinery/atmospherics/components/unary/passive_vent/layer2{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/space/nearstation) "tas" = ( /turf/closed/wall, /area/station/command/heads_quarters/qm) +"tau" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/junction/yjunction, +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=9-Bridge"; + location = "8-Kitchen" + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/catwalk_floor/iron, +/area/station/hallway/primary/central) +"taB" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/sign/flag/mothic/directional/south, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "taF" = ( /obj/structure/railing{ dir = 4 @@ -67325,12 +70412,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"tbb" = ( -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 9 - }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "tbd" = ( /obj/machinery/door/poddoor/shutters/radiation/preopen{ id = "SM_shutters"; @@ -67340,11 +70421,10 @@ /obj/machinery/atmospherics/components/binary/pump/off/orange/visible, /turf/open/floor/plating, /area/station/engineering/supermatter) -"tbf" = ( -/obj/structure/chair/stool/directional/north, -/obj/effect/landmark/start/hangover, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) +"tbg" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/department/crew_quarters/dorms) "tbh" = ( /obj/effect/turf_decal/siding/dark, /obj/effect/turf_decal/siding/dark{ @@ -67352,7 +70432,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "tbu" = ( /obj/machinery/door/airlock/medical/glass{ id_tag = "MedbayFoyer"; @@ -67361,8 +70441,18 @@ /obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/machinery/door/firedoor, /obj/effect/turf_decal/tile/blue/full, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 8 + }, /turf/open/floor/iron/dark, /area/station/medical/medbay/central) +"tbv" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "tbw" = ( /obj/effect/landmark/start/hangover, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -67376,11 +70466,12 @@ /obj/effect/decal/cleanable/cobweb, /turf/open/floor/eighties/red, /area/station/maintenance/hallway/abandoned_recreation) -"tbI" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"tbE" = ( +/obj/machinery/atmospherics/pipe/smart/manifold/purple/visible{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "tbO" = ( /obj/structure/closet/crate/freezer/blood, /obj/effect/turf_decal/weather/snow/corner{ @@ -67389,6 +70480,11 @@ /obj/effect/turf_decal/weather/snow, /turf/open/floor/iron/kitchen_coldroom/freezerfloor, /area/station/medical/coldroom) +"tbU" = ( +/obj/effect/spawner/random/structure/closet_maintenance, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "tbY" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -67437,12 +70533,25 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/carpet, /area/station/service/chapel/office) +"tck" = ( +/obj/structure/table, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/item/radio/off{ + pixel_x = 6 + }, +/obj/item/phone{ + pixel_x = -3; + pixel_y = 3 + }, +/turf/open/floor/wood/large, +/area/station/engineering/lobby) "tcr" = ( -/obj/structure/stairs/south, -/obj/structure/railing{ - dir = 8 +/obj/machinery/firealarm/directional/east, +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 4 }, -/obj/machinery/light/directional/east, /turf/open/floor/iron, /area/station/cargo/storage) "tcs" = ( @@ -67459,11 +70568,17 @@ /obj/structure/light_construct/directional/east, /turf/open/openspace, /area/station/maintenance/port/aft) -"tcz" = ( -/obj/effect/spawner/random/decoration/showcase, -/obj/structure/lattice/catwalk, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) +"tcB" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/chair{ + dir = 1; + pixel_y = -2 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "tcG" = ( /obj/effect/spawner/random/structure/shipping_container, /turf/open/floor/plating, @@ -67475,16 +70590,22 @@ /obj/structure/closet, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"tdt" = ( -/obj/structure/chair/sofa/right/brown, -/obj/item/pillow, -/obj/item/toy/plush/moth{ - name = "Mender Moff" +"tde" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 }, -/obj/structure/sign/poster/official/get_your_legs/directional/north, -/obj/effect/landmark/event_spawn, -/turf/open/floor/carpet/black, -/area/station/medical/psychology) +/obj/effect/spawner/random/engineering/tracking_beacon, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) +"tdl" = ( +/obj/structure/lattice/catwalk, +/obj/structure/filingcabinet, +/obj/effect/spawner/random/bureaucracy/paper, +/turf/open/openspace, +/area/station/maintenance/aft/upper) "tdx" = ( /obj/structure/cable, /obj/machinery/power/emitter/welded, @@ -67494,16 +70615,14 @@ /obj/structure/broken_flooring/corner/directional/west, /turf/open/floor/plating, /area/station/engineering/storage_shared) -"tdN" = ( -/obj/effect/turf_decal/stripes/corner, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"tdT" = ( +"tdH" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, /turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/area/station/maintenance/department/crew_quarters/dorms) "tdV" = ( /obj/docking_port/stationary{ dir = 4; @@ -67541,23 +70660,28 @@ /obj/structure/railing{ dir = 8 }, +/obj/structure/cable, /turf/open/openspace, -/area/station/command/bridge) -"ter" = ( -/obj/effect/spawner/structure/window, -/obj/structure/disposalpipe/segment{ - dir = 8 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/command/meeting_room/council) "tev" = ( /obj/structure/extinguisher_cabinet/directional/west, /turf/open/floor/wood, /area/station/service/library) +"tey" = ( +/obj/structure/sign/poster/contraband/communist_state/directional/north, +/obj/effect/decal/cleanable/crayon{ + icon_state = "body"; + name = "body"; + pixel_x = 12; + pixel_y = 1 + }, +/obj/structure/cable, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "teA" = ( /obj/structure/railing, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "teC" = ( /obj/structure/chair/sofa/left/brown{ dir = 1 @@ -67570,11 +70694,6 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/science/ordnance) -"teV" = ( -/obj/effect/turf_decal/bot_white, -/obj/machinery/camera/autoname/directional/west, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/gravity_generator) "teY" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 8 @@ -67586,21 +70705,22 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) -"teZ" = ( -/obj/structure/cable, -/turf/closed/wall, -/area/station/security/courtroom) +"tfo" = ( +/obj/structure/cable/multilayer/multiz, +/turf/open/floor/plating, +/area/station/engineering/atmos/office) "tfp" = ( /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark, /area/station/science/xenobiology) -"tfr" = ( -/obj/structure/railing{ - dir = 10 +"tfq" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/showcase/machinery/cloning_pod{ + desc = "An old prototype cloning pod, permanently decommissioned following the incident."; + name = "decommissioned cloner" }, -/obj/machinery/light/small/dim/directional/north, -/turf/open/water, -/area/station/maintenance/port/fore) +/turf/open/floor/iron/white, +/area/station/maintenance/starboard) "tfv" = ( /obj/machinery/door/airlock/silver{ aiControlDisabled = 1; @@ -67614,13 +70734,6 @@ /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/command/gateway) -"tfy" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/light_switch/directional/west, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/engineering/storage_shared) "tfK" = ( /turf/open/floor/glass, /area/station/service/kitchen) @@ -67640,23 +70753,17 @@ icon_state = "carpet-38" }, /area/station/service/abandoned_gambling_den) -"tgp" = ( -/obj/effect/spawner/random/entertainment/arcade{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "tgz" = ( /obj/effect/landmark/firealarm_sanity, /turf/open/openspace, /area/station/service/chapel) "tgT" = ( /obj/machinery/holopad, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) -"tgV" = ( -/turf/open/floor/carpet, -/area/station/service/chapel) +/obj/effect/turf_decal/stripes{ + dir = 1 + }, +/turf/open/floor/iron/textured, +/area/station/command/eva) "thb" = ( /obj/effect/turf_decal/trimline/yellow/line{ dir = 4 @@ -67673,7 +70780,7 @@ id = "teleportshutters" }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "thf" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 8 @@ -67683,12 +70790,6 @@ }, /turf/open/floor/iron, /area/station/science/lab) -"thk" = ( -/obj/item/trash/can{ - pixel_x = -8 - }, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/fore) "tho" = ( /obj/structure/flora/bush/ferny/style_random, /obj/structure/flora/bush/fullgrass/style_random, @@ -67714,6 +70815,12 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"thY" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/engineering/storage) "tia" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/door/airlock{ @@ -67732,6 +70839,25 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/space/openspace, /area/space/nearstation) +"tie" = ( +/obj/machinery/duct, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet/restrooms) +"tio" = ( +/obj/structure/urinal/directional/north, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"tip" = ( +/obj/machinery/door/airlock/external, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 8 + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/external, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "tis" = ( /turf/open/floor/iron, /area/station/maintenance/port/greater) @@ -67745,8 +70871,8 @@ /obj/machinery/door/airlock/grunge{ name = "Under The Stairs" }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/aft) "tiG" = ( @@ -67760,14 +70886,42 @@ /turf/open/floor/iron, /area/station/hallway/primary/port) "tiK" = ( -/obj/effect/spawner/structure/window/reinforced/tinted, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/obj/machinery/status_display/evac/directional/north, +/obj/machinery/disposal/delivery_chute{ + dir = 8; + name = "Disposal Chute" + }, +/obj/structure/window/spawner/directional/south, +/obj/structure/window/spawner/directional/east, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/obj/effect/turf_decal/delivery, +/obj/structure/plasticflaps, +/turf/open/floor/iron/textured_large, +/area/station/cargo/sorting) +"tiN" = ( +/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "tja" = ( /obj/machinery/light/cold/directional/north, /turf/open/floor/engine, /area/station/science/xenobiology) +"tje" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/spawner/random/engineering/tracking_beacon, +/obj/machinery/duct, +/obj/effect/landmark/event_spawn, +/turf/open/floor/catwalk_floor/iron, +/area/station/commons/dorms) "tjg" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/green/filled/line{ @@ -67777,44 +70931,21 @@ /obj/structure/closet/secure_closet/personal, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/commissary) -"tji" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/junction, -/turf/open/floor/iron/dark/textured_large, -/area/station/maintenance/port) "tjn" = ( /turf/open/openspace, /area/station/hallway/secondary/entry) -"tjt" = ( -/obj/structure/window/reinforced/plasma/spawner/directional/north, -/obj/machinery/power/energy_accumulator/tesla_coil/anchored{ - cable_layer = 1 - }, -/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ - dir = 9 - }, -/obj/structure/cable/layer1, -/turf/open/floor/engine, -/area/station/engineering/supermatter) -"tjy" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/stock_parts/power_store/cell/high{ - charge = 100; - maxcharge = 15000 - }, -/obj/item/clothing/glasses/meson{ - pixel_y = 8 +"tjx" = ( +/obj/effect/turf_decal/siding{ + dir = 8 }, -/obj/item/clothing/glasses/meson{ - pixel_y = 8 +/obj/effect/turf_decal/trimline/white/line{ + dir = 1 }, -/obj/structure/sign/warning/radiation/rad_area/directional/north, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "tjA" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -67823,6 +70954,14 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/iron, /area/station/hallway/secondary/construction) +"tjB" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/table, +/obj/item/pai_card{ + pixel_y = 4 + }, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "tjM" = ( /obj/machinery/door/airlock/maintenance{ name = "Research Maintenance" @@ -67841,10 +70980,6 @@ /obj/machinery/firealarm/directional/west, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"tkh" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) "tkk" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ dir = 1 @@ -67859,6 +70994,9 @@ "tkm" = ( /obj/effect/decal/cleanable/cobweb, /obj/effect/spawner/random/maintenance, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, /turf/open/floor/plating, /area/station/maintenance/starboard/central) "tkn" = ( @@ -67875,15 +71013,14 @@ name = "Custom Channel" }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) -"tkz" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/structure/railing/corner{ - dir = 8 +/area/station/ai/satellite/chamber) +"tks" = ( +/obj/structure/disposalpipe/segment{ + dir = 5 }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) +/obj/structure/cable, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "tkK" = ( /obj/structure/lattice/catwalk, /obj/structure/disposalpipe/segment{ @@ -67903,12 +71040,13 @@ /obj/effect/turf_decal/tile/bar/opposingcorners, /turf/open/floor/iron, /area/station/security/prison/mess) -"tkV" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +"tkX" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/openspace, +/area/station/hallway/primary/starboard) "tkY" = ( /obj/effect/turf_decal/siding/wood/corner{ dir = 8 @@ -67917,6 +71055,11 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"tla" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "tlb" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -67937,29 +71080,12 @@ dir = 8 }, /area/station/tcommsat/server) -"tlf" = ( -/obj/machinery/portable_atmospherics/scrubber/huge/movable, -/obj/effect/turf_decal/bot, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) -"tls" = ( -/obj/structure/window/reinforced/plasma/spawner/directional/west, -/obj/structure/window/reinforced/plasma/spawner/directional/south, -/obj/structure/window/reinforced/plasma/spawner/directional/east, -/turf/open/space/openspace, -/area/space/nearstation) "tlL" = ( /obj/machinery/light/directional/south, /obj/effect/turf_decal/trimline/red/filled/line, /obj/structure/closet/l3closet/security, /turf/open/floor/iron/dark, /area/station/security/office) -"tlQ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/port) "tma" = ( /obj/structure/flora/bush/fullgrass/style_random, /obj/structure/flora/bush/ferny/style_random, @@ -67975,42 +71101,38 @@ /obj/effect/spawner/random/maintenance, /turf/open/floor/carpet, /area/station/maintenance/starboard/aft) -"tmq" = ( -/obj/structure/lattice/catwalk, -/obj/item/clothing/under/costume/seifuku{ - pixel_y = -1 +"tmG" = ( +/obj/effect/turf_decal/siding/thinplating{ + dir = 4 }, -/obj/structure/table, -/obj/structure/sign/poster/official/pda_ad/directional/south, -/turf/open/openspace, -/area/station/maintenance/starboard/fore) -"tms" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/wood, -/area/station/commons/fitness/recreation) -"tmM" = ( -/obj/machinery/conveyor{ +/obj/structure/flora/bush/flowers_yw/style_random, +/obj/structure/flora/bush/grassy/style_random, +/obj/machinery/light/small/directional/north, +/turf/open/floor/grass, +/area/station/engineering/lobby) +"tmK" = ( +/obj/effect/turf_decal/trimline/white/line{ dir = 8; - id = "cargounload" + pixel_x = 8 }, -/obj/structure/cable, -/obj/structure/railing/corner/end/flip{ - dir = 4 +/obj/effect/turf_decal/trimline/white/line{ + dir = 1 }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) +"tmM" = ( +/obj/structure/cable, /obj/structure/railing/corner/end{ dir = 4 }, /obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/cargo/storage) -"tmO" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "tmS" = ( /obj/machinery/newscaster/directional/north, /obj/structure/table, @@ -68029,6 +71151,32 @@ /obj/machinery/camera/directional/north, /turf/open/floor/wood, /area/station/command/heads_quarters/hos) +"tmT" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/obj/structure/chair/plastic{ + dir = 8 + }, +/obj/effect/landmark/start/hangover, +/turf/open/floor/wood, +/area/station/commons/dorms) +"tmZ" = ( +/obj/machinery/airalarm/directional/east, +/obj/effect/mapping_helpers/airalarm/engine_access, +/obj/effect/mapping_helpers/airalarm/link{ + chamber_id = "engine" + }, +/obj/effect/mapping_helpers/airalarm/tlv_no_checks, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/cable, +/turf/open/floor/engine, +/area/station/engineering/supermatter) "tna" = ( /obj/structure/fermenting_barrel/gunpowder, /obj/effect/decal/cleanable/greenglow, @@ -68042,22 +71190,35 @@ /turf/open/floor/iron/kitchen, /area/station/service/kitchen) "tnf" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 8 - }, +/obj/machinery/computer/robotics, +/obj/machinery/firealarm/directional/north, +/obj/effect/turf_decal/tile/purple/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"tnh" = ( +/obj/structure/table/reinforced, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft) +"tni" = ( /obj/structure/railing{ dir = 8 }, -/obj/structure/bookcase/random/reference, +/obj/item/kirbyplants/random, /obj/machinery/door/firedoor/border_only{ dir = 8 }, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, /turf/open/floor/wood, -/area/station/command/meeting_room/council) -"tnh" = ( -/obj/structure/table/reinforced, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/area/station/commons/toilet/restrooms) +"tns" = ( +/obj/effect/landmark/start/assistant, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/commons/storage/primary) "tnt" = ( /obj/structure/cable/multilayer/multiz, /turf/open/floor/plating, @@ -68075,6 +71236,13 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark, /area/station/service/chapel) +"tnJ" = ( +/obj/machinery/atmospherics/pipe/smart/simple/orange/visible, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "tnM" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -68091,25 +71259,6 @@ }, /turf/open/floor/plating/airless, /area/space/nearstation) -"tnX" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/mapping_helpers/burnt_floor, -/obj/machinery/holopad, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) -"tnY" = ( -/obj/machinery/door/airlock/engineering/glass{ - name = "Engineering Project Room" - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/machinery/door/firedoor/heavy, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/engine, -/area/station/engineering/storage_shared) "toh" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 8 @@ -68130,7 +71279,7 @@ /obj/structure/cable, /obj/machinery/light/directional/south, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "tom" = ( /obj/machinery/computer/camera_advanced/xenobio{ dir = 4 @@ -68170,8 +71319,32 @@ dir = 4 }, /obj/machinery/door/firedoor, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) +"toT" = ( +/obj/machinery/mineral/ore_redemption{ + dir = 4; + input_dir = 4; + output_dir = 8 + }, +/obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/shutters/preopen{ + name = "Cargo Lockdown Shutters"; + id = "cargolockdown"; + dir = 8 + }, +/obj/structure/railing{ + dir = 8; + color = "#36373a" + }, +/obj/structure/railing{ + dir = 4; + color = "#36373a" + }, +/obj/effect/turf_decal/bot_red, +/obj/machinery/camera/directional/north, +/turf/open/floor/iron/textured_large, +/area/station/cargo/sorting) "tpe" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 4 @@ -68198,7 +71371,7 @@ /turf/open/floor/iron/dark/textured_edge{ dir = 1 }, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "tpj" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/structure/sign/poster/contraband/grey_tide/directional/west, @@ -68214,10 +71387,29 @@ /obj/effect/turf_decal/stripes/end, /turf/open/floor/plating/elevatorshaft, /area/station/security/prison) -"tpA" = ( +"tpB" = ( +/obj/machinery/door/airlock{ + name = "Kitchen" + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, +/turf/open/floor/wood, +/area/station/maintenance/starboard) +"tpI" = ( +/obj/machinery/meter{ + name = "Mix Meter" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/yellow/visible, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"tpJ" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/turf/open/openspace, +/area/station/security/checkpoint/supply) "tpO" = ( /obj/effect/turf_decal/trimline/red/filled/corner, /obj/structure/table, @@ -68227,6 +71419,15 @@ }, /turf/open/floor/iron/dark, /area/station/security/office) +"tpR" = ( +/obj/effect/landmark/blobstart, +/obj/effect/landmark/generic_maintenance_landmark, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "tpU" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt/dust, @@ -68262,13 +71463,23 @@ /obj/machinery/computer/crew, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"tqQ" = ( -/turf/open/floor/iron/dark, -/area/station/commons/dorms) -"trH" = ( -/obj/effect/landmark/event_spawn, -/turf/open/openspace, -/area/station/hallway/secondary/service) +"tqv" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/fore) +"trv" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/spawner/random/trash/garbage{ + spawn_scatter_radius = 1 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "trK" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/on, /obj/item/reagent_containers/cup/glass/shaker{ @@ -68285,10 +71496,19 @@ }, /turf/open/floor/iron, /area/station/science/lobby) -"trR" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +"trZ" = ( +/obj/machinery/status_display/evac/directional/west, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/end, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 8 + }, +/obj/item/kirbyplants/photosynthetic, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "tsd" = ( /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -68299,22 +71519,38 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood/large, /area/station/service/library) -"tse" = ( -/obj/effect/turf_decal/siding/dark{ - dir = 1 - }, -/turf/closed/wall/r_wall, -/area/station/engineering/transit_tube) "tsl" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/poster/random/directional/north, -/obj/effect/spawner/random/structure/crate, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/obj/machinery/modular_computer/preset/id, +/obj/machinery/requests_console/auto_name/directional/north, +/obj/effect/mapping_helpers/requests_console/ore_update, +/obj/effect/mapping_helpers/requests_console/announcement, +/obj/effect/mapping_helpers/requests_console/assistance, +/obj/effect/mapping_helpers/requests_console/information, +/obj/machinery/light/warm/dim/directional/west, +/obj/effect/turf_decal/siding/wood{ + dir = 9 + }, +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) "tso" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/station/hallway/secondary/entry) +"tsp" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 8 + }, +/turf/open/floor/plating, +/area/station/maintenance/aft/upper) +"tsA" = ( +/obj/structure/chair/sofa/corner/brown, +/obj/item/instrument/eguitar, +/obj/structure/sign/poster/contraband/space_cube/directional/north, +/obj/machinery/light/small/broken/directional/east, +/turf/open/floor/eighties, +/area/station/maintenance/department/crew_quarters/dorms) "tsI" = ( /obj/machinery/light_switch/directional/south, /obj/machinery/disposal/bin, @@ -68334,20 +71570,42 @@ /obj/effect/turf_decal/tile/dark_blue/fourcorners, /turf/open/floor/iron/dark/telecomms, /area/station/tcommsat/server) -"tsR" = ( -/obj/structure/closet/crate/trashcart/filled, -/obj/effect/spawner/random/maintenance/no_decals/five, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +"tsV" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/decal/cleanable/blood/old, +/obj/structure/sign/poster/contraband/rebels_unite/directional/west, +/obj/item/ammo_casing/spent{ + pixel_x = 8; + pixel_y = 6 + }, +/obj/item/ammo_casing/spent{ + pixel_x = -11; + pixel_y = -5 + }, +/obj/structure/disposalpipe/segment, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "ttj" = ( /turf/open/floor/iron, /area/station/hallway/primary/port) +"ttk" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/firealarm/directional/south, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "ttm" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/textured_large, /area/station/security/prison) +"ttn" = ( +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "ttr" = ( /obj/machinery/airalarm/directional/west, /obj/structure/table/reinforced, @@ -68370,6 +71628,13 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/chem_storage) +"ttw" = ( +/obj/structure/chair/sofa/right/brown{ + dir = 1 + }, +/obj/effect/landmark/start/hangover, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "ttA" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -68404,20 +71669,11 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/maintenance/hallway/abandoned_recreation) -"tub" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/item/ammo_casing/spent{ - pixel_x = -6; - pixel_y = 6 - }, +"tua" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/camera/autoname/directional/east, /turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"tuj" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard/fore/upper) "tuk" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -68431,21 +71687,6 @@ }, /turf/open/openspace, /area/station/maintenance/port/aft) -"tul" = ( -/obj/structure/chair/office{ - dir = 8 - }, -/obj/effect/landmark/start/station_engineer, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/wood, -/area/station/engineering/lobby) -"tuw" = ( -/obj/structure/sign/departments/restroom/directional/north, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/turf/open/floor/iron, -/area/station/hallway/primary/starboard) "tuA" = ( /obj/structure/table/reinforced, /obj/effect/spawner/random/contraband/prison{ @@ -68460,28 +71701,18 @@ /obj/item/radio/intercom/directional/north, /turf/open/floor/iron/dark/smooth_large, /area/station/security/execution/transfer) -"tuD" = ( -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ - dir = 10 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/hallway) "tuF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/chair, -/obj/item/trash/can{ - pixel_x = -10; - pixel_y = -14 +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) -"tuJ" = ( -/obj/effect/turf_decal/trimline/purple/filled/line{ +/obj/structure/cable, +/obj/effect/turf_decal/siding/wood{ dir = 8 }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) "tuV" = ( /obj/machinery/camera/autoname/directional/south, /obj/effect/turf_decal/tile/blue/opposingcorners{ @@ -68502,22 +71733,12 @@ /turf/open/floor/iron, /area/station/science/research) "tvN" = ( -/obj/structure/railing{ - dir = 8 - }, -/obj/structure/table/glass, -/obj/item/aicard{ - pixel_x = 3 - }, -/obj/item/assembly/timer{ - pixel_y = -11 - }, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/dark_blue, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "tvU" = ( /obj/machinery/newscaster/directional/east, /obj/effect/turf_decal/tile/dark_blue{ @@ -68527,22 +71748,17 @@ /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) "twp" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/stripes{ + dir = 8 + }, +/turf/open/floor/iron/textured, +/area/station/command/eva) "twz" = ( /obj/structure/lattice/catwalk, /turf/open/space/basic, /area/station/solars/port/aft) -"twC" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/engineering/gravity_generator) "twD" = ( /obj/effect/spawner/random/trash/graffiti{ pixel_x = -32 @@ -68554,22 +71770,28 @@ /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) -"twX" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ +"twO" = ( +/obj/effect/turf_decal/trimline/white/corner, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/obj/structure/disposalpipe/segment{ dir = 4 }, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) +"twX" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 4 + }, /turf/open/floor/iron, /area/station/cargo/storage) -"twY" = ( -/obj/structure/cable, -/turf/closed/wall/r_wall, -/area/station/engineering/transit_tube) "txe" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/window/reinforced/spawner/directional/west, @@ -68581,55 +71803,64 @@ pixel_y = -2 }, /turf/open/floor/grass, -/area/station/ai_monitored/turret_protected/aisat_interior) -"txs" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/obj/structure/railing/corner, -/obj/structure/railing/corner{ +/area/station/ai/satellite/interior) +"txm" = ( +/obj/effect/mapping_helpers/airlock/abandoned, +/obj/effect/decal/cleanable/dirt, +/obj/structure/barricade/wooden/crude, +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, -/obj/structure/railing{ - dir = 8 - }, -/turf/open/openspace, -/area/station/engineering/lobby) -"txu" = ( -/obj/structure/railing{ - dir = 8 +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/machinery/door/airlock/command{ + name = "Abandoned Lab" }, -/obj/effect/turf_decal/siding/wood{ - dir = 8 +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"txp" = ( +/obj/effect/turf_decal/trimline/purple/filled/line{ + dir = 1 }, -/obj/structure/table, -/obj/item/cigbutt{ - pixel_y = 2 +/obj/structure/frame/computer{ + anchored = 1 }, -/obj/machinery/door/firedoor/border_only{ - dir = 8 +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) +"txu" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/turf/open/floor/wood, -/area/station/command/meeting_room/council) +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "txv" = ( /turf/open/floor/engine/hull/air, /area/station/maintenance/port/aft) "txz" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/trash/graffiti, -/obj/structure/sign/poster/contraband/random/directional/west, +/obj/structure/chair/sofa/corner/brown{ + dir = 8 + }, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/cargo/storage) +"txF" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ + dir = 6 + }, +/obj/machinery/meter, /turf/open/floor/iron, -/area/station/hallway/secondary/construction) +/area/station/engineering/atmos/upper) "txH" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) -"txI" = ( -/obj/machinery/light/directional/south, -/obj/machinery/vending/wardrobe/atmos_wardrobe, -/turf/open/floor/glass/reinforced/plasma, -/area/station/engineering/atmos/project) "txJ" = ( /obj/structure/railing, /obj/effect/turf_decal/trimline/purple/filled/line, @@ -68638,28 +71869,12 @@ /obj/effect/turf_decal/trimline/purple/filled/mid_joiner, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) -"txO" = ( -/obj/machinery/power/apc/auto_name/directional/west, -/obj/structure/cable, -/obj/structure/rack, -/obj/effect/spawner/random/techstorage/engineering_all, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) "txS" = ( /obj/structure/table/glass, /obj/item/stack/package_wrap, /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) -"txT" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/ladder, -/obj/structure/fluff/paper/corner, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "typ" = ( /obj/effect/turf_decal/stripes/corner{ dir = 8 @@ -68674,6 +71889,11 @@ /obj/effect/landmark/start/clown, /turf/open/floor/wood/large, /area/station/service/theater_dressing) +"tyv" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/hallway/secondary/construction) "tyw" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -68691,28 +71911,27 @@ /obj/effect/spawner/random/maintenance, /turf/open/floor/iron/checker, /area/station/maintenance/hallway/abandoned_recreation) -"tza" = ( -/obj/structure/table, -/obj/effect/spawner/random/food_or_drink/dinner, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/lesser) "tzi" = ( /obj/effect/spawner/random/trash/grime, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, /area/station/maintenance/port) "tzv" = ( -/obj/structure/chair{ - dir = 8 +/obj/effect/turf_decal/trimline/yellow/warning{ + dir = 4 + }, +/obj/item/clothing/head/cone{ + pixel_x = -5; + pixel_y = 0 }, /turf/open/floor/engine/hull, /area/space/nearstation) -"tzO" = ( -/obj/structure/chair/office/light, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/engineering/gravity_generator) +"tzK" = ( +/obj/structure/rack, +/obj/item/storage/toolbox/emergency, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "tzS" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/segment, @@ -68755,27 +71974,37 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, /area/station/maintenance/port) -"tAr" = ( -/obj/structure/toilet{ - dir = 4 +"tAe" = ( +/obj/effect/turf_decal/siding{ + dir = 6 + }, +/obj/effect/turf_decal/trimline/white/line{ + dir = 1 }, -/obj/machinery/light/small/directional/west, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/freezer, -/area/station/commons/dorms) +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "tAs" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) +"tAv" = ( +/obj/structure/lattice/catwalk, +/obj/structure/extinguisher_cabinet/directional/east, +/turf/open/floor/engine/hull/air, +/area/station/engineering/supermatter/room/upper) "tAF" = ( /obj/structure/broken_flooring/singular/directional/west, /obj/effect/turf_decal/trimline/yellow/warning{ @@ -68821,18 +72050,19 @@ }, /turf/open/floor/iron/dark, /area/station/security/evidence) -"tAV" = ( -/obj/effect/spawner/random/engineering/tank, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"tBa" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, +"tAX" = ( +/obj/structure/window/reinforced/plasma/spawner/directional/south, +/obj/machinery/power/energy_accumulator/grounding_rod/anchored, +/obj/machinery/atmospherics/pipe/smart/manifold/cyan/visible, +/obj/structure/cable, +/turf/open/floor/engine, +/area/station/engineering/supermatter) +"tBb" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, -/area/station/security/detectives_office/private_investigators_office) +/area/station/maintenance/starboard/fore/upper) "tBc" = ( /obj/machinery/door/poddoor/shutters{ id = "qm_warehouse"; @@ -68855,6 +72085,7 @@ /obj/effect/turf_decal/siding/green{ dir = 4 }, +/obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "tBr" = ( @@ -68864,13 +72095,35 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/textured_large, /area/station/security/prison) +"tBs" = ( +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/commons/dorms) "tBt" = ( /obj/machinery/light/directional/east, /obj/structure/sign/painting/library{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/glass/reinforced, /area/station/service/library) +"tBB" = ( +/obj/structure/window/reinforced/plasma/spawner/directional/south, +/obj/machinery/air_sensor/mix_tank, +/turf/open/floor/engine/vacuum, +/area/station/engineering/atmos/upper) +"tBE" = ( +/obj/structure/lattice/catwalk, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/item/storage/box{ + pixel_x = 2; + pixel_y = 4 + }, +/obj/structure/table, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "tBJ" = ( /obj/effect/decal/cleanable/dirt, /obj/item/kirbyplants/photosynthetic, @@ -68911,12 +72164,6 @@ dir = 1 }, /area/station/cargo/bitrunning/den) -"tCd" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/engineering/hallway) "tCf" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -68925,6 +72172,27 @@ }, /turf/open/floor/plating, /area/station/command/heads_quarters/rd) +"tCh" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable, +/turf/open/openspace, +/area/station/maintenance/aft/upper) +"tCl" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 + }, +/obj/effect/turf_decal/tile/dark_blue/fourcorners, +/obj/effect/turf_decal/siding/dark{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/transit_tube) +"tCm" = ( +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "tCs" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/blue/filled/line{ @@ -68938,6 +72206,12 @@ /obj/effect/decal/cleanable/greenglow, /turf/open/floor/iron/white, /area/station/maintenance/hallway/abandoned_recreation) +"tCt" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/landmark/start/hangover, +/obj/structure/sign/calendar/directional/east, +/turf/open/floor/iron, +/area/station/commons/dorms) "tCz" = ( /obj/item/radio/intercom/directional/west, /obj/structure/table, @@ -68992,37 +72266,16 @@ }, /turf/open/floor/iron/textured_large, /area/station/medical/medbay/central) -"tCX" = ( -/obj/effect/turf_decal/bot, -/obj/machinery/camera/autoname/directional/west, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/atmos/upper) "tCY" = ( -/obj/machinery/computer/security{ - dir = 4 - }, -/obj/structure/railing, -/obj/machinery/keycard_auth/wall_mounted/directional/north{ - pixel_x = -26; - pixel_y = 0 - }, -/obj/effect/turf_decal/tile/red/opposingcorners, /obj/machinery/camera/autoname/directional/west, -/turf/open/floor/iron/dark, -/area/station/command/bridge) -"tDc" = ( -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/railing{ +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ dir = 8 }, -/obj/structure/disposalpipe/segment{ - dir = 6 +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 8 }, -/turf/open/openspace, -/area/station/medical/abandoned) +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "tDf" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -69031,12 +72284,26 @@ /obj/structure/railing{ dir = 4 }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/openspace, -/area/station/command/bridge) -"tDn" = ( -/obj/machinery/light/dim/directional/north, -/turf/open/openspace, -/area/station/cargo/storage) +/area/station/command/meeting_room/council) +"tDh" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/railing/corner{ + dir = 8 + }, +/obj/machinery/duct, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) +"tDq" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/sign/warning/radiation/rad_area/directional/north, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "tDv" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/purple/line{ @@ -69050,23 +72317,21 @@ id = "justiceflash"; name = "Justice Flash Control"; pixel_x = -30; - pixel_y = -11 + pixel_y = -11; + dir = 8 }, /turf/open/floor/plating, /area/station/security/execution/education) "tDy" = ( /turf/open/floor/plating, /area/station/maintenance/port/greater) -"tDB" = ( -/obj/structure/lattice/catwalk, -/obj/effect/turf_decal/stripes/corner{ +"tDJ" = ( +/obj/effect/turf_decal/trimline/purple/filled/line{ dir = 8 }, -/obj/structure/railing{ - dir = 1 - }, -/turf/open/openspace, -/area/station/engineering/break_room) +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/upper) "tDK" = ( /obj/effect/decal/cleanable/plasma, /obj/effect/mapping_helpers/burnt_floor, @@ -69075,28 +72340,18 @@ "tDY" = ( /turf/closed/wall, /area/station/science/lobby) -"tEc" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/closed/wall/r_wall, -/area/station/medical/virology) +"tEi" = ( +/obj/machinery/igniter/incinerator_atmos, +/turf/open/floor/engine/airless, +/area/station/engineering/atmos/upper) "tEl" = ( /obj/structure/lattice/catwalk, /turf/open/floor/engine/hull/air, /area/station/cargo/storage) -"tEt" = ( -/obj/structure/flora/bush/fullgrass/style_random, -/turf/open/floor/grass, -/area/station/maintenance/starboard/fore) "tEv" = ( /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, /area/station/maintenance/port) -"tEy" = ( -/obj/structure/girder, -/obj/structure/grille, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "tEA" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/burnt_floor, @@ -69114,11 +72369,19 @@ /obj/machinery/camera/autoname/directional/west, /turf/open/openspace, /area/station/hallway/primary/starboard) -"tEH" = ( +"tEN" = ( +/obj/structure/sign/warning/vacuum/external/directional/south, /obj/structure/cable, -/obj/effect/spawner/random/structure/steam_vent, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard/aft/upper) +"tEQ" = ( +/obj/effect/turf_decal/siding/thinplating{ + dir = 8 + }, +/obj/structure/flora/bush/grassy/style_random, +/obj/structure/flora/bush/flowers_br/style_random, +/turf/open/floor/grass, +/area/station/engineering/lobby) "tER" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 5 @@ -69133,15 +72396,9 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, +/obj/structure/sign/poster/contraband/eat/directional/north, /turf/open/floor/iron/dark/smooth_large, /area/station/commons/lounge) -"tES" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "tEU" = ( /obj/effect/turf_decal/siding/wood{ dir = 4 @@ -69150,17 +72407,41 @@ /obj/structure/cable, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"tEY" = ( -/obj/item/trash/can{ - pixel_x = -8 - }, -/obj/structure/window/spawner/directional/west, +"tEW" = ( +/obj/structure/sign/poster/random/directional/north, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/duct, +/obj/effect/spawner/random/structure/steam_vent, /turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/area/station/maintenance/starboard/central) +"tFa" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper/stack{ + dir = 1 + }, +/obj/structure/fluff/paper/stack{ + dir = 4 + }, +/obj/structure/fluff/paper/corner{ + dir = 8 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "tFd" = ( /obj/structure/flora/bush/fullgrass/style_random, /turf/open/floor/grass, /area/station/hallway/primary/starboard) +"tFj" = ( +/obj/effect/turf_decal/siding/brown, +/obj/structure/railing, +/obj/effect/landmark/start/hangover, +/obj/machinery/duct, +/turf/open/floor/iron, +/area/station/commons/dorms) "tFl" = ( /obj/effect/turf_decal/trimline/dark_blue/end{ dir = 1 @@ -69181,7 +72462,7 @@ dir = 1 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "tFv" = ( /obj/structure/chair{ dir = 1 @@ -69193,21 +72474,46 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) -"tFy" = ( -/obj/structure/window/reinforced/tinted/spawner/directional/south, -/obj/structure/toilet{ +"tFB" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/light/floor, +/obj/effect/turf_decal/stripes/white/line{ dir = 4 }, -/obj/machinery/light/small/directional/west, -/turf/open/floor/iron/freezer, -/area/station/commons/dorms) -"tFC" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/trimline/yellow/filled/line, -/turf/open/floor/iron/smooth, -/area/station/engineering/main) +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) +"tFD" = ( +/obj/machinery/button/door/directional/east{ + id = "cargounload"; + name = "Loading Doors"; + pixel_y = 6 + }, +/obj/machinery/button/door/directional/east{ + id = "cargoload"; + name = "Loading Doors"; + pixel_y = -6 + }, +/obj/machinery/camera/autoname/directional/east, +/obj/machinery/computer/cargo{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark/warning{ + dir = 8 + }, +/turf/open/floor/iron/dark/smooth_edge{ + dir = 4 + }, +/area/station/cargo/storage) +"tFO" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/mapping_helpers/airlock/abandoned, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/aft) "tFU" = ( /obj/item/clothing/suit/costume/chickensuit{ pixel_x = 4; @@ -69225,43 +72531,39 @@ /obj/item/skillchip/matrix_taunt, /turf/open/floor/iron/kitchen, /area/station/maintenance/port/aft) -"tFY" = ( -/obj/effect/turf_decal/siding{ +"tGb" = ( +/obj/effect/turf_decal/siding/wood{ dir = 1 }, -/obj/effect/turf_decal/trimline/white/line, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) -"tGb" = ( -/obj/structure/chair/office{ +/obj/effect/turf_decal/siding/wood/corner{ dir = 8 }, -/obj/machinery/conveyor_switch/oneway{ - dir = 8; - id = "HoPsToy"; - name = "Loading Conveyor"; - pixel_x = -13; - pixel_y = 8 - }, -/obj/effect/landmark/start/head_of_personnel, -/turf/open/floor/carpet, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) -"tGe" = ( -/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ - name = "O2 Multideck Adapter"; - dir = 8 +"tGg" = ( +/obj/machinery/door/airlock, +/obj/effect/turf_decal/siding/wood{ + dir = 1 }, -/obj/machinery/meter{ - name = "O2 meter" +/obj/effect/turf_decal/siding/wood, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) +"tGm" = ( +/obj/machinery/atmospherics/pipe/bridge_pipe/green/visible{ + dir = 4 }, -/obj/effect/turf_decal/tile/blue/half/contrasted{ - dir = 1 +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) +"tGo" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/fore) "tGs" = ( /obj/effect/turf_decal/siding/dark{ dir = 8 @@ -69272,7 +72574,7 @@ /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "tGu" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 @@ -69281,6 +72583,12 @@ /obj/machinery/camera/autoname/directional/north, /turf/open/floor/iron/dark, /area/station/security/range) +"tGv" = ( +/obj/structure/lattice/catwalk, +/obj/structure/table/reinforced, +/obj/machinery/microwave/engineering, +/turf/open/openspace, +/area/station/cargo/storage) "tGz" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 1 @@ -69300,15 +72608,28 @@ /obj/machinery/light/small/directional/south, /turf/open/floor/iron/dark, /area/station/science/ordnance) -"tGM" = ( -/obj/structure/lattice/catwalk, -/obj/structure/table, -/obj/item/binoculars, -/turf/open/openspace, -/area/station/hallway/secondary/exit/departure_lounge) "tGN" = ( /turf/closed/wall, /area/station/science/zoo) +"tGO" = ( +/obj/structure/closet/secure_closet/personal/cabinet, +/obj/machinery/button/door/directional/east{ + id = "Cabin7"; + name = "Cabin Bolt Control"; + normaldoorcontrol = 1; + specialfunctions = 4 + }, +/obj/structure/sign/poster/official/random/directional/north, +/turf/open/floor/wood, +/area/station/commons/dorms) +"tGP" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/sign/warning/directional/north, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "tHd" = ( /obj/effect/turf_decal/bot/left, /turf/open/floor/engine, @@ -69328,7 +72649,7 @@ "tHn" = ( /obj/machinery/computer/security, /turf/open/floor/iron/white/textured_half, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "tHo" = ( /obj/effect/spawner/structure/window/reinforced/plasma, /turf/open/floor/plating, @@ -69340,11 +72661,10 @@ network = list("prison") }, /obj/machinery/light_switch/directional/east, -/obj/machinery/button/door/directional/north{ - id = "detective_shutters"; +/obj/machinery/button/door/directional/east{ + pixel_y = -10; name = "detective's office shutters control"; - pixel_x = 26; - pixel_y = -10 + id = "detective_shutters" }, /turf/open/floor/wood, /area/station/security/detectives_office) @@ -69354,27 +72674,40 @@ }, /turf/open/floor/carpet, /area/station/command/corporate_showroom) +"tHu" = ( +/obj/structure/closet/crate/trashcart/laundry, +/obj/effect/spawner/random/clothing/backpack, +/obj/effect/spawner/random/clothing/backpack, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) +"tHv" = ( +/obj/machinery/door/poddoor{ + id = "securestoragecw"; + name = "Secure Storage" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/engine/hull/reinforced/air, +/area/station/engineering/supermatter/room/upper) "tHw" = ( /obj/effect/turf_decal/trimline/dark_blue/filled/warning{ dir = 1 }, /obj/effect/turf_decal/trimline/dark_blue/warning, /turf/open/floor/iron/dark/textured_edge, -/area/station/ai_monitored/turret_protected/ai) -"tHE" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/machinery/airlock_sensor/incinerator_atmos{ - pixel_y = 32 - }, -/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/incinerator_atmos{ +/area/station/ai/satellite/chamber) +"tIa" = ( +/obj/effect/turf_decal/siding/thinplating{ dir = 4 }, -/turf/open/floor/engine, -/area/station/maintenance/disposal/incinerator) -"tHR" = ( -/obj/structure/sign/warning/radiation/rad_area/directional/east, -/turf/open/floor/iron/smooth, -/area/station/engineering/main) +/obj/structure/flora/bush/grassy/style_random, +/obj/structure/flora/bush/flowers_br/style_random, +/turf/open/floor/grass, +/area/station/engineering/lobby) "tIi" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -69391,13 +72724,18 @@ /turf/open/floor/iron/smooth, /area/station/engineering/main) "tIm" = ( -/obj/structure/window/reinforced/spawner/directional/north, -/obj/machinery/light/directional/east, -/obj/machinery/status_display/supply{ - pixel_x = 32 +/obj/item/clothing/head/cone{ + pixel_x = -5; + pixel_y = 0 }, -/turf/open/floor/iron/dark, -/area/station/command/heads_quarters/qm) +/turf/open/floor/engine/hull, +/area/space/nearstation) +"tIo" = ( +/obj/structure/transport/linear{ + radial_travel = 0 + }, +/turf/open/openspace, +/area/station/engineering/atmos/upper) "tIq" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -69410,12 +72748,18 @@ dir = 8 }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) -"tII" = ( -/obj/structure/table, -/obj/effect/spawner/random/trash/soap, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/aft) +/area/station/ai/satellite/chamber) +"tIE" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 4 + }, +/obj/structure/rack, +/obj/item/clothing/suit/hazardvest, +/obj/item/clothing/suit/hazardvest, +/obj/item/clothing/mask/breath, +/obj/item/clothing/mask/breath, +/turf/open/floor/iron, +/area/station/engineering/lobby) "tIO" = ( /obj/machinery/light/directional/south, /obj/machinery/vending/clothing, @@ -69441,16 +72785,19 @@ }, /turf/open/floor/wood, /area/station/service/chapel) +"tJn" = ( +/obj/structure/closet/firecloset, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "tJq" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/carpet/black, -/area/station/ai_monitored/turret_protected/ai_upload) -"tJt" = ( -/obj/item/food/grown/sunflower, -/turf/open/floor/iron/vaporwave, -/area/station/maintenance/starboard/lesser) +/area/station/ai/upload/chamber) "tJv" = ( /obj/item/construction/plumbing{ pixel_x = -7; @@ -69464,12 +72811,6 @@ /obj/structure/table, /turf/open/floor/iron/dark, /area/station/medical/chemistry) -"tJw" = ( -/obj/effect/spawner/random/structure/girder, -/obj/effect/spawner/structure/electrified_grille, -/obj/structure/sign/warning/radiation/rad_area/directional/south, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "tJD" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/siding/wood/corner{ @@ -69488,6 +72829,11 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/security/prison) +"tJH" = ( +/obj/effect/spawner/random/entertainment/arcade, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "tKa" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 8 @@ -69502,11 +72848,23 @@ /obj/structure/railing, /turf/open/floor/iron/smooth, /area/station/engineering/main) +"tKp" = ( +/obj/effect/turf_decal/siding/blue{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 1 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "tKq" = ( /obj/machinery/computer/crew, /obj/structure/sign/poster/official/science/directional/north, /turf/open/floor/iron/white/textured_half, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "tKw" = ( /obj/structure/frame/computer{ anchored = 1 @@ -69545,8 +72903,13 @@ dir = 1 }, /obj/effect/turf_decal/tile/dark_blue, +/obj/machinery/light/floor, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) +"tKH" = ( +/obj/effect/decal/cleanable/insectguts, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "tKK" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -69555,17 +72918,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/security/office) -"tLb" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"tLl" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/iron/chapel{ - dir = 8 - }, -/area/station/service/chapel) "tLo" = ( /obj/structure/lattice/catwalk, /obj/machinery/camera/autoname/directional/west, @@ -69577,26 +72929,30 @@ /turf/open/floor/wood/large, /area/station/commons/lounge) "tLq" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "packageSort2" - }, -/obj/machinery/airalarm/directional/north, -/obj/effect/turf_decal/trimline/brown/filled, -/obj/machinery/conveyor_switch/oneway{ - id = "packageSort2"; - name = "Trash Conveyor"; - pixel_x = -13; - pixel_y = -5 - }, -/turf/open/floor/iron, +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark/textured, /area/station/cargo/sorting) -"tLs" = ( +"tLA" = ( +/turf/open/floor/iron/corner{ + dir = 4 + }, +/area/station/hallway/primary/central) +"tLD" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment, +/obj/machinery/power/apc/auto_name/directional/west, +/turf/open/floor/iron/dark/small, +/area/station/command/heads_quarters/ce) +"tLE" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/obj/structure/sign/poster/contraband/communist_state/directional/east, +/obj/structure/disposalpipe/segment, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "tLK" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/decal/cleanable/dirt, @@ -69605,12 +72961,13 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood/large, /area/station/maintenance/hallway/abandoned_recreation) -"tLQ" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 9 +"tLP" = ( +/obj/effect/turf_decal/trimline/yellow/warning{ + dir = 1 }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/obj/structure/sign/warning/electric_shock/directional/south, +/turf/open/floor/engine/hull, +/area/station/solars/starboard/fore) "tLU" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -69623,21 +72980,7 @@ "tLV" = ( /obj/machinery/teleport/station, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/teleporter) -"tMf" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/item/clothing/glasses/welding{ - pixel_x = 6; - pixel_y = 7 - }, -/obj/effect/turf_decal/bot, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) -"tMj" = ( -/obj/item/statuebust, -/turf/open/floor/iron/vaporwave, -/area/station/maintenance/starboard/lesser) +/area/station/ai/satellite/teleporter) "tMm" = ( /obj/machinery/door/airlock/grunge, /obj/structure/cable, @@ -69645,7 +72988,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "tMo" = ( /obj/machinery/holopad, /turf/open/floor/iron/dark/textured_large, @@ -69655,22 +72998,6 @@ /obj/structure/sign/poster/official/anniversary_vintage_reprint/directional/north, /turf/open/floor/iron/dark, /area/station/medical/chemistry) -"tMu" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/spawner/structure/window/reinforced/tinted, -/turf/open/floor/plating/airless, -/area/station/maintenance/starboard/lesser) -"tMw" = ( -/obj/machinery/camera/autoname/directional/south, -/obj/structure/extinguisher_cabinet/directional/south, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) "tMD" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 5 @@ -69688,23 +73015,34 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/engineering/storage_shared) -"tMS" = ( -/obj/machinery/light/directional/west, -/obj/effect/turf_decal/tile/red/opposingcorners{ +"tMN" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/smart/manifold4w/dark/visible, +/turf/open/floor/plating, +/area/station/engineering/atmos) +"tMT" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/table/wood, +/obj/structure/fluff/paper/corner{ dir = 1 }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) +/obj/item/paper/crumpled{ + pixel_x = 7 + }, +/obj/item/paper_bin{ + pixel_x = -2; + pixel_y = 9 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "tMY" = ( /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/range) -"tMZ" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "tNb" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 9 @@ -69727,7 +73065,9 @@ /obj/structure/disposalpipe/segment{ dir = 2 }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 4 + }, /area/station/hallway/primary/central) "tNu" = ( /obj/machinery/power/apc/auto_name/directional/south, @@ -69747,9 +73087,19 @@ }, /turf/open/floor/engine, /area/station/engineering/atmos/hfr_room) -"tNG" = ( -/turf/open/floor/iron/stairs/medium, -/area/station/commons/toilet/restrooms) +"tND" = ( +/obj/machinery/camera/autoname/directional/east, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/button/door/directional/east{ + id = "SM_shutters"; + name = "Radiation Shutters"; + req_access = list("engineering") + }, +/obj/structure/cable, +/turf/open/floor/engine, +/area/station/engineering/supermatter) "tNP" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -69780,15 +73130,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/yellow/visible, /turf/open/floor/iron/dark/textured_half, /area/station/science/ordnance/storage) -"tOi" = ( -/obj/machinery/door/airlock/engineering{ - name = "Engine Room" - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, -/turf/open/floor/iron/smooth, -/area/station/engineering/hallway) "tOj" = ( /obj/effect/turf_decal/siding/wood/corner{ dir = 1 @@ -69809,6 +73150,11 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) +"tOs" = ( +/obj/structure/closet/firecloset, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "tOw" = ( /obj/structure/railing, /turf/open/floor/iron/stairs/medium{ @@ -69825,11 +73171,6 @@ }, /turf/open/floor/wood/tile, /area/station/security/detectives_office/private_investigators_office) -"tOE" = ( -/obj/machinery/light/small/directional/east, -/obj/machinery/air_sensor/mix_tank, -/turf/open/floor/engine/vacuum, -/area/station/maintenance/disposal/incinerator) "tOG" = ( /obj/machinery/camera/autoname/directional/north, /obj/machinery/vending/assist, @@ -69841,19 +73182,6 @@ /obj/structure/cable, /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) -"tOO" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner, -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) -"tOR" = ( -/obj/machinery/airalarm/directional/west, -/obj/machinery/disposal/bin, -/obj/structure/disposalpipe/trunk, -/turf/open/floor/engine, -/area/station/command/heads_quarters/ce) "tOW" = ( /obj/effect/spawner/random/trash/graffiti, /obj/structure/disposalpipe/segment{ @@ -69861,9 +73189,28 @@ }, /turf/open/floor/plating, /area/station/maintenance/port) +"tPb" = ( +/obj/machinery/atmospherics/pipe/multiz/cyan/visible{ + dir = 8; + name = "Air Mix Multideck Adapter" + }, +/obj/machinery/meter{ + name = "Mix Meter" + }, +/obj/effect/turf_decal/tile/neutral/half{ + dir = 1 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "tPe" = ( /turf/open/floor/glass/reinforced/plasma, /area/station/engineering/supermatter) +"tPl" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/structure/cable, +/obj/structure/sign/warning/radiation/directional/south, +/turf/open/floor/iron/smooth, +/area/station/engineering/main) "tPr" = ( /obj/structure/table_frame/wood, /turf/open/floor/iron/grimy, @@ -69877,7 +73224,7 @@ /turf/open/floor/iron/dark/textured_edge{ dir = 1 }, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "tPz" = ( /obj/structure/rack, /obj/item/restraints/handcuffs{ @@ -69899,7 +73246,7 @@ "tPC" = ( /obj/structure/cable, /turf/open/floor/carpet/black, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "tPF" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/generic, @@ -69918,23 +73265,23 @@ /turf/open/floor/wood/large, /area/station/hallway/primary/central) "tPI" = ( -/obj/structure/table/glass, -/obj/structure/railing/corner{ - dir = 8 - }, -/obj/item/stack/rods{ - amount = 25; - pixel_y = 3 +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 6 }, -/obj/item/radio/intercom/directional/south, -/obj/effect/turf_decal/tile/green{ +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ dir = 4 }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/effect/spawner/random/vending/snackvend, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "tPU" = ( /turf/closed/wall, /area/station/commons/toilet/restrooms) +"tPY" = ( +/obj/item/radio/intercom/directional/south, +/turf/open/floor/plating, +/area/station/engineering/storage_shared) "tPZ" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 @@ -69948,19 +73295,43 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/science/genetics) -"tQt" = ( -/obj/structure/window/reinforced/spawner/directional/south, -/obj/structure/reagent_dispensers/plumbed, -/obj/machinery/firealarm/directional/north, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/restrooms) +"tQk" = ( +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/structure/closet/radiation, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) +"tQl" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer4{ + dir = 1 + }, +/obj/machinery/portable_atmospherics/canister/air, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) +"tQq" = ( +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) +"tQB" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/openspace, +/area/station/maintenance/starboard/upper) "tQI" = ( /obj/machinery/airalarm/directional/east, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 }, -/turf/open/floor/wood, +/turf/open/floor/iron/dark, /area/station/command/gateway) +"tQR" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/plating, +/area/station/security/detectives_office/private_investigators_office) "tQY" = ( /obj/machinery/keycard_auth/wall_mounted/directional/north{ pixel_y = 28; @@ -70008,46 +73379,34 @@ "tRd" = ( /obj/structure/cable/layer3, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "tRi" = ( /obj/structure/lattice, /obj/structure/grille/broken, /turf/open/space/basic, /area/space/nearstation) "tRt" = ( -/obj/structure/window/reinforced/spawner/directional/east, +/obj/machinery/door/window/left/directional/west{ + name = "Captain's Desk"; + req_access = list("captain") + }, /obj/structure/table/wood, -/obj/item/reagent_containers/cup/glass/flask/gold{ - pixel_y = 10 +/obj/machinery/recharger{ + pixel_y = 4; + pixel_x = 5 }, -/obj/item/cigarette/cigar{ - pixel_x = -17; - pixel_y = 7 +/turf/open/floor/wood/large, +/area/station/command/heads_quarters/captain/private) +"tRN" = ( +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ + dir = 5 }, -/obj/item/cigarette/cigar{ - pixel_x = -13; - pixel_y = 4 +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5, +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 1 }, -/turf/open/floor/wood, -/area/station/command/heads_quarters/captain/private) -"tRG" = ( -/obj/machinery/washing_machine, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"tRJ" = ( -/obj/effect/spawner/random/trash, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/station/maintenance/port) -"tRL" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/emcloset, -/obj/machinery/camera/autoname/directional/east, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "tRR" = ( /obj/structure/railing{ dir = 9 @@ -70071,7 +73430,7 @@ pixel_y = 9 }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "tRV" = ( /obj/structure/railing{ dir = 8 @@ -70091,30 +73450,12 @@ pixel_y = -2 }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "tRY" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/landmark/event_spawn, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) -"tSa" = ( -/obj/structure/bed, -/obj/structure/sign/poster/official/no_erp/directional/east, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/wood, -/area/station/commons/dorms) -"tSl" = ( -/obj/effect/turf_decal/trimline/purple/filled/line{ - dir = 1 - }, -/obj/structure/frame/computer{ - anchored = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) "tSp" = ( /obj/machinery/computer/piratepad_control/civilian{ dir = 4 @@ -70136,28 +73477,18 @@ /obj/structure/cable, /turf/open/space/openspace, /area/station/solars/starboard/fore) -"tSE" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/spawner/random/trash/moisture_trap, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"tST" = ( -/obj/effect/spawner/random/trash/graffiti{ - pixel_y = 32 +"tSB" = ( +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5{ + dir = 4 }, /turf/open/floor/iron/smooth, -/area/station/engineering/main) +/area/station/engineering/atmos) "tSW" = ( -/obj/machinery/door/airlock/maintenance_hatch{ - name = "Mining Maintenance Access" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ - cycle_id = "miningshuttleexit" +/obj/machinery/computer/order_console/mining, +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 5 }, -/obj/effect/mapping_helpers/airlock/access/all/supply/mining, -/turf/open/floor/plating, +/turf/open/floor/iron, /area/station/cargo/miningoffice) "tSY" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -70172,7 +73503,9 @@ dir = 4 }, /obj/machinery/firealarm/directional/south, -/turf/open/floor/iron/large, +/turf/open/floor/iron/corner{ + dir = 1 + }, /area/station/hallway/primary/central) "tTg" = ( /obj/effect/decal/cleanable/ash, @@ -70184,31 +73517,28 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/science/cytology) -"tTz" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/any/engineering/general, -/obj/machinery/door/airlock/engineering/glass{ - name = "Shared Engineering Storage" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/iron/dark, -/area/station/engineering/storage) +"tTx" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/yellow/visible, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/aft/upper) "tTD" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 }, /obj/effect/turf_decal/siding/dark, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"tTG" = ( -/obj/structure/ladder, -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 +/area/station/ai/satellite/interior) +"tTL" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ + dir = 10 }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) +/turf/open/floor/iron/dark/textured_large, +/area/station/maintenance/port) "tTO" = ( /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, @@ -70226,28 +73556,32 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/engineering/storage_shared) -"tUd" = ( -/obj/structure/railing{ - dir = 8 +"tUg" = ( +/obj/effect/mapping_helpers/airlock/access/all/security/general, +/obj/machinery/door/airlock/security/glass{ + name = "Security Post - Cargo" }, -/obj/item/kirbyplants/random, -/obj/machinery/door/firedoor/border_only{ - dir = 8 +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/tile/red/opposingcorners{ + dir = 1 }, -/obj/machinery/light/directional/south, -/turf/open/floor/wood, -/area/station/commons/toilet/restrooms) +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/security/checkpoint/supply) +"tUn" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/station/maintenance/starboard/aft/upper) "tUs" = ( /turf/open/floor/wood, /area/station/command/heads_quarters/hos) -"tUt" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/carpet, -/area/station/ai_monitored/command/storage/eva) "tUu" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "tUw" = ( /obj/structure/lattice/catwalk, /obj/structure/railing, @@ -70267,6 +73601,22 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/smooth_large, /area/station/security/brig) +"tUE" = ( +/obj/structure/reagent_dispensers/fueltank/large, +/obj/effect/turf_decal/delivery/white{ + color = "#ff6600" + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) +"tUG" = ( +/obj/machinery/door/airlock/engineering/glass{ + name = "Supermatter Engine Room" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/obj/machinery/door/firedoor/heavy, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "tUH" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -70288,6 +73638,20 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"tVe" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing/corner{ + dir = 8 + }, +/obj/structure/railing/corner, +/obj/structure/railing{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/openspace, +/area/station/engineering/lobby) "tVl" = ( /obj/effect/spawner/random/structure/closet_maintenance, /obj/effect/spawner/random/maintenance/two, @@ -70295,11 +73659,13 @@ /turf/open/floor/plating, /area/station/maintenance/port) "tVo" = ( -/obj/effect/turf_decal/trimline/purple/filled/line{ - dir = 1 +/obj/machinery/door/airlock/public/glass{ + name = "Abandoned Hallway" + }, +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/trimline/purple/filled/corner{ + dir = 4 }, -/obj/effect/landmark/start/hangover, -/obj/structure/sign/poster/contraband/random/directional/north, /turf/open/floor/iron, /area/station/hallway/secondary/construction) "tVs" = ( @@ -70309,11 +73675,12 @@ }, /turf/open/openspace, /area/station/medical/medbay/central) -"tVI" = ( -/obj/structure/cable, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +"tVz" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 9 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "tVR" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, @@ -70329,27 +73696,32 @@ }, /turf/open/floor/engine, /area/station/engineering/atmos/hfr_room) +"tVT" = ( +/obj/structure/window/reinforced/spawner/directional/south, +/obj/structure/reagent_dispensers/plumbed, +/obj/machinery/airalarm/directional/west, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet/restrooms) "tWc" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/item/kirbyplants/random/fullysynthetic, /turf/open/floor/wood, /area/station/maintenance/hallway/abandoned_recreation) -"tWd" = ( -/obj/effect/landmark/blobstart, -/turf/open/floor/engine, -/area/station/engineering/break_room) +"tWe" = ( +/obj/machinery/atmospherics/pipe/smart/simple/dark/visible, +/obj/machinery/atmospherics/pipe/smart/manifold/pink/visible/layer2{ + dir = 2 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "tWl" = ( /obj/machinery/light/warm/dim/directional/north, /turf/open/openspace, /area/station/hallway/primary/central) -"tWn" = ( -/obj/structure/lattice, -/turf/open/space/basic, -/area/station/engineering/supermatter/room) "tWt" = ( /obj/machinery/airalarm/directional/south, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge, /area/station/hallway/primary/central) "tWx" = ( /obj/machinery/door/airlock/maintenance, @@ -70372,15 +73744,11 @@ /obj/machinery/light/small/dim/directional/south, /turf/open/floor/iron/dark, /area/station/service/chapel) -"tWI" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 4 - }, -/obj/structure/lattice/catwalk, -/turf/open/space/basic, -/area/space/nearstation) "tWK" = ( /obj/structure/girder, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, /turf/open/floor/plating, /area/station/maintenance/starboard/central) "tWP" = ( @@ -70408,24 +73776,6 @@ "tWT" = ( /turf/open/floor/iron/checker, /area/station/maintenance/hallway/abandoned_recreation) -"tWU" = ( -/obj/machinery/power/apc/auto_name/directional/north, -/obj/structure/cable, -/obj/item/stack/rods{ - amount = 25 - }, -/obj/item/stack/sheet/glass{ - amount = 30 - }, -/obj/item/stack/sheet/iron{ - amount = 30 - }, -/obj/structure/closet/crate, -/obj/item/stack/cable_coil, -/obj/item/stack/cable_coil, -/obj/structure/sign/poster/contraband/grey_tide/directional/west, -/turf/open/floor/iron, -/area/station/commons/storage/primary) "tWY" = ( /obj/structure/chair/office{ dir = 1 @@ -70493,6 +73843,16 @@ }, /turf/open/floor/iron, /area/station/science/xenobiology/hallway) +"tXw" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/duct, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) "tXx" = ( /obj/effect/turf_decal/trimline/dark_blue/warning{ dir = 1 @@ -70501,14 +73861,26 @@ /turf/open/floor/iron/white/smooth_corner{ dir = 4 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) +"tXE" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, +/obj/machinery/atmospherics/components/binary/pump/on/layer5{ + name = "O2 to Airmix" + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "tXJ" = ( /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, /area/station/security/lockers) "tXN" = ( /obj/effect/turf_decal/trimline/green/filled/corner, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 4 + }, /area/station/hallway/primary/central) "tXS" = ( /obj/effect/turf_decal/trimline/blue/filled/line, @@ -70528,9 +73900,6 @@ /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 5 }, -/obj/structure/closet/crate{ - icon_state = "crateopen" - }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -70540,9 +73909,6 @@ pixel_x = 28; pixel_y = 6 }, -/obj/machinery/firealarm/directional/east{ - pixel_y = -3 - }, /turf/open/floor/iron, /area/station/cargo/storage) "tYa" = ( @@ -70562,7 +73928,7 @@ network = list("vault") }, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "tYt" = ( /obj/item/cardboard_cutout{ pixel_x = 14; @@ -70582,13 +73948,6 @@ /obj/structure/cable, /turf/open/floor/wood/large, /area/station/service/theater_dressing) -"tYz" = ( -/obj/machinery/door/firedoor, -/obj/effect/turf_decal/siding/brown{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/commons/dorms) "tYC" = ( /obj/structure/disposalpipe/trunk{ dir = 8 @@ -70647,12 +74006,6 @@ /obj/machinery/light/red/dim/directional/south, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) -"tYZ" = ( -/obj/machinery/atmospherics/components/unary/passive_vent, -/obj/structure/lattice, -/obj/machinery/camera/autoname/directional/west, -/turf/open/space/basic, -/area/space/nearstation) "tZb" = ( /obj/structure/sign/departments/restroom/directional/south, /obj/item/cigbutt{ @@ -70661,6 +74014,11 @@ }, /turf/open/floor/plating, /area/station/maintenance/port) +"tZf" = ( +/obj/structure/closet/secure_closet/personal/cabinet, +/obj/effect/landmark/start/hangover, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "tZj" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -70668,6 +74026,10 @@ /obj/structure/sign/departments/restroom/directional/north, /turf/open/floor/iron/textured_large, /area/station/medical/virology) +"tZx" = ( +/obj/item/airlock_painter/decal, +/turf/open/floor/plating, +/area/station/maintenance/port) "tZz" = ( /obj/effect/turf_decal/trimline/red/filled/line, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -70681,12 +74043,6 @@ /obj/structure/window/spawner/directional/north, /turf/open/floor/plating, /area/station/service/kitchen/abandoned) -"tZV" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing, -/obj/structure/sign/poster/official/random/directional/north, -/turf/open/openspace, -/area/station/commons/dorms) "tZW" = ( /obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/nitrous_output, /turf/open/floor/engine/n2o, @@ -70698,10 +74054,6 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/science/zoo) -"uac" = ( -/obj/structure/bookcase/random/religion, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "uaf" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, @@ -70726,6 +74078,26 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/security/execution/transfer) +"uaB" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/commons/storage/primary) +"uaH" = ( +/obj/structure/chair/sofa/left/brown{ + dir = 8 + }, +/obj/item/cigbutt{ + pixel_x = -8; + pixel_y = 4 + }, +/obj/structure/sign/poster/contraband/kudzu/directional/east, +/turf/open/floor/eighties, +/area/station/maintenance/department/crew_quarters/dorms) +"uaI" = ( +/turf/open/water/no_planet_atmos, +/area/station/maintenance/starboard/fore) "uaO" = ( /obj/structure/disposalpipe/trunk/multiz/down, /obj/structure/railing{ @@ -70733,6 +74105,10 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"uaP" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/engineering/main) "uaR" = ( /obj/effect/turf_decal/trimline/dark_blue/filled/line{ dir = 5 @@ -70747,7 +74123,25 @@ /obj/machinery/light_switch/directional/east, /obj/structure/closet/crate/bin, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"uaU" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/supply/general, +/obj/structure/disposalpipe/segment, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) +"ubk" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/machinery/camera/autoname/directional/south, +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/firealarm/directional/south, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "ubo" = ( /obj/effect/spawner/random/engineering/atmospherics_portable, /turf/open/floor/plating, @@ -70755,27 +74149,6 @@ "ubs" = ( /turf/open/openspace, /area/station/hallway/secondary/construction) -"ubv" = ( -/obj/machinery/button/elevator{ - id = "catwalk_engi"; - pixel_y = -24 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8; - pixel_x = -2 - }, -/turf/open/floor/engine, -/area/station/engineering/break_room) -"ubU" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/cable, -/turf/open/floor/carpet, -/area/station/maintenance/starboard/lesser) "ubZ" = ( /obj/item/trash/flare, /turf/open/floor/plating, @@ -70786,32 +74159,29 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/science/breakroom) +"ucc" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Virology Maintenance" + }, +/obj/effect/mapping_helpers/airlock/access/all/medical/virology, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/port) "ucd" = ( /obj/structure/railing, /turf/open/floor/engine/hull/air, /area/station/maintenance/port) "ucf" = ( -/obj/effect/turf_decal/trimline/brown/filled/line, -/obj/structure/chair/sofa/middle/brown{ - dir = 1 - }, /obj/machinery/light/directional/south, -/obj/machinery/light_switch/directional/south, +/obj/machinery/conveyor{ + dir = 8; + id = "mining" + }, /turf/open/floor/iron/textured, /area/station/cargo/storage) -"ucj" = ( -/obj/effect/landmark/event_spawn, -/turf/open/openspace, -/area/station/hallway/secondary/exit/departure_lounge) -"ucl" = ( -/obj/structure/toilet{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/landmark/event_spawn, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/auxiliary) "ucp" = ( /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, @@ -70819,6 +74189,11 @@ dir = 8 }, /area/station/command/corporate_showroom) +"ucy" = ( +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/effect/turf_decal/bot_white, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "ucC" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 8 @@ -70857,22 +74232,20 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/machinery/door/firedoor, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) -"ucQ" = ( -/obj/structure/sign/poster/random/directional/north, -/obj/structure/cable, -/obj/machinery/camera/autoname/directional/north, -/turf/open/floor/iron, -/area/station/engineering/main) +"ucR" = ( +/obj/effect/spawner/random/decoration/showcase, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/starboard/aft/upper) "ucX" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 6 - }, -/obj/structure/chair/sofa/corner/brown{ - dir = 8 - }, /obj/item/radio/intercom/directional/south, +/obj/machinery/conveyor{ + dir = 10; + id = "mining" + }, +/obj/machinery/bouldertech/refinery, /turf/open/floor/iron/textured, /area/station/cargo/storage) "ucZ" = ( @@ -70880,15 +74253,6 @@ /obj/effect/decal/cleanable/cobweb/cobweb2, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"udb" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/airalarm/directional/west, -/turf/open/floor/iron, -/area/station/engineering/storage_shared) "udl" = ( /turf/closed/wall, /area/station/engineering/storage/tech) @@ -70898,6 +74262,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/service/abandoned_gambling_den) +"udu" = ( +/obj/structure/chair, +/obj/effect/landmark/start/hangover, +/obj/structure/sign/calendar/directional/north, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "udE" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -70909,40 +74279,28 @@ /obj/machinery/door/firedoor, /turf/open/floor/wood/large, /area/station/service/theater_dressing) -"udF" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/maintenance, -/obj/structure/disposalpipe/segment{ - dir = 4 +"udN" = ( +/obj/structure/marker_beacon/yellow, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) +"udS" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 6 }, +/obj/machinery/newscaster/directional/east, +/obj/machinery/firealarm/directional/south, +/obj/machinery/light/small/directional/south, +/turf/open/floor/iron/dark, +/area/station/engineering/storage) +"udV" = ( +/obj/machinery/duct, +/obj/machinery/door/airlock/maintenance, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard/fore/upper) "udW" = ( /obj/structure/chair/sofa/middle/brown, /turf/open/floor/carpet, /area/station/maintenance/starboard/aft) -"udY" = ( -/obj/structure/table, -/obj/effect/turf_decal/siding/wood{ - dir = 1 - }, -/obj/item/radio/off{ - pixel_x = 6 - }, -/obj/item/phone{ - pixel_x = -3; - pixel_y = 3 - }, -/turf/open/floor/wood, -/area/station/engineering/lobby) -"uen" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "uex" = ( /obj/machinery/atmospherics/components/binary/pump/on{ name = "Gas to Cold Loop" @@ -70970,8 +74328,18 @@ /obj/effect/turf_decal/trimline/brown/filled/warning{ dir = 8 }, +/obj/structure/disposalpipe/sorting/mail/flip{ + dir = 1 + }, +/obj/effect/mapping_helpers/mail_sorting/supply/cargo_bay, /turf/open/floor/iron, /area/station/cargo/storage) +"ufc" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/machinery/light_switch/directional/south, +/obj/machinery/light/small/directional/south, +/turf/open/floor/iron/dark, +/area/station/engineering/storage) "ufi" = ( /obj/machinery/door/airlock/command{ name = "Research Director's Office" @@ -70986,16 +74354,17 @@ /area/station/command/heads_quarters/rd) "ufn" = ( /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/aisat_interior"; + control_area = "/area/station/ai/satellite/interior"; name = "Antechamber Turret Control"; pixel_x = 30; - req_access = list("minisat") + req_access = list("minisat"); + dir = 4 }, /obj/structure/sign/warning/secure_area/directional/north, /obj/machinery/light/directional/north, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "ufo" = ( /obj/structure/rack, /obj/item/storage/briefcase/secure{ @@ -71015,10 +74384,6 @@ /obj/structure/chair{ dir = 1 }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/structure/disposalpipe/segment, /turf/open/floor/wood, /area/station/maintenance/starboard/central) "ufA" = ( @@ -71031,7 +74396,37 @@ /obj/machinery/recharge_station, /obj/machinery/light/small/directional/north, /turf/open/floor/iron/freezer, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) +"ufI" = ( +/obj/effect/turf_decal/siding/dark/corner, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"ufK" = ( +/obj/structure/table, +/obj/item/paper_bin/carbon{ + pixel_x = 16; + pixel_y = 6 + }, +/obj/item/pen/fountain{ + pixel_x = 15; + pixel_y = 4 + }, +/obj/item/stamp/granted{ + pixel_x = 6; + pixel_y = 8 + }, +/obj/item/stamp/denied{ + pixel_x = 6 + }, +/obj/item/stamp/head/qm{ + pixel_x = -5 + }, +/obj/item/clipboard{ + pixel_y = 8; + pixel_x = -6 + }, +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) "uga" = ( /obj/machinery/door/airlock/security/glass{ name = "Bailiff Access" @@ -71048,17 +74443,23 @@ /obj/structure/cable, /turf/open/floor/iron/dark/textured, /area/station/medical/morgue) +"ugm" = ( +/obj/structure/tank_dispenser, +/turf/open/floor/glass/plasma, +/area/station/engineering/atmos/upper) "ugn" = ( /obj/structure/table/wood/poker, /turf/open/floor/carpet/stellar, /area/station/service/library) -"ugo" = ( -/obj/machinery/power/port_gen/pacman, -/obj/effect/turf_decal/delivery/white{ - color = "#52B4E9" +"ugp" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 }, -/turf/open/floor/engine, -/area/station/engineering/break_room) +/obj/structure/rack, +/obj/effect/spawner/random/techstorage/tcomms_all, +/obj/machinery/light/small/directional/south, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tcomms) "ugq" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 10 @@ -71072,83 +74473,68 @@ /obj/machinery/light/directional/south, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) +"ugr" = ( +/obj/structure/closet/lasertag/red, +/obj/effect/landmark/start/hangover, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/item/radio/intercom/directional/south, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) +"ugw" = ( +/obj/structure/table, +/obj/effect/spawner/random/food_or_drink/condiment, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/aft/upper) +"ugA" = ( +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/portable_atmospherics/canister, +/obj/machinery/atmospherics/components/unary/portables_connector/visible, +/obj/effect/turf_decal/bot_white, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"ugC" = ( +/obj/effect/turf_decal/siding/brown, +/obj/structure/railing, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/commons/dorms) "ugE" = ( /obj/effect/turf_decal/siding/dark, /obj/machinery/airalarm/directional/north, /turf/open/floor/iron/white/textured_corner{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ugL" = ( /obj/structure/cable, /turf/open/floor/iron, /area/station/science/zoo) -"ugM" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/commons/dorms) "ugN" = ( -/obj/machinery/modular_computer/preset/id, -/obj/machinery/button/door/directional/west{ - id = "hop"; - name = "Lockdown Blast Doors"; - pixel_y = 6; - req_access = list("hop") - }, -/obj/machinery/button/flasher{ - id = "hopflash"; - pixel_x = -24; - pixel_y = -4 - }, -/obj/machinery/requests_console/directional/north{ - department = "Head of Personnel's Desk"; - name = "Head of Personnel's Requests Console" - }, -/obj/effect/mapping_helpers/requests_console/announcement, -/obj/effect/mapping_helpers/requests_console/assistance, -/obj/effect/mapping_helpers/requests_console/information, -/turf/open/floor/carpet, +/obj/machinery/computer/records/security, +/turf/open/floor/wood/tile, /area/station/command/heads_quarters/hop) "ugU" = ( /turf/open/openspace, /area/station/security/detectives_office) -"ugX" = ( -/obj/machinery/portable_atmospherics/canister/air, -/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer4{ - dir = 1 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "uhd" = ( /obj/effect/turf_decal/siding/dark/corner{ dir = 8 }, /turf/open/openspace, /area/station/service/kitchen) -"uhl" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 1 +"uhz" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/general/hidden, +/obj/effect/turf_decal/siding/blue{ + dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, -/obj/machinery/meter, -/obj/effect/turf_decal/trimline/yellow/filled/line, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) -"uhv" = ( -/mob/living/basic/parrot/poly, -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/engine, -/area/station/command/heads_quarters/ce) -"uhx" = ( -/obj/structure/table/reinforced, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"uhJ" = ( -/obj/structure/sign/poster/official/fruit_bowl, -/turf/closed/wall, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/catwalk_floor{ + initial_gas_mix = "n2=100;TEMP=80" + }, +/area/station/science/server) "uhO" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, @@ -71168,12 +74554,6 @@ /obj/structure/closet/emcloset, /turf/open/floor/plating, /area/station/maintenance/starboard/central) -"uib" = ( -/obj/structure/railing{ - dir = 1 - }, -/turf/open/openspace, -/area/station/cargo/storage) "uii" = ( /obj/machinery/door/airlock/public/glass{ name = "Community Center" @@ -71220,6 +74600,14 @@ }, /turf/open/floor/plating, /area/station/security/execution/education) +"uiU" = ( +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/structure/closet/radiation, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "ujb" = ( /turf/open/floor/iron, /area/station/maintenance/port/fore) @@ -71235,14 +74623,34 @@ dir = 8 }, /area/station/hallway/primary/fore) +"ujx" = ( +/obj/effect/turf_decal/tile/neutral/opposingcorners{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/camera/autoname/directional/north, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/medical/chemistry) "ujD" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/holopad, /turf/open/floor/iron/dark, /area/station/medical/medbay/lobby) +"ujG" = ( +/obj/item/clothing/head/utility/hardhat/red{ + pixel_x = -3; + pixel_y = 11 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "ujI" = ( /turf/open/openspace, /area/station/science/explab) @@ -71257,35 +74665,15 @@ /obj/item/gun/energy/ionrifle, /obj/item/clothing/suit/hooded/ablative, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ujP" = ( /obj/item/radio/intercom/directional/south, /turf/open/floor/engine, /area/station/engineering/atmos/hfr_room) -"ujS" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/chair{ - dir = 1; - pixel_y = -2 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) -"ujX" = ( -/obj/structure/cable, -/obj/machinery/door/poddoor/preopen{ - id = "ceprivacy"; - name = "Chief Engineers Privacy Shutters" - }, -/obj/effect/spawner/structure/window/reinforced/plasma, -/turf/open/floor/plating, -/area/station/command/heads_quarters/ce) "uka" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "uki" = ( /obj/structure/chair/stool/bar/directional/east, /obj/effect/landmark/start/hangover, @@ -71310,13 +74698,9 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, +/obj/machinery/power/apc/auto_name/directional/east, /turf/open/floor/plating, /area/station/maintenance/solars/starboard/fore) -"ukq" = ( -/obj/structure/closet/secure_closet/atmospherics, -/obj/item/radio/intercom/directional/south, -/turf/open/floor/glass/reinforced/plasma, -/area/station/engineering/atmos/project) "ukt" = ( /obj/structure/railing{ dir = 9 @@ -71334,7 +74718,7 @@ dir = 1 }, /turf/open/floor/iron/checker, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "ukF" = ( /obj/machinery/ai_slipper{ uses = 10 @@ -71343,17 +74727,12 @@ network = list("aicore") }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ukI" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/sign/poster/contraband/hacking_guide/directional/east, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"ukM" = ( -/obj/effect/landmark/start/hangover, -/obj/machinery/status_display/evac/directional/west, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "ukO" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -71372,22 +74751,13 @@ }, /turf/open/openspace, /area/station/hallway/primary/central) -"ukZ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/broken_floor, -/obj/effect/spawner/random/trash/garbage{ - spawn_scatter_radius = 1 +"ule" = ( +/obj/machinery/atmospherics/components/unary/passive_vent, +/obj/effect/turf_decal/stripes/line{ + dir = 9 }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) -"ulh" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/landmark/navigate_destination/minisat_access_tcomms, -/obj/machinery/light_switch/directional/north, -/turf/open/floor/iron/dark, -/area/station/engineering/transit_tube) +/turf/open/floor/plating/airless, +/area/space/nearstation) "uli" = ( /obj/effect/spawner/random/entertainment/arcade, /obj/effect/decal/cleanable/dirt, @@ -71411,29 +74781,33 @@ /area/station/engineering/lobby) "uln" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/central) -"ulq" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +"ulo" = ( +/obj/effect/spawner/random/maintenance, +/obj/structure/table, +/obj/item/reagent_containers/cup/soda_cans/random{ + pixel_x = -5; + pixel_y = -18 + }, +/obj/item/reagent_containers/cup/soda_cans/random{ + pixel_x = 5; + pixel_y = -16 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"ulw" = ( /obj/structure/cable, -/obj/effect/turf_decal/trimline/yellow/filled/line{ +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/effect/turf_decal/stripes/white/line{ dir = 1 }, /turf/open/floor/iron, -/area/station/engineering/lobby) -"ulu" = ( -/obj/machinery/atmospherics/pipe/multiz/scrubbers/visible/layer2, -/obj/machinery/atmospherics/pipe/multiz/supply/visible/layer4, -/obj/structure/disposalpipe/trunk/multiz/down{ - dir = 2 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/area/station/commons/fitness/recreation) "ulx" = ( /obj/effect/turf_decal/siding/thinplating/dark{ dir = 8 @@ -71442,6 +74816,9 @@ /obj/machinery/camera/autoname/directional/north, /turf/open/floor/wood, /area/station/service/library) +"ulD" = ( +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "ulM" = ( /obj/machinery/power/apc/auto_name/directional/south, /obj/structure/cable, @@ -71464,13 +74841,23 @@ /obj/machinery/vending/wardrobe/gene_wardrobe, /turf/open/floor/iron, /area/station/science/xenobiology/hallway) +"ulT" = ( +/turf/open/openspace, +/area/station/maintenance/department/crew_quarters/dorms) "ulU" = ( /obj/machinery/door/airlock/grunge, /obj/effect/mapping_helpers/airlock/access/any/command/general, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"ulV" = ( +/obj/structure/railing/corner{ + dir = 8 + }, +/obj/structure/cable/multilayer/multiz, +/turf/open/floor/plating, +/area/station/maintenance/aft) "ulX" = ( /obj/structure/table, /obj/item/folder/yellow{ @@ -71504,18 +74891,10 @@ /area/station/security/medical) "ulZ" = ( /obj/item/radio/intercom/directional/east, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) -"ume" = ( -/obj/machinery/light/floor, -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 8 +/turf/open/floor/iron/edge{ + dir = 4 }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/area/station/hallway/primary/central) "umq" = ( /obj/machinery/light/directional/east, /obj/structure/filingcabinet/chestdrawer{ @@ -71530,21 +74909,10 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "umw" = ( -/obj/structure/railing{ - dir = 4 - }, -/obj/structure/table/glass, -/obj/item/storage/toolbox/emergency{ - pixel_x = -2; - pixel_y = 8 - }, -/obj/item/storage/toolbox/emergency{ - pixel_x = -2 - }, -/obj/structure/extinguisher_cabinet/directional/south, -/obj/effect/turf_decal/tile/yellow, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark, /area/station/command/bridge) "umy" = ( @@ -71595,42 +74963,49 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, /area/station/maintenance/port) +"unL" = ( +/obj/structure/rack, +/obj/effect/spawner/random/maintenance, +/obj/item/wirecutters, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "unM" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/secondary/construction) +"unU" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/airalarm/directional/east, +/turf/open/openspace, +/area/station/engineering/lobby) "uof" = ( /obj/effect/turf_decal/caution{ dir = 4 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) -"uok" = ( -/obj/structure/chair/office{ - dir = 1 - }, -/obj/structure/sign/poster/contraband/pwr_game/directional/west, -/turf/open/floor/wood, -/area/station/commons/dorms) +/area/station/security/armory) "uom" = ( /turf/open/floor/glass/reinforced, /area/station/hallway/primary/port) -"uon" = ( -/obj/structure/railing{ - dir = 8 - }, +"uop" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/blood/oil, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard/aft/upper) "uow" = ( -/obj/structure/table/wood, -/obj/item/coin/antagtoken{ - pixel_x = -11; - pixel_y = 6 - }, -/obj/item/assembly/timer, -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) +/obj/machinery/light/floor, +/obj/structure/table/reinforced/rglass, +/obj/machinery/recharger, +/obj/item/restraints/handcuffs, +/obj/structure/window/reinforced/spawner/directional/east, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "uox" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/siding/wood{ @@ -71645,6 +75020,7 @@ }, /area/station/service/chapel) "uoz" = ( +/obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/segment{ dir = 5 }, @@ -71660,8 +75036,9 @@ /area/station/medical/medbay/central) "uoF" = ( /obj/effect/spawner/structure/window/reinforced, -/obj/effect/turf_decal/tile/blue{ - dir = 1 +/obj/structure/cable, +/obj/machinery/door/poddoor/preopen{ + id = "capshut" }, /turf/open/floor/plating, /area/station/command/heads_quarters/captain/private) @@ -71697,9 +75074,13 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/service/lawoffice) -"upl" = ( -/obj/effect/spawner/random/trash/mess, -/turf/open/floor/eighties, +"upk" = ( +/obj/effect/spawner/random/maintenance, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/spawner/random/structure/steam_vent, +/turf/open/floor/catwalk_floor, /area/station/maintenance/starboard/fore) "upm" = ( /obj/structure/chair/office{ @@ -71707,6 +75088,10 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/security/execution/transfer) +"upp" = ( +/obj/effect/spawner/random/trash/mess, +/turf/open/floor/plating, +/area/station/maintenance/port) "upr" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 @@ -71719,18 +75104,36 @@ dir = 1 }, /area/station/hallway/secondary/construction) -"upA" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner, -/obj/effect/turf_decal/trimline/yellow/filled/line{ +"upz" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/poddoor/shutters{ + id = "abandoned_kitchen"; + name = "Kitchen Shudders"; + dir = 8 + }, +/obj/item/rag, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard) +"upE" = ( +/obj/structure/sign/warning/secure_area/directional/west, +/turf/open/floor/iron/edge{ + dir = 8 + }, +/area/station/hallway/primary/central) +"upI" = ( +/obj/structure/lattice/catwalk, +/obj/structure/marker_beacon/indigo, +/turf/open/space/openspace, +/area/space/nearstation) +"upM" = ( +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ dir = 9 }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) -"upL" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/effect/turf_decal/tile/purple/half{ + dir = 1 + }, /turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +/area/station/engineering/atmos) "upR" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /obj/machinery/photocopier/prebuilt, @@ -71755,17 +75158,13 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) +"upX" = ( +/turf/closed/wall, +/area/station/maintenance/aft/upper) "uqb" = ( /obj/item/kirbyplants/photosynthetic, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"uqc" = ( -/obj/machinery/vending/tool, -/obj/effect/turf_decal/trimline/yellow/filled/end{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage) +/area/station/ai/satellite/interior) "uqi" = ( /obj/effect/turf_decal/siding/green{ dir = 4 @@ -71787,12 +75186,6 @@ /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/hallway/primary/aft) -"uqw" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) "uqy" = ( /obj/structure/table, /obj/item/flashlight/lamp/green{ @@ -71819,6 +75212,12 @@ /obj/effect/landmark/start/depsec/supply, /turf/open/floor/iron/dark, /area/station/security/checkpoint/supply) +"uqN" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/turf/open/floor/catwalk_floor, +/area/station/engineering/engine_smes) "uqR" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/confetti, @@ -71853,10 +75252,9 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/medical/surgery) "uro" = ( -/obj/effect/turf_decal/trimline/brown/filled/line, -/obj/item/kirbyplants/random, -/obj/item/radio/intercom/directional/south, -/obj/effect/landmark/event_spawn, +/obj/effect/turf_decal/trimline/brown/filled/corner{ + dir = 8 + }, /turf/open/floor/iron, /area/station/cargo/storage) "urq" = ( @@ -71914,8 +75312,21 @@ }, /obj/effect/turf_decal/trimline/brown/arrow_ccw, /obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/storage) +"ush" = ( +/obj/effect/turf_decal/siding/yellow{ + dir = 10 + }, +/turf/open/floor/engine, +/area/station/command/heads_quarters/ce) +"usk" = ( +/obj/structure/lattice/catwalk, +/obj/item/stack/rods, +/turf/open/openspace, +/area/station/maintenance/starboard/aft/upper) "usl" = ( /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/engine/hull/air, @@ -71930,17 +75341,13 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/iron/small, /area/station/security/mechbay) -"ust" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/sign/poster/contraband/random/directional/west, -/turf/open/floor/catwalk_floor, -/area/station/maintenance/starboard/fore) "usD" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) "usK" = ( @@ -71955,7 +75362,7 @@ /obj/structure/table, /obj/item/stack/rods/ten, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "usM" = ( /obj/effect/turf_decal/siding/wood{ dir = 10 @@ -71968,7 +75375,7 @@ /obj/structure/cable, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "usP" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -71977,10 +75384,25 @@ }, /turf/open/floor/plating, /area/station/security/detectives_office) -"uta" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/engine, -/area/station/maintenance/starboard/lesser) +"usZ" = ( +/obj/machinery/door/airlock/external{ + name = "Welcome." + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "space-outpost" + }, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/all/engineering/external, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) +"ute" = ( +/obj/structure/extinguisher_cabinet/directional/east, +/obj/machinery/computer/atmos_alert/station_only{ + dir = 8 + }, +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "uth" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 @@ -72014,6 +75436,13 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/science/server) +"utv" = ( +/obj/structure/disposalpipe/trunk/multiz/down{ + dir = 4 + }, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/starboard/fore/upper) "utx" = ( /obj/structure/rack, /obj/item/storage/box/handcuffs, @@ -72079,12 +75508,12 @@ }, /turf/open/openspace, /area/station/construction/storage_wing) -"uua" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 +"utS" = ( +/obj/effect/turf_decal/stripes/white/line{ + dir = 8 }, -/turf/open/floor/iron/smooth, -/area/station/engineering/hallway) +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "uuj" = ( /obj/effect/turf_decal/trimline/green/filled/line, /obj/effect/turf_decal/trimline/green/filled/mid_joiner, @@ -72101,7 +75530,7 @@ /obj/structure/extinguisher_cabinet/directional/north, /obj/structure/sign/poster/official/state_laws/directional/east, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "uum" = ( /obj/effect/turf_decal/siding/thinplating/dark/corner{ dir = 1 @@ -72112,18 +75541,6 @@ }, /turf/open/floor/wood, /area/station/service/library) -"uuo" = ( -/obj/machinery/airalarm/directional/south, -/obj/structure/broken_flooring/side/directional/north, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) -"uus" = ( -/obj/structure/sign/poster/official/random/directional/west, -/obj/effect/turf_decal/siding/brown{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/commons/dorms) "uuA" = ( /obj/structure/table/reinforced, /obj/effect/decal/cleanable/dirt, @@ -72133,19 +75550,24 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/entry) -"uuE" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper/corner{ +"uuD" = ( +/obj/item/encryptionkey/headset_com{ + pixel_x = -4; + pixel_y = 3 + }, +/obj/item/encryptionkey/headset_sec{ + pixel_x = 4 + }, +/obj/structure/table/reinforced/rglass, +/obj/effect/turf_decal/tile/red/opposingcorners{ dir = 4 }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) -"uuF" = ( -/obj/structure/ladder, -/obj/effect/turf_decal/stripes/box, /turf/open/floor/iron/dark, -/area/station/engineering/hallway) +/area/station/engineering/storage/tech) +"uuH" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "uuP" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/airalarm/directional/east, @@ -72162,21 +75584,43 @@ /turf/open/openspace, /area/station/security/checkpoint/supply) "uva" = ( -/obj/structure/railing{ - dir = 8 - }, /obj/effect/turf_decal/siding/blue{ dir = 9 }, +/obj/structure/railing{ + dir = 8 + }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/end{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 8 + }, +/obj/structure/cable, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "uve" = ( +/obj/effect/spawner/random/structure/crate, /obj/structure/disposalpipe/segment{ - dir = 9 + dir = 5 }, /turf/open/floor/plating, /area/station/maintenance/starboard/central) +"uvf" = ( +/obj/item/radio/intercom/directional/west, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/turf/open/floor/catwalk_floor, +/area/station/engineering/engine_smes) "uvh" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, @@ -72188,7 +75632,7 @@ /area/station/medical/medbay/central) "uvo" = ( /turf/open/floor/glass, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "uvq" = ( /obj/structure/table/wood, /turf/open/floor/iron/dark/smooth_large, @@ -72199,6 +75643,20 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/grass, /area/station/hallway/secondary/entry) +"uvw" = ( +/obj/item/clothing/head/costume/foilhat, +/obj/structure/sign/poster/contraband/kss13/directional/east, +/obj/structure/bed/double, +/obj/effect/spawner/random/bedsheet/double, +/turf/open/floor/wood/large, +/area/station/commons/dorms) +"uvx" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/duct, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "uvF" = ( /obj/structure/railing/corner{ dir = 4 @@ -72231,10 +75689,8 @@ /turf/open/floor/engine/vacuum, /area/station/science/ordnance/bomb) "uvT" = ( -/obj/machinery/keycard_auth/wall_mounted/directional/west{ - pixel_x = 26 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/keycard_auth/wall_mounted/directional/east, /turf/open/floor/iron/dark/small, /area/station/command/heads_quarters/ce) "uwg" = ( @@ -72272,11 +75728,27 @@ /obj/effect/turf_decal/siding/wood, /turf/open/floor/iron/dark, /area/station/hallway/secondary/service) -"uwn" = ( +"uwk" = ( /obj/structure/cable, /obj/machinery/power/apc/auto_name/directional/west, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) +"uwl" = ( +/obj/item/clothing/head/cone{ + pixel_x = 6; + pixel_y = -9 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"uwr" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/duct, +/obj/structure/railing/corner, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "uwu" = ( /obj/machinery/shower/directional/east, /obj/effect/decal/cleanable/dirt/dust, @@ -72290,11 +75762,12 @@ /turf/open/floor/iron/freezer, /area/station/maintenance/port) "uwA" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet, -/area/station/command/bridge) +/obj/machinery/light/floor, +/obj/effect/turf_decal/trimline/dark_blue/filled/line, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/obj/effect/landmark/navigate_destination/bridge, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "uwD" = ( /obj/structure/disposalpipe/segment{ dir = 5 @@ -72325,7 +75798,7 @@ }, /obj/structure/sign/poster/official/science/directional/north, /turf/open/floor/iron/white/textured_half, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "uwN" = ( /obj/effect/turf_decal/trimline/dark_blue/filled/warning{ dir = 1 @@ -72334,7 +75807,7 @@ dir = 1 }, /turf/open/floor/iron/dark/textured_edge, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "uwS" = ( /obj/structure/railing/corner/end{ dir = 8 @@ -72357,11 +75830,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"uxj" = ( -/obj/effect/turf_decal/bot, -/obj/machinery/portable_atmospherics/pump, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/atmos/upper) "uxl" = ( /obj/structure/chair/stool/bar/directional/south, /obj/effect/turf_decal/siding/wood{ @@ -72389,38 +75857,28 @@ /turf/closed/wall, /area/station/cargo/warehouse) "uxq" = ( -/obj/structure/railing{ - dir = 4 - }, -/obj/structure/table/glass, /obj/effect/turf_decal/siding/blue{ dir = 5 }, -/obj/machinery/recharger{ - pixel_y = 3 +/obj/structure/railing{ + dir = 4 }, -/obj/item/restraints/handcuffs{ - pixel_y = 3 +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 5 }, -/obj/effect/turf_decal/tile/red/anticorner/contrasted{ +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ dir = 4 }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) -"uxt" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/hallway/secondary/construction) -"uxz" = ( -/obj/item/kirbyplants/random, -/obj/machinery/button/door/directional/east{ - id = "Cabin3"; - name = "Cabin Bolt Control"; - normaldoorcontrol = 1; - specialfunctions = 4 +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 1 }, -/turf/open/floor/wood, -/area/station/commons/dorms) +/obj/structure/bookcase/random/reference, +/obj/item/book/manual/wiki/research_and_development{ + pixel_x = 12; + pixel_y = 10 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "uxA" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table/reinforced, @@ -72434,33 +75892,13 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"uxD" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/machinery/computer/atmos_alert, -/turf/open/floor/engine/hull/reinforced/air, -/area/station/engineering/atmos/project) "uxG" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 1 }, /obj/machinery/newscaster/directional/north, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/obj/machinery/camera/directional/north{ - c_tag = "Cargo Bay - Mining Departure" - }, /turf/open/floor/iron, /area/station/cargo/miningoffice) -"uxI" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/structure/railing{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/storage_shared) "uxK" = ( /obj/structure/flora/bush/pale/style_random, /obj/structure/flora/bush/fullgrass/style_random, @@ -72472,16 +75910,20 @@ /obj/effect/spawner/random/structure/closet_maintenance, /obj/effect/spawner/random/maintenance/three, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "uxW" = ( -/obj/effect/spawner/structure/window, +/obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters{ - id = "commissaryshutter"; + dir = 1; + id = "Lcommissaryshutter"; name = "Vacant Commissary Shutter" }, -/obj/effect/turf_decal/tile/dark_green/fourcorners, /turf/open/floor/plating, /area/station/commons/vacant_room/office) +"uxZ" = ( +/obj/structure/table, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "uya" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -72489,16 +75931,11 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 + }, /turf/open/floor/iron/dark, /area/station/medical/medbay/lobby) -"uyb" = ( -/obj/structure/closet/crate/freezer, -/obj/item/reagent_containers/blood/ethereal, -/obj/item/reagent_containers/cup/soda_cans/monkey_energy, -/obj/item/reagent_containers/cup/soda_cans/monkey_energy, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "uyc" = ( /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/science/robotics, @@ -72510,17 +75947,10 @@ }, /turf/open/floor/iron, /area/station/science/robotics) -"uyi" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) "uyn" = ( -/obj/structure/cable, /obj/effect/decal/cleanable/dirt, /obj/machinery/power/apc/auto_name/directional/east, +/obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/central) "uyq" = ( @@ -72531,21 +75961,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/commons/lounge) -"uyr" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/catwalk_floor, -/area/station/engineering/main) -"uyu" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/simple/orange/visible, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/meter, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "uyw" = ( /obj/structure/table, /obj/effect/decal/cleanable/dirt, @@ -72555,15 +75970,15 @@ /obj/machinery/camera/autoname/directional/north, /turf/open/floor/eighties/red, /area/station/maintenance/hallway/abandoned_recreation) -"uyD" = ( -/obj/effect/turf_decal/siding/brown{ - dir = 10 - }, -/obj/effect/turf_decal/siding/brown/corner{ - dir = 4 - }, -/turf/open/floor/glass, -/area/station/maintenance/starboard/fore) +"uyA" = ( +/obj/structure/stairs/south, +/turf/open/floor/plating, +/area/station/maintenance/aft) +"uyG" = ( +/obj/structure/ladder, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/aft/upper) "uyN" = ( /obj/structure/disposalpipe/segment{ dir = 8 @@ -72579,6 +75994,17 @@ dir = 8 }, /area/station/hallway/secondary/exit/departure_lounge) +"uyR" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/disposalpipe/sorting/mail/flip{ + dir = 8 + }, +/obj/effect/mapping_helpers/mail_sorting/service/dormitories, +/obj/machinery/duct, +/turf/open/floor/catwalk_floor/iron, +/area/station/commons/dorms) "uyT" = ( /obj/effect/turf_decal/caution/stand_clear{ dir = 8 @@ -72599,29 +76025,32 @@ /turf/open/openspace, /area/station/maintenance/port/aft) "uzg" = ( -/obj/effect/turf_decal/siding/blue{ - dir = 8 +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/hallway/primary/central) +/obj/machinery/door/poddoor/preopen{ + id = "capshut" + }, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/command/heads_quarters/captain/private) +"uzi" = ( +/obj/structure/lattice/catwalk, +/obj/effect/spawner/random/maintenance, +/turf/open/openspace, +/area/station/maintenance/starboard/upper) "uzj" = ( /obj/machinery/airalarm/directional/west, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"uzs" = ( -/obj/machinery/door/airlock{ - name = "Unisex Restrooms" - }, -/obj/machinery/door/firedoor, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/restrooms) -"uzu" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, -/obj/machinery/airalarm/directional/west, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/gravity_generator) +"uzB" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/duct, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "uzI" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -72638,20 +76067,15 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"uzN" = ( +"uzV" = ( +/obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 }, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) -"uzY" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/machinery/light/small/directional/north, /turf/open/floor/iron/dark, -/area/station/maintenance/starboard/fore) +/area/station/engineering/storage/tcomms) "uAi" = ( /obj/effect/turf_decal/trimline/purple/arrow_cw{ dir = 8 @@ -72664,27 +76088,19 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/aft) -"uAl" = ( -/turf/closed/wall, -/area/station/engineering/lobby) -"uAm" = ( -/obj/effect/turf_decal/siding/brown{ - dir = 1 - }, +"uAn" = ( +/obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, -/obj/structure/disposalpipe/junction/flip, -/obj/machinery/navbeacon{ - codes_txt = "patrol;next_patrol=17-Dorms"; - location = "16-Laundry" +/obj/machinery/camera/autoname/directional/north{ + dir = 2 }, -/turf/open/floor/iron, -/area/station/commons/dorms) -"uAn" = ( -/obj/machinery/light/dim/directional/south, /turf/open/openspace, -/area/station/cargo/storage) +/area/station/hallway/primary/central) +"uAp" = ( +/turf/closed/wall, +/area/station/maintenance/starboard) "uAB" = ( /obj/effect/turf_decal/stripes/corner{ dir = 8 @@ -72716,16 +76132,12 @@ /turf/open/floor/iron/dark, /area/station/command/heads_quarters/ce) "uAP" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 4 - }, -/obj/machinery/computer/cargo{ - dir = 8 - }, -/obj/machinery/camera/autoname/directional/east, -/obj/machinery/light_switch/directional/east, -/turf/open/floor/iron, +/obj/structure/railing, +/turf/open/openspace, /area/station/cargo/storage) +"uAX" = ( +/turf/open/floor/wood/large, +/area/station/commons/dorms) "uAZ" = ( /obj/machinery/netpod, /obj/effect/decal/cleanable/dirt, @@ -72734,21 +76146,18 @@ /obj/machinery/digital_clock/directional/north, /turf/open/floor/catwalk_floor/iron_dark, /area/station/cargo/bitrunning/den) -"uBh" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/components/binary/valve/digital{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/yellow, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) "uBj" = ( /obj/structure/cable, /turf/closed/wall/r_wall, /area/station/hallway/primary/aft) +"uBo" = ( +/mob/living/basic/parrot/poly, +/obj/structure/filingcabinet/chestdrawer, +/obj/effect/turf_decal/siding/yellow{ + dir = 6 + }, +/turf/open/floor/engine, +/area/station/command/heads_quarters/ce) "uBp" = ( /obj/machinery/holopad, /turf/open/floor/iron/smooth, @@ -72768,11 +76177,6 @@ /obj/item/radio/intercom/directional/east, /turf/open/floor/iron, /area/station/science/breakroom) -"uBv" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "uBy" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -72791,11 +76195,34 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) +"uBU" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/engine, +/area/station/maintenance/starboard) +"uBY" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/tile/dark_green/fourcorners, +/obj/machinery/door/poddoor/shutters{ + dir = 1; + id = "Rcommissaryshutter"; + name = "Vacant Commissary Shutter" + }, +/turf/open/floor/iron/dark, +/area/station/commons/vacant_room/office) +"uCa" = ( +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5, +/obj/effect/turf_decal/tile/neutral/half{ + dir = 1 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "uCb" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -72816,34 +76243,22 @@ /obj/machinery/light/directional/south, /turf/open/floor/wood, /area/station/maintenance/hallway/abandoned_recreation) -"uCA" = ( -/obj/machinery/power/apc/auto_name/directional/north, +"uCs" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/junction, /obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/commons/dorms) +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/main) "uCD" = ( +/obj/machinery/light/very_dim/directional/south, +/obj/effect/turf_decal/stripes/red/box, /obj/machinery/conveyor{ dir = 4; id = "garbage" }, -/obj/machinery/light/very_dim/directional/south, /turf/open/floor/plating, /area/station/maintenance/disposal) -"uCE" = ( -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/obj/effect/turf_decal/siding/blue{ - dir = 1 - }, -/obj/effect/turf_decal/tile/blue/opposingcorners{ - dir = 1 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/white, -/area/station/medical/medbay/central) "uCF" = ( /turf/open/floor/plating, /area/station/maintenance/port/fore) @@ -72854,6 +76269,20 @@ }, /turf/open/floor/plating, /area/station/maintenance/port) +"uCI" = ( +/obj/structure/table/reinforced, +/obj/item/clothing/suit/hazardvest{ + desc = "A high-visibility lifejacket complete with whistle and slot for oxygen tanks."; + name = "emergency lifejacket" + }, +/obj/item/tank/internals/oxygen, +/obj/item/clothing/mask/breath, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) +"uCO" = ( +/turf/open/openspace, +/area/station/maintenance/starboard/fore/upper) "uCP" = ( /obj/machinery/door/airlock/external{ name = "Medical Escape Pod" @@ -72878,6 +76307,9 @@ /obj/structure/railing/corner{ dir = 1 }, +/mob/living/basic/pet/cat/space{ + name = "Tomas" + }, /turf/open/openspace, /area/station/commons/fitness/recreation) "uDa" = ( @@ -72896,9 +76328,12 @@ /turf/open/floor/iron/large, /area/station/maintenance/starboard/central) "uDl" = ( -/obj/effect/landmark/firealarm_sanity, -/turf/open/openspace, -/area/station/command/meeting_room/council) +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "uDp" = ( /obj/structure/railing{ dir = 1 @@ -72911,19 +76346,19 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, /area/station/maintenance/department/medical) -"uDv" = ( -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) -"uDD" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 1 +"uDx" = ( +/obj/structure/disposalpipe/segment{ + dir = 10 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 5 + }, +/turf/open/openspace, +/area/station/engineering/lobby) +"uDD" = ( /obj/structure/disposalpipe/segment, -/turf/open/floor/iron, +/turf/open/floor/iron/dark/textured, /area/station/cargo/sorting) "uDE" = ( /obj/effect/turf_decal/trimline/yellow/corner{ @@ -72953,6 +76388,7 @@ /obj/structure/railing/corner/end{ dir = 4 }, +/obj/machinery/door/firedoor/border_only, /turf/open/floor/iron, /area/station/cargo/storage) "uDX" = ( @@ -72965,6 +76401,13 @@ /obj/machinery/airalarm/directional/south, /turf/open/floor/iron/dark/textured_large, /area/station/security/prison/safe) +"uEi" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/checker, +/area/station/engineering/atmos/upper) "uEk" = ( /obj/structure/showcase/cyborg/old{ dir = 4; @@ -72975,7 +76418,7 @@ network = list("minisat") }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "uEl" = ( /obj/effect/spawner/random/contraband/narcotics, /turf/open/floor/plating, @@ -72988,10 +76431,6 @@ /obj/item/stack/rods, /turf/open/openspace, /area/station/maintenance/port/aft) -"uEs" = ( -/obj/effect/spawner/random/structure/crate_loot, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "uEz" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, @@ -73023,15 +76462,11 @@ /turf/open/floor/iron/dark, /area/station/medical/chemistry) "uEL" = ( -/obj/effect/turf_decal/caution/stand_clear, -/turf/open/floor/iron/dark, +/obj/structure/railing, +/obj/effect/turf_decal/trimline/brown/filled/line, +/obj/machinery/door/firedoor/border_only, +/turf/open/floor/iron, /area/station/cargo/storage) -"uEM" = ( -/obj/machinery/door/airlock/external, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/obj/effect/mapping_helpers/airlock/access/all/engineering/external, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "uEP" = ( /obj/structure/table/wood, /obj/item/radio/intercom, @@ -73041,12 +76476,28 @@ /obj/machinery/atmospherics/components/unary/outlet_injector/monitored/carbon_input, /turf/open/floor/engine/co2, /area/station/engineering/atmos/upper) +"uEU" = ( +/obj/structure/window/reinforced/spawner/directional/east, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 + }, +/obj/effect/turf_decal/tile/dark_blue/fourcorners, +/turf/open/floor/iron/dark, +/area/station/engineering/transit_tube) "uEZ" = ( /obj/effect/turf_decal/trimline/yellow/filled/line, /obj/effect/turf_decal/trimline/yellow/filled/mid_joiner, /obj/machinery/chem_heater/withbuffer, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) +"uFe" = ( +/obj/item/radio/intercom/directional/west, +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 9 + }, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/engineering/gravity_generator) "uFj" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -73062,15 +76513,12 @@ /turf/open/floor/plating, /area/station/medical/break_room) "uFo" = ( -/obj/effect/turf_decal/siding/white, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, /obj/structure/disposalpipe/segment{ - dir = 4 + dir = 9 }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/hallway/primary/central) +/turf/open/floor/iron/dark, +/area/station/command/bridge) "uFv" = ( /obj/effect/turf_decal/tile/yellow/opposingcorners{ dir = 1 @@ -73086,6 +76534,11 @@ /obj/effect/spawner/random/maintenance, /turf/open/space/openspace, /area/space/nearstation) +"uFL" = ( +/obj/effect/turf_decal/bot, +/obj/machinery/space_heater, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos) "uFM" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, @@ -73107,17 +76560,6 @@ /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/security/checkpoint/science) -"uFX" = ( -/obj/structure/table, -/obj/item/wirecutters, -/obj/item/screwdriver{ - pixel_y = 16 - }, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) "uFY" = ( /obj/effect/landmark/start/security_officer, /turf/open/floor/iron/dark, @@ -73129,22 +76571,19 @@ }, /turf/open/floor/iron/checker, /area/station/service/bar) -"uGg" = ( -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/machinery/button/elevator/directional/east{ - id = "catwalk_atmos"; - name = "Elevator Button" - }, -/turf/open/floor/engine, -/area/station/engineering/atmos/project) "uGj" = ( /obj/structure/lattice/catwalk, /obj/effect/landmark/start/hangover, /turf/open/openspace, /area/station/hallway/primary/starboard) +"uGm" = ( +/obj/effect/decal/cleanable/dirt, +/obj/item/cigbutt{ + pixel_x = 8; + pixel_y = -2 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "uGo" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -73162,9 +76601,11 @@ /turf/open/floor/iron/dark, /area/station/medical/cryo) "uGx" = ( -/obj/effect/turf_decal/tile/neutral/anticorner/contrasted, -/obj/effect/turf_decal/tile/green{ - dir = 1 +/obj/effect/turf_decal/tile/blue/anticorner/contrasted{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 }, /turf/open/floor/iron/dark, /area/station/hallway/primary/central) @@ -73176,7 +76617,7 @@ /obj/effect/turf_decal/stripes/corner, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "uGH" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/siding/wood{ @@ -73185,14 +76626,14 @@ /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) "uGJ" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/delivery, -/obj/structure/railing{ - dir = 8 +/obj/effect/turf_decal/trimline/brown/filled/line, +/obj/structure/table, +/obj/item/storage/toolbox/mechanical, +/obj/item/storage/belt/utility{ + pixel_y = 6 }, -/obj/effect/decal/cleanable/rubble, -/turf/open/floor/iron/dark/smooth_large, -/area/station/cargo/miningoffice) +/turf/open/floor/iron, +/area/station/cargo/storage) "uGP" = ( /obj/effect/turf_decal/siding/purple/corner, /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -73201,32 +76642,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/science/lab) -"uGT" = ( -/obj/structure/railing, -/obj/machinery/door/firedoor/border_only, -/obj/structure/closet/crate/medical, -/obj/item/paper_bin{ - pixel_x = -6; - pixel_y = 4 - }, -/obj/item/stamp{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/item/stamp/denied{ - pixel_x = 4; - pixel_y = -2 - }, -/obj/effect/spawner/random/maintenance, -/obj/item/pen/red{ - pixel_y = 10 - }, -/obj/structure/curtain/cloth/fancy/mechanical{ - name = "Psychologist's Office Curtains"; - id = "psychpriv" - }, -/turf/open/floor/wood/large, -/area/station/medical/psychology) "uGV" = ( /obj/effect/turf_decal/box/corners{ dir = 1 @@ -73238,27 +76653,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/sorting/mail{ - dir = 8 - }, /obj/effect/mapping_helpers/mail_sorting/medbay/cmo_office, +/obj/structure/disposalpipe/sorting/mail/flip{ + dir = 4 + }, /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) -"uHe" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/cargo/miningoffice) -"uHg" = ( -/obj/structure/table/wood, -/obj/machinery/computer/arcade/orion_trail{ - desc = "For gamers only. Casuals need not apply."; - icon_screen = "library"; - icon_state = "oldcomp"; - name = "Gamer Computer" - }, -/turf/open/floor/wood, -/area/station/commons/dorms) "uHh" = ( /obj/machinery/computer/teleporter{ dir = 1 @@ -73268,14 +76668,6 @@ }, /turf/open/floor/iron/dark, /area/station/command/teleporter) -"uHk" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/structure/crate, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "uHo" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -73301,15 +76693,18 @@ codes_txt = "patrol;next_patrol=16-Laundry"; location = "15-EVA" }, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) "uHD" = ( -/obj/structure/chair{ +/obj/effect/landmark/start/cargo_technician, +/obj/structure/railing{ dir = 4 }, -/obj/effect/turf_decal/box/corners, -/turf/open/floor/engine/hull, -/area/space/nearstation) +/obj/machinery/door/firedoor/border_only{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/cargo/storage) "uHH" = ( /obj/machinery/washing_machine, /turf/open/floor/iron/dark/textured_large, @@ -73321,13 +76716,12 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/science/ordnance) -"uHO" = ( -/obj/item/cigbutt{ - pixel_x = -9; - pixel_y = -2 +"uHT" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 }, /turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/area/station/maintenance/disposal) "uHV" = ( /obj/structure/chair/stool/bar/directional/west, /obj/effect/turf_decal/siding/wood{ @@ -73348,17 +76742,27 @@ }, /turf/open/floor/iron/dark, /area/station/medical/chemistry) -"uHY" = ( -/obj/machinery/recharge_station, -/turf/open/floor/iron/dark, -/area/station/commons/dorms) -"uId" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing, -/obj/structure/sign/poster/official/no_erp/directional/north, -/obj/machinery/light/directional/north, -/turf/open/openspace, -/area/station/commons/dorms) +"uIf" = ( +/obj/structure/disposalpipe/segment, +/obj/item/paper_bin{ + pixel_y = 6; + pixel_x = -4 + }, +/obj/item/stamp/head/ce{ + pixel_x = 7 + }, +/obj/item/stamp/denied{ + pixel_x = 7; + pixel_y = 10 + }, +/obj/item/pen, +/obj/structure/table/reinforced/rglass, +/obj/effect/turf_decal/siding/yellow, +/obj/effect/turf_decal/siding/yellow{ + dir = 1 + }, +/turf/open/floor/engine, +/area/station/command/heads_quarters/ce) "uIi" = ( /obj/machinery/telecomms/bus/preset_two, /obj/effect/turf_decal/tile/brown/fourcorners, @@ -73376,10 +76780,6 @@ /obj/machinery/light_switch/directional/east, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/commissary) -"uIx" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) "uIA" = ( /obj/structure/railing{ dir = 4 @@ -73410,22 +76810,12 @@ /obj/machinery/holopad, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) -"uJy" = ( -/obj/structure/table, -/obj/item/rcl/pre_loaded{ - pixel_y = 7 - }, -/obj/item/stack/pipe_cleaner_coil/random, -/obj/item/stack/pipe_cleaner_coil/random, -/obj/item/stack/pipe_cleaner_coil/random, -/obj/item/stack/pipe_cleaner_coil/random, -/obj/item/stack/pipe_cleaner_coil/random, -/obj/machinery/airalarm/directional/east, -/obj/effect/turf_decal/tile/green/opposingcorners{ - dir = 1 +"uJF" = ( +/obj/item/statuebust{ + pixel_y = 12 }, -/turf/open/floor/iron/dark, -/area/station/commons/storage/art) +/turf/open/floor/engine/hull/air, +/area/station/maintenance/department/crew_quarters/dorms) "uJI" = ( /obj/structure/table, /obj/item/food/grown/banana{ @@ -73439,17 +76829,6 @@ /obj/effect/spawner/random/maintenance/two, /turf/open/floor/iron, /area/station/construction/storage_wing) -"uJR" = ( -/obj/item/ammo_casing/spent{ - pixel_x = -11; - pixel_y = -5 - }, -/obj/item/ammo_casing/spent{ - pixel_x = -6; - pixel_y = 2 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "uJX" = ( /obj/effect/turf_decal/siding/wood{ dir = 10 @@ -73477,11 +76856,6 @@ }, /turf/open/openspace, /area/station/construction/storage_wing) -"uKm" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "uKn" = ( /obj/effect/turf_decal/trimline/red/filled/warning{ dir = 1 @@ -73503,6 +76877,17 @@ dir = 8 }, /area/station/commons/lounge) +"uKr" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/duct, +/obj/structure/railing, +/turf/open/floor/catwalk_floor/iron, +/area/station/commons/dorms) "uKt" = ( /obj/structure/lattice/catwalk, /turf/open/openspace, @@ -73513,6 +76898,18 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/virology) +"uKy" = ( +/obj/item/storage/toolbox/mechanical/old, +/obj/item/clothing/mask/gas, +/obj/item/toy/balloon/arrest, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central) +"uKL" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/welded, +/obj/effect/mapping_helpers/airlock/locked, +/turf/open/floor/plating, +/area/station/maintenance/port) "uKM" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, @@ -73544,6 +76941,11 @@ /obj/item/radio/intercom/directional/north, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/commissary) +"uKO" = ( +/obj/structure/lattice, +/obj/effect/landmark/firealarm_sanity, +/turf/open/openspace, +/area/station/commons/dorms) "uKP" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -73559,7 +76961,16 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"uLa" = ( +/obj/effect/turf_decal/trimline/white/corner{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "uLb" = ( /obj/structure/closet/crate/secure/trashcart, /obj/item/sord, @@ -73574,6 +76985,11 @@ /obj/structure/lattice, /turf/open/openspace, /area/station/maintenance/port/aft) +"uLe" = ( +/obj/structure/table/wood/poker, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "uLf" = ( /obj/structure/chair/comfy/brown{ dir = 4 @@ -73599,7 +77015,7 @@ "uLj" = ( /obj/effect/turf_decal/trimline/dark_blue/filled/corner, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "uLo" = ( /obj/effect/turf_decal/tile/red/half/contrasted, /obj/effect/landmark/start/coroner, @@ -73608,10 +77024,10 @@ }, /area/station/medical/morgue) "uLt" = ( +/obj/effect/landmark/start/hangover, /obj/effect/turf_decal/tile/dark/half/contrasted{ dir = 8 }, -/obj/effect/landmark/start/hangover, /turf/open/floor/iron/dark, /area/station/hallway/primary/central) "uLw" = ( @@ -73623,6 +77039,22 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/ordnance/storage) +"uLD" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/lattice/catwalk, +/obj/structure/sign/poster/contraband/singletank_bomb/directional/east, +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/turf/open/openspace, +/area/station/maintenance/starboard/central/upper) +"uLI" = ( +/obj/effect/mob_spawn/corpse/human/assistant, +/obj/structure/closet/crate/trashcart, +/obj/effect/mob_spawn/corpse/human/monkey, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "uLL" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -73649,17 +77081,9 @@ }, /turf/open/floor/iron/dark/textured_corner, /area/station/science/ordnance) -"uMD" = ( -/obj/structure/window/reinforced/plasma/spawner/directional/south, -/obj/machinery/power/energy_accumulator/tesla_coil/anchored{ - cable_layer = 1 - }, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ - dir = 10 - }, -/obj/structure/cable/layer1, -/turf/open/floor/engine, -/area/station/engineering/supermatter) +"uMt" = ( +/turf/open/openspace, +/area/station/maintenance/starboard/aft/upper) "uME" = ( /obj/structure/stairs/south, /obj/structure/railing{ @@ -73669,35 +77093,30 @@ dir = 1 }, /area/station/service/library/printer) -"uMT" = ( -/obj/effect/turf_decal/siding/wood{ +"uMG" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) +"uMJ" = ( +/obj/effect/turf_decal/siding{ dir = 1 }, -/obj/structure/chair{ - dir = 1 +/obj/effect/turf_decal/trimline/white/line{ + dir = 8; + pixel_x = 8 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"uNn" = ( -/obj/structure/table, -/obj/machinery/status_display/evac/directional/north, -/obj/effect/spawner/random/techstorage/command_all, -/obj/effect/turf_decal/tile/red/opposingcorners{ +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) +"uNu" = ( +/obj/effect/turf_decal/trimline/green/filled/corner, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) -"uNo" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) -"uNG" = ( -/obj/machinery/washing_machine, -/obj/machinery/airalarm/directional/north, -/obj/machinery/firealarm/directional/east, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) +/turf/open/floor/iron/dark/textured_large, +/area/station/medical/virology) "uNJ" = ( /obj/item/radio/intercom/prison/directional/north, /turf/open/floor/iron/dark/textured_large, @@ -73717,28 +77136,30 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/storage) -"uOo" = ( -/obj/machinery/atmospherics/pipe/smart/simple/scrubbers{ - dir = 10 - }, -/turf/closed/wall/r_wall, -/area/station/maintenance/disposal/incinerator) "uOx" = ( -/obj/structure/table/glass, -/obj/machinery/wall_healer/directional/west, -/obj/effect/turf_decal/tile/blue/opposingcorners{ - dir = 1 +/obj/machinery/power/apc/auto_name/directional/west, +/obj/structure/cable, +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 4 }, -/obj/item/storage/medkit/regular, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 8 + }, +/obj/machinery/vending/coffee{ + pixel_x = -3 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "uOC" = ( /obj/machinery/vending/wardrobe/hydro_wardrobe, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) -"uOF" = ( -/turf/open/floor/iron/dark, -/area/station/engineering/hallway) "uOH" = ( /obj/structure/chair, /obj/effect/decal/cleanable/blood/old, @@ -73756,17 +77177,21 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark, /area/station/medical/medbay/central) +"uOO" = ( +/obj/structure/chair/office, +/obj/effect/landmark/start/chaplain, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/carpet, +/area/station/service/chapel/office) "uOR" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 }, /turf/open/floor/wood/large, /area/station/hallway/secondary/service) -"uOS" = ( -/obj/structure/table/glass, -/obj/item/storage/fancy/candle_box, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "uOW" = ( /obj/machinery/power/apc/auto_name/directional/east, /obj/structure/cable, @@ -73777,6 +77202,14 @@ /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) +"uPj" = ( +/obj/machinery/newscaster/directional/east, +/obj/structure/closet/crate/bin, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) "uPq" = ( /obj/structure/railing/corner{ dir = 1 @@ -73793,22 +77226,16 @@ "uPu" = ( /turf/open/floor/wood, /area/station/service/library) -"uPy" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ - dir = 5 - }, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) -"uPB" = ( -/obj/structure/window/reinforced/plasma/spawner/directional/south, -/obj/machinery/power/energy_accumulator/grounding_rod/anchored{ - cable_layer = 1 +"uPz" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/firealarm/directional/east, +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 6 }, -/obj/machinery/atmospherics/pipe/smart/manifold/cyan/visible, -/obj/structure/cable/layer1, -/turf/open/floor/engine, -/area/station/engineering/supermatter) +/turf/open/floor/iron, +/area/station/engineering/gravity_generator) "uPL" = ( /obj/item/controller, /obj/item/compact_remote, @@ -73823,9 +77250,45 @@ /obj/item/multitool/circuit, /turf/open/floor/iron/dark/smooth_large, /area/station/science/lab) +"uPQ" = ( +/obj/structure/sign/warning/vacuum/external/directional/south, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) +"uPY" = ( +/obj/machinery/door/airlock{ + name = "Emergency Storage" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/aft) +"uPZ" = ( +/obj/structure/closet/lasertag/blue, +/obj/effect/landmark/start/hangover, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/machinery/newscaster/directional/south, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) "uQh" = ( /turf/open/floor/iron/dark, /area/station/security/medical) +"uQi" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/structure/fluff/paper/stack{ + dir = 4 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) +"uQl" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/structure/sign/poster/official/random/directional/east, +/obj/machinery/camera/autoname/directional/east, +/turf/open/floor/iron, +/area/station/commons/dorms) "uQv" = ( /obj/structure/table/reinforced/rglass, /obj/effect/turf_decal/trimline/blue/filled/line, @@ -73841,12 +77304,15 @@ "uQy" = ( /obj/structure/closet/crate/bin, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/satellite) -"uQH" = ( -/obj/structure/girder, -/obj/structure/grille, +/area/station/ai/satellite/maintenance/storage) +"uQX" = ( +/obj/machinery/door/airlock/external, +/obj/effect/mapping_helpers/airlock/cyclelink_helper{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/external, /turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/area/station/maintenance/starboard) "uRd" = ( /turf/open/openspace, /area/station/maintenance/port/fore) @@ -73868,11 +77334,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/openspace, /area/station/hallway/secondary/exit/departure_lounge) -"uRx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/trash/boritos, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) "uRy" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -73890,12 +77351,30 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron/sepia, /area/station/hallway/secondary/construction) -"uRB" = ( -/obj/machinery/atmospherics/pipe/smart/simple/supply{ - dir = 4 +"uRA" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 }, -/turf/closed/wall/r_wall, -/area/station/maintenance/disposal/incinerator) +/obj/structure/table, +/obj/item/flashlight{ + pixel_y = -2 + }, +/obj/item/flashlight{ + pixel_x = 1; + pixel_y = 5 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) +"uRD" = ( +/obj/machinery/door/poddoor/shutters/radiation/preopen{ + id = "SM_shutters"; + name = "Supermatter Radiation Shutters"; + dir = 1 + }, +/obj/machinery/atmospherics/components/binary/pump/off/cyan/visible, +/obj/effect/turf_decal/trimline/blue, +/turf/open/floor/plating, +/area/station/engineering/supermatter) "uRM" = ( /obj/structure/table, /obj/effect/spawner/random/trash/janitor_supplies{ @@ -73954,9 +77433,32 @@ /obj/structure/closet/crate/freezer, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"uSh" = ( +/obj/effect/turf_decal/trimline/white/line{ + dir = 8; + pixel_x = 8 + }, +/obj/effect/turf_decal/trimline/white/line, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "uSl" = ( /turf/open/floor/wood/tile, /area/station/maintenance/port/aft) +"uSn" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/light/directional/north, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/textured_large, +/area/station/medical/virology) "uSq" = ( /obj/machinery/camera/autoname/directional/north, /turf/open/openspace, @@ -73970,15 +77472,39 @@ /obj/item/poster/random_contraband, /turf/open/floor/iron/dark, /area/station/maintenance/port) -"uSE" = ( -/obj/effect/turf_decal/trimline/white/corner{ - dir = 4 +"uSz" = ( +/obj/machinery/holopad, +/turf/open/floor/iron/dark/smooth_large, +/area/station/security/checkpoint/engineering) +"uSI" = ( +/obj/effect/turf_decal/trimline/yellow/warning{ + dir = 9 + }, +/obj/effect/turf_decal/trimline/yellow/mid_joiner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/yellow/mid_joiner{ + dir = 1 }, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) +"uSK" = ( +/obj/effect/mapping_helpers/broken_floor, /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) +/obj/structure/fluff/paper/stack{ + dir = 9 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/filingcabinet/chestdrawer, +/obj/item/folder/yellow, +/obj/item/hand_labeler_refill{ + pixel_x = -1 + }, +/obj/structure/fluff/paper{ + dir = 1 + }, +/turf/open/floor/plating, +/area/station/maintenance/aft) "uSL" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured, @@ -74045,6 +77571,14 @@ }, /turf/open/space/basic, /area/space) +"uTj" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ + dir = 6 + }, +/obj/machinery/camera/autoname/directional/west, +/turf/open/space/basic, +/area/space/nearstation) "uTy" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/chair, @@ -74054,28 +77588,40 @@ /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) "uTJ" = ( -/obj/machinery/light/directional/west, -/turf/open/openspace, -/area/station/cargo/storage) -"uTK" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 1 +/obj/structure/sign/directions/evac/directional/north{ + pixel_y = 4 }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/engineering/engine_smes) +/obj/structure/sign/directions/vault/directional/north{ + pixel_y = -2 + }, +/turf/closed/wall, +/area/station/maintenance/port/fore) "uTP" = ( /obj/effect/turf_decal/siding/dark, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "uTY" = ( /obj/structure/fake_stairs/directional/north, /obj/machinery/door/firedoor, /turf/open/floor/iron, /area/station/science/robotics) +"uUg" = ( +/obj/structure/lattice/catwalk, +/obj/effect/landmark/start/hangover, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/sign/warning/electric_shock/directional/west, +/turf/open/openspace, +/area/station/hallway/primary/starboard) +"uUx" = ( +/obj/effect/decal/cleanable/dirt, +/obj/item/trash/can{ + pixel_x = -8 + }, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "uUC" = ( /obj/structure/bed, /obj/structure/toilet/greyscale{ @@ -74101,33 +77647,10 @@ }, /turf/open/openspace, /area/station/maintenance/port/aft) -"uUH" = ( -/obj/machinery/atmospherics/pipe/heat_exchanging/simple{ - dir = 9 - }, -/obj/structure/lattice/catwalk, -/turf/open/space/basic, -/area/space/nearstation) -"uUK" = ( -/obj/structure/extinguisher_cabinet/directional/south, -/obj/structure/closet/secure_closet/medical3, -/obj/item/clothing/gloves/latex/nitrile, -/obj/item/defibrillator/loaded, -/obj/item/clothing/glasses/hud/health{ - pixel_y = 13 - }, -/obj/item/clothing/gloves/latex/nitrile, -/obj/effect/turf_decal/bot_white{ - color = "#52B4E9" - }, -/obj/item/clothing/gloves/latex/nitrile, -/turf/open/floor/iron/dark/textured_large, -/area/station/medical/storage) "uUL" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 4 }, -/obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/station/cargo/miningoffice) "uUO" = ( @@ -74144,6 +77667,16 @@ /obj/effect/landmark/start/cyborg, /turf/open/floor/iron/smooth, /area/station/science/robotics) +"uUS" = ( +/obj/item/cigbutt, +/obj/structure/curtain, +/obj/machinery/duct, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/structure/fluff/shower_drain, +/turf/open/floor/iron/freezer, +/area/station/commons/dorms) "uUT" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -74152,16 +77685,20 @@ /turf/open/floor/circuit/green{ luminosity = 2 }, -/area/station/ai_monitored/command/nuke_storage) -"uUX" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/area/station/command/vault) "uUY" = ( /obj/structure/chair/plastic, /obj/effect/decal/cleanable/dirt, /turf/open/floor/carpet/black, /area/station/maintenance/hallway/abandoned_recreation) +"uVb" = ( +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 8 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "uVf" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light/directional/west, @@ -74172,9 +77709,24 @@ /turf/closed/wall, /area/station/commons/toilet/auxiliary) "uVn" = ( -/obj/structure/reagent_dispensers/fueltank, +/obj/effect/turf_decal/stripes/line, +/obj/structure/sign/poster/random/directional/north, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) +"uVD" = ( +/obj/structure/mop_bucket{ + pixel_y = 9 + }, +/obj/item/reagent_containers/cup/bucket{ + pixel_x = 6; + pixel_y = -4 + }, +/obj/item/mop, /turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/area/station/maintenance/starboard) "uVL" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/red/opposingcorners{ @@ -74204,35 +77756,21 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/wood/tile, /area/station/science/robotics) -"uVY" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/landmark/start/assistant, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "uWi" = ( /turf/open/openspace, -/area/station/ai_monitored/command/storage/eva) -"uWu" = ( -/obj/machinery/atmospherics/components/unary/portables_connector/visible/layer4{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/canister/air, +/area/station/command/eva) +"uWp" = ( +/obj/machinery/duct, /turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/area/station/maintenance/starboard/central) "uWE" = ( -/obj/structure/table, -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 6 - }, -/obj/item/storage/box/shipping{ - pixel_x = 4; - pixel_y = 10 +/obj/structure/disposalpipe/segment{ + dir = 10 }, -/obj/item/clothing/head/costume/mailman, -/turf/open/floor/iron, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/iron/dark/textured, /area/station/cargo/sorting) "uWI" = ( /obj/structure/cable, @@ -74270,10 +77808,16 @@ /obj/effect/turf_decal/siding/dark_blue, /turf/open/floor/carpet/blue, /area/station/medical/break_room) +"uXm" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable, +/obj/machinery/door/firedoor, +/turf/open/floor/plating, +/area/station/engineering/engine_smes) "uXx" = ( /obj/machinery/status_display/evac/directional/west, /turf/open/floor/carpet/black, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "uXz" = ( /obj/structure/bed{ dir = 4 @@ -74291,12 +77835,12 @@ /turf/open/floor/iron/dark/textured, /area/station/medical/virology) "uXE" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, /turf/open/floor/iron, /area/station/cargo/storage) "uXI" = ( @@ -74309,14 +77853,19 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"uXR" = ( -/obj/structure/table/wood/fancy/cyan, -/obj/item/book/manual/wiki/atmospherics{ - pixel_y = 8 - }, -/obj/machinery/light/directional/east, +"uXL" = ( +/obj/effect/turf_decal/stripes/line, +/obj/machinery/light/small/directional/east, +/obj/structure/sign/warning/directional/east, /turf/open/floor/engine, -/area/station/engineering/break_room) +/area/station/engineering/supermatter/room) +"uXN" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/disposalpipe/junction/yjunction{ + dir = 1 + }, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard) "uXU" = ( /obj/effect/spawner/random/structure/chair_flipped, /obj/effect/decal/cleanable/dirt, @@ -74341,6 +77890,19 @@ /obj/effect/spawner/random/medical/surgery_tool, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) +"uYg" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) +"uYs" = ( +/obj/item/radio/intercom/directional/east, +/turf/open/floor/glass/plasma, +/area/station/engineering/atmos/upper) "uYu" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -74354,16 +77916,9 @@ dir = 8 }, /obj/machinery/vending/coffee, +/obj/machinery/airalarm/directional/west, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"uYL" = ( -/obj/machinery/door/airlock/external, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 8 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/external, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "uYP" = ( /obj/effect/spawner/random/trash/box, /obj/item/clothing/gloves/color/fyellow/old, @@ -74373,18 +77928,27 @@ /obj/structure/reagent_dispensers/watertank, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"uYT" = ( +/turf/open/floor/iron, +/area/station/engineering/storage_shared) +"uYY" = ( +/obj/effect/turf_decal/trimline/dark/arrow_ccw{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark/arrow_ccw{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/edge{ + dir = 4 + }, +/area/station/hallway/primary/fore) "uZn" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/general/hidden, /obj/machinery/light/cold/directional/south, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/science/server) -"uZs" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table, -/obj/item/flashlight/lamp, -/turf/open/floor/iron, -/area/station/maintenance/starboard/central) "uZu" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -74403,6 +77967,10 @@ /obj/effect/turf_decal/siding/blue, /turf/open/openspace, /area/station/medical/medbay/central) +"uZR" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/station/maintenance/aft) "uZS" = ( /obj/effect/turf_decal/siding/purple, /obj/effect/turf_decal/siding/purple{ @@ -74442,31 +78010,15 @@ /obj/item/radio/intercom/directional/south, /turf/open/floor/glass/reinforced, /area/station/medical/chemistry) +"vap" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/table, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "vav" = ( /obj/machinery/airalarm/directional/west, /turf/open/floor/iron/stairs/medium, /area/station/medical/virology) -"vax" = ( -/obj/effect/turf_decal/trimline/white/line{ - dir = 8; - pixel_x = 8 - }, -/obj/effect/turf_decal/trimline/white/line, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) -"vaD" = ( -/obj/machinery/door/airlock/external{ - name = "Common Mining Dock" - }, -/obj/effect/landmark/navigate_destination/dockaux, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "vaF" = ( /obj/structure/railing{ dir = 8 @@ -74484,11 +78036,16 @@ /obj/machinery/vending/boozeomat, /turf/open/floor/iron/checker, /area/station/service/bar) +"vaR" = ( +/obj/effect/spawner/random/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/aft/upper) "vbe" = ( /obj/structure/railing, /obj/effect/decal/cleanable/dirt, /obj/structure/sign/painting/library_private{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/item/cigbutt{ pixel_x = -12; @@ -74511,28 +78068,28 @@ }, /turf/open/floor/iron/kitchen_coldroom/freezerfloor, /area/station/service/kitchen/coldroom) -"vbB" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) -"vbM" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ +"vbx" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper/corner{ dir = 4 }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +/obj/structure/disposalpipe/segment, +/turf/open/floor/wood, +/area/station/maintenance/aft) "vbX" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/flora/rock/pile/jungle/style_2, /obj/structure/flora/grass/jungle/a/style_5, /turf/open/floor/grass, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"vbZ" = ( +/obj/machinery/newscaster/directional/south, +/turf/open/openspace, +/area/station/maintenance/aft/upper) +"vca" = ( +/turf/open/openspace, +/area/station/maintenance/aft/upper) "vcf" = ( /obj/structure/disposalpipe/segment{ dir = 10 @@ -74551,19 +78108,14 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/airless, /area/station/maintenance/starboard/aft) -"vcn" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/item/cigbutt{ - pixel_x = 8; - pixel_y = -2 +"vcp" = ( +/obj/machinery/atmospherics/components/binary/pump/off{ + dir = 2; + name = "Mix to Port" }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"vcF" = ( -/obj/structure/sign/warning/hot_temp, -/turf/closed/wall/r_wall, -/area/station/maintenance/disposal/incinerator) +/obj/effect/turf_decal/trimline/dark_green, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "vcH" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -74588,14 +78140,11 @@ /obj/machinery/holopad, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/commissary) -"vcT" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, +"vcX" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/smart/simple/green/visible, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/engineering/atmos) "vcY" = ( /obj/machinery/flasher/directional/west, /obj/structure/table/wood/fancy/black, @@ -74608,28 +78157,15 @@ pixel_y = 8 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) -"vdg" = ( -/obj/structure/window/reinforced/plasma/spawner/directional/north, -/obj/machinery/power/energy_accumulator/grounding_rod/anchored{ - cable_layer = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold/orange/visible{ - dir = 1 - }, -/obj/structure/cable/layer1, -/turf/open/floor/engine, -/area/station/engineering/supermatter) +/area/station/ai/upload/chamber) "vdh" = ( -/obj/structure/secure_safe/directional/north{ - name = "armory safe A"; - pixel_x = -22; - pixel_y = 0 - }, /obj/structure/rack, /obj/effect/spawner/random/armory/laser_gun, +/obj/structure/secure_safe/directional/west{ + name = "Armory safe A" + }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "vdi" = ( /obj/effect/landmark/start/ai/secondary, /obj/effect/turf_decal/delivery, @@ -74650,7 +78186,13 @@ name = "Private Channel" }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) +"vdk" = ( +/obj/machinery/status_display/evac/directional/north, +/turf/open/floor/iron/edge{ + dir = 1 + }, +/area/station/hallway/primary/central) "vdl" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -74658,36 +78200,12 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"vdm" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, -/obj/machinery/atmospherics/pipe/bridge_pipe/cyan/visible{ - dir = 4 - }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "vdq" = ( /obj/structure/broken_flooring/side/always_floorplane/directional/north, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"vdr" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) -"vdG" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "vdI" = ( /obj/structure/table, /obj/item/folder/red{ @@ -74702,21 +78220,14 @@ }, /turf/open/floor/carpet, /area/station/service/lawoffice) -"vdN" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/railing/corner/end{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "vdP" = ( /obj/structure/stairs/north, /turf/open/floor/iron/stairs/medium, /area/station/medical/medbay/central) +"vdZ" = ( +/obj/effect/mapping_helpers/broken_floor, +/turf/open/floor/iron, +/area/station/maintenance/starboard/fore) "vef" = ( /obj/machinery/door/airlock{ name = "Coffin Storage" @@ -74731,12 +78242,31 @@ /obj/machinery/power/apc/auto_name/directional/east, /obj/structure/cable, /turf/open/floor/catwalk_floor/iron_smooth, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) +"veh" = ( +/turf/open/openspace, +/area/station/engineering/atmos/upper) +"vek" = ( +/obj/machinery/light/small/directional/east, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/gravity_generator) "vem" = ( /obj/structure/lattice, /obj/machinery/camera/autoname/directional/south, /turf/open/openspace, /area/station/security/courtroom) +"vep" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/duct, +/obj/item/stack/rods{ + amount = 5 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "ver" = ( /obj/effect/spawner/random/maintenance, /obj/item/storage/fancy/candle_box, @@ -74754,10 +78284,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/dark/visible, /turf/open/floor/iron/kitchen_coldroom/freezerfloor, /area/station/service/kitchen/coldroom) -"vet" = ( -/obj/effect/decal/cleanable/insectguts, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "veu" = ( /turf/closed/indestructible/riveted{ desc = "A wall impregnated with Fixium, able to withstand massive explosions with ease"; @@ -74775,46 +78301,21 @@ /obj/structure/disposalpipe/trunk, /turf/open/floor/iron, /area/station/science/lab) -"veS" = ( -/obj/structure/table, -/obj/item/storage/toolbox/artistic{ - pixel_x = -1; - pixel_y = 12 - }, -/obj/item/storage/toolbox/mechanical{ - pixel_x = 1; - pixel_y = 5 - }, -/obj/item/paper_bin{ - pixel_x = -6; - pixel_y = -7 - }, -/obj/item/stamp{ - pixel_x = 7; - pixel_y = -1 - }, -/obj/item/stamp/denied{ - pixel_x = 8; - pixel_y = -7 - }, -/obj/item/radio/intercom/directional/west, -/turf/open/floor/wood, -/area/station/service/library/printer) "veT" = ( /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 }, /turf/open/floor/iron/white, /area/station/maintenance/department/medical) -"vfb" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/mapping_helpers/broken_machine, -/obj/machinery/vending/tool, -/turf/open/floor/iron, -/area/station/engineering/storage_shared) "vfe" = ( /turf/open/floor/iron, /area/station/commons/dorms) +"vfj" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "vfp" = ( /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, @@ -74835,16 +78336,14 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/white/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) -"vfF" = ( -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ - dir = 9 - }, -/obj/effect/turf_decal/tile/purple/half{ - dir = 1 +/area/station/ai/satellite/foyer) +"vfQ" = ( +/obj/structure/railing{ + dir = 4 }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "vfV" = ( /obj/machinery/camera/autoname/directional/north, /turf/open/floor/iron, @@ -74872,6 +78371,13 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark, /area/station/service/chapel) +"vgf" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/lattice/catwalk, +/obj/structure/disposalpipe/segment, +/turf/open/openspace, +/area/station/maintenance/starboard/central/upper) "vgh" = ( /obj/structure/lattice/catwalk, /obj/machinery/griddle, @@ -74896,9 +78402,6 @@ /obj/structure/railing{ dir = 4 }, -/obj/effect/turf_decal/siding/wood{ - dir = 4 - }, /obj/structure/table, /obj/item/radio/off{ pixel_y = 9 @@ -74912,8 +78415,12 @@ pixel_y = 4 }, /obj/item/radio/off, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/stripes{ + dir = 5 + }, +/obj/machinery/camera/autoname/directional/north, +/turf/open/floor/iron/textured, +/area/station/command/eva) "vgB" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -74925,28 +78432,37 @@ /obj/effect/spawner/random/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"vgJ" = ( -/obj/structure/disposalpipe/segment{ - dir = 9 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "vgN" = ( -/obj/machinery/newscaster/directional/north, -/obj/machinery/conveyor{ - dir = 4; - id = "packageSort2" +/obj/effect/turf_decal/siding/wood{ + dir = 8 }, -/obj/machinery/camera/directional/north{ - c_tag = "Cargo Bay - Deliveries" +/obj/machinery/computer/security/qm{ + dir = 4 }, -/obj/effect/turf_decal/trimline/brown/filled, -/obj/structure/railing/corner/end/flip{ - dir = 8 +/obj/machinery/button/door/directional/west{ + pixel_y = 6; + name = "Cargo Lockdown"; + id = "cargolockdown"; + req_access = list("cargo") }, -/obj/machinery/light/directional/north, -/turf/open/floor/iron, -/area/station/cargo/sorting) +/obj/machinery/button/door/directional/west{ + id = "CargowatchShutter"; + name = "Window Shutters"; + pixel_y = -6 + }, +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) +"vgV" = ( +/obj/machinery/computer/slot_machine{ + pixel_y = 2 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/wood, +/area/station/maintenance/starboard) +"vgX" = ( +/obj/effect/spawner/random/trash/garbage, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "vhe" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/line, @@ -74973,21 +78489,6 @@ }, /turf/open/floor/iron/checker, /area/station/service/bar/backroom) -"vht" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper/corner{ - dir = 4 - }, -/obj/structure/fluff/paper/stack{ - dir = 4 - }, -/obj/structure/filingcabinet, -/obj/effect/spawner/random/bureaucracy/paper, -/obj/item/folder/yellow{ - pixel_y = -6 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "vhv" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -74999,6 +78500,13 @@ /obj/structure/closet/bombcloset/security, /turf/open/floor/iron/dark, /area/station/security/office) +"vhE" = ( +/obj/structure/table, +/obj/effect/spawner/random/entertainment/musical_instrument, +/obj/effect/decal/cleanable/dirt, +/obj/effect/mapping_helpers/broken_floor, +/turf/open/floor/plating, +/area/station/maintenance/aft) "vhJ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/red/opposingcorners{ @@ -75029,19 +78537,6 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"viy" = ( -/obj/effect/mapping_helpers/broken_floor, -/obj/structure/fluff/paper/stack{ - desc = "A stack of various papers, absolutely unreadable due to scorch marks and aging." - }, -/obj/structure/fluff/paper{ - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "viD" = ( /obj/effect/turf_decal/siding/purple, /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -75053,6 +78548,14 @@ /obj/structure/sign/departments/rndserver/directional/north, /turf/open/floor/iron, /area/station/science/lab) +"viF" = ( +/obj/structure/bed, +/obj/machinery/light/small/directional/east, +/obj/effect/spawner/random/bedsheet, +/obj/effect/landmark/start/hangover, +/obj/structure/sign/clock/directional/east, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "viI" = ( /obj/effect/turf_decal/trimline/dark_blue/filled/warning{ dir = 4 @@ -75066,14 +78569,7 @@ /turf/open/floor/iron/dark/textured_edge{ dir = 8 }, -/area/station/ai_monitored/turret_protected/ai) -"viN" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/ai/satellite/chamber) "viS" = ( /obj/structure/chair/office{ dir = 8 @@ -75101,30 +78597,18 @@ /area/station/medical/medbay/central) "vjc" = ( /obj/structure/closet/firecloset, -/obj/effect/turf_decal/trimline/green/filled/line, +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 10 + }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"vji" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/openspace, -/area/station/engineering/atmos/project) -"vjC" = ( -/obj/structure/lattice/catwalk, -/obj/item/radio/intercom/directional/north, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/openspace, -/area/station/engineering/atmos/project) "vjS" = ( /obj/structure/transit_tube, /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/west, /obj/machinery/light/floor, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "vjZ" = ( /obj/structure/window/reinforced/spawner/directional/north, /turf/open/openspace, @@ -75138,7 +78622,7 @@ /area/station/medical/cryo) "vkd" = ( /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "vki" = ( /turf/open/openspace, /area/station/engineering/storage_shared) @@ -75151,19 +78635,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) -"vkl" = ( -/obj/effect/mapping_helpers/broken_floor, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper/corner, -/obj/structure/fluff/paper/stack, -/obj/effect/spawner/random/bureaucracy/paper, -/obj/structure/fluff/paper/stack{ - desc = "A stack of various papers, absolutely unreadable due to scorch marks and aging."; - dir = 1 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "vky" = ( /obj/machinery/vending/drugs, /turf/open/floor/iron/white/textured_large, @@ -75195,6 +78666,21 @@ /obj/item/radio/intercom/directional/north, /turf/open/floor/wood, /area/station/security/courtroom) +"vkD" = ( +/obj/item/banner/cargo/mundane, +/obj/machinery/light/directional/east, +/obj/effect/turf_decal/trimline/brown/filled/corner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/brown/filled/corner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/brown/filled/corner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/brown/filled/corner, +/turf/open/floor/iron, +/area/station/hallway/primary/starboard) "vkO" = ( /obj/structure/railing, /obj/effect/turf_decal/trimline/brown/filled/line, @@ -75203,24 +78689,15 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, +/obj/machinery/door/firedoor/border_only, /turf/open/floor/iron, /area/station/cargo/storage) "vkQ" = ( -/obj/structure/table/wood, -/obj/item/storage/briefcase/secure{ - pixel_y = 3 - }, -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) -"vkU" = ( -/obj/item/clothing/head/cone{ - pixel_x = 5; - pixel_y = 10 +/obj/effect/turf_decal/siding/dark{ + dir = 4 }, -/obj/machinery/power/apc/auto_name/directional/north, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "vkY" = ( /obj/structure/railing{ dir = 8 @@ -75244,6 +78721,15 @@ dir = 8 }, /area/station/science/ordnance) +"vla" = ( +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 4 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "vlc" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, @@ -75291,21 +78777,32 @@ }, /area/station/hallway/primary/port) "vlE" = ( -/obj/structure/window/reinforced/spawner/directional/south, -/obj/effect/decal/cleanable/dirt, +/obj/structure/window/spawner/directional/south, /turf/open/floor/plating, /area/station/maintenance/disposal) "vlH" = ( /obj/structure/window/reinforced/spawner/directional/west, /turf/open/space/openspace, /area/space/nearstation) -"vlK" = ( -/obj/effect/turf_decal/siding/white, +"vlI" = ( +/obj/machinery/door/airlock/maintenance{ + name = "CE's Maintenance Access" + }, +/obj/effect/mapping_helpers/airlock/access/any/engineering/construction, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/turf/open/floor/iron/dark/smooth_large, -/area/station/hallway/primary/central) +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) +"vlK" = ( +/obj/structure/window/reinforced/spawner/directional/south, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/item/kirbyplants/photosynthetic{ + pixel_y = 5; + pixel_x = 7 + }, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "vma" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/line{ @@ -75313,11 +78810,14 @@ }, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"vmd" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/trash/mess, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +"vme" = ( +/obj/machinery/light/warm/directional/north, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) "vmh" = ( /obj/structure/lattice/catwalk, /obj/structure/disposalpipe/segment{ @@ -75325,6 +78825,11 @@ }, /turf/open/openspace, /area/station/hallway/secondary/construction) +"vmk" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable, +/turf/open/openspace, +/area/station/maintenance/starboard/upper) "vmt" = ( /obj/structure/disposalpipe/segment{ dir = 2 @@ -75351,6 +78856,29 @@ }, /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) +"vmO" = ( +/obj/structure/rack, +/obj/item/clothing/ears/earmuffs, +/obj/item/clothing/under/color/blue, +/obj/item/clothing/neck/tie/blue{ + pixel_x = -3; + pixel_y = -3 + }, +/obj/item/clothing/head/soft/blue, +/obj/machinery/firealarm/directional/south, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) +"vmR" = ( +/obj/machinery/camera/autoname/directional/north, +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 4 + }, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "vmZ" = ( /obj/structure/table/reinforced, /obj/item/circuitboard/machine/vendor, @@ -75386,6 +78914,12 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/security/brig) +"vnh" = ( +/obj/effect/landmark/event_spawn, +/obj/structure/cable, +/obj/machinery/holopad, +/turf/open/floor/carpet/royalblue, +/area/station/command/heads_quarters/captain/private) "vnp" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/trash/graffiti, @@ -75403,23 +78937,30 @@ /area/station/command/heads_quarters/ce) "vnz" = ( /obj/effect/turf_decal/plaque{ - icon_state = "L7" - }, -/obj/effect/turf_decal/siding/green{ - dir = 1 + icon_state = "L8" }, -/obj/structure/disposalpipe/segment, +/obj/effect/turf_decal/siding/white, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) +"vnC" = ( +/obj/structure/window/reinforced/plasma/spawner/directional/east, +/obj/structure/table/reinforced, +/obj/item/stock_parts/power_store/cell/high{ + charge = 100; + maxcharge = 15000 + }, +/obj/machinery/cell_charger, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "vnR" = ( /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) "vnV" = ( -/obj/effect/turf_decal/plaque{ - icon_state = "L12" +/obj/effect/turf_decal/trimline/dark/arrow_ccw{ + dir = 4 }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/hallway/primary/central) +/turf/open/floor/iron, +/area/station/hallway/primary/aft) "voa" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/siding/wood, @@ -75441,17 +78982,6 @@ /obj/effect/landmark/carpspawn, /turf/open/space/openspace, /area/space) -"voi" = ( -/obj/structure/lattice/catwalk, -/turf/open/water, -/area/station/maintenance/starboard/fore) -"vok" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/maintenance, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) "von" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/structure/disposalpipe/segment{ @@ -75490,6 +79020,12 @@ /obj/effect/decal/cleanable/cobweb/cobweb2, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) +"voO" = ( +/obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ + dir = 9 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "voP" = ( /obj/effect/turf_decal/stripes/line{ dir = 9 @@ -75509,10 +79045,6 @@ /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/command/heads_quarters/cmo) -"voV" = ( -/obj/effect/spawner/structure/window, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "voX" = ( /obj/effect/spawner/random/engineering/atmospherics_portable, /obj/structure/railing, @@ -75542,12 +79074,6 @@ }, /turf/open/openspace, /area/station/commons/fitness/recreation) -"vpi" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/eighties, -/area/station/engineering/lobby) "vpo" = ( /obj/machinery/power/terminal{ dir = 1 @@ -75555,12 +79081,20 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/solars/starboard/fore) -"vpt" = ( -/obj/structure/chair/pew/right{ - dir = 4 +"vpw" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark/textured_large, +/area/station/maintenance/port) +"vpy" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 }, -/turf/open/floor/carpet, -/area/station/maintenance/starboard/lesser) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "vpz" = ( /obj/structure/transport/linear, /turf/open/openspace, @@ -75579,6 +79113,12 @@ /obj/item/wirecutters, /turf/open/floor/iron/dark, /area/station/security/office) +"vpX" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "vqc" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 4 @@ -75588,14 +79128,6 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/virology) -"vqi" = ( -/obj/effect/turf_decal/siding/thinplating{ - dir = 8 - }, -/obj/structure/flora/bush/flowers_yw/style_random, -/obj/structure/flora/bush/grassy/style_random, -/turf/open/floor/grass, -/area/station/engineering/lobby) "vql" = ( /obj/effect/turf_decal/trimline/red/filled/line, /obj/effect/turf_decal/trimline/red/warning{ @@ -75604,41 +79136,16 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/iron, /area/station/hallway/primary/port) -"vqn" = ( -/obj/machinery/door/airlock/atmos/glass{ - name = "Atmospherics Testing Room" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, -/obj/machinery/door/firedoor/heavy, -/obj/structure/cable, -/obj/structure/barricade/wooden/crude, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) -"vqq" = ( -/obj/structure/table, -/obj/machinery/status_display/evac/directional/north, -/obj/effect/spawner/random/techstorage/ai_all, -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 - }, -/obj/machinery/light_switch/directional/east, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) "vqs" = ( -/obj/machinery/door/airlock/mining{ - name = "Mining Office" +/obj/structure/table, +/obj/item/paper_bin{ + pixel_x = 6; + pixel_y = 9 }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/access/all/supply/mining, +/obj/item/pen, /obj/effect/turf_decal/tile/brown/fourcorners, -/obj/structure/disposalpipe/segment, /turf/open/floor/iron, -/area/station/cargo/miningoffice) +/area/station/hallway/primary/starboard) "vqu" = ( /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 @@ -75669,40 +79176,16 @@ /obj/machinery/power/apc/auto_name/directional/south, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"vqE" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/effect/decal/cleanable/crayon{ - icon_state = "body"; - name = "body"; - pixel_x = 12; - pixel_y = 1 - }, -/obj/effect/decal/cleanable/crayon{ - icon_state = "revolution"; - name = "graffiti"; - paint_colour = "#FF0000"; - pixel_y = 32 - }, -/obj/item/ammo_casing/spent{ - pixel_x = 8; - pixel_y = 6 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"vqH" = ( -/obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/co2{ - dir = 8 - }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) -"vqM" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 1 +"vqx" = ( +/obj/machinery/shower/directional/south, +/obj/structure/sink/directional/east, +/obj/structure/mirror/directional/west, +/obj/item/razor{ + pixel_z = 7; + pixel_w = -7 }, -/turf/open/floor/wood, -/area/station/commons/fitness/recreation) +/turf/open/floor/iron/freezer, +/area/station/commons/dorms) "vqP" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /obj/machinery/newscaster/directional/south, @@ -75717,15 +79200,27 @@ }, /turf/open/floor/iron/dark, /area/station/security/checkpoint/science) -"vqZ" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/recharge_floor, -/area/station/maintenance/starboard/lesser) -"vrx" = ( -/obj/machinery/shower/directional/west, -/obj/machinery/light/small/directional/south, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/restrooms) +"vra" = ( +/obj/machinery/door/airlock/public/glass{ + name = "Holodeck Door" + }, +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/trimline/neutral/filled/line{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/neutral/filled/line, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "holodeck" + }, +/turf/open/floor/iron/dark/textured_large, +/area/station/commons/fitness/recreation) +"vre" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 8 + }, +/turf/open/openspace, +/area/station/command/meeting_room/council) "vrA" = ( /obj/effect/turf_decal/siding/thinplating_new/dark, /obj/effect/turf_decal/siding/thinplating_new/dark/corner{ @@ -75737,13 +79232,18 @@ /obj/machinery/light/directional/east, /turf/open/openspace, /area/station/science/xenobiology) -"vrO" = ( -/obj/structure/lattice/catwalk, -/obj/structure/disposalpipe/segment{ - dir = 10 +"vrR" = ( +/obj/machinery/airalarm/directional/south, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 }, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) +/obj/structure/table, +/obj/structure/railing{ + dir = 8 + }, +/obj/machinery/camera/autoname/directional/east, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "vsf" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, @@ -75759,30 +79259,6 @@ }, /turf/open/floor/carpet/stellar, /area/station/service/library) -"vsm" = ( -/obj/effect/spawner/random/entertainment/arcade{ - dir = 1 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"vsq" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) -"vss" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/chair/office{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) "vsv" = ( /obj/machinery/airalarm/directional/north, /turf/open/floor/iron/chapel{ @@ -75799,6 +79275,12 @@ /obj/machinery/photocopier/prebuilt, /turf/open/floor/iron, /area/station/science/research) +"vsD" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/line, +/obj/structure/closet/radiation, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "vsK" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -75824,16 +79306,6 @@ /obj/effect/mapping_helpers/mail_sorting/medbay/virology, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"vsM" = ( -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ - dir = 5 - }, -/obj/effect/turf_decal/stripes/red/line, -/obj/effect/turf_decal/stripes/red/line{ - dir = 1 - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "vsO" = ( /obj/effect/turf_decal/trimline/dark_blue/line{ dir = 8 @@ -75848,7 +79320,7 @@ dir = 4 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "vsP" = ( /obj/structure/sign/poster/contraband/gorlex_recruitment, /turf/closed/wall/r_wall, @@ -75871,7 +79343,7 @@ /obj/structure/table/wood/fancy/cyan, /obj/effect/spawner/round_default_module, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "vtc" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/door/airlock/virology{ @@ -75880,12 +79352,21 @@ /obj/effect/mapping_helpers/airlock/access/all/science/genetics, /turf/open/floor/iron/dark/textured_large, /area/station/science/genetics) -"vti" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 +"vth" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 9 }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ + dir = 8 + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "vtm" = ( /obj/effect/turf_decal/siding/blue/corner, /obj/structure/railing{ @@ -75912,31 +79393,28 @@ }, /obj/item/radio/intercom/directional/east, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat_interior) -"vtF" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) +/area/station/ai/satellite/interior) +"vtP" = ( +/obj/structure/disposalpipe/segment, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "vtT" = ( /turf/open/floor/glass, /area/station/science/zoo) -"vua" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/wood/large, -/area/station/medical/psychology) "vuc" = ( /obj/item/banner/cargo/mundane, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, /turf/open/floor/plating, /area/station/maintenance/starboard/central) +"vuh" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "vuo" = ( /obj/machinery/door/firedoor/border_only{ dir = 4 @@ -75952,13 +79430,15 @@ /obj/machinery/light/small/red/dim/directional/west, /turf/open/floor/iron/textured_large, /area/station/medical/abandoned) -"vuy" = ( -/obj/effect/landmark/start/station_engineer, -/obj/structure/chair/office{ - dir = 1 +"vuC" = ( +/obj/structure/railing{ + dir = 8 }, -/turf/open/floor/iron, -/area/station/engineering/lobby) +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/turf/open/floor/wood, +/area/station/commons/dorms) "vuN" = ( /obj/machinery/telecomms/message_server/preset, /turf/open/floor/iron/dark/telecomms, @@ -75984,13 +79464,6 @@ }, /turf/open/floor/carpet/orange, /area/station/command/heads_quarters/ce) -"vvb" = ( -/obj/effect/turf_decal/bot, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/item/book/manual/wiki/atmospherics, -/obj/structure/closet/secure_closet/atmospherics, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/disposal/incinerator) "vvc" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/segment{ @@ -76031,15 +79504,6 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/science/explab) -"vvE" = ( -/obj/machinery/plumbing/input, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) -"vvL" = ( -/obj/item/cigbutt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "vvT" = ( /obj/machinery/power/apc/auto_name/directional/south, /obj/structure/fake_stairs/directional/west, @@ -76047,21 +79511,6 @@ /obj/structure/stairs/west, /turf/open/floor/iron, /area/station/science/zoo) -"vvV" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/item/stack/rods/two, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"vvY" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/loading_area{ - dir = 1 - }, -/obj/structure/light_construct/directional/east, -/turf/open/floor/iron, -/area/station/maintenance/starboard/central) "vwa" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table/reinforced, @@ -76088,6 +79537,9 @@ /obj/structure/lattice/catwalk, /turf/open/space/openspace, /area/station/solars/starboard/aft) +"vwg" = ( +/turf/closed/wall/r_wall, +/area/station/hallway/primary/starboard) "vwh" = ( /obj/machinery/door/airlock/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -76102,18 +79554,18 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) +"vwp" = ( +/obj/machinery/atmospherics/components/unary/passive_vent{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/space/nearstation) "vwr" = ( /turf/open/floor/iron, /area/station/commons/fitness/recreation) -"vwx" = ( -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 9 - }, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/warning/no_smoking/circle/directional/east, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "vwB" = ( /obj/machinery/camera/directional/east{ c_tag = "Arrivals - Aft Arm" @@ -76124,6 +79576,11 @@ /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) +"vwI" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/sign/warning/vacuum/external/directional/south, +/turf/open/floor/plating, +/area/station/cargo/miningoffice) "vwK" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -76135,20 +79592,17 @@ /obj/machinery/air_sensor, /turf/open/floor/iron, /area/station/security/prison/mess) -"vwQ" = ( -/obj/structure/reagent_dispensers/fueltank/large, -/obj/effect/turf_decal/delivery/white{ - color = "#ff6600" - }, -/turf/open/floor/engine, -/area/station/engineering/break_room) -"vwR" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +"vwL" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, /obj/structure/cable, -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard/upper) +"vxa" = ( +/obj/structure/table/wood, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/wood, +/area/station/maintenance/aft) "vxc" = ( /obj/machinery/door/airlock/security{ name = "Courtroom Cell" @@ -76174,6 +79628,19 @@ }, /turf/open/floor/iron/dark/smooth_half, /area/station/service/library) +"vxi" = ( +/obj/effect/decal/cleanable/blood, +/turf/open/floor/wood, +/area/station/maintenance/starboard) +"vxr" = ( +/turf/closed/wall, +/area/station/maintenance/starboard/fore/upper) +"vxz" = ( +/obj/machinery/duct, +/obj/structure/cable, +/obj/effect/spawner/random/structure/steam_vent, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "vxJ" = ( /obj/machinery/holopad, /obj/machinery/atmospherics/pipe/heat_exchanging/junction{ @@ -76181,22 +79648,21 @@ }, /turf/open/floor/iron/kitchen_coldroom/freezerfloor, /area/station/service/kitchen/coldroom) -"vyp" = ( -/obj/item/radio/intercom/directional/west, -/obj/machinery/modular_computer/preset/engineering{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 +"vxS" = ( +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) +"vyu" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/components/binary/pump/on/layer4{ + dir = 1; + name = "Airlock Pump"; + target_pressure = 300; + hide = 1 }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/engine_smes) -"vyt" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, +/obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/area/station/maintenance/starboard/fore/upper) "vyA" = ( /obj/structure/table/reinforced, /obj/item/camera, @@ -76212,6 +79678,13 @@ /obj/effect/spawner/random/trash/grime, /turf/open/floor/iron, /area/station/hallway/secondary/construction) +"vyG" = ( +/obj/machinery/computer/atmos_control/air_tank, +/obj/effect/turf_decal/tile/neutral/half{ + dir = 1 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "vyH" = ( /obj/structure/cable, /turf/open/floor/plating, @@ -76223,7 +79696,26 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 1 }, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) +"vze" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing/corner/end{ + dir = 8 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) +"vzf" = ( +/obj/structure/easel, +/obj/item/canvas/twentythree_twentythree, +/obj/item/canvas/twentythree_twentythree, +/obj/item/canvas/twentythree_twentythree, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 + }, +/obj/machinery/airalarm/directional/west, +/obj/machinery/light/warm/directional/west, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) "vzk" = ( /obj/effect/decal/cleanable/blood/oil/slippery, /obj/structure/cable, @@ -76239,28 +79731,31 @@ /turf/open/floor/iron/dark, /area/station/science/server) "vzr" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ +/obj/machinery/door/poddoor/shutters/preopen{ + name = "Cargo Lockdown Shutters"; + id = "cargolockdown"; dir = 8 }, -/obj/machinery/computer/cargo{ - dir = 1 +/obj/structure/table/reinforced, +/obj/structure/desk_bell{ + pixel_x = -10 }, +/obj/machinery/door/firedoor, +/obj/machinery/door/window/brigdoor/right/directional/east{ + req_access = list("cargo"); + name = "Cargo Desk" + }, +/obj/effect/turf_decal/tile/brown/fourcorners, +/obj/item/folder/yellow{ + pixel_x = 3; + pixel_y = 1 + }, +/obj/item/pen, /turf/open/floor/iron, /area/station/cargo/storage) -"vzx" = ( -/turf/open/floor/carpet, -/area/station/ai_monitored/command/storage/eva) "vzB" = ( /turf/closed/wall, /area/station/command/heads_quarters/hop) -"vzM" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/turf/open/floor/iron, -/area/station/hallway/primary/port) "vzN" = ( /obj/effect/turf_decal/tile/red/opposingcorners{ dir = 1 @@ -76295,16 +79790,13 @@ /obj/machinery/door/firedoor, /turf/open/floor/iron/dark, /area/station/engineering/engine_smes) -"vAa" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ - cycle_id = "space-outpost" +"vzZ" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/obj/machinery/door/airlock/external, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/external, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/carpet, +/area/station/maintenance/starboard) "vAd" = ( /obj/structure/grille, /obj/structure/lattice, @@ -76321,19 +79813,8 @@ /turf/open/floor/iron, /area/station/service/cafeteria) "vAh" = ( -/obj/machinery/conveyor{ - dir = 4; - id = "cargoload" - }, -/obj/structure/plasticflaps, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, +/turf/open/floor/engine/hull/air, /area/station/cargo/storage) -"vAl" = ( -/obj/structure/ladder, -/obj/structure/lattice/catwalk, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) "vAn" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 4 @@ -76350,30 +79831,6 @@ "vAs" = ( /turf/closed/wall, /area/station/command/corporate_showroom) -"vAv" = ( -/obj/structure/closet/l3closet/scientist, -/obj/effect/decal/cleanable/blood/old, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"vAx" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8; - pixel_x = -2 - }, -/obj/effect/turf_decal/caution/stand_clear{ - dir = 8 - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"vAF" = ( -/obj/structure/cable, -/obj/effect/spawner/random/trash/ghetto_containers, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "vAL" = ( /obj/machinery/atmospherics/components/trinary/filter{ dir = 4 @@ -76392,17 +79849,13 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/science/cytology) -"vBg" = ( -/obj/structure/extinguisher_cabinet/directional/north, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "vBi" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /obj/structure/disposalpipe/segment, /obj/machinery/door/firedoor, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) "vBj" = ( /obj/machinery/porta_turret/ai{ @@ -76412,7 +79865,7 @@ dir = 6 }, /turf/open/floor/engine/hull/reinforced/air, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "vBq" = ( /obj/machinery/power/terminal{ dir = 1 @@ -76420,7 +79873,7 @@ /obj/structure/cable/multilayer/connected, /obj/machinery/power/port_gen/pacman, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "vBt" = ( /obj/effect/spawner/random/vending/colavend, /obj/effect/turf_decal/tile/purple, @@ -76471,6 +79924,16 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/science/xenobiology/hallway) +"vBT" = ( +/obj/structure/table, +/obj/item/folder/yellow{ + pixel_x = 4 + }, +/obj/item/pen, +/obj/item/airlock_painter, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "vBU" = ( /obj/effect/turf_decal/siding/dark{ dir = 8 @@ -76480,14 +79943,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) -"vBX" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 9 - }, -/obj/machinery/power/apc/auto_name/directional/west, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/engineering/engine_smes) "vBY" = ( /obj/item/raw_anomaly_core/random{ pixel_x = -5; @@ -76520,25 +79975,23 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/security/execution/transfer) "vCk" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 8 +/obj/effect/turf_decal/stripes/line{ + dir = 4 }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment{ +/obj/structure/railing{ dir = 4 }, -/turf/open/floor/iron, -/area/station/command/heads_quarters/qm) -"vCr" = ( -/obj/machinery/computer/slot_machine{ - pixel_y = 2 +/obj/structure/disposalpipe/segment{ + dir = 10 }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "vCB" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /obj/machinery/status_display/ai/directional/south, @@ -76546,7 +79999,29 @@ /area/station/science/lobby) "vCE" = ( /turf/closed/wall, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) +"vCF" = ( +/obj/item/kirbyplants/synthetic/plant26{ + pixel_x = 10; + pixel_y = 18 + }, +/obj/item/kirbyplants/synthetic/plant27{ + pixel_x = 13; + pixel_y = 5 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/light/small/directional/north, +/turf/open/floor/iron/dark/textured_large, +/area/station/medical/morgue) +"vCG" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "vCN" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/door/airlock/public/glass{ @@ -76570,18 +80045,16 @@ }, /area/station/hallway/secondary/entry) "vCT" = ( -/obj/structure/bookcase/random/reference, -/obj/machinery/camera/autoname/directional/south, -/obj/structure/cable, -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) +/obj/structure/sign/poster/official/random/directional/east, +/turf/open/floor/glass/reinforced, +/area/station/command/bridge) "vCW" = ( /obj/structure/table/wood/poker, /obj/item/toy/cards/deck{ pixel_x = -10; pixel_y = -3 }, -/turf/open/floor/wood, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) "vDa" = ( /obj/machinery/camera/directional/west{ @@ -76602,37 +80075,31 @@ dir = 1 }, /turf/open/floor/iron/checker, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "vDi" = ( /turf/open/floor/iron/smooth_edge{ dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) -"vDF" = ( -/obj/structure/lattice, -/turf/open/openspace, -/area/station/maintenance/starboard/fore) -"vDL" = ( +/area/station/ai/satellite/foyer) +"vDu" = ( +/obj/structure/reagent_dispensers/plumbed, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) +"vDv" = ( +/obj/effect/spawner/random/engineering/tank, /obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/plasma, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/main) -"vDT" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/lattice/catwalk, -/obj/structure/disposalpipe/segment, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) -"vDV" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/disposalpipe/segment, -/obj/structure/extinguisher_cabinet/directional/east, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) +"vDM" = ( +/obj/structure/table, +/obj/item/reagent_containers/cup/soda_cans/thirteenloko{ + pixel_x = 14; + pixel_y = 3 + }, +/obj/item/book/manual/wiki/engineering_construction, +/obj/machinery/duct, +/turf/open/floor/iron/large, +/area/station/engineering/lobby) "vEi" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -76640,6 +80107,20 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/service/kitchen/abandoned) +"vEp" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 2; + name = "CO2 to Mix" + }, +/obj/effect/turf_decal/tile/dark/fourcorners, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"vEv" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/main) "vEF" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -76653,52 +80134,41 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"vEI" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 +"vEH" = ( +/obj/structure/table/reinforced, +/obj/item/clothing/glasses/meson/engine, +/obj/item/clothing/glasses/meson/engine, +/obj/item/clothing/glasses/meson/engine, +/obj/item/clothing/glasses/meson{ + pixel_y = 8 }, -/obj/structure/railing{ - dir = 4 +/obj/item/clothing/glasses/meson{ + pixel_y = 8 }, +/obj/effect/turf_decal/stripes/line, /turf/open/floor/engine, -/area/station/engineering/atmos/project) -"vEU" = ( -/obj/machinery/skill_station, -/obj/machinery/airalarm/directional/north, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +/area/station/engineering/supermatter/room) +"vEW" = ( +/obj/item/clothing/head/cone{ + pixel_x = -5; + pixel_y = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "vEX" = ( /obj/structure/cable, /turf/open/floor/glass/reinforced, /area/station/solars/starboard/fore) +"vFf" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "vFk" = ( /obj/machinery/portable_atmospherics/canister/oxygen, /turf/open/floor/plating, /area/station/construction/storage_wing) -"vFl" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/door/airlock/engineering/glass{ - name = "Grav Gen & Tech Storage" - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/construction, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) -"vFr" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "vFA" = ( /turf/closed/wall, /area/station/science/xenobiology) @@ -76711,44 +80181,19 @@ }, /turf/open/floor/engine/hull/air, /area/station/science/research) -"vFN" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, -/obj/machinery/camera/directional/west, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 +"vFE" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 }, -/obj/item/radio/intercom/directional/south, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) -"vFP" = ( -/obj/structure/lattice/catwalk, -/obj/effect/turf_decal/stripes/line, -/obj/structure/railing{ - dir = 1 +/obj/structure/disposalpipe/segment{ + dir = 9 }, -/turf/open/openspace, -/area/station/engineering/break_room) +/obj/machinery/light/directional/east, +/turf/open/floor/iron/textured_large, +/area/station/medical/virology) "vFR" = ( /turf/closed/mineral/random/stationside/asteroid/porus, /area/station/science/ordnance/bomb) -"vFU" = ( -/obj/structure/table/reinforced, -/obj/item/trash/candle{ - pixel_x = 11; - pixel_y = 11 - }, -/obj/item/trash/candle{ - pixel_x = 7; - pixel_y = 3 - }, -/obj/item/trash/candle{ - pixel_x = -9; - pixel_y = 9 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) "vFV" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/wood, @@ -76761,9 +80206,14 @@ /turf/open/floor/iron, /area/station/security/prison/mess) "vFZ" = ( -/obj/effect/turf_decal/siding/green, -/turf/open/floor/iron/dark/smooth_large, -/area/station/hallway/primary/central) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable, +/turf/open/floor/carpet/royalblue, +/area/station/command/heads_quarters/captain/private) "vGi" = ( /obj/structure/table, /obj/item/training_toolbox{ @@ -76776,16 +80226,6 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"vGl" = ( -/obj/structure/fluff/paper/stack{ - dir = 10 - }, -/obj/structure/sign/flag/nanotrasen/directional/north, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "vGr" = ( /obj/effect/turf_decal/trimline/green/filled/line, /obj/effect/turf_decal/trimline/green/filled/mid_joiner, @@ -76801,6 +80241,19 @@ /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/iron/dark/textured_large, /area/station/medical/virology) +"vGu" = ( +/obj/machinery/newscaster/directional/east, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/item/kirbyplants/random, +/obj/item/cigbutt, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) +"vGB" = ( +/obj/structure/sign/poster/official/soft_cap_pop_art/directional/west, +/turf/open/openspace, +/area/station/maintenance/department/crew_quarters/dorms) "vGC" = ( /obj/effect/turf_decal/siding/wood{ dir = 4 @@ -76810,30 +80263,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"vGE" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/engine/hull/reinforced, -/area/station/engineering/atmos/hfr_room) -"vGQ" = ( -/obj/structure/table, -/obj/item/clothing/under/costume/seifuku/tan{ - pixel_x = -14; - pixel_y = -2 - }, -/obj/item/trash/boritos{ - pixel_x = 1; - pixel_y = 9 - }, -/obj/item/clothing/glasses/sunglasses/gar/orange{ - pixel_x = 4 - }, -/obj/structure/sign/poster/contraband/energy_swords/directional/north, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/fore) -"vHa" = ( -/obj/machinery/atmospherics/components/unary/outlet_injector/monitored/incinerator_input, -/turf/open/floor/engine/airless, -/area/station/maintenance/disposal/incinerator) "vHe" = ( /obj/structure/closet/crate/trashcart/laundry, /obj/item/clothing/under/rank/prisoner, @@ -76845,27 +80274,30 @@ /turf/open/floor/iron/dark/textured_large, /area/station/security/prison) "vHo" = ( -/turf/closed/wall, +/turf/closed/wall/r_wall, /area/station/hallway/secondary/command) "vHp" = ( -/obj/effect/decal/cleanable/dirt, -/obj/item/cigbutt, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/obj/structure/cable, +/obj/effect/turf_decal/siding/wood, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 + }, +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) "vHz" = ( /obj/structure/table, /obj/machinery/air_sensor, /turf/open/floor/iron/grimy, /area/station/security/interrogation) -"vHO" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 6 +"vHC" = ( +/obj/structure/stairs/east, +/obj/machinery/status_display/supply{ + pixel_x = 32 }, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) +/turf/open/floor/iron/stairs/medium{ + dir = 8 + }, +/area/station/cargo/storage) "vHV" = ( /obj/structure/lattice/catwalk, /obj/structure/table, @@ -76875,10 +80307,27 @@ /obj/effect/spawner/random/bureaucracy/pen, /turf/open/openspace, /area/station/maintenance/port/aft) +"vIb" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "vIc" = ( /obj/structure/lattice/catwalk, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) +"vId" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/hallway/primary/port) "vIg" = ( /obj/machinery/airalarm/directional/north, /obj/effect/turf_decal/trimline/red/filled/line{ @@ -76906,19 +80355,11 @@ dir = 8 }, /turf/open/floor/iron/white/textured_half, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "vIw" = ( /obj/structure/railing, /turf/open/openspace, /area/station/hallway/primary/central) -"vIy" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) "vIz" = ( /obj/machinery/vending/cigarette, /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -76926,24 +80367,44 @@ }, /turf/open/floor/iron, /area/station/science/research) -"vIX" = ( -/obj/machinery/camera/autoname/directional/east, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/airalarm/directional/east, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/engineering/hallway) +"vIE" = ( +/obj/structure/sink/directional/east, +/obj/structure/mirror/directional/west, +/obj/machinery/firealarm/directional/south, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet/restrooms) +"vIG" = ( +/obj/structure/fluff/paper/stack, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) "vJe" = ( /obj/structure/chair, /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood, /area/station/service/abandoned_gambling_den) +"vJf" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/camera/autoname/directional/east, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "vJz" = ( /obj/structure/railing{ dir = 4 }, -/turf/open/floor/wood, +/obj/machinery/conveyor_switch/oneway{ + dir = 8; + id = "HoPsToy"; + name = "Loading Conveyor"; + pixel_y = 8 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) "vJB" = ( /obj/effect/turf_decal/trimline/red/filled/line{ @@ -76952,12 +80413,17 @@ /obj/machinery/light/directional/south, /turf/open/floor/iron, /area/station/hallway/primary/port) +"vJD" = ( +/obj/structure/lattice, +/obj/effect/landmark/firealarm_sanity, +/turf/open/openspace, +/area/station/commons/fitness/recreation) "vJF" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /obj/structure/disposalpipe/junction, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) "vJI" = ( /obj/effect/turf_decal/siding/blue{ @@ -76984,14 +80450,6 @@ }, /turf/open/floor/eighties, /area/station/construction/storage_wing) -"vJV" = ( -/obj/machinery/door/airlock/external, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/external, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "vKc" = ( /obj/effect/decal/cleanable/glitter{ color = "ff8080" @@ -77007,56 +80465,42 @@ /turf/open/floor/iron/dark/textured, /area/station/science/xenobiology) "vKi" = ( -/obj/structure/table/wood, -/obj/structure/disposalpipe/segment, -/turf/open/floor/wood, -/area/station/maintenance/starboard/central) +/obj/effect/turf_decal/bot_white, +/turf/open/floor/iron/dark/textured_large, +/area/station/cargo/storage) "vKq" = ( /obj/effect/turf_decal/trimline/green/filled/line, /obj/effect/decal/cleanable/dirt, +/obj/structure/extinguisher_cabinet/directional/south, +/obj/machinery/vending/assist, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) "vKt" = ( /turf/open/floor/plating, /area/station/maintenance/hallway/abandoned_recreation) -"vKL" = ( -/obj/structure/railing{ - dir = 4 - }, -/obj/effect/turf_decal/siding/wood{ - dir = 4 - }, -/obj/structure/table, -/obj/item/grenade/chem_grenade/smart_metal_foam{ - pixel_x = 6; - pixel_y = 8 - }, -/obj/item/grenade/chem_grenade/smart_metal_foam{ - pixel_x = 2; - pixel_y = 7 - }, -/obj/item/grenade/chem_grenade/smart_metal_foam{ - pixel_x = -2; - pixel_y = 6 +"vKA" = ( +/obj/effect/turf_decal/tile/blue/opposingcorners{ + dir = 1 }, -/obj/item/grenade/chem_grenade/smart_metal_foam{ - pixel_x = -6; - pixel_y = 5 +/obj/effect/turf_decal/siding/blue{ + dir = 10 }, -/obj/machinery/airalarm/directional/south, -/obj/machinery/camera/autoname/directional/south, +/obj/structure/cable, +/turf/open/floor/iron/white, +/area/station/medical/medbay/central) +"vKL" = ( /obj/machinery/atmospherics/pipe/multiz/supply/visible/layer4{ dir = 8 }, /obj/machinery/atmospherics/pipe/multiz/scrubbers/visible/layer2{ dir = 8 }, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) -"vKW" = ( -/obj/effect/spawner/structure/window, -/turf/open/floor/plating, -/area/station/commons/locker) +/obj/effect/turf_decal/stripes{ + dir = 6 + }, +/obj/machinery/camera/autoname/directional/south, +/turf/open/floor/iron/textured, +/area/station/command/eva) "vKZ" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -77075,15 +80519,6 @@ /obj/structure/sink/directional/south, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) -"vLb" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing, -/obj/structure/railing{ - dir = 1 - }, -/obj/structure/cable, -/turf/open/openspace, -/area/station/engineering/lobby) "vLe" = ( /obj/structure/table, /obj/item/taperecorder{ @@ -77098,21 +80533,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/security/execution/education) -"vLj" = ( -/obj/structure/disposalpipe/segment{ - dir = 2 - }, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ - dir = 4 - }, -/obj/structure/cable, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "vLx" = ( /obj/machinery/conveyor{ dir = 4; id = "garbage" }, +/obj/effect/turf_decal/stripes/red/box, /turf/open/floor/plating, /area/station/maintenance/disposal) "vLC" = ( @@ -77133,29 +80559,14 @@ /obj/structure/extinguisher_cabinet/directional/south, /turf/open/floor/iron, /area/station/science/research) -"vLU" = ( -/obj/item/kirbyplants/random/fullysynthetic, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ - dir = 4 - }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) -"vMn" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) -"vMs" = ( -/obj/machinery/door/airlock/maintenance, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 +"vMm" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 8; + name = "Freezer Bypass" }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/obj/effect/turf_decal/trimline/blue, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "vMt" = ( /obj/structure/cable, /turf/closed/wall/r_wall, @@ -77165,40 +80576,20 @@ /obj/machinery/airalarm/directional/west, /turf/open/floor/iron, /area/station/hallway/primary/aft) -"vMG" = ( -/obj/item/kirbyplants/random, -/obj/machinery/button/door/directional/west{ - id = "Cabin4"; - name = "Cabin Bolt Control"; - normaldoorcontrol = 1; - pixel_x = 24; - specialfunctions = 4 +"vMN" = ( +/obj/effect/turf_decal/arrows{ + dir = 1 }, -/turf/open/floor/wood, -/area/station/commons/dorms) -"vMH" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing, -/obj/item/reagent_containers/blood/ethereal{ - pixel_x = -6; - pixel_y = 6 +/obj/effect/turf_decal/stripes/red/line{ + dir = 4 }, -/obj/item/cigbutt{ - pixel_x = 9; - pixel_y = 14 +/obj/effect/turf_decal/siding/red{ + dir = 4 }, -/obj/structure/sign/poster/official/anniversary_vintage_reprint/directional/west, -/turf/open/openspace, -/area/station/maintenance/starboard/fore) -"vMO" = ( -/obj/effect/turf_decal/siding/thinplating{ - dir = 8 +/turf/open/floor/iron/textured_edge{ + dir = 4 }, -/obj/structure/flora/bush/flowers_yw/style_random, -/obj/structure/flora/bush/grassy/style_random, -/obj/machinery/camera/autoname/directional/north, -/turf/open/floor/grass, -/area/station/engineering/lobby) +/area/station/command/gateway) "vMP" = ( /obj/structure/cable, /turf/open/floor/iron/dark/textured_large, @@ -77216,8 +80607,15 @@ dir = 4 }, /obj/structure/cable, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) +"vNb" = ( +/obj/machinery/atmospherics/components/unary/passive_vent, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/turf/open/floor/plating/airless, +/area/space/nearstation) "vNc" = ( /obj/structure/railing{ dir = 10 @@ -77234,6 +80632,14 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) +"vNl" = ( +/obj/effect/landmark/start/hangover, +/obj/machinery/light/floor, +/obj/effect/turf_decal/stripes/white/line{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "vNm" = ( /obj/item/bodypart/chest/lizard, /obj/effect/mapping_helpers/broken_floor, @@ -77272,23 +80678,18 @@ }, /turf/open/floor/plating, /area/station/science/zoo) +"vNE" = ( +/obj/structure/stairs/south, +/turf/open/floor/iron/stairs{ + dir = 1 + }, +/area/station/maintenance/starboard) "vNJ" = ( /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/structure/window/reinforced/tinted/spawner/directional/west, /obj/effect/spawner/random/structure/crate_abandoned, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"vNM" = ( -/obj/structure/sign/warning/vacuum/external/directional/south, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"vNX" = ( -/obj/structure/transport/linear{ - radial_travel = 0 - }, -/turf/open/openspace, -/area/station/engineering/atmos/project) "vOg" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -77300,43 +80701,56 @@ /obj/structure/disposalpipe/segment{ dir = 2 }, -/obj/structure/sign/directions/medical/directional/east{ - dir = 2; - pixel_y = 9 - }, -/obj/structure/sign/directions/science/directional/east{ - dir = 2; - pixel_y = 3 - }, -/obj/structure/sign/directions/security/directional/east{ - dir = 2; - pixel_y = -3 +/turf/open/floor/iron/edge{ + dir = 4 }, -/turf/open/floor/iron/large, /area/station/hallway/primary/central) "vOy" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 }, -/obj/machinery/status_display/ai/directional/north, /obj/effect/turf_decal/trimline/blue/filled/mid_joiner{ dir = 1 }, /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/machinery/status_display/ai/directional/north, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) "vOE" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/sepia, /area/station/hallway/secondary/construction) -"vPa" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 +"vON" = ( +/obj/effect/turf_decal/siding/blue/corner{ + dir = 4 }, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) +/obj/structure/table/wood, +/obj/item/folder/yellow{ + pixel_x = 6; + pixel_y = 8 + }, +/obj/item/folder/yellow{ + pixel_x = -5; + pixel_y = 8 + }, +/obj/item/stamp/denied{ + pixel_x = 6 + }, +/obj/item/stamp/granted{ + pixel_x = -4 + }, +/turf/open/floor/carpet/executive, +/area/station/command/meeting_room/council) +"vPk" = ( +/obj/structure/lattice/catwalk, +/obj/structure/filingcabinet, +/obj/effect/spawner/random/bureaucracy/paper, +/obj/effect/spawner/random/bureaucracy/paper, +/obj/effect/decal/cleanable/cobweb, +/turf/open/openspace, +/area/station/maintenance/aft/upper) "vPp" = ( /obj/machinery/microwave, /turf/open/floor/plating, @@ -77349,6 +80763,26 @@ }, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) +"vPE" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/effect/turf_decal/stripes/white/corner{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) +"vPF" = ( +/obj/machinery/atmospherics/pipe/multiz/green/visible{ + dir = 8; + name = "mix to space multi-deck adaper" + }, +/obj/effect/turf_decal/tile/dark_green/opposingcorners, +/obj/effect/turf_decal/tile/neutral/opposingcorners{ + dir = 1 + }, +/obj/effect/turf_decal/box/white, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "vPN" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -77358,10 +80792,6 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"vPU" = ( -/obj/effect/landmark/start/hangover, -/turf/open/floor/carpet, -/area/station/maintenance/starboard/lesser) "vPX" = ( /obj/effect/turf_decal/tile/dark_blue, /obj/structure/cable, @@ -77374,15 +80804,16 @@ /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 8 }, -/obj/effect/landmark/start/shaft_miner, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, -/area/station/cargo/miningoffice) -"vQf" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 1 - }, +/area/station/cargo/storage) +"vQe" = ( +/obj/structure/lattice/catwalk, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/area/station/engineering/supermatter/room/upper) "vQj" = ( /obj/effect/turf_decal/stripes/line, /obj/effect/turf_decal/stripes/line{ @@ -77393,6 +80824,16 @@ }, /turf/open/floor/engine, /area/station/medical/chemistry) +"vQm" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/obj/machinery/button/door/directional/north{ + id = "abandoned_kitchen" + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "vQo" = ( /obj/structure/lattice/catwalk, /obj/effect/turf_decal/stripes/line, @@ -77407,15 +80848,6 @@ "vQq" = ( /turf/closed/wall/r_wall, /area/station/maintenance/port/greater) -"vQw" = ( -/obj/structure/cable, -/obj/machinery/camera/autoname/directional/west, -/obj/structure/disposalpipe/segment, -/obj/structure/extinguisher_cabinet/directional/west, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark/small, -/area/station/command/heads_quarters/ce) "vQy" = ( /obj/machinery/suit_storage_unit/security, /obj/machinery/light/directional/west, @@ -77464,6 +80896,7 @@ }, /obj/machinery/light/directional/south, /obj/machinery/firealarm/directional/south, +/obj/effect/turf_decal/trimline/green/filled/corner, /turf/open/floor/iron, /area/station/hallway/primary/starboard) "vQP" = ( @@ -77474,12 +80907,15 @@ /obj/structure/extinguisher_cabinet/directional/south, /turf/open/floor/wood, /area/station/security/courtroom) +"vQQ" = ( +/turf/open/floor/plating, +/area/station/hallway/secondary/construction) "vQR" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/machinery/computer/gateway_control{ dir = 4 }, -/turf/open/floor/carpet, +/turf/open/floor/carpet/purple, /area/station/command/gateway) "vRb" = ( /obj/structure/sign/poster/official/tactical_game_cards/directional/west, @@ -77488,15 +80924,6 @@ /obj/structure/extinguisher_cabinet/directional/south, /turf/open/floor/iron/dark/textured_large, /area/station/cargo/bitrunning/den) -"vRc" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/siding/thinplating/dark{ - dir = 4 - }, -/turf/open/floor/wood/large, -/area/station/medical/psychology) "vRd" = ( /obj/effect/decal/cleanable/dirt, /obj/item/circuitboard/computer/operating, @@ -77509,45 +80936,17 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/engineering/storage_shared) -"vRi" = ( -/obj/machinery/door/airlock/maintenance, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "vRp" = ( /obj/effect/spawner/random/structure/closet_maintenance, /obj/item/clothing/mask/bandana/skull/black, /obj/structure/sign/poster/contraband/lizard/directional/west, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"vRt" = ( -/obj/machinery/computer/atmos_control/nitrous_tank, -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/effect/turf_decal/tile/red{ - dir = 4 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) -"vRz" = ( -/obj/machinery/light/small/directional/south, -/obj/structure/closet/firecloset, -/obj/effect/turf_decal/bot, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/engineering/main) +"vRy" = ( +/obj/structure/cable, +/obj/effect/spawner/random/trash/cigbutt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "vRD" = ( /obj/structure/table, /obj/item/toy/cards/deck/wizoff{ @@ -77556,12 +80955,6 @@ }, /turf/open/floor/iron, /area/station/science/breakroom) -"vRE" = ( -/obj/machinery/atmospherics/pipe/multiz/supply/visible/layer4, -/obj/machinery/atmospherics/pipe/multiz/scrubbers/visible/layer2, -/obj/effect/turf_decal/trimline/yellow/filled/line, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "vRF" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/railing{ @@ -77658,6 +81051,10 @@ }, /turf/open/floor/iron, /area/station/science/robotics) +"vSA" = ( +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "vSC" = ( /obj/machinery/atmospherics/components/unary/thermomachine/freezer/on{ name = "euthanization chamber freezer" @@ -77705,16 +81102,12 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/service/kitchen/abandoned) -"vSU" = ( -/obj/effect/decal/cleanable/glitter, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "vSW" = ( /obj/machinery/holopad/secure, /turf/open/floor/iron/dark/textured_corner{ dir = 8 }, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "vSX" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -77724,6 +81117,10 @@ /obj/structure/railing/corner, /turf/open/floor/iron, /area/station/science/robotics) +"vTh" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "vTm" = ( /obj/structure/disposalpipe/segment{ dir = 2 @@ -77734,15 +81131,6 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"vTq" = ( -/obj/effect/turf_decal/siding{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) "vTu" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 1 @@ -77750,25 +81138,24 @@ /obj/effect/turf_decal/siding/thinplating_new/dark, /turf/open/floor/iron/dark/smooth_large, /area/station/commons/lounge) -"vTv" = ( -/obj/effect/turf_decal/stripes/red/line{ - dir = 4 +"vTB" = ( +/obj/effect/turf_decal/siding/green{ + dir = 1 }, -/obj/effect/turf_decal/stripes/red/line{ - dir = 8 +/obj/effect/turf_decal/plaque{ + icon_state = "L13" }, -/obj/structure/sign/warning/radiation/rad_area/directional/north, -/turf/open/floor/engine, -/area/station/engineering/supermatter) +/turf/open/floor/iron/dark/smooth_large, +/area/station/hallway/primary/central) "vTE" = ( -/obj/machinery/light/small/directional/east, -/turf/open/floor/plating, -/area/station/maintenance/disposal) -"vTH" = ( -/obj/structure/mirror/directional/north, -/obj/structure/sink/directional/south, -/turf/open/floor/iron/freezer, -/area/station/commons/dorms) +/obj/machinery/door/airlock/mining{ + name = "Deliveries" + }, +/obj/effect/mapping_helpers/airlock/access/all/supply/shipping, +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/tile/brown/fourcorners, +/turf/open/floor/iron/dark/textured, +/area/station/cargo/sorting) "vTI" = ( /obj/structure/railing{ dir = 1 @@ -77777,25 +81164,15 @@ /obj/effect/turf_decal/tile/purple/fourcorners, /turf/open/floor/iron, /area/station/science/research) -"vTL" = ( -/obj/structure/rack, -/obj/effect/spawner/random/techstorage/rnd_all, -/obj/machinery/firealarm/directional/west, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 +"vTQ" = ( +/obj/structure/window/reinforced/plasma/spawner/directional/north, +/obj/machinery/power/energy_accumulator/tesla_coil/anchored, +/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ + dir = 9 }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) -"vTV" = ( /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/dark/corner, -/obj/effect/turf_decal/trimline/dark/corner, -/turf/open/floor/iron, -/area/station/hallway/secondary/exit/departure_lounge) +/turf/open/floor/engine, +/area/station/engineering/supermatter) "vUd" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -77806,6 +81183,11 @@ }, /turf/open/floor/wood, /area/station/service/library) +"vUf" = ( +/obj/structure/table/wood, +/obj/effect/decal/cleanable/blood/old, +/turf/open/floor/carpet, +/area/station/maintenance/starboard) "vUi" = ( /obj/structure/chair/pew/left{ dir = 8 @@ -77813,17 +81195,19 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/wood, /area/station/service/chapel) -"vUm" = ( -/obj/machinery/power/smes/engineering, -/obj/structure/cable, -/turf/open/floor/iron/dark/textured, -/area/station/engineering/engine_smes) -"vUw" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/heater{ +"vUx" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ dir = 4 }, -/turf/open/floor/glass/reinforced/plasma, -/area/station/engineering/atmos/project) +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) +"vUN" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "vUQ" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/table/wood, @@ -77847,35 +81231,33 @@ /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/science/lobby) -"vVb" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/machinery/firealarm/directional/west, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +"vVi" = ( +/obj/machinery/door/airlock/maintenance, /obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/storage_shared) -"vVp" = ( -/obj/structure/sign/poster/contraband/random/directional/west, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) -"vVv" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/closed/wall/r_wall, -/area/station/maintenance/disposal/incinerator) -"vVD" = ( -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 1 +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 }, -/obj/effect/turf_decal/trimline/green/filled/mid_joiner{ +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"vVp" = ( +/obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron/textured_large, -/area/station/medical/virology) +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) +"vVt" = ( +/obj/structure/chair/sofa/right/brown, +/obj/effect/spawner/random/maintenance, +/obj/structure/sign/poster/contraband/pwr_game/directional/north, +/turf/open/floor/eighties, +/area/station/maintenance/department/crew_quarters/dorms) +"vVH" = ( +/obj/structure/lattice, +/obj/structure/sign/warning/docking/directional/south, +/turf/open/space/basic, +/area/space/nearstation) "vVR" = ( /obj/structure/broken_flooring/pile/directional/north, /turf/open/floor/plating, @@ -77912,13 +81294,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/textured_large, /area/station/maintenance/port) -"vWt" = ( -/obj/machinery/computer/atmos_control/air_tank, -/obj/effect/turf_decal/tile/neutral/half{ - dir = 1 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "vWv" = ( /obj/effect/turf_decal/bot_white, /obj/effect/decal/cleanable/dirt, @@ -77960,11 +81335,16 @@ /turf/open/floor/iron/dark, /area/station/engineering/storage/tech) "vXt" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge, /area/station/hallway/primary/central) +"vXv" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/disposalpipe/segment, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron, +/area/station/science/breakroom) "vXz" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 5 @@ -77974,6 +81354,16 @@ /obj/machinery/mining_weather_monitor/directional/north, /turf/open/floor/iron/dark/textured, /area/station/construction/mining/aux_base) +"vXB" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment, +/turf/open/floor/iron/textured_large, +/area/station/medical/abandoned) +"vXC" = ( +/obj/machinery/newscaster/directional/east, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark/small, +/area/station/command/heads_quarters/ce) "vXQ" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 10 @@ -77983,21 +81373,12 @@ }, /turf/open/floor/iron, /area/station/science/lab) -"vXU" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ - dir = 6 - }, -/turf/open/floor/plating, -/area/station/maintenance/port) "vYe" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /obj/structure/disposalpipe/segment, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) "vYm" = ( /obj/effect/turf_decal/stripes/corner{ @@ -78005,6 +81386,12 @@ }, /turf/open/floor/engine, /area/station/engineering/supermatter/room) +"vYq" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing, +/obj/machinery/light/warm/directional/north, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) "vYs" = ( /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 1 @@ -78026,10 +81413,18 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"vYI" = ( -/obj/structure/reagent_dispensers/plumbed, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +"vYN" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/landmark/start/hangover, +/turf/open/floor/wood, +/area/station/commons/dorms) +"vYQ" = ( +/obj/structure/chair/office{ + dir = 1 + }, +/obj/machinery/duct, +/turf/open/floor/iron/large, +/area/station/engineering/lobby) "vYS" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, @@ -78048,16 +81443,19 @@ }, /turf/open/floor/iron, /area/station/science/breakroom) -"vYV" = ( -/obj/effect/spawner/random/trash/garbage{ - spawn_scatter_radius = 1 - }, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/aft) "vYX" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark/textured, /area/station/cargo/warehouse) +"vZa" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ + dir = 5 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "vZd" = ( /obj/effect/turf_decal/tile/dark_green/fourcorners, /obj/structure/railing/corner/end/flip{ @@ -78069,6 +81467,11 @@ "vZG" = ( /turf/open/openspace, /area/station/maintenance/department/medical) +"vZH" = ( +/obj/item/radio/headset, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "vZI" = ( /obj/effect/turf_decal/tile/dark_green{ dir = 4 @@ -78102,18 +81505,24 @@ /obj/machinery/light_switch/directional/east, /turf/open/floor/iron, /area/station/science/lab) -"wag" = ( -/obj/item/cigbutt{ - pixel_x = -11; - pixel_y = 14 +"wap" = ( +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/arrows/red{ + dir = 8 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"waq" = ( -/obj/machinery/newscaster/directional/north, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) +/obj/effect/turf_decal/arrows/red{ + dir = 4 + }, +/turf/open/floor/iron/dark/textured, +/area/station/cargo/storage) +"war" = ( +/obj/machinery/atmospherics/pipe/smart/simple/green/visible, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/cable, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "was" = ( /obj/effect/turf_decal/trimline/red/filled/corner, /obj/effect/turf_decal/trimline/red/warning{ @@ -78127,18 +81536,12 @@ "wau" = ( /obj/machinery/airalarm/directional/west, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"way" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/machinery/camera/autoname/directional/east, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/area/station/ai/satellite/interior) "waz" = ( /turf/closed/wall, /area/station/security/interrogation) "waA" = ( -/obj/machinery/computer/rdconsole, +/obj/machinery/computer/rdconsole/unlocked, /turf/open/floor/iron/dark, /area/station/science/lobby) "waH" = ( @@ -78152,7 +81555,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "waU" = ( /obj/effect/landmark/firealarm_sanity, /turf/open/floor/engine{ @@ -78186,18 +81589,21 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/turf_decal/arrows{ - dir = 1 - }, /obj/machinery/button/door/directional/south{ id = "gateshutter"; name = "Gateway Shutter Control"; pixel_x = -24; pixel_y = 0; - req_access = list("command") + req_access = list("command"); + dir = 8 }, /obj/machinery/light/directional/west, -/turf/open/floor/iron/dark, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/turf/open/floor/iron/dark/smooth_edge{ + dir = 8 + }, /area/station/command/gateway) "wbJ" = ( /obj/effect/turf_decal/siding/dark_blue/corner, @@ -78209,6 +81615,13 @@ /obj/structure/cursed_money, /turf/open/floor/plating, /area/station/maintenance/port) +"wbM" = ( +/obj/item/kirbyplants/random, +/obj/effect/turf_decal/trimline/yellow/filled/warning/corner{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "wbR" = ( /obj/structure/disposalpipe/trunk/multiz{ dir = 8 @@ -78248,14 +81661,6 @@ }, /turf/open/floor/wood/large, /area/station/hallway/primary/central) -"wcJ" = ( -/obj/machinery/atmospherics/components/binary/pump/off/general/visible{ - dir = 4; - name = "Atmos to Engine" - }, -/obj/effect/turf_decal/trimline/brown, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "wcN" = ( /obj/structure/lattice/catwalk, /turf/open/openspace, @@ -78264,15 +81669,6 @@ /obj/machinery/holopad, /turf/open/floor/wood, /area/station/hallway/primary/central) -"wcT" = ( -/obj/machinery/vending/cigarette, -/obj/machinery/camera/autoname/directional/west, -/turf/open/floor/iron/dark, -/area/station/commons/dorms) -"wcV" = ( -/obj/structure/lattice, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) "wcY" = ( /obj/structure/railing{ dir = 8 @@ -78288,8 +81684,8 @@ /area/station/science/research) "wdb" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/wood/tile, /area/station/maintenance/port/aft) "wdd" = ( @@ -78320,11 +81716,14 @@ /obj/effect/spawner/random/trash/botanical_waste, /turf/open/floor/plating, /area/station/service/kitchen/abandoned) -"wdu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) +"wdt" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron/edge{ + dir = 8 + }, +/area/station/hallway/primary/central) "wdw" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/cobweb, @@ -78344,23 +81743,22 @@ /turf/open/floor/iron/dark/textured_edge{ dir = 4 }, -/area/station/ai_monitored/turret_protected/ai) -"wdD" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/poster/contraband/communist_state/directional/east, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"wdJ" = ( -/obj/machinery/door/airlock/engineering, -/obj/effect/mapping_helpers/airlock/access/all/engineering/general, +/area/station/ai/satellite/chamber) +"wdB" = ( +/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/machinery/door/firedoor, -/turf/open/floor/iron, -/area/station/engineering/break_room) +/obj/effect/turf_decal/trimline/red/filled/line{ + dir = 1 + }, +/obj/effect/landmark/start/depsec/engineering, +/turf/open/floor/iron/dark, +/area/station/security/checkpoint/engineering) +"wdF" = ( +/obj/machinery/shower/directional/west, +/obj/effect/landmark/start/hangover, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet/restrooms) "wdQ" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/structure/chair{ @@ -78372,7 +81770,10 @@ /obj/effect/turf_decal/trimline/brown/filled/warning{ dir = 4 }, -/obj/effect/spawner/random/engineering/tracking_beacon, +/obj/machinery/holopad, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, /turf/open/floor/iron, /area/station/cargo/storage) "weg" = ( @@ -78402,6 +81803,12 @@ /obj/machinery/firealarm/directional/west, /turf/open/floor/iron/dark/smooth_large, /area/station/security/brig) +"wel" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/turf/open/floor/engine/hull, +/area/station/maintenance/starboard/aft/upper) "weo" = ( /obj/effect/spawner/random/trash/garbage, /obj/item/clothing/head/cone{ @@ -78429,11 +81836,20 @@ /obj/structure/cable, /obj/effect/turf_decal/tile/yellow/fourcorners, /obj/effect/mapping_helpers/airlock/access/all/engineering/aux_base, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/iron/dark, /area/station/construction/mining/aux_base) +"weC" = ( +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/disposalpipe/segment, +/obj/structure/lattice/catwalk, +/obj/machinery/light/small/directional/west, +/turf/open/openspace, +/area/station/engineering/lobby) "weF" = ( /obj/structure/disposalpipe/segment{ dir = 2 @@ -78452,20 +81868,13 @@ /obj/machinery/newscaster/directional/north, /turf/open/floor/iron/dark, /area/station/security/warden) -"weJ" = ( +"weM" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/spawner/structure/window/reinforced/tinted, /obj/structure/cable, /turf/open/floor/plating/airless, -/area/station/maintenance/starboard/aft) -"weK" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/area/station/maintenance/aft/upper) "weO" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /obj/effect/turf_decal/trimline/purple/filled/corner{ @@ -78479,7 +81888,10 @@ dir = 8; id = "cargounload" }, -/obj/structure/plasticflaps, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, /turf/open/floor/plating, /area/station/cargo/storage) "weX" = ( @@ -78492,23 +81904,6 @@ /obj/item/tank/internals/oxygen/yellow, /turf/open/floor/iron, /area/station/maintenance/port/aft) -"wfk" = ( -/obj/structure/window/reinforced/tinted/spawner/directional/south, -/obj/item/cigbutt, -/obj/structure/bed/maint, -/obj/effect/spawner/random/bedsheet, -/turf/open/floor/wood, -/area/station/commons/dorms) -"wfp" = ( -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, -/obj/machinery/atmospherics/components/binary/pump/on/layer5{ - name = "O2 to Airmix" - }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "wfq" = ( /obj/machinery/hydroponics/constructable, /obj/effect/turf_decal/bot, @@ -78518,17 +81913,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) -"wfz" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/sorting/mail{ - dir = 4 - }, -/obj/effect/mapping_helpers/mail_sorting/engineering/general, -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/engineering/lobby) "wfF" = ( /obj/structure/disposalpipe/junction/yjunction{ dir = 4 @@ -78547,10 +81931,16 @@ }, /area/station/tcommsat/server) "wfN" = ( -/obj/structure/cable, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/effect/turf_decal/tile/dark_blue/anticorner/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) +"wfO" = ( +/obj/structure/lattice, +/obj/structure/disposalpipe/segment, +/turf/open/openspace, +/area/station/maintenance/starboard/upper) "wfV" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -78596,6 +81986,13 @@ }, /turf/open/floor/engine/vacuum, /area/station/science/ordnance/burnchamber) +"wgq" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/effect/spawner/random/structure/steam_vent, +/turf/open/floor/plating, +/area/station/maintenance/aft/upper) "wgx" = ( /obj/machinery/light_switch/directional/east, /obj/effect/turf_decal/trimline/yellow/filled/line{ @@ -78606,11 +82003,22 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/chem_storage) -"wgD" = ( -/obj/structure/window/reinforced/plasma/spawner/directional/east, -/obj/machinery/holopad, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +"wgE" = ( +/obj/structure/sign/directions/engineering/directional/west{ + dir = 1; + pixel_y = 6; + pixel_x = 0 + }, +/obj/structure/sign/directions/supply/directional/west{ + dir = 1; + pixel_x = 0 + }, +/obj/structure/sign/directions/science/directional/west{ + pixel_y = -6; + pixel_x = 0 + }, +/turf/closed/wall/r_wall, +/area/station/science/xenobiology) "wgM" = ( /obj/structure/statue/sandstone/venus{ dir = 1 @@ -78634,16 +82042,17 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/aft) -"wgU" = ( -/obj/structure/rack, -/obj/item/storage/belt/utility, -/obj/item/airlock_painter, -/obj/item/storage/belt/utility, -/obj/item/clothing/gloves/color/fyellow, -/obj/item/clothing/gloves/color/fyellow, -/obj/machinery/light/directional/north, -/turf/open/floor/iron, -/area/station/commons/storage/primary) +"wgZ" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/light/small/directional/north, +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/office) "wha" = ( /obj/structure/cable, /obj/machinery/fax{ @@ -78665,6 +82074,12 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/port) +"whn" = ( +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "whs" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -78686,7 +82101,18 @@ "whw" = ( /obj/machinery/teleport/hub, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) +"whG" = ( +/obj/effect/spawner/random/structure/tank_holder, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central) +"whH" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/photocopier/prebuilt, +/turf/open/floor/wood/large, +/area/station/engineering/lobby) "whJ" = ( /obj/structure/sign/departments/science/alt/directional/south, /obj/effect/turf_decal/tile/green/full, @@ -78731,10 +82157,6 @@ /obj/structure/sign/departments/genetics/directional/east, /turf/open/floor/iron/stairs/medium, /area/station/science/cytology) -"wid" = ( -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "wie" = ( /obj/structure/chair{ dir = 4 @@ -78742,6 +82164,10 @@ /obj/structure/reagent_dispensers/wall/peppertank/directional/south, /turf/open/floor/iron/dark/smooth_large, /area/station/security/courtroom) +"wij" = ( +/obj/effect/spawner/random/structure/crate, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "wik" = ( /obj/machinery/camera/autoname/directional/west, /obj/effect/turf_decal/siding/thinplating_new/dark/end{ @@ -78749,6 +82175,20 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/commons/lounge) +"wim" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) +"win" = ( +/obj/machinery/plumbing/input, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured, +/area/station/maintenance/starboard) "wiq" = ( /obj/structure/railing, /obj/effect/decal/cleanable/dirt, @@ -78756,6 +82196,20 @@ /obj/machinery/airalarm/directional/north, /turf/open/openspace, /area/station/maintenance/department/medical) +"wir" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/turf/open/floor/plating, +/area/station/maintenance/port) +"wit" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing/corner{ + dir = 8 + }, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "wiv" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/effect/turf_decal/box, @@ -78775,11 +82229,6 @@ /obj/effect/mapping_helpers/airlock/access/all/medical/virology, /turf/open/floor/iron/dark/textured_large, /area/station/medical/virology) -"wiA" = ( -/obj/item/kirbyplants/random, -/obj/machinery/light_switch/directional/east, -/turf/open/floor/iron, -/area/station/engineering/gravity_generator) "wiF" = ( /obj/effect/spawner/random/structure/crate_abandoned, /obj/effect/spawner/random/maintenance, @@ -78789,36 +82238,15 @@ "wiK" = ( /turf/open/floor/carpet/black, /area/station/service/library/private) -"wiO" = ( -/obj/machinery/door/airlock/maintenance{ - name = "CE's Maintenance Access" - }, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, -/turf/open/floor/plating, -/area/station/engineering/lobby) -"wiZ" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing, -/obj/effect/landmark/start/hangover, -/turf/open/openspace, -/area/station/commons/dorms) "wji" = ( /obj/structure/chair/stool/bar/directional/west, /obj/effect/landmark/start/assistant, /turf/open/floor/carpet/orange, /area/station/commons/lounge) -"wju" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/obj/item/mop, -/obj/item/grenade/chem_grenade/cleaner, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "wjv" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -78827,39 +82255,32 @@ /obj/effect/spawner/structure/window/reinforced/tinted, /turf/open/floor/plating, /area/station/service/kitchen/abandoned) +"wjx" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/sign/flag/terragov/directional/south, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) +"wjG" = ( +/obj/machinery/vending/wardrobe/atmos_wardrobe, +/obj/item/radio/intercom/directional/south, +/turf/open/floor/glass/plasma, +/area/station/engineering/atmos/upper) "wjH" = ( /obj/structure/stairs/west, /obj/structure/railing{ dir = 1 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"wjO" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper/stack{ - dir = 8 - }, -/obj/structure/filingcabinet, -/obj/effect/spawner/random/bureaucracy/paper, -/obj/effect/spawner/random/bureaucracy/paper, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) +/area/station/ai/satellite/interior) "wjP" = ( /obj/structure/lattice/catwalk, /obj/item/stack/cable_coil, /turf/open/space/basic, /area/station/solars/starboard/fore) -"wjT" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing, -/obj/structure/railing{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/openspace, -/area/station/engineering/lobby) "wjV" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/structure/closet_maintenance, @@ -78885,6 +82306,30 @@ }, /turf/open/floor/iron, /area/station/engineering/lobby) +"wkb" = ( +/obj/structure/cable, +/turf/closed/wall/r_wall, +/area/station/command/bridge) +"wkf" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 8 + }, +/obj/structure/table, +/obj/item/mod/module/thermal_regulator, +/obj/item/mod/module/plasma_stabilizer, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/engine_smes) +"wkh" = ( +/obj/item/radio/intercom/directional/north, +/obj/machinery/shieldgen, +/obj/effect/turf_decal/bot_white, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) +"wkn" = ( +/obj/structure/railing, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "wko" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -78897,9 +82342,6 @@ "wkt" = ( /obj/machinery/shower/directional/east, /obj/structure/curtain, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, /obj/item/soap, /turf/open/floor/iron/freezer, /area/station/command/heads_quarters/captain/private) @@ -78908,24 +82350,39 @@ /obj/effect/spawner/random/engineering/canister, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) +"wkF" = ( +/obj/machinery/camera/autoname/directional/east, +/obj/structure/cable, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos/upper) "wkH" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/service/kitchen/abandoned) -"wkP" = ( -/obj/effect/turf_decal/siding{ - dir = 1 - }, +"wkW" = ( /obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/maintenance, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard) +"wkX" = ( +/obj/machinery/atmospherics/components/binary/pump/off{ + dir = 1; + name = "Mix to Chamber" + }, +/obj/effect/turf_decal/trimline/purple, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "wlc" = ( /obj/effect/turf_decal/trimline/dark_green/filled/line{ dir = 8 @@ -78945,11 +82402,25 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/pharmacy) -"wlF" = ( +"wlx" = ( +/obj/structure/rack, +/obj/effect/spawner/random/maintenance, +/obj/item/storage/toolbox/fishing, +/obj/item/storage/box/lights/mixed{ + pixel_x = -8; + pixel_y = 1 + }, /obj/structure/lattice/catwalk, -/obj/effect/spawner/random/maintenance/two, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) +/obj/structure/railing{ + dir = 4 + }, +/turf/open/water/no_planet_atmos, +/area/station/maintenance/port/fore) +"wlI" = ( +/obj/structure/lattice/catwalk, +/obj/effect/spawner/random/engineering/tank, +/turf/open/water/no_planet_atmos, +/area/station/maintenance/port/fore) "wlL" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -78966,13 +82437,13 @@ /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) "wlY" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 8 - }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/stripes{ + dir = 8 + }, +/turf/open/floor/iron/textured, +/area/station/command/eva) "wma" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -78982,6 +82453,13 @@ }, /turf/open/floor/iron/dark, /area/station/engineering/storage/tcomms) +"wmg" = ( +/obj/effect/turf_decal/trimline/brown/arrow_cw{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/brown/arrow_ccw, +/turf/open/floor/iron, +/area/station/cargo/sorting) "wmm" = ( /obj/structure/railing{ dir = 4 @@ -78992,40 +82470,30 @@ /obj/effect/turf_decal/trimline/green/filled/mid_joiner{ dir = 4 }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 4 + }, /area/station/hallway/primary/central) -"wmn" = ( -/obj/effect/turf_decal/siding/brown, -/obj/structure/chair/sofa/corp/right{ +"wmt" = ( +/obj/item/radio/intercom/directional/north, +/obj/effect/turf_decal/stripes, +/obj/effect/turf_decal/stripes{ dir = 1 }, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) -"wmt" = ( -/obj/structure/closet/secure_closet/quartermaster, -/obj/item/clothing/head/fedora/white, -/obj/machinery/airalarm/directional/south, -/turf/open/floor/wood/parquet, -/area/station/command/heads_quarters/qm) +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "wmw" = ( /obj/structure/bookcase/random/reference, /obj/machinery/firealarm/directional/south, /turf/open/floor/iron, /area/station/science/zoo) -"wmx" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron/cafeteria, -/area/station/maintenance/starboard/lesser) "wmy" = ( /obj/machinery/pdapainter{ pixel_y = 2 }, /obj/structure/railing, -/obj/machinery/newscaster/directional/east, -/turf/open/floor/wood, +/obj/machinery/airalarm/directional/east, +/turf/open/floor/wood/tile, /area/station/command/heads_quarters/hop) "wmC" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -79042,13 +82510,24 @@ dir = 1 }, /turf/open/floor/iron/checker, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "wmR" = ( /obj/structure/disposalpipe/segment{ dir = 4 }, /turf/open/floor/iron/dark, /area/station/science/lobby) +"wmS" = ( +/obj/machinery/camera/autoname/directional/north, +/obj/structure/cable, +/obj/machinery/power/apc/auto_name/directional/north, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) +"wmX" = ( +/obj/structure/lattice/catwalk, +/obj/structure/ladder, +/turf/open/openspace, +/area/station/maintenance/aft/upper) "wmZ" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/structure/tank_holder, @@ -79067,6 +82546,13 @@ }, /turf/open/floor/plating, /area/station/construction/mining/aux_base) +"wnm" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 6 + }, +/obj/machinery/suit_storage_unit/engine, +/turf/open/floor/iron/dark, +/area/station/engineering/engine_smes) "wny" = ( /obj/effect/turf_decal/siding/wood/corner, /obj/effect/turf_decal/siding/thinplating_new/dark{ @@ -79078,7 +82564,7 @@ /obj/effect/turf_decal/siding/thinplating_new/dark, /obj/machinery/status_display/evac/directional/north, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "wnD" = ( /obj/effect/spawner/random/structure/closet_maintenance, /obj/effect/spawner/random/maintenance/three, @@ -79123,19 +82609,13 @@ }, /turf/open/floor/wood/large, /area/station/hallway/primary/central) -"woh" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/obj/structure/sign/poster/official/work_for_a_future/directional/west, -/obj/machinery/camera/autoname/directional/west, -/turf/open/floor/carpet/black, -/area/station/service/library/private) "wom" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/closet/crate/internals, /obj/effect/spawner/random/maintenance, /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, -/obj/effect/turf_decal/delivery, +/obj/effect/turf_decal/bot, /turf/open/floor/iron/dark/textured, /area/station/cargo/warehouse) "wot" = ( @@ -79150,6 +82630,12 @@ /obj/structure/sign/poster/contraband/free_drone/directional/north, /turf/open/openspace, /area/station/maintenance/port/fore) +"woy" = ( +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5{ + dir = 5 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "woA" = ( /obj/structure/ladder, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -79157,32 +82643,16 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark/textured, /area/station/science/xenobiology) -"woG" = ( -/obj/structure/window/reinforced/plasma/spawner/directional/east, -/obj/item/storage/box/lights/mixed{ - pixel_x = 8; - pixel_y = 8 - }, -/obj/item/electronics/airlock, -/obj/item/electronics/airlock{ - pixel_x = -6; - pixel_y = -4 - }, -/obj/item/stock_parts/power_store/cell/emproof{ - pixel_x = -4; - pixel_y = 6 - }, -/obj/item/stock_parts/power_store/cell/emproof{ - pixel_x = -4; - pixel_y = 6 +"woN" = ( +/obj/machinery/atmospherics/components/unary/passive_vent{ + dir = 1 }, -/obj/item/stock_parts/power_store/cell/emproof{ - pixel_x = -4; - pixel_y = 6 +/obj/effect/turf_decal/stripes/line{ + dir = 4 }, -/obj/structure/table/reinforced, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +/obj/structure/sign/warning/gas_mask/directional/west, +/turf/open/floor/plating/airless, +/area/space/nearstation) "woT" = ( /obj/structure/extinguisher_cabinet/directional/south, /obj/item/kirbyplants/random, @@ -79196,15 +82666,23 @@ /turf/open/floor/plating, /area/station/service/kitchen/abandoned) "woX" = ( -/obj/structure/closet/firecloset, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) -"wpd" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/structure/closet/firecloset/full, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) +/obj/machinery/conveyor{ + dir = 4; + id = "packageSort2" + }, +/obj/machinery/door/window/left/directional/south{ + req_access = list("shipping"); + name = "Chute Access" + }, +/turf/open/floor/iron/dark/textured, +/area/station/cargo/sorting) +"wpg" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/item/radio/intercom/directional/east, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "wps" = ( /turf/open/floor/engine, /area/station/science/xenobiology) @@ -79221,16 +82699,39 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/brig) +"wpK" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/obj/machinery/light/directional/west, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) +"wpL" = ( +/obj/structure/reagent_dispensers/fueltank, +/turf/open/floor/plating, +/area/station/maintenance/starboard) +"wpM" = ( +/obj/machinery/computer/station_alert{ + dir = 1 + }, +/obj/effect/turf_decal/siding/yellow{ + dir = 5 + }, +/turf/open/floor/engine, +/area/station/command/heads_quarters/ce) "wpW" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light/red/dim/directional/north, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) -"wqb" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/engine, -/area/station/maintenance/starboard/lesser) +"wqe" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/closed/wall, +/area/station/maintenance/starboard) "wqi" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 10 @@ -79255,18 +82756,12 @@ /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) "wqB" = ( -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/obj/structure/sign/directions/command/directional/north{ - dir = 2 - }, -/obj/structure/sign/directions/security/directional/north{ +/obj/structure/sign/directions/medical/directional/east{ dir = 2; - pixel_y = 38 + pixel_x = 0 }, -/turf/open/floor/plating, -/area/station/maintenance/port/greater) +/turf/closed/wall, +/area/station/commons/vacant_room/office) "wqI" = ( /obj/item/cigarette/cigar{ pixel_x = 4 @@ -79277,26 +82772,38 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/commons/lounge) "wqN" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 5 +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/conveyor{ + dir = 4; + id = "cargoload" }, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/cargo/storage) +"wqU" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/machinery/airalarm/directional/south, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "wqZ" = ( /obj/machinery/door/airlock{ name = "Prison Showers" }, /turf/open/floor/iron/freezer, /area/station/security/prison/shower) -"wre" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ +"wrb" = ( +/obj/structure/closet/emcloset/anchored, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) +"wrd" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 1 }, -/turf/open/openspace, -/area/station/engineering/break_room) +/turf/open/floor/iron/dark, +/area/station/engineering/storage) "wrf" = ( /obj/machinery/atmospherics/pipe/multiz/yellow/visible{ dir = 8 @@ -79306,45 +82813,35 @@ dir = 1 }, /area/station/science/ordnance/storage) -"wrt" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +"wrn" = ( +/obj/structure/extinguisher_cabinet/directional/south, +/obj/structure/closet/secure_closet/medical3, +/obj/effect/turf_decal/bot_white{ + color = "#52B4E9" + }, +/turf/open/floor/iron/dark/textured_large, +/area/station/medical/storage) "wrE" = ( /turf/open/floor/glass, /area/station/hallway/secondary/entry) "wrI" = ( /obj/machinery/light/directional/north, -/obj/structure/sign/directions/vault/directional/north{ - pixel_y = 30 - }, -/obj/structure/sign/directions/evac/directional/north{ - pixel_y = 36 +/turf/open/floor/iron/edge{ + dir = 1 }, -/turf/open/floor/iron/large, /area/station/hallway/primary/central) -"wrM" = ( -/obj/machinery/camera/autoname/directional/north, -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 4 - }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "wrQ" = ( /turf/open/floor/iron/smooth, /area/station/engineering/main) -"wsc" = ( -/obj/effect/spawner/random/trash/garbage, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +"wrT" = ( +/turf/closed/wall, +/area/station/maintenance/starboard/upper) "wsm" = ( /obj/structure/lattice/catwalk, /obj/machinery/light/directional/east, /obj/item/wrench, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "wsn" = ( /obj/structure/lattice/catwalk, /obj/structure/sign/poster/contraband/random/directional/west, @@ -79367,11 +82864,17 @@ }, /turf/open/floor/iron, /area/station/service/cafeteria) -"wsR" = ( -/obj/structure/table, -/obj/item/wrench, -/turf/open/floor/wood, -/area/station/commons/dorms) +"wsP" = ( +/obj/structure/disposalpipe/segment, +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 1 + }, +/obj/machinery/duct, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/engineering/lobby) "wsU" = ( /obj/structure/railing{ dir = 10 @@ -79382,10 +82885,6 @@ /obj/structure/table/reinforced, /turf/open/floor/engine/hull, /area/space/nearstation) -"wtd" = ( -/obj/effect/mapping_helpers/burnt_floor, -/turf/open/floor/iron/stairs/medium, -/area/station/maintenance/disposal/incinerator) "wti" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/window/spawner/directional/north, @@ -79406,14 +82905,7 @@ dir = 8 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"wtn" = ( -/obj/structure/railing{ - dir = 8 - }, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/ai/satellite/interior) "wts" = ( /obj/structure/railing/corner{ dir = 4 @@ -79426,8 +82918,9 @@ /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) "wtz" = ( -/obj/effect/landmark/event_spawn, -/turf/open/floor/carpet, +/obj/structure/cable, +/obj/effect/turf_decal/siding/wood, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) "wtB" = ( /obj/structure/window/reinforced/spawner/directional/south, @@ -79439,6 +82932,16 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/solars/starboard/aft) +"wtD" = ( +/obj/machinery/door/airlock/maintenance, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 1 + }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, +/turf/open/floor/plating, +/area/station/security/detectives_office/private_investigators_office) "wtI" = ( /obj/structure/table, /obj/item/pipe_dispenser, @@ -79464,6 +82967,13 @@ }, /turf/open/floor/iron, /area/station/cargo/storage) +"wtN" = ( +/obj/machinery/computer/slot_machine{ + pixel_y = 2 + }, +/obj/effect/decal/cleanable/vomit/old, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "wtO" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -79472,13 +82982,6 @@ /obj/structure/window/reinforced/spawner/directional/north, /turf/open/space/openspace, /area/space/nearstation) -"wul" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/spawner/random/structure/steam_vent, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "wuo" = ( /obj/structure/table/wood, /obj/machinery/light_switch/directional/north, @@ -79518,15 +83021,16 @@ /turf/open/floor/glass/reinforced, /area/station/solars/starboard/fore) "wuz" = ( -/obj/structure/railing{ +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/effect/turf_decal/trimline/brown/filled/warning{ dir = 8 }, -/obj/effect/turf_decal/trimline/brown/filled/line{ +/obj/effect/turf_decal/trimline/brown/filled/corner, +/obj/machinery/door/firedoor/border_only{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, /turf/open/floor/iron, /area/station/cargo/storage) "wuG" = ( @@ -79548,34 +83052,16 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden, /turf/closed/wall/r_wall, /area/station/science/ordnance/burnchamber) -"wuX" = ( -/obj/item/kirbyplants/random, -/obj/effect/turf_decal/trimline/yellow/filled/warning/corner{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) -"wuZ" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/disposalpipe/segment, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 1 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"wuV" = ( +/obj/machinery/vending/cigarette, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/white, +/area/station/maintenance/starboard) "wvc" = ( /obj/structure/table/wood/poker, /obj/item/storage/dice, /turf/open/floor/carpet/stellar, /area/station/service/library) -"wve" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/smooth, -/area/station/engineering/hallway) "wvi" = ( /obj/effect/turf_decal/tile/dark_green{ dir = 4 @@ -79602,21 +83088,12 @@ /turf/open/floor/iron/checker, /area/station/service/bar) "wvw" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "cargounload" - }, -/obj/structure/closet/crate{ - icon_state = "crateopen" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/railing{ - dir = 1 +/obj/effect/turf_decal/siding/wood{ + dir = 4 }, -/obj/structure/railing, -/turf/open/floor/iron, -/area/station/cargo/storage) +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) "wvx" = ( /obj/structure/cable, /turf/open/floor/iron/stairs, @@ -79650,21 +83127,50 @@ }, /turf/open/openspace, /area/station/commons/fitness/recreation) +"wvM" = ( +/obj/machinery/holopad, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/landmark/event_spawn, +/turf/open/floor/wood, +/area/station/service/library/printer) +"wvR" = ( +/obj/machinery/power/turbine/core_rotor{ + dir = 8; + mapping_id = "main_turbine" + }, +/obj/structure/cable, +/obj/machinery/light/small/directional/north, +/turf/open/floor/engine, +/area/station/engineering/atmos/upper) +"wwd" = ( +/obj/structure/railing{ + dir = 6 + }, +/obj/effect/turf_decal/siding/thinplating{ + dir = 6 + }, +/turf/open/floor/grass, +/area/station/hallway/primary/starboard) "wwf" = ( -/obj/machinery/computer/communications, /obj/effect/turf_decal/siding/blue{ dir = 1 }, /obj/structure/railing{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet, -/area/station/command/bridge) -"wwj" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark/textured_large, -/area/station/medical/virology) +/obj/machinery/holopad, +/obj/effect/turf_decal/trimline/dark_blue/filled/line, +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "wwl" = ( /obj/structure/railing/corner{ dir = 8 @@ -79684,10 +83190,24 @@ /obj/item/radio/intercom/directional/north, /turf/open/floor/wood, /area/station/security/detectives_office) -"www" = ( -/obj/effect/spawner/random/structure/crate, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/lesser) +"wwn" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper/stack{ + dir = 1 + }, +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/turf/open/floor/wood, +/area/station/maintenance/aft) +"wwt" = ( +/obj/effect/turf_decal/siding/dark{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "wwx" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -79728,7 +83248,7 @@ }, /obj/structure/table/reinforced, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "wwG" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table/optable, @@ -79770,14 +83290,31 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/maintenance/department/medical) -"wxq" = ( -/obj/effect/landmark/event_spawn, -/turf/closed/wall/r_wall, -/area/station/command/heads_quarters/hop) "wxx" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/commons/vacant_room/office) +"wxy" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/obj/item/book/manual/wiki/engineering_construction{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/item/book/manual/wiki/engineering_hacking{ + pixel_x = 2; + pixel_y = 3 + }, +/obj/item/book/manual/wiki/engineering_guide{ + pixel_x = -2 + }, +/obj/structure/rack, +/turf/open/floor/iron, +/area/station/engineering/lobby) "wxE" = ( /obj/machinery/light/floor, /turf/open/floor/iron/dark/textured_half, @@ -79797,18 +83334,16 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark, /area/station/security/brig) -"wyc" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/lattice/catwalk, -/obj/structure/holosign/barrier/engineering, -/turf/open/openspace, -/area/station/engineering/atmos/project) "wyj" = ( /obj/item/cigbutt, /turf/open/floor/engine/hull, /area/space/nearstation) +"wyl" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/filingcabinet, +/obj/effect/spawner/random/bureaucracy/paper, +/turf/open/floor/iron/dark/textured_large, +/area/station/maintenance/aft/upper) "wyq" = ( /obj/structure/table/reinforced, /obj/effect/decal/cleanable/dirt, @@ -79821,6 +83356,13 @@ }, /turf/open/floor/iron, /area/station/maintenance/starboard/aft) +"wyv" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/dark, +/area/station/commons/vacant_room/commissary) "wyx" = ( /obj/effect/turf_decal/tile/neutral/opposingcorners{ dir = 1 @@ -79840,10 +83382,27 @@ }, /turf/open/floor/iron/dark, /area/station/medical/chemistry) -"wyF" = ( -/obj/structure/flora/tree/palm/style_random, -/turf/open/floor/iron/vaporwave, -/area/station/maintenance/starboard/lesser) +"wyA" = ( +/obj/structure/table, +/obj/item/flashlight/lamp{ + pixel_y = 10 + }, +/obj/item/folder/yellow{ + pixel_x = 4 + }, +/obj/machinery/duct, +/turf/open/floor/iron/large, +/area/station/engineering/lobby) +"wyV" = ( +/obj/machinery/light/small/directional/east, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/gravity_generator) +"wzi" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "wzj" = ( /turf/closed/wall/r_wall, /area/station/tcommsat/server) @@ -79870,24 +83429,6 @@ dir = 1 }, /area/station/hallway/secondary/entry) -"wzB" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/turf/open/floor/iron, -/area/station/engineering/main) -"wzD" = ( -/obj/machinery/door/airlock/atmos/glass{ - name = "Atmospherics" - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/smart/simple/orange/visible, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) -"wzM" = ( -/obj/machinery/recharge_station, -/turf/open/floor/wood, -/area/station/commons/toilet/restrooms) "wzO" = ( /obj/effect/turf_decal/siding/wood{ dir = 5 @@ -79897,11 +83438,13 @@ /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) "wzS" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/carpet, -/area/station/command/meeting_room/council) +/obj/structure/table/reinforced/rglass, +/obj/machinery/keycard_auth{ + pixel_y = 3 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "wzT" = ( /obj/structure/cable, /obj/machinery/power/apc/auto_name/directional/east, @@ -79933,7 +83476,7 @@ /turf/open/floor/circuit/green{ luminosity = 2 }, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "wAx" = ( /obj/structure/disposalpipe/segment{ dir = 10 @@ -79948,15 +83491,6 @@ /obj/effect/mapping_helpers/airlock/access/all/service/kitchen, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) -"wAO" = ( -/obj/effect/decal/cleanable/cobweb, -/obj/item/storage/toolbox/mechanical/old, -/obj/item/sticker/syndicate{ - pixel_x = 10; - pixel_y = 10 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) "wAQ" = ( /obj/machinery/door/airlock/public/glass{ name = "Circle Center" @@ -79983,11 +83517,10 @@ /obj/effect/turf_decal/siding/red/corner, /turf/open/floor/engine, /area/station/engineering/supermatter) -"wAW" = ( -/obj/structure/table, -/obj/effect/spawner/random/food_or_drink/condiment, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/lesser) +"wAV" = ( +/obj/effect/spawner/random/trash/moisture_trap, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "wAZ" = ( /obj/machinery/light/directional/west, /obj/structure/cable, @@ -79997,6 +83530,11 @@ /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plating, /area/station/maintenance/port/greater) +"wBd" = ( +/obj/structure/lattice, +/obj/machinery/camera/autoname/directional/west, +/turf/open/openspace, +/area/station/commons/dorms) "wBu" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -80006,18 +83544,14 @@ /obj/structure/railing{ dir = 4 }, -/obj/effect/turf_decal/siding/red{ - dir = 4 - }, -/obj/structure/table, -/obj/item/book/manual/wiki/security_space_law{ - pixel_x = -1; - pixel_y = 6 - }, -/obj/effect/turf_decal/tile/red/opposingcorners{ +/obj/structure/chair/plastic{ dir = 1 }, -/turf/open/floor/iron/dark, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/effect/landmark/start/hangover, +/turf/open/floor/wood/large, /area/station/hallway/primary/central) "wBJ" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ @@ -80025,11 +83559,6 @@ }, /turf/open/floor/iron/dark, /area/station/security/medical) -"wBK" = ( -/obj/machinery/duct, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark/textured, -/area/station/maintenance/starboard/lesser) "wBO" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -80051,6 +83580,24 @@ /obj/item/radio/intercom/directional/north, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) +"wBT" = ( +/obj/structure/table, +/obj/item/paper_bin{ + pixel_x = 2; + pixel_y = 7 + }, +/obj/machinery/light/small/directional/west, +/turf/open/floor/wood/large, +/area/station/commons/dorms) +"wBY" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/duct, +/obj/effect/turf_decal/siding/wood{ + dir = 8 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) "wCa" = ( /obj/effect/turf_decal/arrows/white{ color = "#F7F707"; @@ -80061,27 +83608,6 @@ }, /turf/open/floor/engine/hull, /area/space/nearstation) -"wCj" = ( -/obj/effect/mapping_helpers/broken_floor, -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/fluff/paper/corner{ - dir = 4 - }, -/obj/structure/fluff/paper/stack, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"wCn" = ( -/obj/structure/lattice/catwalk, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/structure/table/glass, -/obj/item/storage/box{ - pixel_x = 2; - pixel_y = 4 - }, -/turf/open/openspace, -/area/station/engineering/break_room) "wCv" = ( /obj/structure/table, /obj/item/storage/box{ @@ -80098,47 +83624,34 @@ /turf/open/openspace, /area/station/hallway/secondary/exit/departure_lounge) "wCP" = ( -/obj/effect/turf_decal/siding/white{ - dir = 6 +/obj/effect/turf_decal/siding/blue{ + dir = 8 + }, +/obj/machinery/flasher/directional/east{ + id = "hopflash" + }, +/obj/effect/turf_decal/arrows{ + dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "wCZ" = ( /obj/machinery/computer/security/telescreen/entertainment/directional/south, /turf/open/floor/carpet/executive, -/area/station/ai_monitored/turret_protected/aisat_interior) -"wDf" = ( -/obj/effect/landmark/start/hangover, -/obj/machinery/light/directional/south, -/turf/open/floor/wood, -/area/station/commons/fitness/recreation) -"wDh" = ( -/obj/machinery/camera/autoname/directional/east, -/obj/structure/lattice/catwalk, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/openspace, -/area/station/engineering/atmos/project) +/area/station/ai/satellite/interior) +"wDp" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/heater{ + dir = 8 + }, +/obj/effect/turf_decal/bot_red, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "wDs" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /obj/structure/rack, /obj/item/clothing/gloves/latex, /turf/open/floor/iron/dark, /area/station/science/lobby) -"wDt" = ( -/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ - dir = 1 - }, -/obj/machinery/meter, -/obj/effect/turf_decal/stripes/red/line{ - dir = 4 - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "wDu" = ( /obj/machinery/light/directional/north, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -80152,19 +83665,27 @@ }, /turf/open/floor/wood/large, /area/station/medical/psychology) -"wDQ" = ( -/obj/structure/chair/office{ - dir = 8 +"wDz" = ( +/obj/effect/spawner/random/maintenance, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/aft/upper) +"wDK" = ( +/obj/structure/cable, +/obj/effect/turf_decal/stripes/line{ + dir = 4 }, -/turf/open/floor/wood, -/area/station/commons/dorms) -"wDS" = ( -/obj/effect/mapping_helpers/burnt_floor, -/obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ - dir = 8 +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ + dir = 1 }, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) +"wDX" = ( +/obj/structure/bed, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/white, +/area/station/maintenance/starboard) "wDY" = ( /obj/effect/mapping_helpers/airlock/access/all/engineering/general, /obj/machinery/door/airlock/public/glass{ @@ -80187,13 +83708,19 @@ /obj/machinery/telecomms/processor/preset_four, /turf/open/floor/iron/dark/telecomms, /area/station/tcommsat/server) -"wEn" = ( -/obj/machinery/door/airlock{ - id_tag = "Cabin2"; - name = "Decomissioned Cabin" +"wEg" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fluff/paper/corner, +/obj/structure/fluff/paper/stack, +/obj/effect/spawner/random/bureaucracy/paper, +/obj/structure/fluff/paper/stack{ + desc = "A stack of various papers, absolutely unreadable due to scorch marks and aging."; + dir = 1 }, /turf/open/floor/plating, -/area/station/commons/dorms) +/area/station/maintenance/aft) "wEt" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/structure/crate_loot, @@ -80207,6 +83734,11 @@ /obj/structure/lattice/catwalk, /turf/open/openspace, /area/station/security/checkpoint/science) +"wEK" = ( +/obj/machinery/duct, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "wEN" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -80225,6 +83757,19 @@ dir = 1 }, /area/station/medical/surgery) +"wES" = ( +/obj/effect/spawner/random/decoration/showcase, +/turf/open/floor/plating, +/area/station/maintenance/port) +"wEU" = ( +/obj/machinery/computer/holodeck{ + dir = 4 + }, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/commons/fitness/recreation) "wEX" = ( /obj/structure/sign/poster/contraband/hacking_guide/directional/east, /turf/open/floor/plating, @@ -80248,12 +83793,19 @@ /obj/effect/spawner/random/maintenance/two, /turf/open/floor/iron, /area/station/service/kitchen/abandoned) -"wFj" = ( -/obj/structure/closet/secure_closet/personal/cabinet, -/obj/item/reagent_containers/cup/soda_cans/pwr_game, -/obj/item/radio/intercom/directional/north, +"wFi" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/table/wood, +/obj/effect/spawner/random/bureaucracy/paper, +/obj/item/pen/red{ + pixel_x = -5; + pixel_y = 5 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, /turf/open/floor/wood, -/area/station/commons/dorms) +/area/station/maintenance/aft) "wFk" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -80318,19 +83870,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/carpet, /area/station/security/courtroom) -"wGi" = ( -/obj/effect/decal/cleanable/crayon{ - icon_state = "body"; - name = "body"; - pixel_x = 9; - pixel_y = 3 - }, -/obj/item/ammo_casing/spent{ - pixel_x = -6; - pixel_y = 6 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "wGD" = ( /obj/effect/turf_decal/trimline/purple/arrow_cw{ dir = 8 @@ -80345,7 +83884,7 @@ dir = 1 }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "wGN" = ( /obj/machinery/light/warm/dim/directional/south, /obj/item/kirbyplants/potty, @@ -80355,6 +83894,10 @@ /obj/machinery/airalarm/directional/west, /turf/open/floor/iron/dark/smooth_large, /area/station/commons/lounge) +"wGP" = ( +/obj/structure/cable, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "wGS" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -80391,6 +83934,21 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/hallway/primary/starboard) +"wHw" = ( +/obj/machinery/door/airlock/mining{ + name = "Deliveries" + }, +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/brown/fourcorners, +/obj/structure/disposalpipe/segment, +/obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/any/supply/shipping, +/obj/effect/mapping_helpers/airlock/access/any/supply/mining, +/obj/effect/mapping_helpers/airlock/access/any/supply/bit_den, +/turf/open/floor/iron, +/area/station/cargo/sorting) "wHx" = ( /obj/machinery/camera/directional/east, /turf/open/openspace, @@ -80401,6 +83959,23 @@ }, /turf/open/floor/iron/dark/textured, /area/station/construction/mining/aux_base) +"wHz" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/lattice/catwalk, +/turf/open/water/no_planet_atmos, +/area/station/maintenance/port/fore) +"wHB" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/cable, +/obj/machinery/power/terminal{ + dir = 1 + }, +/turf/open/floor/catwalk_floor, +/area/station/engineering/engine_smes) "wHE" = ( /obj/effect/turf_decal/siding/dark{ dir = 10 @@ -80409,7 +83984,7 @@ dir = 4 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "wHK" = ( /turf/open/floor/engine/hull/reinforced/air, /area/station/maintenance/port) @@ -80431,26 +84006,32 @@ "wIf" = ( /obj/machinery/button/door/directional/east{ id = "qm_cargobay"; - name = "Cargo Bay Door Control"; - pixel_x = -24 + name = "Cargo Bay Inner Shutters"; + pixel_x = -24; + dir = 8 }, /obj/effect/turf_decal/trimline/brown/filled/corner{ dir = 8 }, -/obj/machinery/light/directional/west, +/obj/structure/disposalpipe/segment, /turf/open/floor/iron, /area/station/cargo/storage) -"wIg" = ( -/obj/structure/disposalpipe/segment{ - dir = 5 +"wIi" = ( +/obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ + dir = 1 }, -/obj/structure/cable, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) -"wIl" = ( -/obj/machinery/firealarm/directional/east, -/turf/open/floor/iron, -/area/station/engineering/gravity_generator) +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"wIo" = ( +/obj/machinery/door/airlock{ + id_tag = "Cabin4"; + name = "Cabin 5" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/duct, +/turf/open/floor/iron/dark/textured_large, +/area/station/commons/dorms) "wIw" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt/dust, @@ -80459,19 +84040,10 @@ }, /turf/open/floor/wood, /area/station/service/abandoned_gambling_den) -"wIK" = ( -/obj/structure/closet/secure_closet/personal/cabinet, -/turf/open/floor/wood, -/area/station/commons/dorms) -"wIS" = ( -/obj/structure/cable, -/obj/item/radio/intercom/directional/north, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) -"wIW" = ( -/obj/structure/ladder, +"wIN" = ( +/obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/area/station/maintenance/department/crew_quarters/dorms) "wJn" = ( /obj/machinery/door/airlock/command{ name = "E.V.A. Storage" @@ -80479,8 +84051,9 @@ /obj/effect/mapping_helpers/airlock/access/all/command/eva, /obj/effect/landmark/navigate_destination/eva, /obj/machinery/door/firedoor, +/obj/effect/mapping_helpers/airlock/red_alert_access, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "wJs" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 1 @@ -80495,12 +84068,6 @@ /obj/machinery/holopad, /turf/open/floor/wood, /area/station/service/chapel) -"wJF" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line, -/obj/machinery/light/directional/south, -/obj/structure/tank_dispenser, -/turf/open/floor/iron/dark, -/area/station/engineering/engine_smes) "wJI" = ( /obj/effect/turf_decal/siding/dark, /obj/effect/turf_decal/siding/dark{ @@ -80511,16 +84078,7 @@ network = list("aicore") }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) -"wJJ" = ( -/obj/structure/grille, -/turf/closed/wall/r_wall, -/area/station/maintenance/disposal/incinerator) -"wJU" = ( -/obj/structure/extinguisher_cabinet/directional/east, -/obj/machinery/camera/autoname/directional/east, -/turf/open/floor/engine, -/area/station/engineering/atmos/hfr_room) +/area/station/ai/satellite/chamber) "wJV" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -80554,8 +84112,11 @@ "wKi" = ( /obj/machinery/power/apc/auto_name/directional/south, /obj/structure/cable, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) +/obj/effect/turf_decal/siding/dark{ + dir = 6 + }, +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "wKl" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, @@ -80574,6 +84135,19 @@ /obj/effect/spawner/random/maintenance, /turf/open/floor/iron/white, /area/station/maintenance/department/medical) +"wKx" = ( +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/fore) +"wKC" = ( +/obj/structure/reagent_dispensers/plumbed, +/turf/open/floor/iron, +/area/station/maintenance/starboard/central) "wKD" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 @@ -80585,49 +84159,28 @@ }, /turf/open/floor/iron/dark, /area/station/security/range) -"wKI" = ( -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) -"wKJ" = ( -/obj/machinery/light/directional/east, -/obj/machinery/atmospherics/components/unary/thermomachine/heater{ - dir = 4 - }, -/turf/open/floor/glass/reinforced/plasma, -/area/station/engineering/atmos/project) "wKR" = ( /obj/effect/spawner/random/engineering/tracking_beacon, /turf/open/floor/carpet, /area/station/service/chapel) -"wKV" = ( -/obj/structure/extinguisher_cabinet/directional/north, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) +"wKS" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/maintenance, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "wLc" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/carpet, /area/station/command/corporate_showroom) -"wLf" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/item/storage/box/lights/mixed{ - pixel_y = 8 - }, -/obj/item/storage/toolbox/emergency, -/obj/structure/table/reinforced, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"wLg" = ( -/obj/machinery/light/directional/east, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 - }, -/turf/open/floor/catwalk_floor, -/area/station/engineering/engine_smes) "wLi" = ( /obj/machinery/holopad, /turf/open/floor/iron/textured_large, /area/station/medical/abandoned) +"wLm" = ( +/obj/machinery/firealarm/directional/west, +/turf/open/floor/glass/reinforced, +/area/station/command/bridge) "wLv" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -80666,16 +84219,15 @@ /turf/open/floor/engine/hull, /area/space/nearstation) "wLV" = ( -/obj/machinery/button/door/directional/west{ - id = "hosprivacy"; - name = "Privacy Shutters Control"; - pixel_x = 8; - pixel_y = 25 - }, /obj/machinery/holopad/secure, /obj/machinery/keycard_auth/wall_mounted/directional/north{ pixel_x = -6 }, +/obj/machinery/button/door/directional/north{ + pixel_x = 7; + name = "Privacy Shutters Control"; + id = "hosprivacy" + }, /turf/open/floor/wood, /area/station/command/heads_quarters/hos) "wMc" = ( @@ -80684,10 +84236,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/hallway/primary/port) -"wMi" = ( -/obj/structure/sign/warning/radiation/rad_area, -/turf/closed/wall/r_wall, -/area/station/engineering/gravity_generator) "wMn" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -80703,11 +84251,11 @@ }, /turf/open/floor/iron/large, /area/station/hallway/primary/central) -"wMu" = ( -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/obj/effect/turf_decal/bot, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/atmos/upper) +"wMy" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "wMD" = ( /obj/structure/lattice/catwalk, /obj/structure/sign/poster/contraband/clown/directional/south, @@ -80727,6 +84275,19 @@ /obj/machinery/vending/snack/blue, /turf/open/floor/iron, /area/station/construction/storage_wing) +"wMO" = ( +/obj/effect/turf_decal/tile/dark/half{ + dir = 1 + }, +/obj/machinery/meter{ + name = "C02 meter" + }, +/obj/machinery/atmospherics/pipe/multiz/yellow/visible{ + name = "CO2 Multideck Adapter"; + dir = 4 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "wMS" = ( /obj/item/kirbyplants/random, /obj/machinery/firealarm/directional/east, @@ -80745,16 +84306,6 @@ }, /turf/open/floor/holofloor/dark, /area/station/command/heads_quarters/cmo) -"wMZ" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Chapel Office" - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 1 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) "wNi" = ( /obj/effect/spawner/random/vending/colavend, /obj/structure/disposalpipe/segment{ @@ -80769,6 +84320,10 @@ /obj/structure/cable, /turf/open/floor/iron/sepia, /area/station/hallway/secondary/construction) +"wNp" = ( +/obj/item/binoculars, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/aft/upper) "wNq" = ( /obj/structure/cable, /obj/machinery/computer/records/security{ @@ -80789,27 +84344,47 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/maintenance/port) "wNw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/structure/crate, -/turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/obj/machinery/camera/autoname/directional/south, +/obj/structure/extinguisher_cabinet/directional/east, +/obj/structure/closet/secure_closet/quartermaster, +/obj/item/gun/energy/recharge/kinetic_accelerator{ + name = "the QM's Accelerator"; + pixel_y = 6 + }, +/obj/item/clothing/head/fedora/white, +/obj/effect/turf_decal/siding/dark/end, +/turf/open/floor/carpet/orange, +/area/station/command/heads_quarters/qm) "wNC" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/item/radio/intercom/directional/east, /obj/machinery/camera/autoname/directional/east, /turf/open/floor/iron/dark, /area/station/science/server) +"wNJ" = ( +/obj/effect/decal/cleanable/dirt, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/plating, +/area/station/engineering/storage_shared) "wNL" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/carpet, /area/station/commons/storage/tools) +"wNN" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/engineering/atmos) "wNO" = ( /obj/effect/turf_decal/stripes/line, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/textured_half, /area/station/science/ordnance) +"wNR" = ( +/obj/effect/spawner/random/structure/crate, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "wOb" = ( /obj/structure/table/wood/fancy, /obj/effect/spawner/random/decoration/statue{ @@ -80840,16 +84415,11 @@ }, /obj/machinery/light/floor, /turf/open/floor/iron/dark, -/area/station/command/bridge) +/area/station/command/meeting_room/council) "wOx" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating/airless, /area/station/maintenance/starboard/aft) -"wOG" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "wOK" = ( /obj/machinery/airalarm/directional/east, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, @@ -80878,10 +84448,31 @@ }, /turf/open/floor/iron/white, /area/station/medical/medbay/central) +"wPj" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/machinery/firealarm/directional/south, +/obj/machinery/light/warm/directional/south, +/turf/open/floor/iron, +/area/station/engineering/lobby) "wPl" = ( /obj/effect/decal/cleanable/blood/oil/slippery, /turf/open/floor/iron/dark/smooth_large, /area/station/maintenance/port) +"wPp" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 9 + }, +/obj/item/kirbyplants/random, +/obj/machinery/light/small/directional/north, +/obj/structure/sign/warning/radiation/rad_area/directional/north, +/obj/item/radio/intercom/directional/west, +/turf/open/floor/iron, +/area/station/engineering/lobby) +"wPt" = ( +/obj/effect/spawner/structure/window/reinforced/plasma, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/engineering/supermatter/room/upper) "wPG" = ( /turf/open/floor/carpet/black, /area/station/service/theater) @@ -80889,17 +84480,9 @@ /obj/machinery/firealarm/directional/east, /turf/open/floor/iron/textured_large, /area/station/security/prison) -"wPP" = ( -/obj/effect/spawner/random/vending/colavend, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "wPV" = ( /turf/closed/wall, /area/station/security/detectives_office/private_investigators_office) -"wPX" = ( -/obj/structure/cable, -/turf/closed/wall, -/area/station/maintenance/port) "wQc" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 8 @@ -80932,6 +84515,20 @@ /obj/structure/sign/poster/contraband/random/directional/north, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"wQt" = ( +/obj/effect/mapping_helpers/broken_floor, +/turf/open/floor/plating, +/area/station/maintenance/port) +"wQu" = ( +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 8 + }, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/engineering/lobby) "wQw" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table/reinforced, @@ -80956,6 +84553,11 @@ }, /turf/open/floor/iron/dark, /area/station/service/hydroponics/garden/abandoned) +"wQA" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard) "wQD" = ( /obj/machinery/light/small/directional/east, /obj/item/solar_assembly, @@ -80999,14 +84601,11 @@ }, /turf/open/floor/iron/smooth, /area/station/science/robotics) -"wRi" = ( +"wRb" = ( /obj/effect/turf_decal/siding/wood, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/wood/tile, -/area/station/security/detectives_office/private_investigators_office) +/obj/machinery/holopad, +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) "wRj" = ( /obj/item/storage/fancy/cigarettes/cigpack_shadyjims, /obj/structure/rack, @@ -81021,11 +84620,6 @@ }, /turf/open/floor/iron/dark, /area/station/service/chapel) -"wRs" = ( -/obj/effect/turf_decal/bot, -/obj/machinery/space_heater, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/atmos/upper) "wRt" = ( /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, @@ -81055,6 +84649,31 @@ /obj/structure/cable, /turf/open/floor/iron/grimy, /area/station/security/interrogation) +"wRL" = ( +/obj/structure/table/reinforced, +/obj/item/book/manual/wiki/engineering_hacking{ + pixel_x = -3; + pixel_y = 3 + }, +/obj/item/book/manual/wiki/engineering_guide, +/obj/item/book/manual/wiki/engineering_construction{ + pixel_x = 3; + pixel_y = -3 + }, +/obj/item/trash/can{ + pixel_x = -8 + }, +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/iron, +/area/station/commons/storage/primary) +"wRQ" = ( +/obj/effect/spawner/random/engineering/atmospherics_portable, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) +"wRT" = ( +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "wSa" = ( /obj/effect/turf_decal/siding/dark{ dir = 1 @@ -81062,12 +84681,25 @@ /obj/structure/cable/layer3, /obj/structure/cable, /turf/open/floor/iron/dark/textured_half, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "wSj" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/carpet, /area/station/service/abandoned_gambling_den) +"wSn" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 2 + }, +/obj/machinery/door/airlock/public/glass{ + name = "Crew Quarters Access" + }, +/obj/effect/landmark/navigate_destination/dorms, +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/commons/dorms) "wSs" = ( /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/iron/smooth, @@ -81086,14 +84718,14 @@ }, /turf/open/floor/iron, /area/station/science/research) -"wSE" = ( -/obj/machinery/atmospherics/components/binary/pump{ - dir = 8; - name = "Mix Outlet Pump" +"wSD" = ( +/obj/effect/decal/cleanable/dirt, +/obj/item/chair, +/obj/structure/disposalpipe/segment{ + dir = 9 }, -/obj/effect/turf_decal/tile/green/full, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) +/turf/open/floor/iron, +/area/station/maintenance/starboard) "wSP" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/camera/autoname/directional/north, @@ -81102,10 +84734,6 @@ }, /turf/open/floor/iron/smooth, /area/station/science/robotics) -"wSW" = ( -/obj/structure/bonfire/prelit, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "wSZ" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -81120,31 +84748,12 @@ /turf/open/floor/plating, /area/station/maintenance/port) "wTn" = ( -/obj/machinery/door/airlock/mining{ - name = "Cargo Bay" +/obj/machinery/computer/cargo/request{ + dir = 1 }, -/obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/access/all/supply/general, /obj/effect/turf_decal/tile/brown/fourcorners, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, /turf/open/floor/iron, -/area/station/cargo/storage) -"wTr" = ( -/obj/structure/railing, -/obj/structure/table/wood, -/obj/item/paper_bin{ - pixel_x = -12; - pixel_y = 7 - }, -/obj/item/camera_film{ - pixel_x = 3; - pixel_y = 8 - }, -/obj/structure/cable, -/turf/open/floor/wood/large, -/area/station/service/library/private) +/area/station/hallway/primary/starboard) "wTx" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -81152,7 +84761,9 @@ /obj/structure/disposalpipe/junction/flip{ dir = 8 }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 4 + }, /area/station/hallway/primary/central) "wTE" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -81175,6 +84786,14 @@ /obj/structure/lattice, /turf/open/openspace, /area/station/maintenance/port/aft) +"wTP" = ( +/obj/machinery/status_display/evac/directional/south, +/obj/effect/turf_decal/bot_white{ + color = "#52B4E9" + }, +/obj/structure/closet/secure_closet/medical3, +/turf/open/floor/iron/dark/textured_large, +/area/station/medical/storage) "wTR" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 1 @@ -81188,8 +84807,14 @@ /area/station/security/office) "wTU" = ( /obj/structure/chair/comfy/brown, -/obj/structure/cable, -/turf/open/floor/wood, +/obj/effect/turf_decal/siding/wood, +/obj/effect/turf_decal/siding/wood/corner{ + dir = 4 + }, +/obj/structure/extinguisher_cabinet/directional/north{ + pixel_x = -5 + }, +/turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) "wUb" = ( /obj/effect/turf_decal/trimline/green/filled/line{ @@ -81198,29 +84823,25 @@ /obj/effect/turf_decal/trimline/green/filled/mid_joiner{ dir = 1 }, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge{ + dir = 1 + }, /area/station/hallway/primary/central) +"wUh" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating/airless, +/area/station/maintenance/starboard/aft) "wUk" = ( /obj/structure/ladder, /turf/open/floor/engine/hull, /area/space/nearstation) -"wUm" = ( -/obj/effect/spawner/random/structure/chair_flipped{ - dir = 1 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/plating, -/area/station/security/detectives_office/private_investigators_office) "wUu" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/dark/visible, /obj/structure/grille/broken, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"wUI" = ( -/obj/machinery/door/poddoor/incinerator_atmos_main, -/turf/open/floor/engine, -/area/station/maintenance/disposal/incinerator) "wVd" = ( /obj/effect/turf_decal/delivery, /turf/open/floor/iron/dark, @@ -81228,6 +84849,19 @@ "wVf" = ( /turf/closed/wall, /area/station/security/prison/rec) +"wVh" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/gravity_generator) +"wVu" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "wVx" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 1 @@ -81273,13 +84907,35 @@ /obj/machinery/newscaster/directional/west, /turf/open/floor/iron/dark, /area/station/security/courtroom) -"wVX" = ( -/obj/structure/railing{ +"wVP" = ( +/obj/machinery/door/airlock/atmos/glass{ + name = "Atmospherics Testing Room" + }, +/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, +/obj/machinery/door/firedoor/heavy, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"wVY" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/plating/airless, +/area/station/maintenance/aft) +"wWg" = ( +/obj/structure/closet/crate/freezer, +/obj/item/reagent_containers/blood/ethereal, +/obj/item/reagent_containers/cup/soda_cans/monkey_energy, +/obj/item/reagent_containers/cup/soda_cans/monkey_energy, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/department/crew_quarters/dorms) +"wWi" = ( +/obj/effect/turf_decal/stripes/red/end, +/obj/effect/turf_decal/siding/red/end, +/turf/open/floor/iron/textured_corner{ dir = 1 }, -/obj/structure/lattice/catwalk, -/turf/open/openspace, -/area/station/engineering/break_room) +/area/station/command/gateway) "wWk" = ( /obj/effect/turf_decal/tile/yellow/half/contrasted{ dir = 4 @@ -81318,6 +84974,14 @@ }, /turf/open/floor/carpet, /area/station/service/lawoffice) +"wWM" = ( +/obj/effect/spawner/random/techstorage/command_all, +/obj/structure/rack, +/obj/effect/turf_decal/tile/red/opposingcorners{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "wWO" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/monitored/nitrogen_input, /turf/open/floor/engine/n2, @@ -81330,14 +84994,14 @@ /turf/open/floor/iron/white/smooth_large, /area/station/hallway/secondary/entry) "wWV" = ( -/obj/effect/turf_decal/siding/blue/corner{ - dir = 1 - }, -/obj/effect/turf_decal/arrows{ - dir = 8 +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable, +/obj/machinery/door/poddoor/preopen{ + id = "hop"; + name = "Privacy Shutters" }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/hallway/primary/central) +/turf/open/floor/plating, +/area/station/command/heads_quarters/hop) "wWX" = ( /obj/structure/railing/corner{ dir = 1 @@ -81377,6 +85041,14 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/dark, /area/station/service/hydroponics) +"wXj" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/firealarm/directional/north, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "wXk" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark/smooth_large, @@ -81431,18 +85103,34 @@ /area/station/medical/pharmacy) "wXM" = ( /obj/effect/turf_decal/trimline/brown/filled/corner{ - dir = 8 + dir = 1 }, -/obj/effect/spawner/random/maintenance, /obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/trimline/brown/filled/warning{ + dir = 4 + }, /turf/open/floor/iron, /area/station/cargo/storage) +"wXQ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold/pink/visible, +/obj/machinery/meter{ + name = "Mix Meter" + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "wXU" = ( -/obj/item/bedsheet/captain, -/obj/structure/bed, -/obj/effect/landmark/start/captain, -/turf/open/floor/wood, +/obj/machinery/newscaster/directional/south, +/obj/machinery/suit_storage_unit/captain, +/obj/item/mod/module/longfall{ + pixel_x = 8 + }, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) +"wYb" = ( +/obj/structure/table, +/obj/item/wrench, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "wYk" = ( /obj/effect/turf_decal/siding/dark/end{ dir = 8 @@ -81519,10 +85207,9 @@ /area/station/commons/lounge) "wYS" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/supply/general, /turf/open/floor/plating, -/area/station/maintenance/starboard/central) +/area/station/cargo/storage) "wYU" = ( /obj/item/radio/intercom/directional/south, /obj/effect/turf_decal/siding/thinplating_new/dark, @@ -81531,25 +85218,14 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/commons/lounge) -"wZb" = ( -/obj/effect/turf_decal/stripes/line{ +"wYX" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, -/obj/structure/chair/office{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/commons/dorms) -"wZd" = ( -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5, -/obj/effect/turf_decal/tile/red/half{ - dir = 1 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/port/aft) "wZg" = ( /obj/structure/toilet{ dir = 8; @@ -81575,27 +85251,24 @@ /obj/machinery/light/directional/north, /obj/item/radio/intercom/directional/north, /turf/open/floor/iron/freezer, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) +"wZk" = ( +/obj/item/radio/intercom/directional/north, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/turf/open/floor/wood, +/area/station/commons/dorms) "wZn" = ( /obj/machinery/light/directional/east, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "wZy" = ( /obj/machinery/camera/autoname/directional/west, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) -"wZA" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/obj/structure/disposalpipe/segment{ - dir = 2 +/turf/open/floor/iron/edge{ + dir = 8 }, -/turf/open/floor/iron, -/area/station/hallway/primary/starboard) +/area/station/hallway/primary/central) "wZE" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, @@ -81618,11 +85291,11 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/freezer, /area/station/commons/toilet/auxiliary) -"xah" = ( -/obj/structure/cable, -/obj/effect/spawner/structure/window/reinforced/tinted, -/turf/open/floor/plating/airless, -/area/station/maintenance/starboard/aft) +"xae" = ( +/obj/structure/lattice/catwalk, +/obj/structure/marker_beacon/indigo, +/turf/open/space/basic, +/area/space/nearstation) "xaj" = ( /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable, @@ -81661,6 +85334,22 @@ /obj/machinery/door/firedoor, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) +"xau" = ( +/obj/machinery/light/warm/dim/directional/east, +/obj/structure/table, +/obj/item/clothing/gloves/cargo_gauntlet, +/obj/item/clothing/gloves/cargo_gauntlet{ + pixel_y = 3 + }, +/obj/item/clothing/gloves/cargo_gauntlet{ + pixel_y = 6 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/structure/sign/poster/random/directional/south, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "xaz" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/purple/filled/line, @@ -81671,25 +85360,6 @@ /obj/effect/landmark/start/medical_doctor, /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) -"xaP" = ( -/obj/item/paper_bin{ - pixel_x = 5; - pixel_y = 4 - }, -/obj/structure/railing{ - dir = 4 - }, -/obj/structure/table, -/obj/item/pen{ - pixel_x = 5; - pixel_y = 6 - }, -/obj/item/stamp{ - pixel_x = -7; - pixel_y = 2 - }, -/turf/open/floor/wood/large, -/area/station/service/library/private) "xaQ" = ( /obj/structure/table, /obj/effect/decal/cleanable/dirt, @@ -81708,24 +85378,16 @@ /obj/effect/turf_decal/tile/bar/opposingcorners, /turf/open/floor/iron, /area/station/security/prison/mess) +"xba" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark/textured_large, +/area/station/medical/virology) "xbm" = ( /obj/machinery/door/firedoor, /obj/structure/cable, /turf/open/floor/engine/hull/air, /area/station/hallway/secondary/construction) -"xbp" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) -"xbz" = ( -/obj/structure/chair/sofa/left/brown{ - dir = 4 - }, -/obj/item/cigbutt, -/turf/open/floor/wood, -/area/station/commons/dorms) "xbF" = ( /obj/structure/lattice/catwalk, /obj/structure/disposalpipe/segment{ @@ -81733,22 +85395,9 @@ }, /turf/open/space/basic, /area/space/nearstation) -"xbI" = ( -/obj/machinery/camera/directional/north{ - c_tag = "Atmospherics - Oxygen Supply"; - name = "atmospherics camera" - }, -/turf/open/floor/engine/o2, -/area/station/engineering/atmos/upper) "xbL" = ( /turf/open/floor/iron/dark, /area/station/service/chapel) -"xbP" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/openspace, -/area/station/engineering/atmos/project) "xbR" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment{ @@ -81760,12 +85409,6 @@ /obj/effect/decal/cleanable/blood/oil, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"xbZ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/ladder, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "xca" = ( /obj/effect/turf_decal/tile/blue/half/contrasted{ dir = 8 @@ -81780,10 +85423,6 @@ /obj/effect/landmark/start/assistant, /turf/open/floor/iron, /area/station/hallway/primary/aft) -"xce" = ( -/obj/machinery/light/warm/dim/directional/west, -/turf/open/openspace, -/area/station/hallway/primary/central) "xci" = ( /obj/machinery/camera/autoname/directional/south, /turf/open/openspace, @@ -81797,6 +85436,11 @@ /obj/structure/filingcabinet/chestdrawer, /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) +"xcq" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/smooth, +/area/station/science/robotics) "xcx" = ( /obj/item/radio/intercom/directional/east, /turf/open/floor/iron/dark/smooth_large, @@ -81809,19 +85453,12 @@ /obj/structure/closet/secure_closet/evidence, /turf/open/floor/iron/dark, /area/station/security/evidence) -"xcV" = ( -/obj/effect/turf_decal/siding{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/white/line, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) +"xcZ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold/pink/visible, +/obj/machinery/light/directional/south, +/obj/structure/sign/warning/radiation/rad_area/directional/south, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "xda" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -81859,13 +85496,16 @@ /area/station/service/hydroponics) "xdG" = ( /obj/structure/cable, -/obj/effect/turf_decal/tile/green/opposingcorners{ - dir = 1 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 4 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "xdK" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 6 @@ -81873,22 +85513,20 @@ /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/iron/dark/textured, /area/station/construction/mining/aux_base) -"xdP" = ( -/obj/structure/table, -/obj/item/t_scanner{ - pixel_y = 8 - }, -/obj/item/multitool{ - pixel_x = -5 - }, -/obj/item/multitool{ - pixel_x = 5 +"xdS" = ( +/obj/machinery/door/airlock/atmos/glass{ + name = "Atmospherics" }, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 +/obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "atmoslowersm" }, /turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) +/area/station/engineering/atmos/office) "xdT" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/machinery/vending/coffee, @@ -81896,21 +85534,16 @@ /turf/open/floor/iron, /area/station/science/lab) "xdU" = ( -/obj/structure/railing/corner, -/obj/structure/table/glass, -/obj/item/assembly/flash/handheld{ - pixel_x = 7; - pixel_y = 2 - }, -/obj/item/cigarette/cigar{ - pixel_x = -6; - pixel_y = 5 +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 10 }, -/obj/effect/turf_decal/tile/red{ - dir = 1 +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 8 }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/obj/effect/spawner/random/vending/colavend, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "xdV" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, @@ -81929,6 +85562,7 @@ /obj/item/pai_card{ pixel_y = 5 }, +/obj/effect/turf_decal/siding/green, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) "xej" = ( @@ -81947,6 +85581,11 @@ /obj/machinery/light/directional/west, /turf/open/openspace, /area/station/medical/medbay/central) +"xex" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable, +/turf/open/openspace, +/area/station/maintenance/starboard/aft/upper) "xeD" = ( /obj/machinery/airalarm/directional/west, /obj/structure/bed/dogbed/runtime, @@ -81955,11 +85594,6 @@ /obj/machinery/light/small/dim/directional/north, /turf/open/floor/carpet/cyan, /area/station/command/heads_quarters/cmo) -"xeI" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/hallway/secondary/construction) "xeM" = ( /obj/effect/turf_decal/tile/blue/opposingcorners{ dir = 1 @@ -81967,20 +85601,13 @@ /turf/open/floor/iron/white, /area/station/medical/medbay/central) "xeN" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 8 - }, -/obj/machinery/button/door/directional/east{ - id = "cargounload"; - name = "Loading Doors"; - pixel_y = 6 +/obj/machinery/conveyor{ + dir = 5; + id = "cargoload" }, -/obj/machinery/button/door/directional/east{ - id = "cargoload"; - name = "Loading Doors"; - pixel_y = -6 +/obj/effect/turf_decal/stripes/end{ + dir = 8 }, -/obj/machinery/camera/autoname/directional/east, /turf/open/floor/iron, /area/station/cargo/storage) "xeQ" = ( @@ -82006,26 +85633,21 @@ /obj/structure/chair/office, /turf/open/floor/iron/dark/smooth_large, /area/station/tcommsat/server) -"xfa" = ( -/obj/effect/turf_decal/trimline/white/line{ - dir = 8; - pixel_x = 8 - }, -/obj/effect/turf_decal/trimline/white/line{ - dir = 1 - }, +"xeY" = ( /obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) -"xfj" = ( -/obj/structure/railing{ - dir = 4 +/obj/structure/table, +/obj/machinery/microwave{ + pixel_x = -3; + pixel_y = 6 }, -/obj/structure/disposalpipe/segment, +/turf/open/floor/iron/cafeteria, +/area/station/maintenance/starboard) +"xfi" = ( +/obj/structure/lattice/catwalk, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/openspace, -/area/station/engineering/lobby) +/area/station/maintenance/starboard/aft/upper) "xfn" = ( /obj/effect/decal/cleanable/glitter{ color = "ff8080" @@ -82036,23 +85658,38 @@ }, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"xfr" = ( -/obj/structure/showcase/machinery/oldpod{ - desc = "An old NT branded sleeper, decommissioned after the lead acetate incident. None of the functional machinery remains inside."; - name = "decommissioned sleeper" - }, -/obj/effect/decal/cleanable/dirt, -/obj/structure/light_construct/directional/east{ - dir = 1 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "xfs" = ( /obj/structure/disposalpipe/segment{ dir = 5 }, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) +"xfy" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing/corner{ + dir = 8 + }, +/obj/structure/railing{ + dir = 1 + }, +/turf/open/openspace, +/area/station/engineering/lobby) +"xfQ" = ( +/obj/effect/decal/cleanable/crayon{ + icon_state = "body"; + name = "body"; + pixel_x = 9; + pixel_y = 3 + }, +/obj/item/ammo_casing/spent{ + pixel_x = -6; + pixel_y = 6 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "xfV" = ( /obj/structure/railing/corner{ dir = 8 @@ -82065,19 +85702,9 @@ dir = 1 }, /obj/effect/turf_decal/tile/dark_blue, +/obj/machinery/light/floor, /turf/open/floor/iron/white, /area/station/hallway/secondary/entry) -"xfX" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/lobby) -"xgb" = ( -/obj/structure/closet/crate/freezer, -/obj/item/reagent_containers/cup/soda_cans/monkey_energy, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/lesser) "xgC" = ( /obj/machinery/light_switch{ pixel_x = -9; @@ -82091,7 +85718,35 @@ name = "Unit 2" }, /turf/open/floor/iron/freezer, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) +"xgK" = ( +/obj/machinery/door/firedoor, +/turf/open/floor/iron/textured, +/area/station/commons/dorms) +"xgP" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/machinery/button/elevator/directional/east{ + id = "catwalk_atmos"; + name = "Elevator Button" + }, +/obj/effect/turf_decal/caution/stand_clear, +/turf/open/floor/engine, +/area/station/engineering/atmos/upper) +"xgR" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/chair/office{ + dir = 1 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/turf/open/floor/wood/large, +/area/station/engineering/lobby) "xgT" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 @@ -82116,11 +85771,12 @@ /obj/effect/landmark/start/depsec/science, /turf/open/floor/iron/dark, /area/station/security/checkpoint/science) -"xhr" = ( -/obj/structure/table/wood, -/obj/effect/decal/cleanable/blood/old, -/turf/open/floor/carpet, -/area/station/maintenance/starboard/lesser) +"xhv" = ( +/obj/structure/lattice/catwalk, +/obj/structure/closet/emcloset, +/obj/effect/spawner/random/maintenance, +/turf/open/openspace, +/area/station/maintenance/starboard/aft/upper) "xhF" = ( /obj/machinery/atmospherics/components/tank, /turf/open/floor/iron/dark/textured_corner{ @@ -82149,20 +85805,28 @@ /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) +"xhV" = ( +/obj/item/melee/flyswatter{ + pixel_x = -2 + }, +/obj/item/toy/plush/lizard_plushie/green{ + name = "Steals-The-Cheese"; + pixel_x = 8; + pixel_y = -3 + }, +/obj/effect/turf_decal/tile/dark_green/opposingcorners, +/obj/effect/turf_decal/tile/green/opposingcorners{ + dir = 1 + }, +/obj/structure/sign/poster/contraband/lizard/directional/west, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/fore) "xhX" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/service/abandoned_gambling_den) -"xib" = ( -/obj/structure/lattice/catwalk, -/obj/item/toy/plush/lizard_plushie/green{ - name = "Hides-In-Rafters" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/yellow/visible, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) "xif" = ( /turf/open/floor/iron/textured_large, /area/station/medical/abandoned) @@ -82177,17 +85841,25 @@ /obj/effect/turf_decal/trimline/yellow/filled/corner, /obj/structure/sign/departments/telecomms/directional/south, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "xiy" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 9 +/obj/machinery/door/poddoor/shutters/preopen{ + name = "Cargo Lockdown Shutters"; + id = "cargolockdown"; + dir = 8 }, -/turf/open/floor/iron, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, /area/station/cargo/sorting) "xiQ" = ( -/obj/effect/turf_decal/tile/red/opposingcorners, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 8 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "xiR" = ( /obj/structure/chair/stool/bar/directional/east, /turf/open/floor/plating, @@ -82213,10 +85885,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/circuit/red, /area/station/maintenance/hallway/abandoned_recreation) -"xjc" = ( -/obj/effect/landmark/event_spawn, -/turf/open/openspace, -/area/station/science/explab) "xjm" = ( /obj/item/vending_refill/donksnackvendor{ pixel_y = 15 @@ -82236,36 +85904,18 @@ /turf/open/floor/plating, /area/station/maintenance/port/greater) "xjr" = ( -/obj/machinery/modular_computer/preset/id{ - dir = 8 - }, -/obj/structure/railing, -/obj/structure/secure_safe/caps_spare{ - pixel_x = 35 +/obj/machinery/camera/autoname/directional/east, +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 4 }, -/obj/effect/turf_decal/tile/green/opposingcorners{ - dir = 1 +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ + dir = 4 }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "xjz" = ( /turf/open/floor/plating/elevatorshaft, /area/station/science/robotics) -"xjK" = ( -/obj/structure/lattice/catwalk, -/obj/structure/filingcabinet, -/obj/effect/spawner/random/bureaucracy/paper, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) -"xjL" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment{ - dir = 2 - }, -/turf/open/floor/plating, -/area/station/maintenance/port) "xjR" = ( /obj/structure/railing/corner, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -82293,15 +85943,39 @@ }, /turf/open/floor/iron/dark, /area/station/science/cytology) +"xkc" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/atmospherics/pipe/layer_manifold/scrubbers/hidden{ + dir = 4 + }, +/turf/open/floor/plating/airless, +/area/station/engineering/atmos/office) "xkn" = ( /obj/structure/railing/corner, /obj/structure/cable, /turf/open/floor/engine/hull/air, /area/station/maintenance/port) "xky" = ( -/obj/structure/chair, -/turf/open/floor/engine/hull, -/area/space/nearstation) +/obj/structure/railing{ + dir = 8 + }, +/turf/open/openspace, +/area/station/cargo/storage) +"xkG" = ( +/obj/structure/table, +/obj/effect/spawner/random/bureaucracy/paper, +/obj/item/radio{ + desc = "An old handheld radio. You could use it, if you really wanted to."; + icon_state = "radio"; + name = "old radio" + }, +/obj/structure/sign/calendar/directional/north, +/turf/open/floor/wood/large, +/area/station/commons/dorms) +"xkJ" = ( +/obj/effect/turf_decal/stripes/full, +/turf/open/floor/iron/dark/textured, +/area/station/cargo/storage) "xkL" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 8 @@ -82319,15 +85993,10 @@ /turf/open/floor/iron/dark/smooth_large, /area/station/security/processing) "xkV" = ( -/obj/machinery/camera/motion{ - c_tag = "Armory - Internal"; - dir = 8 - }, -/obj/effect/turf_decal/caution{ - dir = 4 - }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/obj/structure/cable, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/command/heads_quarters/rd) "xkZ" = ( /obj/structure/disposalpipe/segment{ dir = 10 @@ -82353,6 +86022,12 @@ }, /turf/open/openspace, /area/station/hallway/primary/central) +"xlt" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/turf/open/floor/iron, +/area/station/maintenance/starboard) "xlw" = ( /obj/structure/bed/dogbed{ name = "spider bed" @@ -82361,13 +86036,6 @@ /obj/structure/flora/bush/flowers_br, /turf/open/floor/grass, /area/station/command/heads_quarters/hos) -"xlH" = ( -/obj/structure/window/reinforced/tinted/spawner/directional/east, -/obj/machinery/shower/directional/east, -/obj/effect/decal/cleanable/dirt, -/obj/effect/landmark/event_spawn, -/turf/open/floor/iron/freezer, -/area/station/commons/dorms) "xlL" = ( /obj/effect/turf_decal/delivery, /obj/machinery/vending/coffee, @@ -82379,22 +86047,6 @@ /obj/structure/broken_flooring/corner/always_floorplane/directional/south, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"xmb" = ( -/obj/effect/spawner/random/engineering/tracking_beacon, -/obj/effect/turf_decal/tile/yellow/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) -"xmd" = ( -/obj/machinery/door/poddoor/shutters/radiation/preopen{ - id = "SM_shutters"; - name = "Supermatter Radiation Shutters" - }, -/obj/machinery/atmospherics/components/binary/pump/off/cyan/visible, -/obj/effect/turf_decal/trimline/blue, -/turf/open/floor/plating, -/area/station/engineering/supermatter) "xme" = ( /obj/structure/flora/bush/large/style_2, /obj/structure/flora/rock/pile/style_2, @@ -82421,10 +86073,6 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/brig) -"xmq" = ( -/obj/effect/turf_decal/trimline/yellow/warning, -/turf/open/floor/engine/hull/reinforced, -/area/space/nearstation) "xms" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -82438,15 +86086,6 @@ /obj/machinery/light/small/directional/north, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/secondary/command) -"xmx" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "xmA" = ( /obj/effect/turf_decal/trimline/red/filled/line, /obj/machinery/camera/autoname/directional/south, @@ -82462,12 +86101,6 @@ /obj/effect/spawner/random/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"xmQ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/engineering/gravity_generator) "xne" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -82506,6 +86139,14 @@ }, /turf/open/floor/iron/dark, /area/station/science/ordnance) +"xnL" = ( +/obj/structure/cable, +/obj/machinery/light/floor, +/obj/effect/turf_decal/stripes/white/line{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "xnP" = ( /obj/effect/turf_decal/siding/wood/end{ dir = 8 @@ -82536,12 +86177,6 @@ dir = 4 }, /area/station/service/chapel) -"xoh" = ( -/obj/item/radio/intercom/directional/north, -/obj/machinery/shieldgen, -/obj/effect/turf_decal/bot_white, -/turf/open/floor/engine, -/area/station/engineering/break_room) "xol" = ( /obj/effect/turf_decal/delivery, /obj/machinery/airalarm/directional/north, @@ -82571,28 +86206,23 @@ /obj/effect/turf_decal/trimline/purple/filled/mid_joiner, /turf/open/floor/iron/dark/smooth_large, /area/station/science/xenobiology) -"xoH" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/camera/autoname/directional/north, -/obj/machinery/light_switch/directional/north, -/turf/open/openspace, -/area/station/engineering/break_room) "xoT" = ( /obj/structure/barricade/wooden, +/obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/station/maintenance/starboard/central) -"xoZ" = ( -/obj/effect/turf_decal/siding{ +"xpd" = ( +/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ + dir = 6 + }, +/obj/effect/turf_decal/siding/dark{ dir = 1 }, -/obj/effect/turf_decal/trimline/white/corner{ - dir = 8 +/obj/structure/railing{ + dir = 1 }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/red/full, -/obj/effect/turf_decal/tile/brown/full, -/turf/open/floor/iron/large, -/area/station/maintenance/starboard/lesser) +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "xpj" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -82606,47 +86236,20 @@ /obj/structure/closet/secure_closet/security/sec, /turf/open/floor/iron/dark/smooth_large, /area/station/security/lockers) -"xpn" = ( -/obj/structure/lattice, -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 1 - }, -/turf/open/space/basic, -/area/space/nearstation) -"xpq" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark/textured_large, -/area/station/medical/morgue) -"xpr" = ( -/obj/structure/rack, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/gloves/color/black, -/obj/item/clothing/gloves/color/black, -/obj/item/clothing/gloves/color/black, -/obj/item/clothing/mask/gas, -/obj/item/clothing/mask/gas, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) -"xpv" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/segment, -/obj/effect/spawner/random/structure/steam_vent, +"xpo" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/landmark/start/hangover, /turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard) +"xpq" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark/textured_large, +/area/station/medical/morgue) "xpw" = ( /obj/effect/landmark/start/hangover, /turf/open/floor/engine/hull/air, /area/station/hallway/secondary/entry) -"xpF" = ( -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/maintenance/disposal/incinerator) "xpV" = ( /obj/effect/landmark/start/bartender, /obj/effect/turf_decal/tile/dark_green{ @@ -82672,12 +86275,6 @@ }, /turf/open/floor/wood, /area/station/hallway/secondary/service) -"xqb" = ( -/obj/machinery/atmospherics/pipe/smart/simple/orange/visible{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) "xqd" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -82687,11 +86284,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/openspace, /area/station/hallway/secondary/exit/departure_lounge) -"xqi" = ( -/obj/structure/cable, -/obj/item/airlock_painter/decal, -/turf/open/floor/plating, -/area/station/maintenance/port) "xqk" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 8 @@ -82701,16 +86293,6 @@ }, /turf/open/floor/iron/dark, /area/station/science/lobby) -"xqm" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing{ - dir = 6 - }, -/obj/structure/railing/corner{ - dir = 1 - }, -/turf/open/openspace, -/area/station/engineering/lobby) "xqo" = ( /obj/effect/decal/cleanable/ash{ beauty = 50; @@ -82726,10 +86308,6 @@ "xqs" = ( /turf/closed/wall/r_wall, /area/station/engineering/engine_smes) -"xqy" = ( -/obj/structure/stairs/north, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "xqD" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -82737,30 +86315,6 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/engine, /area/station/medical/chemistry) -"xqE" = ( -/obj/machinery/camera/autoname/directional/south, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/machinery/door/firedoor/heavy, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"xqG" = ( -/obj/structure/sign/poster/contraband/communist_state/directional/south, -/obj/item/ammo_casing/spent{ - pixel_x = -8; - pixel_y = -4 - }, -/obj/item/ammo_casing/spent{ - pixel_x = -3; - pixel_y = 3 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "xqK" = ( /obj/structure/table, /obj/item/instrument/harmonica, @@ -82829,6 +86383,18 @@ /obj/effect/turf_decal/siding/wood, /turf/open/floor/wood, /area/station/hallway/primary/central) +"xrw" = ( +/obj/item/stack/sheet/iron{ + amount = 34 + }, +/obj/item/stack/rods{ + amount = 23 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) "xrx" = ( /obj/structure/lattice/catwalk, /turf/open/space/openspace, @@ -82867,13 +86433,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"xrJ" = ( -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) +"xrI" = ( +/obj/machinery/power/smes/engineering, +/obj/structure/cable, +/obj/machinery/status_display/evac/directional/north, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/engine_smes) "xrP" = ( /obj/structure/lattice/catwalk, /obj/structure/table/reinforced, @@ -82882,6 +86447,12 @@ }, /turf/open/openspace, /area/station/security/checkpoint/customs) +"xrU" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "xrX" = ( /obj/machinery/light/directional/west, /obj/effect/turf_decal/tile/blue/opposingcorners{ @@ -82905,6 +86476,23 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/science/cytology) +"xsq" = ( +/obj/machinery/door/airlock/public/glass{ + name = "Holodeck Door" + }, +/obj/effect/turf_decal/trimline/neutral/filled/line{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/neutral/filled/line, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "holodeck" + }, +/obj/machinery/door/firedoor, +/turf/open/floor/iron/dark/textured_large, +/area/station/commons/fitness/recreation) +"xst" = ( +/turf/open/floor/engine/vacuum, +/area/station/engineering/atmos/upper) "xsv" = ( /obj/machinery/light/cold/directional/south, /turf/open/floor/engine, @@ -82929,6 +86517,15 @@ }, /turf/open/floor/iron/white, /area/station/medical/medbay/central) +"xsF" = ( +/obj/effect/landmark/transport/transport_id{ + specific_transport_id = "catwalk_engi" + }, +/obj/structure/transport/linear{ + radial_travel = 0 + }, +/turf/open/openspace, +/area/station/engineering/supermatter/room/upper) "xsJ" = ( /obj/effect/turf_decal/siding/purple{ dir = 8 @@ -82943,40 +86540,69 @@ }, /turf/open/floor/iron, /area/station/science/explab) +"xsK" = ( +/obj/machinery/atmospherics/components/binary/pump{ + dir = 2; + name = "N2O to Mix" + }, +/obj/effect/turf_decal/tile/red/opposingcorners, +/obj/effect/turf_decal/tile/neutral/opposingcorners{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "xsS" = ( /turf/closed/wall/r_wall, /area/station/engineering/transit_tube) "xsU" = ( -/obj/structure/railing{ - dir = 9 +/obj/machinery/conveyor{ + dir = 4; + id = "cargoload" }, -/turf/open/openspace, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/plating, /area/station/cargo/storage) "xta" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/maintenance/department/medical) -"xtf" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 4 - }, -/obj/structure/disposalpipe/segment{ - dir = 2 - }, -/obj/structure/sign/directions/engineering/directional/east{ - dir = 1 +"xts" = ( +/obj/structure/closet/crate/bin, +/obj/structure/sign/poster/official/random/directional/south, +/obj/machinery/button/door/directional/east{ + id = "Cabin5"; + name = "Cabin Bolt Control"; + normaldoorcontrol = 1; + specialfunctions = 4 }, -/turf/open/floor/iron, -/area/station/hallway/primary/starboard) +/turf/open/floor/iron/dark/smooth_large, +/area/station/commons/dorms) +"xtA" = ( +/obj/structure/table/glass, +/obj/item/storage/fancy/candle_box, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "xtC" = ( -/obj/structure/chair{ +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 +/obj/machinery/light/floor, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/turf/open/floor/iron/dark, +/area/station/command/bridge) +"xtE" = ( +/obj/effect/turf_decal/trimline/red/filled/line{ + dir = 4 }, +/obj/effect/landmark/start/depsec/engineering, /turf/open/floor/iron/dark, -/area/station/hallway/primary/central) +/area/station/security/checkpoint/engineering) "xtG" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 1 @@ -82995,18 +86621,14 @@ /obj/structure/window/reinforced/spawner/directional/north, /turf/open/space/basic, /area/station/maintenance/solars/port/aft) +"xtW" = ( +/obj/structure/lattice, +/obj/structure/sign/warning/directional/east, +/turf/open/space/openspace, +/area/space/nearstation) "xut" = ( /turf/closed/wall, /area/station/service/abandoned_gambling_den) -"xuu" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/lesser) -"xuy" = ( -/obj/effect/spawner/random/trash/hobo_squat, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "xuz" = ( /obj/machinery/door/poddoor/shutters/preopen{ dir = 1; @@ -83016,38 +86638,34 @@ /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/medical/pharmacy) -"xuB" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) "xuF" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark/textured, /area/station/construction/mining/aux_base) -"xuG" = ( -/obj/machinery/firealarm/directional/west, +"xuM" = ( /obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/disposal/incinerator) +/obj/machinery/requests_console/directional/south{ + department = "Engineering"; + name = "Engineering Requests Console" + }, +/obj/effect/mapping_helpers/requests_console/assistance, +/obj/effect/mapping_helpers/requests_console/supplies, +/obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5{ + dir = 4 + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "xuP" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 }, /turf/open/floor/plating, /area/station/service/abandoned_gambling_den) -"xuQ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/holopad, -/turf/open/floor/wood/large, -/area/station/medical/psychology) -"xuU" = ( -/obj/machinery/door/airlock{ - name = "Abandoned Chapel" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) "xuV" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -83081,18 +86699,33 @@ dir = 4 }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) -"xvv" = ( -/obj/structure/chair/stool/directional/west, -/obj/effect/landmark/start/hangover, -/turf/open/floor/wood, -/area/station/maintenance/starboard/lesser) +/area/station/ai/satellite/chamber) "xvw" = ( -/obj/machinery/door/window/right/directional/east{ - name = "Captain's Desk"; - req_access = list("captain") +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 }, -/turf/open/floor/wood, +/obj/structure/window/reinforced/spawner/directional/west, +/obj/structure/table/wood, +/obj/item/paper_bin{ + pixel_x = -5; + pixel_y = 9 + }, +/obj/item/folder/blue{ + pixel_x = 6; + pixel_y = -3 + }, +/obj/item/melee/chainofcommand{ + pixel_y = -12 + }, +/obj/item/stamp/denied{ + pixel_x = 8; + pixel_y = 10 + }, +/obj/item/stamp/head/captain{ + pixel_x = 7; + pixel_y = 14 + }, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) "xvy" = ( /obj/structure/table, @@ -83111,48 +86744,34 @@ /obj/machinery/shower/directional/west, /turf/open/floor/iron/showroomfloor, /area/station/medical/medbay/central) -"xvC" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner{ +"xvN" = ( +/obj/item/radio/intercom/directional/west, +/obj/effect/turf_decal/stripes{ dir = 8 }, -/obj/effect/turf_decal/trimline/yellow/filled/corner{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) -"xvD" = ( -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage/tech) -"xvH" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, -/obj/machinery/meter, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) -"xvN" = ( -/obj/item/radio/intercom/directional/west, -/turf/open/floor/carpet, -/area/station/ai_monitored/command/storage/eva) +/turf/open/floor/iron/textured, +/area/station/command/eva) "xwg" = ( /obj/structure/railing/corner/end, /obj/machinery/light/cold/directional/north, /turf/open/floor/iron/dark/textured_large, /area/station/science/genetics) +"xwk" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/door/firedoor/heavy, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "xwn" = ( /obj/structure/sign/warning/vacuum/external/directional/north, /turf/open/floor/engine/hull, /area/space/nearstation) -"xwu" = ( -/obj/structure/cable/multilayer/multiz, -/obj/structure/lattice/catwalk, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) "xwB" = ( /obj/structure/fake_stairs/directional/east, /obj/structure/railing, @@ -83163,15 +86782,6 @@ }, /turf/open/floor/iron/smooth, /area/station/science/robotics) -"xwC" = ( -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/engine_smes) "xwF" = ( /obj/effect/landmark/event_spawn, /turf/open/floor/glass/reinforced, @@ -83194,19 +86804,28 @@ /obj/effect/landmark/start/hangover, /turf/open/openspace, /area/station/hallway/primary/fore) -"xxd" = ( -/obj/effect/turf_decal/tile/dark_green{ - dir = 1 - }, -/obj/effect/mapping_helpers/broken_floor, -/turf/open/floor/iron, -/area/station/maintenance/starboard/fore) "xxe" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, /obj/machinery/power/apc/auto_name/directional/east, /turf/open/openspace, /area/station/hallway/primary/fore) +"xxh" = ( +/obj/effect/turf_decal/tile/dark_green/half/contrasted, +/obj/structure/chair/stool/directional/north, +/turf/open/floor/iron/dark, +/area/station/commons/fitness/recreation) +"xxr" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/iron/dark/small, +/area/station/command/heads_quarters/ce) +"xxs" = ( +/obj/structure/cable, +/obj/effect/spawner/random/structure/steam_vent, +/obj/structure/lattice/catwalk, +/turf/open/openspace, +/area/station/maintenance/starboard/central/upper) "xxz" = ( /obj/structure/sign/warning/gas_mask/directional/west, /obj/structure/table/reinforced/plasmarglass, @@ -83230,6 +86849,11 @@ }, /turf/open/floor/engine, /area/station/medical/chemistry) +"xxE" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/structure/closet/emcloset, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "xxF" = ( /obj/effect/decal/cleanable/blood/footprints{ dir = 4 @@ -83255,14 +86879,33 @@ /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plating, /area/station/maintenance/port/greater) +"xym" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/item/radio/intercom/directional/east, +/obj/effect/turf_decal/tile/red{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "xyn" = ( /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/ai_upload"; - name = "AI Upload Turret Control"; - icon_state = "control_stun" + control_area = "/area/station/ai/upload/chamber"; + name = "AI Upload Turret Control" }, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) +"xyt" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/rack, +/obj/structure/sign/poster/contraband/random/directional/north, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/obj/effect/spawner/random/engineering/vending_restock/common, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central) "xyz" = ( /turf/open/openspace, /area/station/medical/virology) @@ -83273,6 +86916,14 @@ /obj/machinery/firealarm/directional/west, /turf/open/floor/glass, /area/station/medical/patients_rooms/room_a) +"xyD" = ( +/obj/structure/cable, +/obj/machinery/light/small/directional/north, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/airalarm/directional/north, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/main) "xyF" = ( /turf/open/floor/iron/dark/smooth_large, /area/station/service/hydroponics) @@ -83283,11 +86934,14 @@ }, /turf/open/space/basic, /area/space/nearstation) -"xzm" = ( -/obj/effect/spawner/random/maintenance, -/obj/structure/table, +"xzl" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/structure/crate, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, /turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/area/station/maintenance/starboard) "xzn" = ( /obj/machinery/light/red/directional/south, /obj/structure/window/reinforced/plasma/spawner/directional/east, @@ -83296,16 +86950,11 @@ }, /turf/open/floor/engine, /area/station/medical/chemistry) -"xzo" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"xzr" = ( +/obj/structure/table/wood, +/obj/effect/landmark/start/hangover, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "xzy" = ( /turf/closed/wall, /area/station/science/genetics) @@ -83330,20 +86979,6 @@ dir = 4 }, /area/station/science/robotics/lab) -"xzT" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ - dir = 4 - }, -/obj/machinery/requests_console/directional/south{ - department = "Engineering"; - name = "Engineering Requests Console" - }, -/obj/effect/mapping_helpers/requests_console/assistance, -/obj/effect/mapping_helpers/requests_console/supplies, -/obj/machinery/meter, -/turf/open/floor/catwalk_floor, -/area/station/engineering/atmos/upper) "xzX" = ( /obj/machinery/status_display/evac/directional/north, /turf/open/floor/iron, @@ -83353,13 +86988,37 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood, /area/station/hallway/secondary/service) +"xAm" = ( +/obj/structure/rack, +/obj/item/storage/belt/utility, +/obj/item/airlock_painter, +/obj/item/storage/belt/utility, +/obj/item/clothing/gloves/color/fyellow, +/obj/item/clothing/gloves/color/fyellow, +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/commons/storage/primary) "xAn" = ( /obj/machinery/shower/directional/west, /obj/effect/turf_decal/trimline/blue/end{ dir = 8 }, /turf/open/floor/iron/freezer, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) +"xAr" = ( +/obj/machinery/atmospherics/components/binary/pump/off{ + dir = 4; + name = "Mix to Recycle" + }, +/obj/effect/turf_decal/tile/purple/opposingcorners, +/obj/effect/turf_decal/tile/neutral/opposingcorners{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "xAs" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/dark/visible, /obj/machinery/door/window/brigdoor/left/directional/north{ @@ -83378,9 +87037,16 @@ /obj/structure/cable, /turf/open/floor/wood, /area/station/hallway/secondary/service) -"xAI" = ( -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +"xAC" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/simple/green/visible{ + dir = 10 + }, +/obj/effect/turf_decal/siding/yellow/corner{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/engineering/atmos/upper) "xAN" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/blue/full, @@ -83395,17 +87061,6 @@ /obj/structure/window/reinforced/spawner/directional/north, /turf/open/space/openspace, /area/space/nearstation) -"xBa" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment, -/obj/machinery/computer/security/telescreen/ce/directional/west, -/turf/open/floor/iron/dark/small, -/area/station/command/heads_quarters/ce) "xBd" = ( /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/lattice/catwalk, @@ -83440,7 +87095,7 @@ dir = 8 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "xBr" = ( /obj/structure/closet/crate/coffin, /obj/item/toy/plush/lizard_plushie/green{ @@ -83448,30 +87103,28 @@ }, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) -"xBt" = ( -/obj/machinery/camera/autoname/directional/west, -/obj/item/radio/intercom/directional/west, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) +"xBC" = ( +/obj/structure/safe, +/obj/item/storage/fancy/pickles_jar, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "xBE" = ( /turf/closed/wall/r_wall, /area/station/engineering/supermatter) -"xBO" = ( -/obj/structure/chair/office, -/obj/effect/landmark/start/chaplain, -/obj/structure/disposalpipe/segment{ - dir = 4 +"xBP" = ( +/obj/item/trash/can{ + pixel_x = -8 }, -/turf/open/floor/carpet, -/area/station/service/chapel/office) -"xBQ" = ( +/turf/open/floor/engine/hull/air, +/area/station/commons/dorms) +"xBU" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ - dir = 9 + dir = 1 }, -/obj/structure/cable/multilayer/multiz, +/obj/effect/turf_decal/stripes/corner, /turf/open/openspace, -/area/station/engineering/atmos/project) +/area/station/engineering/supermatter/room/upper) "xBZ" = ( /obj/effect/turf_decal/siding/dark{ dir = 8 @@ -83480,7 +87133,7 @@ dir = 4 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "xCe" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 1 @@ -83488,6 +87141,17 @@ /obj/effect/landmark/start/cargo_technician, /turf/open/floor/iron, /area/station/cargo/storage) +"xCj" = ( +/obj/machinery/disposal/bin, +/obj/structure/disposalpipe/trunk{ + dir = 8 + }, +/obj/item/radio/intercom/directional/east, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/commons/fitness/recreation) "xCq" = ( /obj/effect/turf_decal/trimline/yellow/arrow_ccw{ dir = 4 @@ -83499,12 +87163,10 @@ dir = 4 }, /area/station/hallway/secondary/exit/departure_lounge) -"xCt" = ( -/obj/effect/turf_decal/siding/wood/corner{ - dir = 1 - }, +"xCs" = ( +/obj/structure/table/glass, /turf/open/floor/wood, -/area/station/commons/fitness/recreation) +/area/station/maintenance/starboard) "xCu" = ( /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -83522,14 +87184,6 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/port) -"xCx" = ( -/obj/structure/table, -/obj/effect/spawner/random/food_or_drink/refreshing_beverage{ - pixel_x = 5; - pixel_y = 9 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/break_room) "xCz" = ( /obj/structure/bed/pod{ desc = "An old medical bed, just waiting for replacement with something up to date."; @@ -83541,48 +87195,28 @@ /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) "xCI" = ( -/obj/structure/railing, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) -"xCJ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/door/airlock/engineering{ - name = "Engine Room" - }, -/obj/structure/disposalpipe/segment{ - dir = 2 +/obj/effect/turf_decal/trimline/dark_blue/filled/corner, +/obj/effect/turf_decal/trimline/dark_blue/filled/corner{ + dir = 8 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/machinery/door/firedoor, -/turf/open/floor/catwalk_floor, -/area/station/engineering/main) +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "xCK" = ( /turf/open/openspace, /area/station/security/interrogation) "xCO" = ( -/obj/structure/table/reinforced, -/obj/item/paper_bin{ - pixel_x = 1; - pixel_y = 9 - }, -/obj/machinery/door/firedoor, -/obj/machinery/door/window/left/directional/east{ - name = "Cargo Desk"; - req_access = list("cargo") +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 1 }, -/obj/effect/turf_decal/tile/brown/fourcorners, +/obj/effect/turf_decal/trimline/brown/arrow_ccw, /turf/open/floor/iron, -/area/station/cargo/storage) +/area/station/hallway/primary/starboard) "xCQ" = ( /obj/structure/lattice/catwalk, /obj/structure/ladder, /obj/item/radio/intercom/directional/east, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "xCS" = ( /obj/item/clothing/suit/jacket/straight_jacket, /obj/structure/closet, @@ -83606,23 +87240,54 @@ /turf/open/floor/iron/dark/textured_half{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"xCV" = ( +/obj/item/radio/intercom/directional/east, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/commons/dorms) "xCW" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 4 - }, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 }, -/obj/machinery/light/directional/east, +/obj/effect/turf_decal/trimline/brown/filled/corner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/brown/arrow_cw{ + dir = 10 + }, +/obj/effect/turf_decal/trimline/brown/filled/corner, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"xDp" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +"xDe" = ( +/obj/machinery/atmospherics/components/binary/pump/on{ + name = "Waste to Filter"; + dir = 4 + }, +/obj/effect/turf_decal/trimline/red, +/turf/open/floor/iron/freezer, +/area/station/engineering/atmos/pumproom) +"xDq" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, +/obj/machinery/meter/monitored/waste_loop, +/obj/effect/turf_decal/box/red, +/turf/open/floor/iron/freezer, +/area/station/engineering/atmos/pumproom) +"xDw" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/starboard/central/upper) "xDB" = ( /obj/machinery/computer/dna_console{ dir = 1 @@ -83633,15 +87298,11 @@ /obj/structure/disposalpipe/segment, /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"xDR" = ( -/obj/machinery/wall_healer/directional/south, -/turf/open/floor/iron/large, -/area/station/hallway/primary/central) "xDW" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 1 @@ -83674,6 +87335,13 @@ /obj/effect/landmark/start/bitrunner, /turf/open/floor/iron/dark/textured_half, /area/station/cargo/bitrunning/den) +"xEh" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 1 + }, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/iron, +/area/station/engineering/lobby) "xEm" = ( /obj/structure/closet/emcloset, /obj/effect/turf_decal/tile/red/half/contrasted{ @@ -83684,15 +87352,15 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/aft) -"xEo" = ( -/obj/structure/railing/corner, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) "xEr" = ( /obj/item/radio/intercom/directional/north, /turf/open/floor/plating, /area/station/maintenance/disposal) +"xEt" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "xEB" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/segment{ @@ -83700,10 +87368,21 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/construction) +"xED" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/toilet{ + dir = 4 + }, +/turf/open/floor/iron/freezer, +/area/station/commons/dorms) "xEF" = ( /obj/machinery/atmospherics/components/unary/outlet_injector/monitored/plasma_input, /turf/open/floor/engine/plasma, /area/station/engineering/atmos/upper) +"xEJ" = ( +/obj/effect/spawner/random/structure/crate, +/turf/open/floor/plating, +/area/station/maintenance/starboard/upper) "xEL" = ( /obj/structure/rack, /obj/item/melee/skateboard{ @@ -83722,6 +87401,15 @@ /obj/effect/turf_decal/tile/red/opposingcorners, /turf/open/floor/iron/dark, /area/station/maintenance/port) +"xEM" = ( +/obj/machinery/door/poddoor/preopen{ + id = "ceprivacy"; + name = "Chief Engineers Privacy Shutters" + }, +/obj/effect/spawner/structure/window/reinforced/plasma, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/engineering/supermatter/room/upper) "xEO" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 6 @@ -83747,6 +87435,23 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/storage) +"xEW" = ( +/obj/structure/rack, +/obj/item/analyzer, +/obj/item/wrench, +/obj/machinery/light/small/directional/north, +/turf/open/floor/iron/freezer, +/area/station/engineering/atmos/pumproom) +"xFg" = ( +/obj/effect/turf_decal/trimline/yellow/filled/warning{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/engineering/lobby) +"xFh" = ( +/obj/structure/cable, +/turf/closed/wall, +/area/station/medical/surgery) "xFj" = ( /obj/effect/turf_decal/tile/blue/full, /obj/effect/turf_decal/tile/dark/full, @@ -83776,21 +87481,6 @@ }, /turf/open/openspace, /area/station/construction/storage_wing) -"xFw" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/duct, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) -"xFA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/closet/athletic_mixed, -/obj/structure/disposalpipe/segment{ - dir = 9 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) "xFH" = ( /obj/machinery/light/directional/east, /obj/structure/cable, @@ -83799,11 +87489,6 @@ }, /turf/open/floor/iron/dark, /area/station/security/evidence) -"xFJ" = ( -/obj/structure/ladder, -/obj/effect/turf_decal/stripes/box, -/turf/open/floor/iron/smooth, -/area/station/engineering/hallway) "xFM" = ( /obj/structure/plaque/static_plaque/golden/commission/birdboat{ pixel_y = 32 @@ -83827,21 +87512,21 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/station/maintenance/port/aft) -"xFS" = ( -/obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/machinery/door/airlock/command{ - name = "Abandoned Lab" - }, -/turf/open/floor/iron/dark, -/area/station/maintenance/starboard/lesser) +"xFN" = ( +/obj/machinery/door/poddoor/incinerator_atmos_main, +/turf/open/floor/engine, +/area/station/engineering/atmos/upper) "xFT" = ( /turf/open/floor/iron/stairs, /area/station/maintenance/starboard/aft) +"xGb" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/lattice/catwalk, +/obj/structure/railing/corner{ + dir = 8 + }, +/turf/open/water/no_planet_atmos, +/area/station/maintenance/starboard/fore) "xGe" = ( /obj/structure/railing/corner, /turf/open/openspace, @@ -83859,16 +87544,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron, /area/station/cargo/storage) -"xGG" = ( -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/obj/effect/turf_decal/tile/blue/opposingcorners{ - dir = 1 - }, -/obj/effect/turf_decal/siding/blue, -/turf/open/floor/iron/white, -/area/station/medical/medbay/central) "xGL" = ( /obj/effect/turf_decal/siding/purple{ dir = 4 @@ -83881,6 +87556,17 @@ }, /turf/open/floor/iron, /area/station/science/explab) +"xGN" = ( +/obj/machinery/door/airlock/maintenance, +/obj/effect/mapping_helpers/airlock/abandoned, +/turf/open/floor/plating, +/area/station/maintenance/aft) +"xGS" = ( +/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ + dir = 9 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "xGU" = ( /obj/structure/table/reinforced, /obj/item/tank/internals/oxygen, @@ -83890,6 +87576,19 @@ }, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) +"xGV" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 10 + }, +/obj/structure/railing/corner{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/openspace, +/area/station/engineering/lobby) "xHi" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron, @@ -83904,38 +87603,78 @@ /obj/item/storage/medkit/brute, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"xHP" = ( -/obj/structure/chair{ - dir = 1; - pixel_y = -2 +"xHC" = ( +/obj/effect/spawner/random/trash/garbage{ + spawn_scatter_radius = 1 }, -/turf/open/floor/glass, -/area/station/commons/fitness/recreation) -"xHU" = ( -/obj/machinery/modular_computer/preset/id{ - dir = 1 +/turf/open/floor/engine/hull/air, +/area/station/maintenance/aft/upper) +"xHE" = ( +/obj/structure/sign/directions/command/directional/west{ + dir = 2; + pixel_y = 5; + pixel_x = 0 }, -/obj/structure/disposalpipe/segment{ - dir = 9 +/obj/structure/sign/directions/evac/directional/west{ + dir = 2; + pixel_y = -3; + pixel_x = 0 }, -/turf/open/floor/engine, -/area/station/command/heads_quarters/ce) +/turf/closed/wall, +/area/station/commons/locker) +"xHS" = ( +/obj/machinery/light/small/directional/east, +/obj/structure/sign/clock/directional/east, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "xHV" = ( -/obj/effect/turf_decal/siding/blue, -/obj/effect/turf_decal/siding/blue{ +/obj/effect/landmark/navigate_destination/hop, +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/siding/blue/corner{ dir = 1 }, -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=2"; - location = "Head of Personnel" +/obj/effect/turf_decal/siding/blue/corner{ + dir = 8 }, /turf/open/floor/iron/dark/smooth_large, /area/station/hallway/primary/central) +"xId" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/wood, +/area/station/maintenance/starboard) "xIe" = ( /obj/structure/lattice, /obj/effect/spawner/random/structure/grille, /turf/open/space/openspace, /area/space/nearstation) +"xIh" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/clock/directional/east, +/obj/structure/chair/plastic{ + dir = 1 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) +"xIk" = ( +/obj/structure/railing{ + dir = 8 + }, +/obj/effect/turf_decal/bot_red, +/obj/structure/rack, +/obj/item/clothing/suit/hazardvest, +/obj/item/clothing/suit/hazardvest, +/obj/item/clothing/suit/hazardvest, +/obj/item/clothing/mask/gas, +/obj/item/clothing/mask/gas, +/obj/item/clothing/mask/gas, +/obj/item/clothing/gloves/color/black, +/obj/item/clothing/gloves/color/black, +/obj/item/clothing/gloves/color/black, +/obj/effect/turf_decal/siding/dark{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "xIl" = ( /obj/effect/turf_decal/siding/purple{ dir = 4 @@ -83948,12 +87687,6 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/science/lab) -"xIo" = ( -/obj/machinery/newscaster/directional/east, -/obj/machinery/light/directional/south, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark/small, -/area/station/command/heads_quarters/ce) "xIp" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -83962,42 +87695,36 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/iron, /area/station/hallway/secondary/construction) -"xIz" = ( -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5, -/obj/effect/turf_decal/tile/neutral/half{ +"xIs" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners{ dir = 1 }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) -"xIJ" = ( -/obj/machinery/computer/slot_machine{ - pixel_y = 2 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/obj/structure/chair/office, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "xIN" = ( /obj/structure/lattice/catwalk, /obj/structure/railing, /turf/open/openspace, /area/station/maintenance/port/fore) -"xIS" = ( -/obj/machinery/meter{ - name = "Mix Meter" +"xIT" = ( +/obj/machinery/door/airlock/maintenance, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 8 }, -/obj/machinery/atmospherics/pipe/multiz/cyan/visible{ - dir = 8; - name = "Air Mix Multideck Adapter" +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 }, -/obj/effect/turf_decal/tile/neutral/full, -/turf/open/floor/iron/dark, -/area/station/engineering/atmos/project) -"xIV" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/poster/contraband/rebels_unite/directional/west, /turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/area/station/maintenance/department/crew_quarters/dorms) +"xIW" = ( +/obj/effect/turf_decal/trimline/yellow/warning{ + dir = 1 + }, +/turf/open/floor/engine/hull, +/area/station/solars/starboard/fore) "xJo" = ( /obj/effect/turf_decal/tile/red/opposingcorners, /turf/open/floor/iron/dark, @@ -84006,15 +87733,16 @@ /obj/machinery/vending/cigarette, /turf/open/floor/wood/large, /area/station/medical/break_room) -"xJt" = ( -/obj/structure/lattice/catwalk, -/obj/item/clothing/accessory/armband/cargo{ - pixel_x = 8; - pixel_y = 10 +"xJs" = ( +/obj/machinery/power/apc/auto_name/directional/north, +/obj/structure/cable, +/obj/machinery/light/warm/directional/north, +/obj/effect/turf_decal/tile/dark_green/half/contrasted{ + dir = 1 }, -/obj/structure/sign/poster/contraband/rebels_unite/directional/north, -/turf/open/openspace, -/area/station/maintenance/starboard/aft) +/obj/effect/turf_decal/tile/neutral/half/contrasted, +/turf/open/floor/iron/dark, +/area/station/commons/dorms) "xJH" = ( /obj/machinery/status_display/ai/directional/east, /obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ @@ -84030,20 +87758,32 @@ pixel_y = 5 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"xJI" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 +/area/station/ai/satellite/interior) +"xJJ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/sign/flag/tizira/directional/south, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) +"xJL" = ( +/obj/item/clothing/head/cone{ + pixel_x = 5; + pixel_y = 10 }, /turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/area/station/maintenance/starboard) "xJV" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/closet/firecloset, /turf/open/floor/plating, /area/station/hallway/secondary/entry) +"xJZ" = ( +/obj/effect/mapping_helpers/broken_floor, +/turf/open/floor/eighties, +/area/station/maintenance/department/crew_quarters/dorms) "xKb" = ( /obj/machinery/holopad, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -84052,14 +87792,17 @@ /turf/open/floor/iron/dark/textured, /area/station/construction/mining/aux_base) "xKc" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 4 +/obj/machinery/light/directional/east, +/obj/machinery/status_display/supply{ + pixel_x = 32 }, +/obj/structure/railing, /obj/machinery/disposal/bin, -/obj/effect/turf_decal/bot, /obj/structure/disposalpipe/trunk{ dir = 8 }, +/obj/effect/turf_decal/bot, +/obj/machinery/door/firedoor/border_only, /turf/open/floor/iron, /area/station/cargo/storage) "xKg" = ( @@ -84078,6 +87821,12 @@ /obj/structure/railing/corner/end, /turf/open/openspace, /area/station/maintenance/port/aft) +"xKo" = ( +/obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ + dir = 10 + }, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "xKr" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/light/warm/dim/directional/east, @@ -84086,6 +87835,22 @@ }, /turf/open/floor/glass, /area/station/science/zoo) +"xKs" = ( +/obj/machinery/power/apc/auto_name/directional/west, +/obj/structure/cable, +/obj/effect/turf_decal/trimline/red/filled/line{ + dir = 8 + }, +/obj/structure/table, +/obj/item/paper_bin{ + pixel_x = -1; + pixel_y = 5 + }, +/obj/item/pen{ + pixel_y = 5 + }, +/turf/open/floor/iron/dark, +/area/station/security/checkpoint/engineering) "xKx" = ( /obj/effect/turf_decal/trimline/yellow/filled/corner, /turf/open/floor/iron, @@ -84100,6 +87865,11 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating/airless, /area/station/medical/virology) +"xKJ" = ( +/obj/structure/lattice, +/obj/structure/sign/warning/directional/north, +/turf/open/openspace, +/area/station/commons/fitness/recreation) "xKQ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/segment{ @@ -84108,6 +87878,10 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/hallway/abandoned_recreation) +"xKS" = ( +/obj/machinery/light/directional/east, +/turf/open/floor/glass/plasma, +/area/station/engineering/atmos/upper) "xLf" = ( /obj/structure/window/reinforced/tinted/frosted/spawner/directional/west, /obj/structure/chair/sofa/middle/brown{ @@ -84115,16 +87889,11 @@ }, /turf/open/floor/glass/reinforced, /area/station/service/library) -"xLg" = ( -/obj/machinery/computer/atmos_control/carbon_tank, -/obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ - dir = 4 - }, -/obj/effect/turf_decal/tile/dark/half{ - dir = 1 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) +"xLl" = ( +/obj/structure/lattice/catwalk, +/obj/effect/landmark/firealarm_sanity, +/turf/open/openspace, +/area/station/commons/dorms) "xLy" = ( /obj/structure/cable, /obj/effect/landmark/secequipment, @@ -84141,13 +87910,6 @@ /obj/structure/sign/poster/abductor/ayy_cops, /turf/closed/wall, /area/station/maintenance/port) -"xLF" = ( -/obj/effect/turf_decal/bot, -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/turf/open/floor/iron/smooth, -/area/station/engineering/hallway) "xLQ" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -84169,6 +87931,25 @@ /obj/machinery/power/apc/auto_name/directional/west, /turf/open/floor/plating, /area/station/security/execution/education) +"xMf" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/trimline/yellow/filled/warning{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/engineering/gravity_generator) +"xMn" = ( +/obj/structure/table, +/obj/machinery/computer/arcade/orion_trail{ + desc = "For gamers only. Casuals need not apply."; + icon_screen = "library"; + icon_state = "oldcomp"; + name = "Gamer Computer" + }, +/turf/open/floor/engine/hull/air, +/area/station/maintenance/starboard/upper) "xMq" = ( /obj/structure/chair/sofa/corp/left{ dir = 8 @@ -84178,13 +87959,11 @@ /obj/structure/sign/poster/official/moth_epi/directional/east, /turf/open/floor/carpet/blue, /area/station/medical/break_room) -"xMv" = ( -/obj/structure/lattice, -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/turf/open/openspace, -/area/station/maintenance/starboard/lesser) +"xMu" = ( +/obj/structure/rack, +/obj/item/storage/toolbox/emergency, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "xMz" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -84203,11 +87982,25 @@ }, /turf/open/floor/iron/textured_large, /area/station/medical/virology) +"xMJ" = ( +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) "xML" = ( /obj/structure/disposalpipe/segment, /obj/machinery/light/directional/west, /turf/open/floor/wood, /area/station/hallway/primary/central) +"xMT" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/turf/open/floor/iron/textured_large, +/area/station/medical/virology) "xMV" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -84244,15 +88037,20 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/smooth_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) -"xNe" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/area/station/ai/satellite/foyer) +"xNk" = ( +/obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ + dir = 1 + }, /obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 5 +/obj/effect/turf_decal/stripes/line{ + dir = 4 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/meter, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) "xNn" = ( /obj/machinery/atmospherics/pipe/smart/manifold/cyan/visible{ dir = 4 @@ -84277,16 +88075,21 @@ /turf/open/floor/wood, /area/station/security/courtroom) "xNB" = ( -/obj/structure/table/wood, /obj/structure/sign/painting/library{ persistence_id = "captain"; - pixel_y = 32 + pixel_y = 32; + dir = 1 }, -/obj/machinery/fax{ - fax_name = "Captain's Office"; - name = "Captain's Fax Machine" +/obj/structure/table/wood, +/obj/item/storage/briefcase/secure{ + pixel_x = 4; + pixel_y = 8 }, -/turf/open/floor/wood, +/obj/item/paper_bin{ + pixel_x = -5; + pixel_y = 6 + }, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) "xNF" = ( /obj/structure/lattice/catwalk, @@ -84323,20 +88126,17 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor/iron_white, -/area/station/ai_monitored/turret_protected/aisat_interior) -"xNX" = ( -/obj/effect/turf_decal/trimline/yellow/filled/corner{ +/area/station/ai/satellite/interior) +"xOh" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters{ + id = "CargowatchShutter"; + name = "Outside Shutter"; dir = 4 }, -/obj/effect/turf_decal/trimline/yellow/filled/corner, -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) -"xOh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/iron, -/area/station/maintenance/starboard/central) +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/command/heads_quarters/qm) "xOl" = ( /obj/item/restraints/handcuffs/fake, /obj/structure/table/wood, @@ -84389,24 +88189,32 @@ }, /turf/open/space/openspace, /area/space/nearstation) +"xOG" = ( +/obj/effect/turf_decal/stripes/red/line, +/obj/effect/turf_decal/stripes/red/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold/cyan/visible{ + dir = 8 + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room) +"xOU" = ( +/obj/structure/table/wood, +/obj/effect/spawner/random/bureaucracy/briefcase, +/obj/effect/spawner/random/bureaucracy/folder, +/turf/open/floor/wood/large, +/area/station/commons/dorms) "xOW" = ( /turf/open/floor/plating, /area/station/security/interrogation) -"xPg" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/disposalpipe/segment, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) -"xPj" = ( -/obj/machinery/duct, -/obj/machinery/door/airlock/maintenance, +"xPy" = ( +/obj/machinery/power/smes/engineering, +/obj/structure/sign/warning/electric_shock/directional/north, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 1 - }, -/turf/open/floor/plating, -/area/station/commons/toilet/restrooms) +/obj/machinery/light/small/red/directional/north, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/engine_smes) "xPU" = ( /obj/structure/sign/poster/contraband/space_cube/directional/east, /turf/open/floor/plating, @@ -84417,13 +88225,16 @@ }, /turf/open/floor/iron/dark, /area/station/security/interrogation) -"xQB" = ( -/obj/machinery/camera/directional/north{ - c_tag = "Atmospherics - co2 Cell"; - name = "atmospherics camera" - }, -/turf/open/floor/engine/co2, -/area/station/engineering/atmos/upper) +"xQg" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/turf/open/floor/wood/large, +/area/station/commons/dorms) +"xQr" = ( +/obj/structure/lattice/catwalk, +/obj/effect/spawner/random/maintenance/two, +/turf/open/openspace, +/area/station/maintenance/aft/upper) "xQC" = ( /obj/machinery/camera/autoname/directional/north, /obj/structure/closet/crate/trashcart/filled, @@ -84442,6 +88253,14 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, /area/station/maintenance/department/medical) +"xQJ" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/generic, +/obj/item/radio/intercom/directional/north, +/obj/structure/cable/multilayer/multiz, +/obj/machinery/light/small/directional/north, +/turf/open/floor/plating, +/area/station/engineering/atmos/office) "xQK" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -84462,32 +88281,10 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured_large, /area/station/medical/morgue) -"xQU" = ( -/obj/machinery/firealarm/directional/south, -/obj/machinery/modular_computer/preset/cargochat/engineering{ - dir = 1 - }, -/obj/machinery/requests_console/directional/west{ - name = "Engineering Requests Console" - }, -/obj/effect/mapping_helpers/requests_console/supplies, -/obj/effect/mapping_helpers/requests_console/assistance, -/turf/open/floor/wood, -/area/station/engineering/lobby) -"xQV" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/photocopier/prebuilt, -/turf/open/floor/wood, -/area/station/engineering/lobby) "xQW" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 8 - }, /obj/machinery/light/directional/south, /obj/machinery/camera/autoname/directional/south, -/turf/open/floor/iron/large, +/turf/open/floor/iron/edge, /area/station/hallway/primary/central) "xRg" = ( /obj/effect/decal/cleanable/dirt, @@ -84514,11 +88311,30 @@ /obj/item/storage/bag/plants, /turf/open/floor/iron/dark, /area/station/service/hydroponics/garden/abandoned) -"xRI" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "cargounload" +"xRp" = ( +/obj/machinery/door/airlock/hatch{ + name = "MiniSat Access" + }, +/obj/effect/mapping_helpers/airlock/access/any/engineering/tcoms, +/obj/machinery/door/firedoor, +/obj/effect/mapping_helpers/airlock/access/any/command/minisat, +/obj/effect/mapping_helpers/airlock/access/any/command/general, +/obj/effect/mapping_helpers/airlock/access/any/command/general, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/door/poddoor/preopen{ + id = "transitlockdown" }, +/obj/effect/landmark/navigate_destination/minisat_access_tcomms_ai, +/turf/open/floor/iron/dark, +/area/station/engineering/transit_tube) +"xRD" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/light/floor, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) +"xRI" = ( /obj/effect/turf_decal/trimline/brown/filled/corner{ dir = 1 }, @@ -84528,25 +88344,17 @@ dir = 1 }, /obj/structure/cable, -/turf/open/floor/iron, -/area/station/cargo/storage) -"xRJ" = ( -/obj/item/banner/cargo/mundane{ - pixel_y = 27 +/obj/structure/railing{ + dir = 8 }, -/obj/effect/decal/cleanable/crayon{ - icon_state = "body"; - name = "body"; - pixel_y = 10 +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 4 }, -/obj/item/ammo_casing/spent{ - pixel_x = -8; - pixel_y = -4 +/obj/machinery/door/firedoor/border_only{ + dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/turf/open/floor/iron, +/area/station/cargo/storage) "xRK" = ( /obj/structure/lattice/catwalk, /obj/effect/turf_decal/stripes/line{ @@ -84580,6 +88388,10 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/surgery) +"xSc" = ( +/obj/machinery/door/poddoor/incinerator_atmos_aux, +/turf/open/floor/engine/airless, +/area/station/engineering/atmos/upper) "xSj" = ( /obj/structure/railing, /turf/open/floor/iron/stairs/medium{ @@ -84592,8 +88404,22 @@ dir = 8 }, /obj/effect/baseturf_helper/reinforced_plating/ceiling, -/turf/open/floor/wood, +/obj/effect/turf_decal/siding/wood{ + dir = 5 + }, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) +"xSq" = ( +/obj/structure/lattice/catwalk, +/obj/structure/railing{ + dir = 1 + }, +/obj/structure/railing, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/openspace, +/area/station/command/meeting_room/council) "xSv" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/green/filled/line{ @@ -84606,10 +88432,27 @@ /obj/machinery/door/firedoor, /turf/open/floor/engine/hull/air, /area/station/hallway/primary/starboard) +"xSA" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/machinery/atmospherics/pipe/multiz/purple/visible{ + dir = 2; + name = "mix to recycle multi-deck adapter" + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) +"xSB" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/vending/cigarette, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "xSD" = ( /obj/structure/window/reinforced/spawner/directional/east, /turf/open/floor/iron, /area/station/science/breakroom) +"xSL" = ( +/obj/structure/grille, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "xSO" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -84632,7 +88475,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "xSS" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -84668,23 +88511,39 @@ /obj/effect/spawner/random/trash/crushed_can, /turf/open/floor/iron/smooth_large, /area/station/maintenance/department/medical) +"xTq" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/decal/cleanable/blood/oil, +/obj/machinery/airalarm/directional/south, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) +"xTs" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/space_heater, +/turf/open/floor/plating, +/area/station/maintenance/starboard) "xTt" = ( -/obj/structure/table/wood, /obj/item/radio/intercom/directional/west{ freerange = 1; name = "Captain's Intercom"; pixel_x = 0; pixel_y = 25 }, -/obj/item/pinpointer/nuke{ - pixel_x = -7; +/obj/structure/table/wood, +/obj/item/flashlight/lamp/green{ + pixel_x = 1; pixel_y = 5 }, +/obj/item/pen/fourcolor{ + pixel_x = -15; + pixel_y = 1 + }, /obj/item/hand_tele{ pixel_x = 13; - pixel_y = 15 + pixel_y = 5 }, -/turf/open/floor/wood, +/turf/open/floor/wood/large, /area/station/command/heads_quarters/captain/private) "xTD" = ( /obj/structure/disposalpipe/segment{ @@ -84695,6 +88554,13 @@ }, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) +"xTJ" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) "xTT" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /obj/machinery/disposal/bin, @@ -84713,8 +88579,16 @@ /area/space/nearstation) "xUa" = ( /obj/effect/mapping_helpers/iannewyear, -/turf/open/floor/carpet, +/obj/effect/turf_decal/siding/wood/corner, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) +"xUf" = ( +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/anticorner/contrasted, +/turf/open/floor/iron/dark, +/area/station/hallway/primary/central) "xUj" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -84756,7 +88630,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "xUy" = ( /obj/machinery/light/directional/west, /obj/machinery/light_switch/directional/west, @@ -84782,7 +88656,7 @@ pixel_y = 2 }, /obj/structure/window/reinforced/spawner/directional/west, -/turf/open/floor/wood, +/turf/open/floor/iron/dark, /area/station/command/gateway) "xUE" = ( /obj/effect/turf_decal/stripes/line{ @@ -84823,18 +88697,11 @@ }, /turf/open/floor/iron/white/textured_large, /area/station/medical/medbay/central) -"xUV" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment, -/obj/machinery/light/directional/east, +"xUT" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/maintenance, /turf/open/floor/iron, -/area/station/commons/dorms) -"xUW" = ( -/obj/structure/cable, -/obj/structure/sign/poster/contraband/fake_bombable/directional/south, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/maintenance/starboard) "xVq" = ( /obj/effect/turf_decal/tile/red/fourcorners, /turf/open/floor/iron/dark, @@ -84858,7 +88725,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/aux_base, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -84880,13 +88747,12 @@ /obj/structure/sign/poster/official/obey/directional/north, /turf/open/floor/iron/dark, /area/station/maintenance/port) -"xVF" = ( -/obj/structure/lattice/catwalk, -/obj/structure/chair/office{ - dir = 8 - }, -/turf/open/openspace, -/area/station/engineering/break_room) +"xVG" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/camera/autoname/directional/north, +/obj/item/radio/intercom/directional/north, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "xVJ" = ( /obj/machinery/firealarm/directional/south, /obj/structure/chair/stool/bar/directional/east, @@ -84895,30 +88761,17 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/commons/lounge) -"xVL" = ( -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/obj/effect/turf_decal/tile/blue/opposingcorners{ - dir = 1 - }, -/obj/effect/turf_decal/siding/blue{ - dir = 10 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/white, -/area/station/medical/medbay/central) "xVM" = ( /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating, /area/station/service/abandoned_gambling_den) -"xVZ" = ( -/obj/structure/lattice/catwalk, -/obj/structure/railing, -/turf/open/openspace, -/area/station/maintenance/starboard/fore) +"xVP" = ( +/obj/effect/turf_decal/delivery/white{ + color = "#52B4E9" + }, +/obj/machinery/power/port_gen/pacman, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "xWw" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -84938,12 +88791,16 @@ }, /turf/open/openspace, /area/station/maintenance/port/fore) -"xWy" = ( +"xWz" = ( +/obj/structure/cable, +/obj/machinery/power/apc/auto_name/directional/south, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron/dark, -/area/station/commons/dorms) +/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5{ + dir = 4 + }, +/turf/open/floor/catwalk_floor/iron_smooth, +/area/station/engineering/atmos) "xWK" = ( /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -84953,13 +88810,17 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/eighties, /area/station/maintenance/hallway/abandoned_recreation) -"xWM" = ( -/obj/item/grapple_gun{ - pixel_x = 2; - pixel_y = 3 +"xWN" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) +/obj/effect/mapping_helpers/burnt_floor, +/obj/structure/cable, +/obj/effect/turf_decal/siding/yellow{ + dir = 1 + }, +/turf/open/floor/iron/dark/textured_large, +/area/station/engineering/atmos/upper) "xWS" = ( /obj/effect/turf_decal/trimline/dark_blue/corner{ dir = 4 @@ -84967,7 +88828,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "xWT" = ( /obj/structure/railing{ dir = 1 @@ -84992,6 +88853,28 @@ /obj/effect/landmark/start/assistant, /turf/open/floor/iron/dark/smooth_half, /area/station/service/library) +"xXj" = ( +/obj/structure/cable, +/obj/machinery/door/window/brigdoor/left/directional/east{ + name = "Air Pump Room"; + req_access = list("atmospherics") + }, +/turf/open/floor/iron/freezer, +/area/station/engineering/atmos/pumproom) +"xXm" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/structure/disposalpipe/junction/yjunction{ + dir = 4 + }, +/obj/machinery/navbeacon{ + codes_txt = "patrol;next_patrol=7-Gateway"; + location = "6-Courtroom" + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/catwalk_floor/iron, +/area/station/hallway/primary/central) "xXr" = ( /obj/structure/table/wood, /obj/effect/decal/cleanable/cobweb, @@ -85013,12 +88896,6 @@ dir = 8 }, /area/station/maintenance/hallway/abandoned_recreation) -"xXx" = ( -/obj/structure/railing{ - dir = 10 - }, -/turf/open/floor/plating, -/area/station/maintenance/starboard/aft) "xXy" = ( /obj/structure/railing{ dir = 1 @@ -85029,6 +88906,16 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"xXC" = ( +/obj/item/pickaxe{ + pixel_x = 4; + pixel_y = 12 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "xXH" = ( /obj/effect/turf_decal/siding/blue{ dir = 5 @@ -85045,6 +88932,18 @@ /obj/structure/broken_flooring/singular/always_floorplane/directional/east, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"xXQ" = ( +/obj/structure/closet/secure_closet/atmospherics, +/turf/open/floor/glass/plasma, +/area/station/engineering/atmos/upper) +"xXR" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/structure/railing/corner{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/dark, +/area/station/maintenance/starboard/upper) "xXU" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, @@ -85060,7 +88959,7 @@ codes_txt = "patrol;next_patrol=10-Vault"; location = "9-Bridge" }, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) "xXV" = ( /obj/structure/reflector/double{ @@ -85077,24 +88976,13 @@ /obj/item/kirbyplants/random, /turf/open/floor/wood, /area/station/security/detectives_office) -"xYa" = ( -/obj/structure/frame, -/obj/structure/sign/poster/contraband/shamblers_juice/directional/east, -/turf/open/floor/eighties, -/area/station/maintenance/starboard/fore) -"xYb" = ( -/obj/structure/cable/layer1, -/turf/open/floor/catwalk_floor, -/area/station/engineering/main) -"xYf" = ( -/obj/structure/table, -/obj/item/reagent_containers/cup/soda_cans/cola{ - pixel_x = -4; - pixel_y = 9 - }, -/obj/effect/spawner/random/entertainment/coin, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) +"xYc" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/simple/orange/visible, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/catwalk_floor/iron_dark, +/area/station/engineering/atmos/upper) "xYh" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -85103,37 +88991,26 @@ /obj/structure/cable, /turf/open/floor/iron/textured_large, /area/station/security/prison) -"xYi" = ( -/obj/machinery/light/directional/south, -/turf/open/floor/plating, -/area/station/engineering/supermatter/room) "xYk" = ( -/obj/machinery/computer/monitor{ +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/tile/dark_blue{ dir = 1 }, -/obj/machinery/airalarm/directional/south, -/obj/machinery/status_display/evac/directional/south, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/machinery/light/directional/south, -/turf/open/floor/iron/dark, -/area/station/command/bridge) +/obj/effect/turf_decal/trimline/dark_blue/filled/line, +/obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/meeting_room/council) "xYm" = ( /obj/structure/railing/corner, /obj/effect/turf_decal/siding/thinplating/corner, /turf/open/floor/iron/dark/smooth_half, /area/station/service/library) "xYn" = ( -/obj/structure/table/wood, -/obj/item/paper_bin{ - pixel_x = -5; - pixel_y = 4 - }, -/obj/item/stamp/head/hop{ - pixel_x = 8; - pixel_y = 4 - }, /obj/structure/cable, -/turf/open/floor/carpet, +/obj/effect/turf_decal/siding/wood{ + dir = 10 + }, +/turf/open/floor/carpet/green, /area/station/command/heads_quarters/hop) "xYy" = ( /obj/machinery/nuclearbomb/selfdestruct, @@ -85141,12 +89018,13 @@ /turf/open/floor/circuit/green{ luminosity = 2 }, -/area/station/ai_monitored/command/nuke_storage) -"xYL" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/command/vault) +"xYC" = ( +/obj/machinery/shower/directional/south, +/obj/structure/sink/directional/east, +/obj/structure/mirror/directional/west, +/turf/open/floor/iron/freezer, +/area/station/commons/dorms) "xYS" = ( /obj/machinery/computer/operating{ dir = 1 @@ -85154,17 +89032,26 @@ /obj/effect/turf_decal/tile/purple/half, /turf/open/floor/iron/white/textured_half, /area/station/science/robotics) -"xZd" = ( -/turf/open/floor/iron/smooth, -/area/station/engineering/atmos/upper) "xZn" = ( /obj/machinery/firealarm/directional/west, /turf/open/floor/iron, /area/station/hallway/primary/aft) "xZp" = ( -/obj/machinery/modular_computer/preset/research, -/turf/open/floor/carpet, -/area/station/command/bridge) +/obj/structure/table/wood, +/obj/item/flashlight/lamp/green{ + pixel_x = 1 + }, +/obj/item/lighter{ + pixel_x = 7; + pixel_y = -5 + }, +/turf/open/floor/carpet/executive, +/area/station/command/meeting_room/council) +"xZu" = ( +/obj/machinery/photocopier/prebuilt, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/station/maintenance/aft) "xZG" = ( /obj/structure/table/wood, /obj/item/pen/fourcolor{ @@ -85176,6 +89063,12 @@ }, /turf/open/floor/carpet, /area/station/service/chapel/office) +"xZM" = ( +/obj/effect/spawner/random/structure/chair_maintenance{ + dir = 8 + }, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore) "xZP" = ( /obj/structure/table, /obj/item/wrench{ @@ -85191,12 +89084,12 @@ dir = 2 }, /obj/effect/mapping_helpers/mail_sorting/security/detectives_office, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) -"yav" = ( -/obj/structure/lattice/catwalk, -/turf/open/floor/engine/hull/air, -/area/station/maintenance/starboard/fore) +"yau" = ( +/obj/effect/spawner/structure/window/reinforced/plasma, +/turf/open/floor/plating, +/area/station/engineering/atmos/upper) "yaw" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -85209,11 +89102,19 @@ }, /turf/open/floor/wood/large, /area/station/hallway/secondary/service) +"yay" = ( +/obj/structure/window/reinforced/plasma/spawner/directional/east, +/obj/machinery/holopad, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "yaE" = ( /obj/effect/decal/cleanable/dirt, /obj/item/kirbyplants/random/fullysynthetic, /turf/open/floor/wood, /area/station/maintenance/hallway/abandoned_recreation) +"yaI" = ( +/turf/closed/wall, +/area/station/hallway/primary/fore) "yaM" = ( /obj/machinery/vending/wardrobe/gene_wardrobe, /obj/structure/extinguisher_cabinet/directional/north, @@ -85238,18 +89139,6 @@ }, /turf/open/floor/plating, /area/station/security/execution/education) -"ybh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/table/wood, -/obj/item/stamp/granted{ - pixel_x = -5; - pixel_y = 11 - }, -/obj/item/stamp/denied{ - pixel_x = 7 - }, -/turf/open/floor/wood, -/area/station/maintenance/starboard/aft) "ybF" = ( /obj/effect/turf_decal/stripes/line, /obj/effect/turf_decal/trimline/green/filled/corner{ @@ -85270,6 +89159,13 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/space_hut) +"ybM" = ( +/obj/machinery/computer/atmos_control/oxygen_tank, +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "ybO" = ( /obj/structure/rack, /obj/structure/window/reinforced/spawner/directional/north{ @@ -85284,8 +89180,12 @@ pixel_x = -4; pixel_y = 1 }, -/turf/open/floor/wood, -/area/station/ai_monitored/command/storage/eva) +/obj/machinery/door/window/right/directional/east{ + name = "Jetpack Storage"; + req_access = list("eva") + }, +/turf/open/floor/iron/dark/small, +/area/station/command/eva) "ybR" = ( /turf/open/floor/glass/reinforced, /area/station/construction/storage_wing) @@ -85296,14 +89196,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark/textured_half, /area/station/science/robotics/lab) -"ybT" = ( -/obj/structure/table/reinforced/rglass, -/obj/machinery/fax{ - fax_name = "Chief Engineer's Office"; - name = "Chief Engineer's Fax Machine" - }, -/turf/open/floor/engine, -/area/station/command/heads_quarters/ce) "ybW" = ( /obj/item/melee/flyswatter{ pixel_x = 10 @@ -85369,15 +89261,16 @@ /turf/open/floor/wood/large, /area/station/command/heads_quarters/cmo) "yco" = ( -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 4 +/obj/effect/turf_decal/stripes/line{ + dir = 1 }, -/obj/machinery/power/apc/auto_name/directional/east, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/command/heads_quarters/qm) +/obj/structure/railing{ + dir = 1; + pixel_y = -7 + }, +/obj/effect/turf_decal/stripes/line, +/turf/open/floor/iron/textured, +/area/station/cargo/storage) "yct" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -85388,6 +89281,19 @@ /obj/machinery/light/floor, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) +"ycy" = ( +/obj/structure/closet/crate/secure/engineering{ + name = "Advanced Materials" + }, +/obj/item/stack/sheet/plasteel, +/obj/item/stack/sheet/mineral/plasma{ + amount = 30 + }, +/obj/effect/turf_decal/delivery/white{ + color = "#52B4E9" + }, +/turf/open/floor/engine, +/area/station/engineering/supermatter/room/upper) "ycC" = ( /obj/machinery/power/apc/auto_name/directional/south, /obj/structure/cable, @@ -85396,7 +89302,17 @@ pixel_y = 12 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) +"ycK" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/trimline/green/filled/corner{ + dir = 1 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron/textured_large, +/area/station/medical/virology) "ycM" = ( /obj/structure/lattice, /turf/open/floor/plating/airless, @@ -85409,10 +89325,6 @@ /obj/effect/landmark/firealarm_sanity, /turf/open/openspace, /area/station/hallway/primary/central) -"ydi" = ( -/obj/effect/spawner/structure/window/reinforced/plasma, -/turf/open/floor/plating, -/area/station/engineering/hallway) "ydo" = ( /obj/structure/railing/corner/end{ dir = 8 @@ -85424,15 +89336,6 @@ /obj/effect/turf_decal/tile/red/opposingcorners, /turf/open/floor/iron/dark, /area/station/maintenance/port) -"ydH" = ( -/obj/effect/landmark/firealarm_sanity, -/turf/open/floor/catwalk_floor, -/area/station/maintenance/starboard/fore) -"ydI" = ( -/obj/structure/fake_stairs/directional/south, -/obj/machinery/light/directional/west, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "ydN" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/siding/wood{ @@ -85451,6 +89354,11 @@ }, /turf/open/openspace, /area/station/construction/storage_wing) +"ydV" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/caution/stand_clear, +/turf/open/floor/engine, +/area/station/engineering/atmos) "ydX" = ( /obj/structure/lattice/catwalk, /turf/open/openspace, @@ -85462,58 +89370,53 @@ dir = 1 }, /turf/open/floor/iron/checker, -/area/station/ai_monitored/command/storage/satellite) -"yee" = ( -/obj/structure/closet/secure_closet/medical3, -/obj/item/clothing/gloves/latex/nitrile, -/obj/item/defibrillator/loaded, -/obj/item/clothing/glasses/hud/health{ - pixel_y = 13 - }, -/obj/item/clothing/gloves/latex/nitrile, -/obj/effect/turf_decal/bot_white{ - color = "#52B4E9" - }, -/obj/machinery/newscaster/directional/south, -/obj/item/clothing/gloves/latex/nitrile, -/turf/open/floor/iron/dark/textured_large, -/area/station/medical/storage) +/area/station/ai/satellite/maintenance/storage) "yeg" = ( -/obj/structure/chair/office/light{ - dir = 1; - name = "RD's Chair"; - pixel_y = 3 +/obj/structure/table/wood, +/obj/item/radio/intercom, +/turf/open/floor/carpet/executive, +/area/station/command/meeting_room/council) +"yel" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/spawner/random/maintenance, +/obj/effect/decal/cleanable/blood/oil, +/turf/open/floor/plating, +/area/station/maintenance/starboard/aft/upper) +"yeo" = ( +/obj/structure/fireaxecabinet/directional/east, +/obj/machinery/airalarm/directional/north, +/obj/structure/table/reinforced/rglass, +/obj/item/radio/off{ + pixel_x = 3; + pixel_y = 5 }, -/obj/structure/cable, -/obj/effect/landmark/navigate_destination/bridge, -/turf/open/floor/carpet, +/obj/item/assembly/signaler{ + pixel_x = -9; + pixel_y = 4 + }, +/turf/open/floor/iron/dark, /area/station/command/bridge) -"yem" = ( -/obj/effect/spawner/random/trash/mess, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) "yer" = ( /turf/open/openspace, /area/station/science/genetics) "yes" = ( -/obj/machinery/door/window/left/directional/east{ - name = "Captain's Desk"; - req_access = list("captain") - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment{ dir = 4 }, -/turf/open/floor/wood, -/area/station/command/heads_quarters/captain/private) -"yeu" = ( -/obj/structure/table, -/obj/structure/bedsheetbin{ - pixel_y = 6 +/obj/machinery/door/window/right/directional/west{ + req_access = list("captain"); + name = "Captain's Desk" }, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) +/obj/machinery/airalarm/directional/north, +/obj/structure/cable, +/obj/effect/turf_decal/siding/wood, +/obj/effect/turf_decal/siding/wood/corner{ + dir = 1 + }, +/turf/open/floor/carpet/royalblue, +/area/station/command/heads_quarters/captain/private) "yeA" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -85531,10 +89434,13 @@ /obj/effect/turf_decal/trimline/green/filled/line{ dir = 5 }, -/obj/structure/table, -/obj/item/wrench, /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/directional/east, +/obj/structure/table/reinforced, +/obj/machinery/button/door/directional/west{ + id = "Rcommissaryshutter"; + name = "Right Shutter Control"; + pixel_x = 0 + }, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/office) "yeJ" = ( @@ -85557,12 +89463,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat_interior) -"yeT" = ( -/obj/structure/cable, -/obj/structure/lattice/catwalk, -/turf/open/water, -/area/station/maintenance/starboard/fore) +/area/station/ai/satellite/interior) "yfj" = ( /obj/structure/ladder, /turf/open/floor/plating, @@ -85570,11 +89471,16 @@ "yfm" = ( /turf/closed/wall, /area/station/science/explab) -"yfs" = ( -/obj/effect/spawner/random/maintenance, -/obj/effect/decal/cleanable/blood/oil, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +"yfq" = ( +/obj/structure/chair/office{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/yellow/filled/warning{ + dir = 1 + }, +/obj/machinery/newscaster/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/supermatter/room/upper) "yfv" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/item/clothing/gloves/latex/nitrile, @@ -85592,6 +89498,30 @@ }, /turf/open/floor/iron/dark/textured_large, /area/station/medical/storage) +"yfx" = ( +/obj/machinery/atmospherics/components/binary/pump/off{ + dir = 1; + name = "Ports To Mix" + }, +/obj/effect/turf_decal/trimline/dark_green, +/turf/open/floor/iron/dark, +/area/station/engineering/atmos/upper) +"yfH" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/structure/rack, +/obj/effect/spawner/random/techstorage/rnd_all, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) +"yfJ" = ( +/obj/machinery/firealarm/directional/south, +/obj/machinery/camera/autoname/directional/south, +/turf/open/floor/iron, +/area/station/commons/dorms) "yfK" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -85599,15 +89529,24 @@ /obj/effect/turf_decal/siding/purple, /turf/open/floor/iron, /area/station/science/lab) -"yfM" = ( +"yfS" = ( +/obj/effect/turf_decal/tile/yellow/opposingcorners{ + dir = 1 + }, +/obj/machinery/camera/autoname/directional/south, /obj/structure/table, -/obj/item/gavelhammer{ - pixel_y = 3 +/obj/item/storage/toolbox/electrical{ + pixel_x = 1; + pixel_y = -1 }, -/obj/structure/cable, -/obj/machinery/light/small/directional/north, -/turf/open/floor/wood, -/area/station/security/courtroom) +/obj/item/storage/toolbox/electrical{ + pixel_y = 2 + }, +/obj/item/clothing/gloves/color/yellow{ + pixel_y = 6 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/storage/tech) "yge" = ( /obj/effect/spawner/random/maintenance, /obj/effect/turf_decal/tile/purple/opposingcorners, @@ -85629,7 +89568,7 @@ "ygq" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/engine/hull/reinforced, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "ygr" = ( /obj/structure/lattice/catwalk, /obj/structure/table, @@ -85653,12 +89592,12 @@ "ygD" = ( /turf/closed/wall, /area/station/medical/coldroom) -"ygH" = ( -/obj/structure/cable/layer1, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/catwalk_floor, -/area/station/engineering/main) +"ygK" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 4 + }, +/turf/open/floor/iron/smooth, +/area/station/engineering/atmos) "ygM" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -85666,7 +89605,7 @@ /obj/structure/disposalpipe/junction/flip{ dir = 1 }, -/turf/open/floor/iron/large, +/turf/open/floor/catwalk_floor/iron, /area/station/hallway/primary/central) "ygN" = ( /obj/structure/table, @@ -85690,23 +89629,6 @@ /obj/effect/spawner/random/maintenance/two, /turf/open/floor/iron/checker, /area/station/maintenance/hallway/abandoned_recreation) -"yha" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/item/weldingtool, -/obj/item/wrench, -/obj/item/clothing/head/utility/welding, -/obj/structure/rack, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) -"yhf" = ( -/obj/structure/cable/layer1, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "yhq" = ( /obj/effect/turf_decal/caution, /obj/effect/turf_decal/stripes/line, @@ -85718,18 +89640,27 @@ /turf/open/floor/iron, /area/station/hallway/primary/port) "yhu" = ( -/obj/machinery/button/door/directional/south{ - id = "CargowatchShutter"; - name = "Outside Shutter Control" +/obj/effect/turf_decal/siding/wood{ + dir = 6 }, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/space_heater, -/turf/open/floor/iron, -/area/station/maintenance/starboard/central) +/obj/machinery/power/apc/auto_name/directional/south, +/obj/structure/cable, +/obj/item/kirbyplants/random, +/turf/open/floor/wood/parquet, +/area/station/command/heads_quarters/qm) "yhx" = ( /obj/structure/musician/piano/unanchored, /turf/open/floor/plating, /area/station/maintenance/department/science/central) +"yhD" = ( +/obj/effect/turf_decal/trimline/white/corner{ + dir = 1 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/red/full, +/obj/effect/turf_decal/tile/brown/full, +/turf/open/floor/iron/large, +/area/station/maintenance/starboard) "yhJ" = ( /obj/structure/grille, /turf/open/space/basic, @@ -85739,11 +89670,6 @@ dir = 1 }, /area/station/service/library/private) -"yhN" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable/layer1, -/turf/open/floor/catwalk_floor, -/area/station/engineering/engine_smes) "yhO" = ( /obj/machinery/door/airlock/atmos/glass{ name = "Atmospherics Testing Room" @@ -85766,22 +89692,6 @@ /obj/machinery/portable_atmospherics/canister/anesthetic_mix, /turf/open/floor/iron/kitchen_coldroom/freezerfloor, /area/station/medical/coldroom) -"yhT" = ( -/obj/machinery/power/apc/auto_name/directional/north, -/obj/structure/cable, -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 1 - }, -/obj/structure/rack, -/obj/item/flatpack{ - board = /obj/item/circuitboard/machine/flatpacker; - pixel_x = -5 - }, -/obj/item/multitool{ - pixel_x = 8 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/storage) "yhW" = ( /obj/structure/table/reinforced, /obj/item/screwdriver{ @@ -85815,32 +89725,39 @@ /obj/structure/cable/layer3, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "yin" = ( /obj/structure/chair, /turf/open/floor/iron/dark/smooth_large, /area/station/security/interrogation) -"yiy" = ( -/obj/effect/spawner/random/structure/closet_maintenance, -/obj/effect/spawner/random/maintenance/two, -/turf/open/floor/plating, -/area/station/maintenance/starboard/fore) -"yiL" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/showcase/machinery/cloning_pod{ - desc = "An old prototype cloning pod, permanently decommissioned following the incident."; - name = "decommissioned cloner" +"yiw" = ( +/obj/structure/chair/pew/left{ + dir = 4 }, -/turf/open/floor/iron/white, -/area/station/maintenance/starboard/lesser) +/obj/effect/landmark/start/hangover, +/turf/open/floor/carpet, +/area/station/maintenance/starboard) +"yiB" = ( +/obj/effect/spawner/random/trash/grille_or_waste, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) +"yiF" = ( +/obj/structure/cable, +/obj/machinery/power/apc/auto_name/directional/south, +/obj/effect/turf_decal/siding/wood{ + dir = 4 + }, +/obj/structure/table, +/obj/machinery/fax{ + fax_name = "Engineering Lobby"; + name = "Engineering Lobby Fax Machine" + }, +/turf/open/floor/wood/large, +/area/station/engineering/lobby) "yiP" = ( /obj/machinery/washing_machine, /turf/open/floor/iron/white/textured_half, -/area/station/ai_monitored/turret_protected/aisat_interior) -"yiW" = ( -/obj/structure/cable/multilayer/multiz, -/turf/open/floor/plating, -/area/station/maintenance/starboard/lesser) +/area/station/ai/satellite/interior) "yiY" = ( /obj/effect/mapping_helpers/burnt_floor, /obj/item/wrench{ @@ -85875,22 +89792,18 @@ pixel_x = -5; pixel_y = -3 }, -/obj/structure/fireaxecabinet/jawsofrecovery/directional/south, +/obj/machinery/newscaster/directional/south, /turf/open/floor/iron/white, /area/station/medical/office) "yjM" = ( -/obj/structure/sign/directions/supply{ - dir = 4; - pixel_x = 32; - pixel_y = 37 - }, -/obj/structure/sign/directions/engineering{ - dir = 4; - pixel_x = 32; - pixel_y = 27 +/obj/structure/sign/directions/upload/directional/north{ + desc = "It stands for Up Le Dable"; + dir = 2; + name = "Button Indicator"; + pixel_y = 10 }, -/turf/open/floor/iron, -/area/station/hallway/primary/aft) +/turf/closed/wall, +/area/station/service/kitchen) "yjT" = ( /obj/effect/turf_decal/trimline/dark_blue/filled/mid_joiner{ dir = 8 @@ -85899,12 +89812,19 @@ dir = 8 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "yjV" = ( /obj/structure/flora/bush/sparsegrass/style_random, /obj/effect/landmark/event_spawn, /turf/open/floor/grass, /area/station/science/cytology) +"ykc" = ( +/obj/structure/cable, +/obj/effect/turf_decal/stripes/white/line{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "ykf" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -85940,14 +89860,25 @@ /turf/closed/wall, /area/station/maintenance/port) "ykz" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, -/obj/machinery/holopad, -/turf/open/floor/iron/dark, +/obj/effect/turf_decal/arrows{ + dir = 1 + }, +/turf/open/floor/iron/dark/smooth_large, /area/station/command/gateway) "ykG" = ( /obj/effect/decal/cleanable/blood/old, /turf/open/floor/plating, /area/station/maintenance/port/greater) +"ykK" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/sign/poster/contraband/rebels_unite/directional/west, +/turf/open/floor/catwalk_floor, +/area/station/maintenance/starboard/central/upper) "yla" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/line{ @@ -85964,23 +89895,7 @@ name = "Minisat Monitor" }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) -"yli" = ( -/obj/machinery/door/airlock/maintenance, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/turf/open/floor/iron, -/area/station/maintenance/starboard/lesser) -"ylo" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, -/turf/open/floor/iron/dark/textured_large, -/area/station/engineering/gravity_generator) +/area/station/ai/satellite/interior) "ylu" = ( /obj/structure/closet/crate, /obj/effect/spawner/random/contraband/prison, @@ -85995,16 +89910,25 @@ /obj/machinery/camera/autoname/directional/north, /turf/open/floor/iron/textured_large, /area/station/security/prison) -"ylO" = ( -/turf/open/floor/glass, -/area/station/commons/fitness/recreation) -"yma" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 4 +"ylN" = ( +/obj/machinery/airalarm/directional/north, +/obj/machinery/conveyor{ + dir = 4; + id = "packageSort2" }, -/obj/structure/cable/layer1, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +/obj/machinery/door/window/right/directional/south{ + req_access = list("shipping"); + name = "Chute Access" + }, +/obj/machinery/camera/directional/north, +/turf/open/floor/iron/dark/textured, +/area/station/cargo/sorting) +"yme" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/station/maintenance/starboard/fore/upper) (1,1,1) = {" dcE @@ -105142,7 +109066,7 @@ tDx bHr xLX hRx -edN +kRR uHH wVf wVf @@ -105428,7 +109352,7 @@ bWY dcE dcE dcE -jJm +bWY dcE dcE dcE @@ -105685,7 +109609,7 @@ iWu iWu fWI iWu -kzG +bYT fWI iWu heR @@ -105942,7 +109866,7 @@ dLq dLq jPs heR -eYH +bWY dcE heR bYT @@ -106199,7 +110123,7 @@ dLq heR dcE dcE -eYH +bWY dcE dcE heR @@ -106456,7 +110380,7 @@ dcE dcE dcE dcE -eYH +bWY dcE dcE heR @@ -106713,7 +110637,7 @@ dLq heR dcE dcE -eYH +bWY dcE dcE iWu @@ -106970,7 +110894,7 @@ riD riD riD heR -eYH +bWY dcE dcE iWu @@ -107227,7 +111151,7 @@ jgR aEO riD riD -nXp +dLq dcE dcE gmt @@ -107484,7 +111408,7 @@ gjW wTk eoI riD -bHM +kxE dLq dcE dcE @@ -107736,12 +111660,12 @@ nJk rjd riD riD -alx +fYa riD riD riD riD -bDm +uKL oaa oaa dcE @@ -107992,14 +111916,14 @@ rjd ydo xJo riD -cJb -unK -awv -rPU -uJi -uJi -qnS -tlQ +mpW +tEv +sHr +nOV +wTk +wTk +tEv +wTk oaa oaa dcE @@ -108249,14 +112173,14 @@ mqt fyx riD riD -uJi +wTk wTk riD riD tEv twD wTk -tlQ +wTk tEv oaa heR @@ -108505,15 +112429,15 @@ oCE xJo riD riD -uJi -unK +wTk +tEv sPT riD wRj wTk wTk tEv -tlQ +wTk wTk oaa heR @@ -108762,7 +112686,7 @@ nFL riD riD gir -pQG +upp wTk cbx riD @@ -108770,7 +112694,7 @@ riD nCM fES juE -tlQ +wTk oaa oaa heR @@ -109019,7 +112943,7 @@ kUq aJV riD tOW -uJi +wTk wTk wTk qTy @@ -109027,7 +112951,7 @@ riD riD riD riD -bDm +uKL oaa heR heR @@ -109276,7 +113200,7 @@ eYP bsy riD mXW -uJi +wTk ifC tEv tEv @@ -109284,7 +113208,7 @@ pmI wbK riD kxE -crE +dLq heR dcE dcE @@ -109532,8 +113456,8 @@ dNR gAl uIG riD -riv -uJi +iBW +wTk wTk wTk wTk @@ -109541,7 +113465,7 @@ riD riD riD dLq -mRf +heR dcE dcE dcE @@ -109789,7 +113713,7 @@ kTw wNv riD riD -dEu +mXW wTk tEv okf @@ -109798,7 +113722,7 @@ riD nPY riD riD -nxv +tao heR heR slD @@ -110045,8 +113969,8 @@ iTI kTw wNv wPl -mpT -dEu +wNv +mXW tzi flg riD @@ -110055,7 +113979,7 @@ uwu cOm deC ckM -tEc +mCR ckM ckM ckM @@ -110261,7 +114185,7 @@ oLN vwl ilE chu -wNu +lUD sQY aHS pMT @@ -110303,7 +114227,7 @@ kTw riD riD flg -dEu +mXW uCG riD riD @@ -110331,7 +114255,7 @@ uIO ceQ eKW gLQ -jea +pTp wKr xQI cVe @@ -110568,7 +114492,7 @@ mRt pPl kUq kUq -ssO +uSn hyi cIE oid @@ -110825,8 +114749,8 @@ eTY cOm dHm dFG -hyi -lIp +lUg +qIQ ckM ckM ckM @@ -111068,7 +114992,7 @@ riD riD riD riD -wPX +riD riD riD riD @@ -111325,7 +115249,7 @@ bmI wVL mTq sTv -arN +bOt qMr sTv hNC @@ -111343,8 +115267,8 @@ jHr ckM iVX ijh -wwj -wwj +xba +xba bZo ckM ckM @@ -111565,12 +115489,12 @@ fWY bNt aHO bNt -bNt -wqB +awD +wAx sRY xDM uKn -vzM +ruR tZz riD uJi @@ -111582,7 +115506,7 @@ lqn ykm bAL sTv -yfM +avj ojE sTv hTI @@ -111600,11 +115524,11 @@ rzp cDs dAR lAN -fxc +ldL lAN -goI -rUf -oNb +fYH +etQ +lja ybF njH njH @@ -111827,7 +115751,7 @@ ssg ubo bNt gBF -dMR +vId pTT lmB uJi @@ -111839,17 +115763,17 @@ sTv ait sTv sTv -teZ +sTv dNA sTv uga riD gZY dEu -uJi -uJi -uJi -uJi +wTk +wTk +wTk +wTk ayF kUq iKx @@ -111857,11 +115781,11 @@ rzp ckM tKx oiR -iea -pHC +xba +uNu dos ckM -npG +aWE cMq uZV nKn @@ -112084,7 +116008,7 @@ gfc bNt bNt fhO -dMR +vId xmA riD riD @@ -112096,17 +116020,17 @@ sTv qAJ aZC kzi -ers +pMu izl ahD wie riD riD -qgD +ihn riD osU flg -uJi +wTk nBu kUq fJx @@ -112118,7 +116042,7 @@ lqd jDe ygB ygB -vVD +jAg jgW qaL nKn @@ -112341,7 +116265,7 @@ teC bNt iJX bOC -dMR +vId jUt sTv aVb @@ -112353,17 +116277,17 @@ sTv qdk ksO aPq -cLP +nCT jFo nLC lQd riD fLX -pSF +qIL tVl srD flg -uJi +wTk xKB kUq gga @@ -112375,7 +116299,7 @@ wix cDs ygB aWo -rIZ +ycK pOD kUq kUq @@ -112567,9 +116491,9 @@ rqR pvg anm sES -cCA +oUL crW -veS +bFx ayR gPW acl @@ -112598,7 +116522,7 @@ icO bNt tiG jUu -dMR +vId hDT nDA aLJ @@ -112620,7 +116544,7 @@ bFe pyA srD flg -xqi +tZx riD kUq kUq @@ -112629,10 +116553,10 @@ kPZ nIW toh als -meF -hET -fAB -pHd +cjW +cjW +eeE +vFE kUq kUq xNK @@ -112874,10 +116798,10 @@ xor riD rPE bFe -pqQ -qDn -uJi -rkU +wQt +cxs +wTk +nVV riD cTJ kUq @@ -112887,7 +116811,7 @@ lUn oFg hIE cPq -bBy +xMT pOD kUq kUq @@ -113072,7 +116996,7 @@ gIw eCD qPX tci -xBO +uOO xZG qPX lrp @@ -113082,7 +117006,7 @@ rqR xxZ lFK lFK -bRv +wvM bxT wIa gPW @@ -113136,15 +117060,15 @@ voz jDx ovx ovx -tRJ -dWj +eNb +wES kUq kUq kUq kUq vsP kUq -rea +ucc kUq kUq wTk @@ -113394,14 +117318,14 @@ bvH riD riD uEl -vOg -vOg -vOg -ciS -vOg -vOg -dXD -alI +uJi +uJi +uJi +uJi +uJi +uJi +for +wir jNe onB jNe @@ -113409,8 +117333,8 @@ jNe jNe jNe pFS -bit -jqA +vXB +mpp spl dmV biZ @@ -113604,7 +117528,7 @@ gPW egU gPW gPW -hRX +yjM neF lAW pbk @@ -113651,7 +117575,7 @@ lVs riD cSy eNb -sAG +uJi riD riD riD @@ -113680,12 +117604,12 @@ ekQ jii mHQ mHQ -jii -jii -fHg -jii -jii -jii +hgW +hgW +dri +hgW +hgW +hgW hgW lIr lVM @@ -113908,7 +117832,7 @@ hoP riD riD riD -nen +bzd riD oTS mDX @@ -113935,7 +117859,7 @@ kWO eqV wPV wPV -tBa +gzJ wPV lmV eOG @@ -114163,9 +118087,9 @@ aDm vYs nSu fbC -oIA -mYe -mtD +vdP +fIS +ptM xrX rQU eRT @@ -114188,14 +118112,14 @@ abE lIr lIr lIr -pcQ +wYX lIr wPV nFO wld -hlJ -itV -fUd +iTR +oDu +tQR qVs qQb wPV @@ -114410,7 +118334,7 @@ bJJ iyv iyv kpC -iyv +seD iyv aYR fbC @@ -114422,9 +118346,9 @@ gFt fbC vdP mYe -uCE -kDa -xVL +ptM +fGU +vKA afg iFy bPH @@ -114452,7 +118376,7 @@ wPV aIP tPr ebj -euN +bXl kUr mnG aPQ @@ -114663,13 +118587,13 @@ jOE jOE aUn fYS -gjU -lIM +lRY lIM -peF lIM +nDA +hiA lIM -hWw +nDA fbC nWD frB @@ -114681,7 +118605,7 @@ tqq vJI dUw xeM -lIC +kWp acS cxD fPt @@ -114709,11 +118633,11 @@ wPV eug uXU sIp -wUm -dcv -wRi -mPV -mHQ +eWS +rUq +jSK +wtD +jii fdl dXA lVM @@ -114899,34 +118823,34 @@ gtZ mBb nPW akU -fLr -fLr +itA +itA rfU -fLr +itA dNV nrP pJn ozK -fLr -fLr +itA +itA oLS sJQ aSD sJQ pwz -fLr -ckZ +itA +itA rfU -fLr +itA rHo -cuY -cuY -fLr -fLr -rnd -fLr -fLr -fLr +wdt +wdt +itA +itA +itA +pkx +itA +tLA rTe lPn qMz @@ -114938,7 +118862,7 @@ xeM xeM hrX xeM -lIC +kWp hTy aMK wYH @@ -115133,7 +119057,7 @@ wRp vwb pES gzs -oLO +lOD gPW ndl vxh @@ -115153,8 +119077,8 @@ qpP qNw qNw mDZ -jrz -fyz +idO +tau bmD fUb fUb @@ -115182,7 +119106,7 @@ vYe fcn fcn sXj -cXw +xXm qeZ jDx obQ @@ -115195,7 +119119,7 @@ fkD fkD pEO leK -lIC +kWp asY wqq cqe @@ -115393,52 +119317,52 @@ iUx gPW gPW utq -nyq +cTk wQS svW mHJ -rUC +qGn fFe uPu fEc byY lNg byY -byY +fkp byY oSI hGP fzV xrl -fLr +dlx pzy -gxP -fLr -fLr -fLr -fLr -fLr -fLr +qhz +qNe +qNe +qNe +qNe +qNe +qNe cuY -fLr +qNe fom -fLr -fLr -fLr +qNe +qNe +qNe iwu -aZs +fpw mNY -fLr -fLr -fLr +keq +keq +iBM ulZ -fLr -fLr +qNe +qNe qNe fHW -pVy -fLr -aKc +jeh +qNe +aVN iLm fDd hSk @@ -115452,14 +119376,14 @@ pZQ gie mKs xeM -lIC +kWp rQR jiL oNB jiL emn vqv -ppa +xFh ccN ccN ccN @@ -115667,9 +119591,9 @@ aEG kEn gnA dJV -fLr +idO pzy -fLr +vXt jGw bpl oGG @@ -115683,11 +119607,11 @@ eLU pKd pKd eLU -sle +eLU eLU jKF jKF -eLU +sle eLU vAs qiH @@ -115695,9 +119619,9 @@ tHs gUQ qiH qiH -fLr +idO iLm -fLr +vXt qKV oDq wTE @@ -115709,7 +119633,7 @@ kIt msF iKH xeM -hNj +gNp iQA vJI vJI @@ -115924,26 +119848,26 @@ lDE lDE lDE lDE -fLr +idO pzy -fLr +vXt fOe -lPw +saq qyy qTG cVs -wxq +vuO aZE eIm qae eLU -pdf -pdf +hVC +iiO oST bRW wbH -pdf -pdf +jRH +jRH pdf eLU ucp @@ -115952,9 +119876,9 @@ dnH khi chO qiH -fLr +idO iLm -fLr +vXt qKV cpG nng @@ -115966,7 +119890,7 @@ pkn pkn mQK ene -nyR +eFk ene gPC gPC @@ -116156,9 +120080,9 @@ xvg ixF vsv qXQ -tgV +lZt glz -tLl +lum ixF gPW xKQ @@ -116169,7 +120093,7 @@ wvx fPb vRM haB -uPu +inD hgL gNr gNr @@ -116183,8 +120107,8 @@ pRw lDE cKg vMU -fLr -jwI +vXt +fOe dwf nDS saq @@ -116196,7 +120120,7 @@ ecw eLU dzx pog -dzx +cUl hqf aoQ bvv @@ -116209,9 +120133,9 @@ nrg wLc pJG tdW -fLr +idO iLm -fLr +vXt qKV jGh mFR @@ -116440,23 +120364,23 @@ iTM eEV gSG mEk -fLr -fOe -qTG +vXt +dWp +wCP xHV -dwf +cnL ehZ vuO kyJ eaj xat eLU -hwR -hwR -hwR +jrS +vMN +wWi nrw -hwR -hwR +dHq +jYI chQ hwR eLU @@ -116666,9 +120590,9 @@ dcE dcE dcE dcE -heR +vVH ixF -iZK +avJ myb xbL jHV @@ -116687,27 +120611,27 @@ fvk kHv aUU gNr -eAT -llv +wlI +jJE lDE uKN -lio +wyv vcR qkF eVl hZD iLm -fLr -dWp -okC +vXt +vuO +vuO ams -uzg +wWV wWV vuO kRk kWR hnF -psk +eLU fSl xUD vQR @@ -116725,9 +120649,9 @@ vAs tNV crk fDc -crk +fNB bHV -rsU +oIA mDr fHf sgT @@ -116944,8 +120868,8 @@ bfw kHv uPu ojU -llv -llv +jJE +jJE lDE tjg pJD @@ -116954,12 +120878,12 @@ oHw eVl wUb vMU -fLr -vuO +jMi vuO +bBZ pPt -hRd -vuO +hKy +inh vuO vOy kZo @@ -116982,7 +120906,7 @@ mrj ddz ckZ iLm -fLr +vXt bHV rsU sGy @@ -117189,7 +121113,7 @@ jMr nJl pPf gqp -nmO +fWy gPW dIW rYV @@ -117201,18 +121125,18 @@ bfw tbw scE gNr -edl -llv +aqP +jJE lDE hdX hni uIt cfp lDE -req +osf vMU -jMi -vuO +vXt +rBE ugN tGb xYn @@ -117223,10 +121147,10 @@ kWR iWk vHo vHo -iis -iis -iis -iis +aWV +aWV +aWV +aWV aWV heR heR @@ -117236,21 +121160,21 @@ qeX qeX cqj qeX -cmp -cnL +vNo +idO iLm -fLr +vXt prV qXc jEG mqQ -jUx +eyP sWl rHB yca eoj biO -hYT +fwv rFk eKh eME @@ -117458,8 +121382,8 @@ bfw kHv woT gNr -jYE -llv +wlx +agq lDE lDE hAm @@ -117468,8 +121392,8 @@ lDE lDE kTW vMU -fLr -hRd +vXt +rBE bUO aqo fVx @@ -117478,25 +121402,25 @@ inT whZ bqR ecw -fwP +omw sjC -iis +aWV dNc rPQ qCe aWV dcE gmE -gmE +pxK bTU tBo tBo tBo -tBo +ipi deJ -vNo +nbU iLm -fLr +vXt prV djc mAY @@ -117530,7 +121454,7 @@ rxx fQp fqn hDg -mTp +lCY oAz toj hDg @@ -117715,17 +121639,17 @@ bfw kHv izF gNr -tfr -llv -llv -llv -ayD -lkj -lkj -caF -ckZ +ruA +pkw +jJE +jJE +wHz +jJE +jJE +fQL +idO vMU -fLr +vXt hRd jCt xSk @@ -117737,7 +121661,7 @@ ojx ecw fwP sjC -iis +aWV mYf qSv sSY @@ -117745,15 +121669,15 @@ lll dcE gmE rVE -eRs tbZ -uLt cZE +uLt bnl +rAL mAr ojj -oNM -fLr +iLm +vXt bHV bHV prV @@ -117979,10 +121903,10 @@ weF qqz bOk bOk -bOk +uTJ wrI -fjt -xDR +vMU +vXt vuO ilg wmy @@ -117992,24 +121916,24 @@ vzB gDG lWc ecw -lll -lll -iis +uoF +uoF +aWV wTU vCW jkn -lll +gwk heR gmE mcX -eRs iHB eQA eLc jzP +jmG hXc -nYZ -uFo +ojj +iLm lkC fBQ rJL @@ -118048,7 +121972,7 @@ hDg pYI hDg hDg -nZF +eOh aWH xsh nZF @@ -118237,37 +122161,37 @@ kCP ofi rHD hAi -fLr -fjt +idO +vMU tWt qQd qQd -mmS +qQd qQd qQd qQd jFU bRx ecw -lll +uoF eYe mqm duE ibO ibO -lll +uzg dcE gmE mbY -eRs dmL +xUf uGx -jyd lVt +eRs pGV -kzf -uFo -gxP +ojj +iLm +byR gTL pJS eDq @@ -118303,7 +122227,7 @@ pJS bMo ctm iev -xZn +jkJ eMi nZF aWH @@ -118494,14 +122418,14 @@ qWj qST qST ipt -bsH +qUD xXU rnd mVm dtx iqC qHB -dtx +bdW nvX sJy rHq @@ -118510,9 +122434,9 @@ eLl lzk lzk sAm -wtz +vnh iXw -lll +uzg heR gmE czp @@ -118523,11 +122447,11 @@ bBK eRd vnz hJA -hnb -vYe +pfR +bic wAQ iFU -hDw +iFU kOF vcH iFU @@ -118729,7 +122653,7 @@ izW iXP iXP iXP -vTV +nQE xCq jNL eia @@ -118747,14 +122671,14 @@ fJz bxK fJz fWt -fJz -iIi -aFP +uYY +kuw +pjj jAT -fLr +idO fjt -jOi -qQd +vXt +iRC qQd qQd qQd @@ -118764,7 +122688,7 @@ fDb eIm tXS uoF -fkp +eYe lKk cSO jMo @@ -118779,9 +122703,9 @@ kkd egp scJ gNL -dXh -vlK -vXt +idO +aZs +fLr gTL pJS pJS @@ -118815,9 +122739,9 @@ pJS pJS pJS bMo -pJS -pJS -pJS +vnV +vnV +vnV eMi eGc nZF @@ -118983,14 +122907,14 @@ iFB iFB vyA jZs -cpQ +iXP iXP rpU -sjq +iMX mIa jMr -dCm -dCm +fMH +fMH vCE uka uka @@ -119003,14 +122927,14 @@ luY gIE ykn luY -dCm -dCm -voV -dCm -dCm -jrV +dTL +qTT +dTL +sWH +dTL +wrI fjt -fLr +vXt drX qye rYu @@ -119020,9 +122944,9 @@ pZX gDG lkt tXS -lll -lll -iis +uoF +uoF +aWV yes xvw tRt @@ -119030,14 +122954,14 @@ lll heR gmE xef -vFZ knq kCN +pZv hoq cER edz -vnV -vlK +idO +aZs lkC fXP iXg @@ -119072,7 +122996,7 @@ pHl pHl wgS uqo -yjM +pJS pJS pJS uqo @@ -119243,10 +123167,10 @@ nvv rsb rsb rsb -gnV +hOJ rpU pPk -dCm +fMH dcE dcE dcE @@ -119260,41 +123184,41 @@ dKv xWY iAu bGJ -dCm -eOB -nIq -jUS -voV -fLr +dTL +prZ +rCh +cMj +sWH +idO fjt pKT drX nol -qKB -qKB +oNM +vkQ wKi pZX qhq eIm wFP -fwP +omw sjC -iis -aNb +aWV +jwI gzt jFp lll dcE gmE eqa -vFZ jEw siZ siZ jEw +vTB juH -ibo -wCP +idO +aZs jMi tDY tDY @@ -119328,10 +123252,10 @@ cPY tNP tNP fAl -jkr -ruK -szy -djL +bCD +pJS +pJS +pJS pQc pQU nZF @@ -119500,10 +123424,10 @@ xCq cGa nUC cGa -eds +nsr rpU gOR -dCm +fMH dcE dcE jph @@ -119513,19 +123437,19 @@ jph jph dcE luY -uJy -aYk +jHH +cVQ cBB -bNu -dCm -emL -jGQ -rJe -voV -fLr +rZH +dTL +jaY +ini +eBo +sWH +idO fjt -qtW -jFV +drg +drX maO wlY twp @@ -119536,23 +123460,23 @@ eZA tXS fwP sjC -iis +aWV nFA oSb gBG aWV dcE gmE -gmE +oRD ruc pcf pcf pcf -pcf enE vNo +idO aZs -fLr +vXt tDY kVK eXe @@ -119585,10 +123509,10 @@ pHc thf thf vXQ -fAl -tUH -nLp -nLp +lPw +pJS +pJS +pJS eap fxY qBm @@ -119757,10 +123681,10 @@ iol eet jMr ibK -jqv +sBv oFC -nhP -dCm +sxO +fMH heR heR jph @@ -119774,15 +123698,15 @@ luY luY luY luY -dCm -cbS -rpL -hmY -dCm -rdx +dTL +itm +eBo +rNa +dTL +vdk fjt qtW -jFV +mmS svp sqQ bMd @@ -119806,15 +123730,15 @@ qeX qeX qeX qeX -keq +vNo idO aZs -fLr +vXt vUS wDZ quJ egX -ghV +aOE quJ wDs jJX @@ -119844,8 +123768,8 @@ ntN nTK fAl tVo -nLp -nLp +szy +djL eap eap qhH @@ -120008,17 +123932,17 @@ dcE dcE iFB iFB -dCm -dCm -dCm -dCm -dCm -dCm -pfK -dCm -dCm -dCm -dCm +fMH +fMH +fMH +fMH +fMH +fMH +xIT +fMH +fMH +fMH +fMH dcE jph frY @@ -120026,24 +123950,24 @@ uUT nyA jph dcE +bbn +iqX +kJG +fDV +kiY dTL -oHs -xYf -fpM -gTH -dCm -jqo -eaw -tEt -voV -fLr +kfo +azj +reW +sWH +idO uHy qtW jFV tgT sGj -qKB -ckd +nRN +goK pZX gyq wXk @@ -120051,7 +123975,7 @@ rTR aWV bCC lZn -aNb +vFZ opj wXU aWV @@ -120064,9 +123988,9 @@ oOx bpx oht kfA -fLr +idO aZs -fLr +vXt vUS afL quJ @@ -120082,7 +124006,7 @@ xhn sns jZc wSs -mHi +xcq mZA fTt kTJ @@ -120104,12 +124028,12 @@ jYq nLp hFi dVx -wKb -wKb -rdN -wKb -wKb -wKb +ohG +ohG +uPY +ohG +ohG +ohG jWB odZ nCo @@ -120186,57 +124110,8 @@ dcE dcE dcE dcE -"} -(134,1,1) = {" -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE +"} +(134,1,1) = {" dcE dcE dcE @@ -120265,17 +124140,66 @@ dcE dcE dcE dcE -dCm -akS -wag -gaj -uHO -dXy -tmO -xNe -wIW -tAV -dCm +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +lnB +fMH +nrT +mTo +sQK +ixG +hMJ +sZA +hSe +hoe +crP +fMH heR jph oIT @@ -120283,20 +124207,20 @@ xYy iOE jph heR +gVQ +aOI +oFa +eJS +tHu dTL -jDr -oNp -sPC -sOw -dCm -rpL -lHY -uyD -voV -fLr +nAv +mTv +lYH +sWH +idO fjt qtW -jFV +mmS svp hEE qKB @@ -120323,7 +124247,7 @@ dBm hsR crk ucO -crk +fNB tDY dqj oJs @@ -120361,12 +124285,12 @@ vdl hFi sQJ gzh -wKb -uUX -eEv -eEv -uWu -wKb +ohG +npw +oHF +oHF +hwQ +ohG fTM odZ nCo @@ -120521,18 +124445,18 @@ dcE dcE dcE dcE -dcE -dCm -nit -eOn -uHO -dCm -dCm -dCm -rvH -dCm -dCm -dCm +heR +fMH +qGC +pSi +ixG +fMH +jnR +fMH +cQv +fMH +fMH +fMH dcE jph jph @@ -120540,27 +124464,27 @@ jph jph jph dcE +bbn +jOZ +koH +wzi +eQZ dTL -nCC -sjO -skC -qQj -dCm -dCE -bLf -jiv -dCm -wKV +jOG +eBo +rNa +dTL +rdx fjt -qtW -jFV -svp +ewt +drX +psk sGj qKB cbC pZX cfx -bic +eaj fDs aWV xTt @@ -120578,9 +124502,9 @@ nVc hQU drn cRa -fLr +idO aZs -fLr +vXt gNZ sfM guk @@ -120603,7 +124527,7 @@ gBg kYd vSX neB -nwd +ijJ hsx xYS tNP @@ -120615,15 +124539,15 @@ lei lmc fAl lGy -ajB -uxt -uxt -pHx -ltC -ltC -byJ -wLf -wKb +mSU +tyv +tyv +dvt +qOE +qOE +aAM +idf +ohG wCv qEE nxh @@ -120778,18 +124702,18 @@ dcE dcE dcE dcE -dcE -dCm -yiy -nAS -nit -nAS -dXy -hqg -rvH -ecP -nPB -dCm +heR +fMH +jln +kWL +hMJ +qwG +hMJ +ofs +cQv +qEj +cYn +fMH dcE dcE heR @@ -120797,23 +124721,23 @@ dcE heR dcE dcE +bbn +cXF +nZq +pJt +iTF dTL -rSu -uzN -oqd -mkv -dCm -nZb -ayn -bXg -voV +ipv +lik +eBo +sWH pVy fjt xQW drX jtU fry -qKB +cuL ckd pZX xms @@ -120822,7 +124746,7 @@ tXS aWV bzS eAg -ndK +nYZ ndK cif gZn @@ -120831,13 +124755,13 @@ aPV aWV hxd gnf -drn -drn -drn -cRa -fLr +dEN +dEN +dEN +lwJ +idO aZs -fLr +vXt aTx afL quJ @@ -120872,29 +124796,29 @@ rPd omG fAl wmC -xeI +cOE jbW qnM -wKb -wKb -hGD -wKb -wKb -wKb -wKb -wKb -wKb -wKb -ozw -wKb -wKb -wKb -wKb -wKb -ssm -wKb -wKb -wKb +ohG +ohG +rYR +ohG +ohG +ohG +ohG +ohG +ohG +ohG +cBs +ohG +ohG +ohG +ohG +ohG +tFO +ohG +ohG +ohG eap hxg eap @@ -121035,38 +124959,38 @@ dcE dcE dcE dcE -dcE -dCm -dCm -dCm -dCm -dCm -hmM -dCm -vRi -dCm -dCm -dCm -ega -dCm -dCm -dCm -dCm -dCm -dCm +heR +fMH +fMH +fMH +fMH +fMH +fMH +fMH +qtl +fMH +fMH +fMH +pRO +oDB +pRO +pRO +pRO +oDB +pRO +bbn +qbI +uzB +cmW +fvb dTL -uNG -jQu -oqd -yeu -dCm -emL -bXg -nZb -voV -fLr +fnH +mSQ +bKI +sWH +idO fjt -fLr +qpG drX qvg iEI @@ -121087,14 +125011,14 @@ kBA hAl aWV efC -hzY -drn -xtC -drn +gnf +dEN +dEN +dEN lwJ -fLr +idO aZs -fLr +vXt tDY qTl ghV @@ -121129,29 +125053,29 @@ rkW lmc fAl bCx -xeI +cOE sQJ -wKb -wKb -yfj -lAJ -ukZ -uMT -qyU -lKV -rHN -wKb -vht -oxM -ftK -wKb -mJb -cJU -wCj -mjB -lAJ -rFr -wKb +ohG +ohG +pxz +pBv +trv +jHb +gDe +fmq +pBf +ohG +fXF +qxV +gcb +ohG +mxJ +bpf +hSq +uZR +pBv +tFa +ohG eIO eIO eIO @@ -121291,52 +125215,52 @@ dcE dcE dcE bPW +ixf bPW bPW -bPW -sSk -nVH -sFV -dCm -dCm -dCm -kqk -ydI -qNg -dCm -dCm -pRO -aSd -tFy -xbz -fha -mrq +bIf +dOE +sUH +mCi +dlK +wEU +cpl +ohH +gwN +eRc pRO +iTw +eLV +vzf +iQE +iGe +kSR +bbn +bbn +rXM +aas +bbn +xHE +kEY dTL -mRq -vKW -dTL -dCm -dCm -dCm -voV -rnp -oUO -toM +sWH +fYo crk +toM +fNB drX drX wJn -npf +drX drX drX cfx -bic +eaj fDs aWV aWV aWV -eFq +aWV aWV aWV aWV @@ -121349,9 +125273,9 @@ hCy bCv wBv nGH -fLr +idO aZs -fLr +vXt suy nfG quJ @@ -121385,30 +125309,30 @@ ntN gPd qyA fAl -pcR -rNG +tUH +frP nLp -wKb -mWI -lAJ -rps -lAJ -uMT -qyU -qyU -eEv -aRg -qNq -eCO -htb -gnU -uuE -hHP -pTX -pOW -aAk -fGM -apE +ohG +fxL +pBv +nCp +pBv +jHb +gDe +gDe +oHF +xGN +dPq +wwn +mgN +aBz +vbx +aMl +vxa +gXH +bZI +lzH +nNA eIO ncO eIO @@ -121547,65 +125471,65 @@ dcE dcE dcE heR -bPW -dYl -oYn -fVa +ixf +xxh +rnV +lwu vwr vwr +new +qAk vwr -ukM -qOv -lwu -uen -lIk -lIk -dgR -bqA -pRO -rEG -hXE -pKp -dKa -qGv -pRO -wcT -kqt +vwr +mma +xEt +vtP +hrE +xgK +kaq +vfe +vfe +mUt +kaq +vfe +xgK +hxA +eDI vfe ofd -otb vfe -gpU -fLr -fLr -fLr +svH +vfe +vfe +fwq +dlx fjt gxP -fLr -fLr -fLr -fLr -fLr -fLr -fLr -fLr -pzy -fLr -fLr +bVS +itA +itA +upE +itA +itA +itA +itA +iyI +itA +itA wZy -fLr -fLr -fLr +itA +itA +itA mMA -fLr +gpU obn dFt hHd itA -fLr -fLr -fLr -fLr +itA +itA +itA +itA aKc aZs fLr @@ -121614,12 +125538,12 @@ afL kzm kFt voP -cKR +egH qez gRB anp tIq -olM +vXv tIq gde fXN @@ -121642,30 +125566,30 @@ vWv vWv lmc tNP -lGy -xeI +xIp +cOE cOe -wKb -cpD -rps -lAJ -eEv -pEI -qyU -qyU -yfj -wKb -txT -siM -fdI -wKb -wjO -weK -dZs -fGM -eyg -vkl -wKb +ohG +vhE +nCp +pBv +oHF +hWJ +gDe +gDe +pxz +ohG +pxe +ejB +jEd +ohG +jBr +rdz +uQi +lzH +gBe +wEg +ohG eIO eIO eIO @@ -121804,39 +125728,39 @@ dcE dcE fRO heR -bPW -nIH -vwr -vwr -vwr -ibr -qek -qek -qek -qek -tWR -tWR +ixf +xxh +aQq +fMS +fMS +lAo +olG +olG +olG +tFB +olG +vPE tWR -bIS -ebC -pRO -rPs -kdG -gqh -jOT -iQR -etf -xWy -uAm -jyX -jyX -lCf -lCf -chU -cib -cib -cib -gki +fjo +xgK +vfe +uQl +tCt +bFl +pSv +laC +fdN +laC +lnE +rdW +afQ +ork +rjc +kVf +kVf +wSn +ncC +ber cib cib cib @@ -121850,7 +125774,7 @@ ygM cib cib cib -jiE +rXt aZs aZs aZs @@ -121864,7 +125788,7 @@ aZs aZs aZs aZs -bTZ +jcH vXt gNZ bXO @@ -121894,35 +125818,35 @@ jFH uGP kxo iCa -lbe +fdz xIl idj uix tNP pcR -izU +wNo dxN -cWU -cWU -cWU -cWU -cWU -cWU -cWU -cWU -cWU -cWU -cWU -cWU -cWU -cWU -cWU -dvu -dNu -nlo -wKb -wKb -wKb +gNx +gNx +gNx +gNx +gNx +gNx +gNx +gNx +gNx +gNx +gNx +gNx +gNx +gNx +gNx +wFi +dXE +xZu +ohG +ohG +ohG eap hxg eap @@ -122060,61 +125984,61 @@ gMc heR heR gMc -heR -bPW +oTg +jOO ixf ixf ixf -oOz +vra ixf ixf -dtu +iqe ixf ixf ixf -bPW -fyw -bIS -nMp +jOO +hWN +mTJ pRO -wIK -wfk -bDQ -lvv -jxl pRO -sKT -qAd -ezL -vfe +pRO +pRO +pRO +pRO +pRO +pRO +cyD +kqu vfe +kaq vfe -gpU -fLr +piW +sNz +mTT fwq nkF -jRH -fLr -fLr -fLr -fLr +qNe +qNe +qNe +qNe +qNe qsb -nkF +ruK cwq oHu -fLr -fLr -fLr -kuT -fLr +qNe +qNe +qNe +qNe +qNe wTx tNr vOs tNr -nPW -fLr +ghA +qNe fom -fLr +qNe tXN nzd oGH @@ -122141,8 +126065,8 @@ qSk qSk qSk rOA -aRb -nvA +rsJ +grc hZe uZn tsJ @@ -122157,7 +126081,7 @@ oof exo tNP pcR -xeI +cOE xaz bQe qYi @@ -122173,11 +126097,11 @@ jSD hJE ebL xhF -cWU -fwz -aMa -ybh -wKb +gNx +jbL +qYK +fZh +ohG heR dcE dcE @@ -122330,25 +126254,25 @@ osO osO osO ixf -jcz -bIS -gcm -pRO +ulw +xJJ pRO +vqx +fQG pRO +aKJ +bOf +hsU pRO -pRO -pRO -pRO -uCA -rVT -hQV -lTA +xJs +uyR +eCA +rls +dCm dCm dCm dCm dCm -oKg oKg cLQ cLQ @@ -122359,21 +126283,21 @@ oKg tPU tPU tPU -uzs -tPU +ayi tPU tPU +jMu rWE vai rWE -shs +dtP lSU fbv wMr bFb -hKy +wMr wvI -shs +wqB nAB nAB abT @@ -122398,8 +126322,8 @@ qhB bjq qnC rOA -jBs -aah +fRo +uhz vzq uts uir @@ -122414,7 +126338,7 @@ nCI ifV fAl lGy -rNG +frP xaz bQe iLy @@ -122430,11 +126354,11 @@ tWZ eoH mrC mrC -cWU -cer -qAw -jHD -heC +gNx +jkk +jhg +rOE +nsn dcE dcE dcE @@ -122587,40 +126511,40 @@ kEx osO osO ixf -jcz -bIS -wmn +ykc +oUr pRO -pmn -tFy -pIr -noC -gPA pRO -kqF -qAd -lMe +uUS +pRO +hGy +aHB +ttw +pRO +szf +dnJ +piN rzK dCm -xbZ -rfE -ugX -oKg -bMl +kID +kID +rCP +dCm +ghI bZx kJF kCE ftk vfX oKg -tQt +tVT xan -tNG +vWe vWe baw -dAW +vIE tPU -tuw +gqv vPN vQM shs @@ -122629,7 +126553,7 @@ shs ldX qLg shs -shs +eaM shs kdC vZd @@ -122687,11 +126611,11 @@ uLw fEs sUm qRy -cWU -pGk -iAr -oxi -heC +gNx +kvV +cvq +ibE +nsn dcE dcE dcE @@ -122844,43 +126768,43 @@ osO osO osO ixf -lOh -bIS -mLH +nuR +wjx pRO -rPs -kdG -iNK -jOT -iQR -fVj -xWy -aQj -dhL -sfq -mYK -bNY -bNY +tZf +czG +gij +gbw +sux +wBY +iFK +pjp +sPl +tFj +kPe +hlD +bXk +bXk sCP -oKg -cDC +dCm +uzV tCN swU gzc cWF -jdR +ugp oKg -oTr -bfc -sUi -gmc -scy -aVP -gug -qoD +hqV +dBE +hAy +fBT +bPS +tie +nUr +brb vPN -aCa -abs +caF +okC bgW iDe dkd @@ -122944,11 +126868,11 @@ cpA gLs gvI tOg -cWU -vGl -dNu -aYq -wKb +gNx +bWR +dXE +qwb +ohG dcE dcE dcE @@ -123101,31 +127025,31 @@ osO osO osO ixf -jcz -bIS -ncJ +ykc +oUr pRO -wIK -ekB -bDQ -lvv -pWh +pYg +gAh +cpF +vGu +iMO +gBu pRO -err -qac +qpJ +kqu lMe -rzK +asl dCm -voi -bNY +kID +bXk xGU -oKg -smt +dCm +mQA kwE wma lAn jzk -oyI +ror oKg tPU rJi @@ -123134,10 +127058,10 @@ sVq tPU wOq tPU -aCa +mnK vPN -aCa -abs +caF +dXh skr npb npb @@ -123165,9 +127089,9 @@ mJp wps wps arT -lWg +inZ bwM -jEz +inZ arT wps wps @@ -123201,11 +127125,11 @@ vSw adU iKm qSG -cWU -hqZ -dNu -aaS -wKb +gNx +tMT +dXE +qod +ohG dcE dcE dcE @@ -123346,7 +127270,7 @@ cOu cOu cOu cOu -bPW +jOO mmi osO osO @@ -123357,10 +127281,9 @@ osO osO osO mPB -bPW -jkR -bIS -aFN +jOO +sUK +pHJ pRO pRO pRO @@ -123368,15 +127291,16 @@ pRO pRO pRO pRO -gmh -qAd -lMe -epE +pRO +eJp +dnJ +ugC +bfl dCm lKb -bNY -rCP -oKg +mFU +wqU +dCm oKg oKg hda @@ -123393,8 +127317,8 @@ aTw tPU vfV vPN -aCa -abs +caF +dXh rvu qOw osS @@ -123458,11 +127382,11 @@ bdc aqe qhv ffC -cWU -viy -rYH -men -heC +gNx +nda +qpH +hLW +nsn dcE dcE dcE @@ -123615,30 +127539,30 @@ osO osO osO ixf -lOh -uVY -cWS +dSu +lzy +pRO +xYC +fQG pRO -mcY -tFy -qNn -nym -clF +udu +wBT +iGO pRO -ntw -qAd +oJt +dnJ emE -iOp +kNE dCm wzs -bNY -hTt -udl -xdP -uFX +kux +lgx +dCm +hwL +reI pXL -nbP -txO +mOc +cal qrK udl udl @@ -123650,8 +127574,8 @@ nnH nnH xzX vPN -aCa -dHq +caF +uxW uxW pRt gyN @@ -123715,11 +127639,11 @@ fdg sJX dag wrf -cWU -isv -gjM -jRZ -heC +gNx +lIF +vIG +kaI +nsn dcE dcE dcE @@ -123872,47 +127796,47 @@ osO osO osO ixf -jcz -bIS -hpC +xnL +azG +pRO pRO -vTH -hXE -ogG -wDQ -pgQ +jOJ pRO -sKT -qAd +uAX +sEV +uAX +pRO +oiV +dnJ vfe -beb +ugr dCm -bNY -gAy -khn -udl -cLV -brf -pXL +qfB +knp +tQl +dCm +llC +jhz +tde brf -lom +cdJ brf -vTL -jRJ -hPD +sxR +iwg +yfS udl -bbm -olr -qOm +cjQ +aoi +bGv nnH wFc vPN -aCa +rky vjc -abs -skr +shs +pRt txS -jBx +cQd jYm swZ shs @@ -123958,25 +127882,25 @@ arT gnR qfr vSq -evO -evO -evO -evO -evO -svL -cWU -cWU -cWU -cWU -cWU -cWU -jvL -cWU -cWU -clh -kgi -lBo -iMp +gNx +gNx +gNx +gNx +gNx +mmW +gNx +gNx +gNx +gNx +gNx +gNx +mRO +gNx +gNx +uSK +bfC +rHf +bIX dcE dcE dcE @@ -124129,47 +128053,47 @@ osO osO osO ixf -jcz -bIS -kQf +ykc +oUr pRO -rPs -kdG -iNK -jOT -iQR -hPL -xWy -qAd +mOz +czG +gij +iPx +sux +wBY +nhc +pjp +tje vfe -hpo +uPZ dCm -crG -idM -idM -idM -ffn +lqw +dCm +dCm +dCm +brf fmS pXL -pXL -pXL -uyi +yfH +qZY +lxy qNp -brf -jCY +xIs +uRA udl -wgU +xAm eQF -vzO +tns sKM xtG vPN -aCa +rSX hDF -abs +shs dyS fgd -jBx +fVE uJs lkY shs @@ -124215,25 +128139,25 @@ arT hFi qfr sQJ -xYL -gtd -gGl -bgm -rKA -fUu -wKb -bQz -xqy -eEv -wKb -eEv -eEv -eEv -wKb -wKb -kmQ -wKb -cIB +jGn +oHF +chv +uyA +ohG +wVY +ohG +qaw +lbJ +oHF +ohG +oHF +oHF +oHF +ohG +ohG +jAx +ohG +bxv dcE dcE dcE @@ -124386,44 +128310,44 @@ osO osO osO ixf -lOh -bIS -qnN +rnK +taB pRO -fZq -ekB -bDQ -lvv -aHe +xOU +gAh +xHS +lhR +iMO +but pRO -tqQ -ccZ +cyD +rYw qMN -pOF +aSP dCm -afj -idM -qsC -cTX +qfB +dTs +rWN +dCm +efg +oPO brf -xmb -fNp brf lxa nQu -mcG -acQ -aRs +wpg +ruF +nai udl -csP +aHb vzO -eQF +uaB sKM xtG vPN -aCa -dHq -dHq +caF +abs +abs pRt dyl nSX @@ -124472,25 +128396,25 @@ arT lim efJ rvs -rKA -rKA -rKA -rKA -rKA -fUu -xah -ktt -xXx -pgA -wKb -eEv -eEv -eEv -eEv -eEv -eEv -eEv -cIB +ohG +ohG +ohG +ohG +ohG +wVY +gSH +ulV +aXY +kRX +ohG +vQQ +vQQ +vQQ +vQQ +vQQ +vQQ +vQQ +bxv heR dcE dcE @@ -124630,22 +128554,21 @@ gMc heR heR gMc -heR -bPW +oTg +jOO ixf ixf ixf -oOz +vra ixf ixf -dtu +xsq ixf ixf ixf -bPW -hCB -bIS -alm +jOO +ejc +oUr pRO pRO pRO @@ -124653,17 +128576,18 @@ pRO pRO pRO pRO -gnw -qAd +pRO +vme +kgM vfe -fWc +vmO dCm -cNO -idM -idM -idM -aof -rrn +nBR +dCm +dCm +dCm +mlj +jjZ udl udl qPv @@ -124672,14 +128596,14 @@ udl udl udl udl -jch +oZe nrZ eQF dGQ fLb btE -aCa -abs +caF +uBY cRX sIO igx @@ -124734,19 +128658,19 @@ ofc wWx gbH ewD -fUu -wKb -pcL -fRe -eEv -ooy -eEv -eEv -eEv -eEv -eEv -eEv -eEv +wVY +ohG +cNf +dSq +oHF +bPT +vQQ +vQQ +vQQ +vQQ +vQQ +vQQ +vQQ cIB heR heR @@ -124888,55 +128812,55 @@ dcE dcE fRO heR -bPW -vEU -uDv -vwr -vwr -vwr -vwr -vwr -vwr -vwr -vwr -jcz -jcz -bIS -pDt -tYz -uus -qVd -cVN -bXH -aQM -cVN -cVN -dux -ezT -pOF +ixf +xxh +vNl +utS +utS +jLS +eeO +eeO +eeO +nuh +eeO +lsy +bPq +oYy +pRO +eel +fQG +pRO +xkG +nEX +flU +pRO +oiV +uKr +csr +dCm +dCm +joA +uaI +uaI dCm -ade -rdl -oMd udl -mlj -jjZ +udl udl vXi ofY -vFN +euH nnH -tWU -aoF -hTc +phn +pcE +hsj lwd eQF -rCO +mJY sKM xtG vPN -aCa -abs +caF +uBY hBM npb npb @@ -124991,19 +128915,19 @@ kKJ gkn dJb ewD -fUu -wKb -wKb -wKb -wKb -wKb -eEv -eEv -eEv -eEv -eEv -eEv -eEv +wVY +ohG +ohG +ohG +ohG +ohG +vQQ +vQQ +vQQ +vQQ +vQQ +vQQ +vQQ cIB wKb heC @@ -125145,54 +129069,54 @@ dcE dcE dcE heR -bPW -aug -vwr -pAz +ixf +xxh +soR +jwC iSE -kjN -fsf -fsf -vHO -vDV -laQ -laQ -jjn -hfx -jjn -mkI -cxQ -cxQ -xUV -olU -olU -olU -olU -laK -ffR -pOF -dCm -cNO +vwr +xRD +vwr +whn +psp +vtP +cBF +vtP +akk +pRO +pRO +jOJ +pRO +iyV +jBS +olB +pRO +oiV +qXh dCm dCm +kID +xGb +hnI dCm dCm +taf +dXy dCm -udl -brf +hAb ofY -oSs +euH nnH tOG eQF lgb pUU -vzO -nOU +auf +pCZ sKM xtG vPN -aCa +caF abs yeG knB @@ -125248,19 +129172,19 @@ sOT bJj dsV ewD -fUu -cCI -jyL -jyL -siG -wKb -eEv -eEv -eEv -eEv -eEv -eEv -eEv +wVY +kkw +aGx +aGx +rhT +ohG +vQQ +vQQ +vQQ +vQQ +vQQ +vQQ +vQQ bVs lJQ alT @@ -125406,57 +129330,57 @@ dCm dCm dCm dCm -pBG -fUE -nts -aiv -aqG +kqh +nHG +qya +fOF +xCj bPW -tgp -lOh -qSP -wPP -eQg -dCm -dCm -dCm -dCm -oZA -dCm -dCm -dCm -dCm -dCm -dCm +gbo +byW +jPe +aYF +pRO +mOz +czG +gij +iPx +sux +wBY +mFE +tXw +kIr dCm -tMZ +kID +isp +isp +isp +isp +upk +isp +isp dCm -fIg -pfx -kKy -fIg -udl -hvE -ofY -gIN +iHO +enk +vrR nnH -rIw -eTZ -cJE +rOX +bWm +dPv eQl -rmK -hrT +wRL +llf nnH xtG vPN qwa shs -shs +bOb shs ldX ldX -eaM shs +bOb shs abT abT @@ -125495,7 +129419,7 @@ arT arT arT arT -arT +wgE arT nLp lDo @@ -125503,21 +129427,21 @@ vyF ewD rJv eUD -evO -evO -mTH -cWU -cWU -jyL -jyL -wKb -eEv -eEv -eEv -pDf -eEv -eEv -eEv +gNx +gNx +kOK +gNx +gNx +aGx +aGx +ohG +vQQ +vQQ +vQQ +kSI +vQQ +vQQ +vQQ wKb koi wKb @@ -125658,53 +129582,53 @@ dcE dcE dcE dcE -dcE dCm -rmC +dCm +xhV ybW dCm dCm dCm -vFr +rSD dCm dCm dCm dCm -qvU +dMG dCm dCm dCm dCm -cqh -ntW -cNO -cqh -ozE -yeT -cCv -yeT -pov -pov -pov -fIg -cNH -fIg +uvw +xHS +sri +iMO +xts +dCm +dCm +jNW +dCm +kID +isp +kID +lsa +xZM dCm dCm uBD +dCm udl -udl -vFl +muK udl nnH sKM nnH sKM -ggj +hQh sKM nnH -nnH -bCD +jOi +xtG vPN glC oCe @@ -125715,9 +129639,9 @@ cLL mYd iYK shs -nCg -nEO tSp +nEO +vqs abT tGN rmw @@ -125757,30 +129681,30 @@ pps hFi tXs lEP -rKA -rKA -evO -evO -pPg -aLd -aLd -cWU -cWU -cCI -wKb -wKb -heC -heC -vaD -heC -heC -wKb +ohG +ohG +gNx +gNx +pAX +dPl +dPl +gNx +gNx +kkw +ohG +mLm +bSt +bSt +iQj +bSt +bSt +mLm wKb mNN wKb wKb wKb -roY +koi heC dcE dcE @@ -125915,44 +129839,44 @@ dcE dcE dcE dcE -dcE dCm -sbI +xBr +rpj gbJ +nHi +gRv +dXy +adv +mCO dCm -jhU +pcD +qjf +tGo +dXy +ily nit -isp -xBr dCm -wIW -qjf -isp -isp -ust -isp -isp +dCm +dCm +dCm +dCm +dCm +dCm +eMf +aAg +cqh +cqh cqh -hkm -hkm -hkm -hkm -hkm -hkm -hkm -hkm -voi -yeT dCm dCm dCm dCm tFd tCF -gex -aHx +ppu +nmW qGm -pnN +nQi nQi nQi nQi @@ -125984,18 +129908,18 @@ aCa upr qMi aCa -djL -uzj -txz +aCa +aCa +kgr tjR kxY -nLp +moO dOk hFi lim qVm hFi -nLp +uzj uVf lqr lAf @@ -126007,7 +129931,7 @@ hFi hFi hFi hFi -rMe +hFi gnT hFi hFi @@ -126016,13 +129940,13 @@ qfr hFi bnO bse -evO -aLd -aLd -aLd -aLd -aLd -cWU +gNx +dPl +dPl +dPl +dPl +dPl +gNx wNo oJz eyb @@ -126170,212 +130094,148 @@ dcE dcE dcE dcE +mXN dcE -dcE -dcE -dCm -dCm -nHi -dCm -adv -adv -isp -isp -isp -isp -isp -iZx -oTJ -nPB -dyG -pov -aMD -hkm -heR -heR -heR -heR -heR -heR -hkm -voi -yeT -dCm -ooK -nvO -owr -rwW -jBK -kSN -ffj -vTm -qDe -qDe -rHk -qDe -qDe -iPT -qDe -qDe -qDe -qDe -sBk -aCa -jTf -aCa -aCa -aCa -aCa -aCa -aCa -jjv -aCa -aCa -aCa -imq -imq -imq -imq -imq -qMi -qMi -qMi -fok -byE -aXa -epi -aXa -tjA -aXa -epi -epi -epi -epi -epi -epi -epi -epi -epi -epi -aXa -epi -epi -aXa -epi -epi -epi -aXa -epi -aXa -aXa -epi -tXs -qhd -vRF -mAe -evO -aLd -aLd -aLd -aLd -aLd -cWU -owf -kRI -oYp -jvo -qVm -cWk -cWk -cWk -cWk -unM -wBO -vij -hri -wKb -acx -heC -dcE -dcE -dcE -bWY -dcE -dcE -bWY -dcE -dcE -bWY -dcE -dcE -bWY -dcE -dcE -heR -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -"} -(158,1,1) = {" -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE +dCm +dCm +dCm +dCm +dCm +adv +adv +hXp +cOz +cOz +kqs +isp +tqv +eBi +eBi +mvT +eBi +ijL +eBi +lps +eBi +ijL +eBi +eBi +wKx +kID +kID +pBe +dCm +lKG +nvO +owr +rwW +mRU +wwd +fyo +vTm +qDe +qDe +rHk +qDe +qDe +iPT +qDe +qDe +qDe +qDe +sBk +aCa +jTf +aCa +aCa +aCa +aCa +aCa +aCa +jjv +aCa +aCa +aCa +imq +imq +imq +imq +imq +qMi +qMi +qMi +fok +fok +fok +pfS +aXa +tjA +aXa +epi +epi +epi +epi +epi +epi +epi +epi +epi +epi +aXa +epi +epi +aXa +epi +epi +epi +aXa +epi +aXa +aXa +epi +tXs +qhd +vRF +mAe +gNx +dPl +dPl +dPl +dPl +dPl +gNx +owf +kRI +oYp +jvo +qVm +cWk +cWk +cWk +cWk +unM +wBO +vij +hri +oTF +koi +heC dcE dcE dcE +bWY dcE dcE +bWY dcE dcE +bWY dcE dcE +bWY dcE dcE +heR dcE dcE dcE @@ -126418,6 +130278,38 @@ dcE dcE dcE dcE +"} +(158,1,1) = {" +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE dcE dcE dcE @@ -126430,41 +130322,73 @@ dcE dcE dcE dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +mXN +heR dCm -jDY -inp -mHH -hQQ -lZQ -nws +syK +ddI +oPf +glF +adv +dXy +dXy itt -nws -ydH +fVp +dXy isp -pov +lZQ xqs xqs xqs xqs xqs xqs -dqJ -dqJ xqs xqs -dqJ -dqJ -jSf -jSf -qpc +xqs +xqs +xqs +xqs +hkm +rGY +hkm kOk kOk kOk kOk hdi -cHC -wZA -fct +iuN +gMB +iah frE iEk qrZ @@ -126473,40 +130397,40 @@ mGb spJ eJX qrZ -xtf +qrZ qrZ qrZ dko oDH oDH -gti -oDH -iYq -caE -dUe -oDH -bEJ -iKT -oDH -oDH -bZJ +jty oDH oDH oDH oDH oDH oDH +iKT +bZJ +bZJ +bZJ +dej +aCa +sVO +lqS +lqS +lqS xCW oDH dGi -oVz -nLp +aCa +kgr gZh hFi ajB nLp wLK -vOE +oVz nLp hFi jbW @@ -126530,13 +130454,13 @@ xEB hFi upt lZM -evO -aLd -aLd -aLd -aLd -aLd -cWU +gNx +dPl +dPl +dPl +dPl +dPl +gNx cMb lue vnp @@ -126684,39 +130608,39 @@ dcE dcE dcE dcE -dcE -dcE +mXN dcE dCm -xxd -mjh +awk +vdZ +hkm bTW -foJ +qRg bTW bTW -jjd +pkW +bTW bTW -jSf isp -pov +dZS xqs -vUm -pLP -vyp +xrI +bjH +uvf dqJ -vBX -mzN -hbO -eKF +cME +gpb +wkf +eZU gmd -iAH +guh dyt -jSf -bKC -vDL +hkm +hKr +oDZ kOk -aGG -aGG +tmG +tIa aGG hdi hdi @@ -126729,71 +130653,71 @@ jwa qKO qKO qKO -oDs -qKO +uln +cwA uDd bgT edJ qHJ vBZ -qKO -uln -qKO -qKO -qPj +pfM +iys +ldp +mHF eao +eao +wmg qPj -qPj -cjh -cjh +vkD +aqi mwS xCO nak -uKP +rRN wTn mQX -cjh -mHf -mHf +rVL mHf +tUg mHf +bQC mHf -rKA -cLq -nuP -awK -rKA -rKA -rKA -dHh -rKA -rKA -rKA -rKA -kRd -rKA -rKA -rKA -sVA -awK -xuU -rKA -cLq -rKA -awK +uAp +qVv +sai +bab +uAp +uAp +uAp +cZD +uAp +uAp +uAp +uAp +vVi +uAp +uAp +uAp +klQ +bab +mKb +uAp +qVv +uAp +bab oAN aXa nBS -rKA -rKA -rKA -evO -evO -aLd -aLd -aLd -cWU -cWU +uAp +uAp +uAp +gNx +gNx +dPl +dPl +dPl +gNx +gNx aSW aSW pQh @@ -126941,50 +130865,50 @@ dcE dcE dcE dcE -dcE -dcE +heR dcE dCm -iBG -oKN -bTW -oPu +fGQ +cWu +hkm +kmz +xDq mvu llK -fYt -nXr +hfL +cDF +bTW +nNi jSf -lnO -cNt -tkO -ovN -oUo +xqs +xPy +wHB klH lVD -uTK +szG fsw -ahT +ggX jHt jHt jHt -wJF -jSf -ucQ -wzB +stt +hkm +aDd +rtv kOk hPP qlF vaF +giG oOs -iKA lNZ ksm -qlf -tul -lge -xQU +duf +bAS +dzw +cnT jwa -qKO +hCL eYw eYw qKO @@ -126994,62 +130918,62 @@ gZW uqm qKO qKO -hbK -eYw -qKO -qgr +qPj +toT +hIS +xiy xiy -lmt +sta qPj -caQ -gNy +cjh +nJU qgI lMT mie vzr +mie nJU -nJU -mhP +cjh mHf gFB sLS pGs mHf -swp -gKL -mHx -mwj -qWv -rKA -bpB -gtd -lHT -rKA -dsR -djE -tpA -iCN -rKA -gZD -agO -agO -kAV -oLE -agO -agO -rKA -rKA -yli -iRa -rKA -bZq -tRG -bZq -evO -evO -mTH -cWU -cWU +tJH +hpr +pLS +kJk +kZq +uAp +iCV +lLN +iTh +uAp +qNP +iai +wRT +hew +uAp +kcL +lFF +lFF +mmM +kJl +lFF +lFF +uAp +uAp +kuB +wqe +uAp +iwY +fWB +iwY +gNx +gNx +kOK +gNx +gNx msr aSW xNN @@ -127196,52 +131120,52 @@ dcE dcE dcE dcE -xXv +iWu mXN -dcE -dcE -dcE +mXN +heR dCm +pZZ lNm -oTE -bTW -iqs -sRa -nfM +hkm +xEW +xDe +mtM +aVZ bCb -mId -jSf -pIn -qhl -xqs -vUm -lff -wLg +gKT +bTW +xyD +ahl +tkO +plk +wHB +uqN dqJ tMD pDT -xwC +mQH hKn hKn hyo -lRr -jSf -bBu -vRz +wnm +hkm +dxU +kAc kOk hun cZN kAX -fjy -osu -xfX +eAl +gNg +sII ezE -udY -xQV -lge -rNx +tck +whH +dzw +lzg jwa -qKO +whG hbK qKO qKO @@ -127252,59 +131176,59 @@ qKO qKO qKO bPw -eYw -qKO +oII +iYq fGL uDD qxr opL pLd -eOa -eOa +raF +piF kIw -eOa -eOa -eOa +geK +kIw +cTo pOQ jBX jkG ggH -hXm +uqB bKs mHf -pGv -agO -vdr -tbf -cCr -rKA -ops -qHN -gtd -rKA -lBF -gtd -cIX -iCN -rKA -agO -agO -oLE -kAV -oLE -gtd -agO -rKA -vok -viN -eJZ -rKA -rPV -qZv -nTM -yiL -rKA -jmh +xpo +lFF +lMj +qQe +uLe +uAp +xMu +qGe +lLN +uAp +tzK +lLN +agL +hew +uAp +lFF +lFF +kJl +mmM +kJl +lLN +lFF +uAp +pqo +qqs +cXO +uAp +dGX +okJ +rDz +tfq +wKb +dlt qdA wOx vcm @@ -127454,49 +131378,49 @@ dcE dcE dcE mXN -heR -heR -heR -heR -unl -kQy -unl -unl -lUO -kUW -lVA -gBY -kUW -jSf -orm +dcE +dcE +dZJ +pZJ +pZJ +gtm +pZJ +nbQ +qnB +ing +xXj +lbp +aEA +bTW +aaq cil xqs xqs -yhN +uXm xqs xqs -dqJ +rgq wDY -dqJ -dqJ +rgq +rgq vzW -dqJ +rgq xqs jSf -aqy -fZR +pdY +jSf kOk -vMO -vqi +sDD +tEQ seA -cuT -gFk -fBX -hpe -nbY -bKb -lXK -lBQ +siD +dmk +bAW +cwe +cbn +xgR +qqV +yiF jTQ jwa gtA @@ -127505,63 +131429,63 @@ tkm lAg xoT aVm -hKw +eYw hfX qKO woX -hbK -qKO -vgN +fNW +eJa +cJK cJK rSb qPj kHy -hHA +blm ghZ -geK +aSU pce -rxk -ntx +gSn +gSn gSn mDS -iju +mHf sXk kdp lfK mHf -nqu -xuB -tbI -gKL -oSZ -uKm -gtd -gtd -sUV -rKA -dFo -qHN -oCA -rVx -rKA -gtd -agO -cEf -afP -rXI -gtd -agO -rKA -gvk -mRI -iRa -rKA -oOd -qHN -qHN -eAP -rKA -jmh +oAf +xId +llM +hpr +bNe +hgi +lLN +lLN +kpl +uAp +rxW +qGe +lbk +ihJ +uAp +lLN +lFF +cgG +lSM +sGT +lLN +lFF +uAp +pbY +kjr +wqe +uAp +syN +qGe +qGe +dhf +wKb +dlt dlt wKl rNT @@ -127705,7 +131629,7 @@ dcE dcE dcE dcE -dcE +heR dcE dcE dcE @@ -127714,64 +131638,64 @@ mXN dcE dcE heR -unl -unl -eGE -hVk -hBw -fgx -kqH -vLj -hYg -fGD -eQO -lsV -xCJ +pZJ +gBr +oZS +fOs +vfQ +rtr +jwO +qMF +nKp +dvr +lPP +pny +qYP tNb lqA -ygH -rrz +vEv +sOU hKE nNY tIl xkL -kTN -nNY +sOU nNY +oOE tKa nNY -ocF +nzx jSf jSf njk njk njk -uAl -dGS -bAW -idm +njk +hFp +cMR +ezt oOs -wfz +pVM gsL -iDS +wQu aKR jwa eYw qKO -eYw +mzH qKO qKO hlF ctT leR qKO -qKO -eYw -qKO +ylN +gNS +qNi tLq jua nUd -qPj +opL ivz hHA nml @@ -127779,46 +131703,46 @@ ebO web ebO rOb -gSn +dUe jYs -mHf +jkG iUM -uqB +kdp puR mHf -gim -gtd -agO -gKL -gtd -rKA -lxN -gtd -aFm -rKA -oPW -sfJ -mHD -gtd -rKA -agO -agO -oLE -kAV -agO -agO -agO -rKA -gAM -viN -vsq -rKA -xfr -nvM -qHN -qHN -rKA -jmh +vgV +lLN +lFF +hpr +lLN +uAp +oRA +lLN +wpL +uAp +uLI +ouJ +cZz +lLN +uAp +lFF +lFF +kJl +mmM +lFF +lFF +lFF +uAp +qcW +qqs +vIb +uAp +fiZ +iiN +qGe +qGe +wKb +dlt qdA wOx tVR @@ -127832,8 +131756,8 @@ uVg uVg pWZ uVg -uVg gLU +bDq foj koi wKb @@ -127961,32 +131885,32 @@ dcE dcE dcE dcE -dcE -dcE -dcE -dcE -dcE -dcE +dZJ +iWu mXN -dcE -dcE -gOE -jsV -nAN -uhl -rZl -gXQ -kXt -aTV -kUf -unl -unl -unl -unl -jSf +mXN +mXN +mXN +iWu +heR +bWY +ule +tMN +lLT +ePI +shl +qBr +dkb +dkb +jBf +pZJ +pZJ +pZJ +pZJ +pZJ hmX wrQ -ygH +vEv wrQ wrQ wrQ @@ -127997,85 +131921,85 @@ wrQ hns xgZ wrQ -rOB +lkf jSf -jDl +bau ncV hsI -dtj +fOY pdB -bRC -bAW -rIU -bAW -loh -bAW -rIU -kmm +mlx +xRj +wjX +qtj +doK +gUr +oyz +ipo jwa eYw qKO ggQ -hbK +uoz qKO ceh rvt ufx -jia -qjV -hKw qjV -rwd +jRe +sXu +eJa +deg deg qJb qPj -qNi +cjh ssa cjh -osx csb +aIR csb cjh glU -qNi +cjh mHf fEA -uqB +akv dKD mHf -vCr -bMq -xvv -lYw -mPn -rKA -rKA -daz -rKA -rKA -sJK -gtd -dOq -gtd -fhA -agO -agO -vpt -afP -qGx -agO -gtd -rKA -rKA -mRI -nlP -rKA -qHN -qHN -fUh -ogn -rKA -jmh +iPv +kFN +qOj +lhq +fCM +uAp +uAp +afI +uAp +uAp +uVD +lLN +iEe +lLN +cMJ +lFF +lFF +mSG +lSM +yiw +lFF +lLN +uAp +uAp +kjr +peI +uAp +qGe +qGe +fjO +wDX +wKb +dlt rOn iXD kiu @@ -128087,7 +132011,7 @@ xRn aSW jjG uVg -ucl +nax uVg hRW bDq @@ -128219,120 +132143,120 @@ dcE dcE dcE dcE +mXN dcE dcE -dcE -dcE +heR dcE mXN heR -heR -heR -kbu -naa -mFk -rZl -nyz -fgx -vLU -oKx -bUb -nBH -inu -inu -jSf -fvu +bWY +vNb +tMN +sZk +cPr +shl +qBr +dkb +dkb +jBf +qVU +aIZ +kay +kfI +pZJ +rnN lpj -oob -fVd -fVd -fVd -uyr -uyr -uyr -uyr -uyr -nGB -ien -aat -oxn +aaN +lsv +lsv +lsv +aaN +aaN +aaN +aaN +aaN +uCs +iti +iti +mCN itX ngp -qzQ -hYa -jCv -mYm -xRj -wjX -qtj -doK -smk -gTe -eSW -iSh -nES +mPt +mLd +pBh +wsP +spn +wyA +vDM +vYQ +fnF +lRs +bFm +kTe +mtv qKO qKO -eYw +mzH qKO vuc xmf -aVm -vKi +leR +qKO tiK eSK csS cHS spr uWE -qPj +wHw bfN kbf wIf onn ueR -ueR +rNI ezW pgx iJC mHf +jkG +bwv +jkG mHf -iju -mHf -mHf -rKA -etu -spw -spw -qzf -rKA -aNT -gtd -rKA -pbU -cac -dOq -stY -fUg -rKA -agO -gtd -oLE -kAV -oLE -agO -agO -tuj -qHN -mRI -nlP -rdV -iBI -sbn -qei -ggp -rKA -bHO +uAp +upz +lgg +lgg +tpB +uAp +awX +lLN +uAp +wKS +wQA +iEe +qxW +kCk +uAp +lFF +lLN +kJl +mmM +kJl +lFF +lFF +xlt +qGe +kjr +peI +adg +qTZ +jpq +kTQ +oBr +wKb +oUS qdA xZP aKk @@ -128476,75 +132400,75 @@ dcE dcE dcE dcE -dcE -dcE -dcE +mXN +heR +heR pGP pGP pGP pGP pGP heR -unl -fgx -fgx -rZl -bmO -fgx -vdm -xvH -jRo -lwe -rSk -rSk -fOM +pZJ +jkD +bTp +shl +fNx +uuH +uuH +vth +aYU +ydV +lyv +lyv +jxQ noI wrQ -nKD +jke +wrQ wrQ -hMv dYy wrQ -tST +bnh uBp wrQ wrQ wrQ -wrQ -tFC -fTF -dnb +lpE +tPl +jSf +lGC gym inI -gkW +ovV njk -iRX -gef -koC -oVY -oCr -bAW +xEh +gAb +dOC +fPn +hKs +oxc rIU -svB +wPj jwa -nES +mtv qKO -eYw +agF ovQ qKO eZd gNf -eYw +mPf jaN -qKO +aLq pnq -qKO -qPj qPj qPj +vTE +vTE qPj ipR -hHA +rxc jeW jgd qxA @@ -128552,44 +132476,44 @@ hHr bhN gbE uro -hIA +abI leT vQd fPX -hIA -rxM -afr -afr -qHN -afr -rKA -sVA -gtd -rKA -dOq -rKA -ddw -rKA -rKA -rKA -agO -xuB -gKO -afP -gEE -agO -agO -rKA -qHN -mRI -vsq -rKA -oZt -jxo -nvM -rKA -rKA -jmh +cjh +gSF +pAd +pAd +qGe +pAd +uAp +klQ +lLN +uAp +iEe +uAp +kBB +uAp +uAp +uAp +lFF +xId +cJZ +lSM +cvM +lFF +lFF +uAp +qGe +kjr +vIb +uAp +bNl +hmp +iiN +uAp +wKb +dlt wKb wKb wKb @@ -128733,7 +132657,7 @@ dcE dcE dcE dcE -dcE +mXN dcE dcE pGP @@ -128741,50 +132665,50 @@ wFl wFl wWO rbl -xpn -sZu -muW -hhE -qEZ -esk -vMn -rND -cMW -jRo -kNB -rSk -rSk -jSf -anB +clX +hMp +rnB +hpw +aqp +rmb +lxV +lxq +gJv +aYU +mEo +lyv +lyv +pZJ +nox wrQ -pvU -xYb +mfT +lpE mwx wrQ dje -qbm +lEH dje wrQ mwx -wrQ -tHR -oZV -pCb -wSZ -wSZ -rct -rct -uAl -aLX -gAb -gEZ -lyw -vuy +dGY +mfT +bkk +jSf +uaP +uaP +njk +njk +njk +iAa +sXf +tBn +tBn bAW -tOO -pJM +bAW +rIU +cjY jwa -nAA +tEW qKO tWK qKO @@ -128793,12 +132717,12 @@ qKO qKO qKO qKO -qKO +fjz gVv qKO ifn -oII -hhw +vYX +vYX kxf dbw dLM @@ -128808,45 +132732,45 @@ szK usf kso cRO -aiP -rRN -pKC -bMi +geK +geK +geK +cfS uGJ -hIA -kEy -dWM -wmx -nrO -xPg -ncI -iCS -nBg -rKA -tpA -rKA -agO -gtd -gtW -tEy -agO -agO -gtd -oLE -oLE -agO -agO -rKA -tkh -viN -onG -rKA -jSW -qHN -gGl -erj -rKA -jmh +cjh +vQm +jCV +kHe +eBX +nNg +iHi +cHx +asZ +uAp +wRT +uAp +lFF +lLN +oHY +hLi +lFF +lFF +lLN +kJl +kJl +lFF +lFF +uAp +jaT +qqs +mqN +uAp +wuV +qGe +bHC +vNE +wKb +dlt wKb bAw xFT @@ -128924,40 +132848,23 @@ dcE dcE dcE dcE -"} -(168,1,1) = {" -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE +"} +(168,1,1) = {" +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE dcE dcE dcE @@ -128993,117 +132900,134 @@ dcE dcE dcE dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +heR +iWu +dcE +dcE pGP -gPj +qnU ftG kGD pQS heR -kbu -aKq -ilP -jBb -mOo -nBs -dDV -xzT -unl -unl -unl -unl -jSf -pvp -pvp -jSf -iyb -jSf -pvp -pvp -jSf -pvp -pvp -jSf -pom -jSf -kvl -pCb -gTm +wNN +aim +sSx +fQT +bLP +vla +aEg +xuM +pZJ +pZJ +pZJ +pZJ +eaV +cOR +cOR +eaV +fTw +eaV +cOR +cOR +eaV +cOR +cOR +eaV +qIo +eaV +cOR +eaV +gUc rnX -sYg -bIP -hdi -afS +sfS +gUE +cWb +ckF +oCN bAW -tBn -vss xKx -fMu -rHZ -jwa +vvB +tIE +wxy +pJM jwa -nES -nES -nES +mtv +mtv +dXu rfu -nES -nES +nEM +nEM pQQ rfu -nES -nES +nEM +kkQ imz qKO nPb hfM vYX kxf -dbw +xCe iPz -wvw +oip oqA oqA aGb -gNS +dbw mbz -hIS -vqs -qAI +eOa +eOa +eOa guV rtb mID -dzt -bFc -pHQ -pNA -afr -rKA -sVA -cYx -rKA -tpA -oQk -ihE -agO -nBq -rKA -agO -agO -oLE -oLE -oLE -agO -agO -rKA -rKA -hMI -iRa -rKA -rKA -rKA -rKA -rKA -rKA -jmh +uXN +xeY +aSL +iAx +pAd +uAp +klQ +vFf +uAp +wRT +vTh +bBL +lFF +jau +uAp +lFF +lFF +kJl +kJl +kJl +lFF +lFF +uAp +uAp +hBs +wqe +uAp +uAp +uAp +uAp +uAp +wKb +dlt wKb wKb wKb @@ -129247,7 +133171,7 @@ dcE dcE dcE dcE -dcE +mXN dcE dcE pGP @@ -129255,24 +133179,24 @@ wFl wFl iqj kJI -hce -hsW -nPS -wZd -acU -vdG -xZd -dDV -alk -tCX -cDU -sTO -sTO -jSf -dHC +mJI +pWi +pUx +ktD +woy +pDQ +dkb +aEg +gJv +jDm +hxf +gqH +hxf +eaV +qHP lqH lqH -aGp +bdX lqH lqH lqH @@ -129282,25 +133206,25 @@ lqH lqH lqH lqH -buu -pCb -pzZ -pbB -aMw -hYj -uAl -svM -fjy -aVD -aUD +inQ +eaV +kNj +rMr +thY +ufc +rct +rct +bmK +frN hWk fJL +gJY +lcS fJL -fJL -fJL -fJL +jwa +jwa qKO -eYw +now eYw qKO qKO @@ -129312,55 +133236,55 @@ imz qKO hzq vvw -vvw +pXF tBc tXY twX abM goD -goD +vHC eru jfd -pBJ +pBa tcr -hIA +nba htm -uHe +dep dAV -hIA -bZQ -qHN -afr -qHN -afr -rKA -lmv -vgJ -rKA -tEH -oQk -laj -bJB -agO -wMZ -pRA -agO -idQ -xhr -dsg -agO -gtd -rKA -mjm -fTZ -vsq -gAM -gvk -ouH -tkh -dEX -rKA -cBu +cjh +ezh +qGe +pAd +qGe +pAd +uAp +oln +tCm +uAp +jkb +vTh +kKU +nmE +lFF +epn +vxi +lFF +gQj +vUf +syT +lFF +lLN +uAp +oWt +gsd +vIb +qcW +pbY +ego +jaT +xTs +wKb +clq wKb unh hZf @@ -129504,120 +133428,120 @@ dcE dcE dcE dcE -dcE -dcE -dcE +mXN +heR +heR pGP pGP pGP pGP pGP heR -unl -esK -rUM -krK -dWg -xZd -dDV -alk -ppL -ndg -ndg -ndg -fOM +pZJ +ozS +exr +tSB +dkb +dkb +aEg +gJv +nXq +lWs +lWs +lWs +rki sMy rxH mDD -goU -oLX -yhf -meE -nFx -ich -eXf -gro -goU +wGP +rKj +ptS +tND +cZr +tmZ +qrY +bqd +wGP rxH -lFW -pCb -aGX -mur -sok -wSZ -uAl -uAl -afS -bAW -xfX -hWk -eSA -hXA -iNX -cbB -fJL -qKO -qKO -eYw +hXW +cOR +wrd +blI +oyU +efM +eHZ +kEC +oCN +oCN +eWD +gJY +cET +nht +xKs +hKt +jwa +jxB +uWp +hbK qKO gdf cOg jBI jqR qKO -mOg +rOl qKO wom -vvw +pXF diP uxp -tas +cjh abm -tas -tas -tas -tas -tas -tas -tas +rxk +jXm +cjh +cjh +ceC +ibZ +cjh +hIA +hIA +hvL hIA -dej -uHe -cSf hIA -blh -afr -mJe -kcA -hIZ -rKA -cYx -ifA -rKA -dOq -rKA -gRQ -cpE -agO -rKA -agO -agO -dsg -vPU -nEq -agO -agO -rKA -oGO -snQ -lIT -hUU -snQ -iaR -fTZ -jsj -tMu -fKS +ltF +pAd +rsm +eQC +meY +uAp +vFf +wAV +uAp +iEe +uAp +sHh +mSL +lFF +uAp +lFF +lFF +syT +oKy +fUc +lFF +lFF +uAp +grm +nEW +jei +msq +nEW +qbM +gsd +hxU +vlc +wUh vlc mgY mgY @@ -129761,7 +133685,7 @@ dcE dcE dcE dcE -dcE +mXN dcE dcE pGP @@ -129769,53 +133693,53 @@ kYf kYf fbu rbl -xpn -aNf -gOL -cyW -krK -dWg -xZd -dDV -alk -blb -wMu -wMu -wMu -jSf -yha +clX +rum +lqf +cNr +tSB +dkb +dkb +aEg +gJv +bav +fBI +fBI +fBI +eaV +jqz rxH umy -goU -tdN +bfY +vsD xBE xBE oUa xBE xBE -dfG -goU +mOO +bfY rxH -lFW -pCb -gKs -iWh -bvI -wSZ -rRJ -oOs -nID -jrx -xfX -hWk -eSA -iep -qXH -lVH -fJL -wAO -qKO -kcN +vEH +cOR +wrd +lqa +qTa +sok +mNK +afS +bAW +bAW +jcN +gJY +dRx +lhJ +eYN +gco +jwa +wKC +now +eYw qKO daW agF @@ -129833,48 +133757,48 @@ vCk pQq fRE rRg -tas +qxQ mSA hcj -jZl -hIA +cjh +cpQ lxW jBn nSS hIA -rKA -uKm -rKA -rKA -rKA -rKA -cfQ -rKA -rKA -dOq -rKA -rKA -rKA -rKA -rKA -agO -gtd -oLE -oLE -agO -agO -agO -rKA -tkh -jvX -juo -hAd -hLu -bUr -tkh -qHN -rKA -cBu +uAp +hgi +uAp +uAp +uAp +uAp +gDo +uAp +uAp +iEe +uAp +uAp +uAp +uAp +uAp +lFF +lLN +kJl +kJl +lFF +lFF +lFF +uAp +jaT +mrA +jmL +ayU +tjx +ppY +jaT +qGe +wKb +clq wKb yfj nuZ @@ -130017,62 +133941,62 @@ dcE dcE dcE dcE -dcE -dcE +heR +iWu dcE dcE pGP -xbI +qEC sFb kil pQS heR -kbu -aKq -bag -krK -dWg -xZd -dDV -ska -unl -unl -unl -unl -jSf -gJT -iCq -umy -aej -rRh +wNN +aim +ybM +tSB +lEl +dkb +xSA +scO +pZJ +pZJ +pZJ +pZJ +eaV +oan +fnY +hXi +rKj +tQk xBE -vTv +rwn pEG -qvr +hhJ xBE -kbQ -yma -iCq -lFW -pCb -yhT -glJ -rvR -tTz -ulq -smk -smk -smk -smk -rLK +uiU +bqd +rxH +jEM +eaV +lmn +aMw +hKe +udS +rct +rct +gmq +cMR +jcN pnc -gAC -nxN -jLt -fJL -eYw +wdB +pjB +uSz +oPm +jwa qKO -hbK +qKO +fki qKO aTc mdT @@ -130087,51 +134011,51 @@ lWf uxp fyY qsi -rxc +yco emR ijF -tas +vKi nbb ezm -jXm -hIA -lxW -uHe +cjh +bfQ +cSf +jIl lhY -hIA -cme -gtd -gtd -gtd -qHN -sIq -cYx -rKA -gtd -tpA -kyg -rKA -qNM -lxN -rKA -uOS -jIs -agO -oLE -oLE -jIs -bKh -rKA -qHN -wkP -rhM -lzG -iLP -kkM -tkh -ibt -rKA -jmh +mhO +lLN +lLN +lLN +lLN +qGe +kPO +vFf +uAp +dDg +qtv +gTu +uAp +xxE +oRA +uAp +xtA +xCs +lFF +kJl +kJl +xCs +oEh +uAp +qGe +kUk +cPD +pvN +suK +ggK +jaT +bop +wKb +dlt wKb oZh nuZ @@ -130275,7 +134199,7 @@ dcE dcE dcE dcE -dcE +mXN dcE dcE pGP @@ -130283,24 +134207,24 @@ kYf kYf fPA kJI -hce -hsW -wfp -cSq -evv -dqo -xZd -dDV -alk -tCX -jjK -ftF -ftF -jSf -kWx +mJI +pWi +tXE +tRN +qaq +dmj +dkb +aEg +ibC +jDm +bge +bhy +bge +eaV +wXj rxH -wcJ -bdh +fmw +oCp xBE xBE hDq @@ -130308,28 +134232,28 @@ oWZ hDq xBE xBE -edu -fJN -nCO -pCb -sIB -rBO -wSZ -wSZ -rqm -fjy +pjn +rxH +uip +eaV +rHT +qGr +rct +rct +rct +afS bAW -fBX bAW hWk -eSA -sbF -qhW -qTt -fJL -qKO +gJY +eqR +xtE +ffg +sNT +jwa +uKy qKO -hbK +kcN qKO qKO pNk @@ -130343,52 +134267,52 @@ czY mdf uxp pbc -oJd +jxc yco hYo gLD gQa fZg nRz -wmt -hIA -raF +cjh +bhM +bMi amJ moq hIA -cme -gtd -rKA -keE -aHo -rKA -qYs -iCS -iCS -mKV -xpv -tLb -pee -jgB -rKA -rKA -rKA -rKA -eRg -rKA -rKA -rKA -rKA -tkh -xoZ -cTv -lzG -lzG -qmc -tkh -kES -mKV -muF +wij +lLN +uAp +ulo +xBC +uAp +nyF +enY +nIX +uAp +sNF +oIe +enY +gmu +uAp +uAp +uAp +uAp +oyJ +uAp +uAp +uAp +uAp +jaT +kHH +mtd +pvN +pvN +pWl +jaT +eOH +qdx +fAD qdx sPx bOi @@ -130466,35 +134390,23 @@ dcE dcE dcE dcE -"} -(174,1,1) = {" -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE +"} +(174,1,1) = {" +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE dcE dcE dcE @@ -130535,57 +134447,69 @@ dcE dcE dcE dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +mXN +heR +heR pGP pGP pGP pGP pGP heR -unl -daE -tGe -qLm -mOo -nBs -dDV -alk -ppL -wRs -wRs -wRs -fOM -edY -iMP -fmw -bdh -lEJ -ewm +pZJ +prX +oNy +ion +bLP +vla +aEg +ibC +nXq +uFL +uFL +uFL +rki +bly +kwb +igb +oCp +iND +oKr wAU kDN aZY -okm -lEJ -nPP -fJN -uip -pCb +iyh +bdM +fFF +rxH +swa +eaV +eaV +wSZ pCb -uqc -cIH cxh gyV kwO -vvB +jrc fMu -fMu -kth -fJL -fJL -fJL -fJL +nlw fJL +alA +pVO +iKw +pUY +jwa +qKO qKO -qPs hbK jxB hbK @@ -130598,54 +134522,54 @@ qKO qKO qKO qKO -qKO -qKO -qKO -qKO +cjh +qAI +jxc +gJm bRQ -qKO -qKO -qKO -qKO -qKO -hIA -hIA -rwG -hIA +gLD +vKi +aHH +rwd +cjh +hXm +rKf +mPO +klU hIA -rKA -lUp -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -vkU -rKA -mSq -tpA -oXZ -rKA -mDV -agO -jyD -rKA -tkh -tkh -qHN -vTq -olL -fXT -jIZ -iET -qHN -ujS -rKA -jmh +uAp +uQX +uAp +uAp +uAp +uAp +uAp +uAp +uAp +uAp +uAp +xJL +uAp +pLa +nnQ +jHc +uAp +tOs +lFF +rVS +uAp +jaT +jaT +qGe +iQM +twO +eaN +chV +pKP +qGe +iyL +wKb +dlt wKb byv mKF @@ -130789,120 +134713,120 @@ dcE dcE dcE dcE -dcE +mXN dcE dcE pGP pBP pBP bFn -rTQ -kxy -fCp -xrJ -xIz -drW -xvC -xZd -dDV -alk -ppL -uxj -uxj -uxj -jSf -pbt -rQb -igb +jLv +rDs +lGO +rdh +uCa +lmR +lGV +dkb +aEg +ibC +nXq +pkI +pkI +pkI +eaV +szL +rxH +fmw uip -nYD -uPB +qie +tAX eLK dNX noU -vdg +kcY nYD cKc -fJN +rxH uAB -hFq +ffE eaV -wSZ +heR kOk hdi -kOk +hdi kOk kOk hdi hdi -kOk -kOk -dcE -heR -dcE -heR +fJL +fJL +eSA +eSA +fJL +jwa qKO nxr hbK -hbK -hZi +qPs +fWe sgr jxB qKO ryb sGV -qKO -agF nMC -uoz -wYS -eYw -jxc -eYw eYw hbK -qKC -vVp -hbK eYw +wYS +jCP +jxc +gJm +caQ +bEJ +gQa +vVp +eTm +cjh tSW bXt -buA +sCI hOw hIA -pPG -gtd -rKA -lfG -rEv -tuJ -kLV -gQi -rKA -awK -rce -mTL -qZW -qYs -tLb -pee -wuZ -aqj -wIg -agO -mtw -tkh -rKA -waq -mEG -vax -iKf -xfa -bqv -tkh -bZQ -rKA -jmh +quk +lLN +uAp +rFM +qOC +blW +duG +pgT +uAp +bab +uwl +aWA +vEW +idV +oIe +enY +gDZ +atJ +tks +lFF +vpX +jaT +uAp +kJz +uMJ +uSh +pyN +tmK +eSG +jaT +ezh +wKb +dlt wKb wKb wKb @@ -131045,121 +134969,121 @@ dcE dcE dcE dcE -dcE -dcE +heR +iWu dcE dcE pGP -hng +dtv gIn aUW pQS heR -kbu -aKq -vWt -xZd -dWg -xZd -dDV -kfv -unl -unl -unl -unl -jSf -pbt -rQb +wNN +aim +vyG +dkb +dkb +dkb +aEg +xWz +shQ +shQ +shQ +shQ +eaV +hch +kwb lQA nwJ -xmd -uMD +uRD +sqj aVG shb mwY -tjt +vTQ tbd szp -rWT rxH -iIL +rxH +liN eaV -oAL -mrg +heR +bWY +bWY bWY oAL plB mrg bWY -oAL +uTj plB mrg bWY bWY -dTJ heR qKO -rYJ -qNd +xyt qNd -qNd -diE +clk +clk +mMZ hbK qKO iPk kvJ hKw uve -qKO +gAz chz -qKO +cjh uVn -qKO -qKO -qKO +jxc +mGj +gNy pLv -qKO +bgx oFh -qKO -qKO +cjh +cjh hIA uxG -abI +bMi dvK hIA -rKA -uYL -rKA -lfG -rEv -qHN -gWm -rsn -rKA -djE -gtd -qZW -awK -rKA -gtd -cme -rKA -qMC -lKm -gKL -rKA -qHN -tkh -tkh -vTq -rhM -lzG -rXq -iET -tkh -ujS -rKA -jmh +uAp +mbj +uAp +rFM +qOC +qGe +rSG +avw +uAp +iai +lLN +vEW +bab +uAp +hUb +wij +uAp +fCQ +dZI +hpr +uAp +qGe +jaT +jaT +iQM +cPD +pvN +yhD +pKP +jaT +iyL +wKb +dlt wKb eCM tnh @@ -131303,7 +135227,7 @@ dcE dcE dcE dcE -dcE +mXN dcE dcE pGP @@ -131311,22 +135235,22 @@ pBP pBP mVM jLv -eiG -sXv -faw -oPS -wid -jZx -fpZ -dDV -alk -unl -xLF -ibq -oCS -cGS -cKc -iCq +rDs +dnK +lTd +ihj +ttn +ttn +ttn +iaC +iZt +shQ +pKI +cCp +rzf +eaV +cAG +rxH okh uip xBE @@ -131337,12 +135261,13 @@ aAt xBE xBE jjo -uyu +rvT mmZ uex sCD -nld -jyv +syR +plB +mrg oAL vYt plB @@ -131353,12 +135278,11 @@ plB vYt plB mrg -dTJ -heR +bWY qKO rsH hbK -hbK +mNi hbK bvz cVi @@ -131366,57 +135290,57 @@ qKO sfh sgV sfh -sfh +mpK sfh mzh -qKO -qKO -qKO +cjh +wmt +xkJ etp qip -hbK -qKO -qKO -qKO -hRj -bCh +cnU +krs +xau +cjh +wUk +hIA bZs uUL dpv -bCh +hIA hRj hRj -rKA -eCu -ifF -wBK -wBK -jHL -rKA -sce -rKA -lHT -sVA -rKA -rKA -rKA -rKA -rKA -kWo -rKA -rKA -rKA -rKA -qHN -cUo -udF -fXT -fXT -qRL -tkh -rrY -rKA -jmh +uAp +iwl +igR +fNY +fNY +jVv +uAp +aZa +uAp +iTh +klQ +uAp +uAp +uAp +uAp +uAp +oeQ +uAp +uAp +uAp +uAp +qGe +apv +wkW +eaN +eaN +glw +jaT +tcB +wKb +dlt wKb eCM ghO @@ -131560,30 +135484,30 @@ dcE uCR dcE dcE -dcE -dcE -dcE +mXN +heR +heR pGP pGP pGP pGP pGP heR -unl -hVH -fdY -xZd -xZd -nIi -vRE -fcT -chc -tuD -qQv -oiQ -tOi -ebD -qXx +pZJ +mam +tPb +dkb +dkb +dkb +aEg +aFe +xdS +gWI +bax +qfz +erV +fno +cZg igb uAB jmv @@ -131594,10 +135518,11 @@ aOn oFn jmv vYm -rWT +rxH fYq yhq tHo +heR bWY jyv bve @@ -131610,77 +135535,76 @@ plB vYt mrg jyv -dTJ heR -qKO +pTP jxB hbK -cVi -jDy +qim +sTp hbK -jxB +brh qKO bhJ hvc -nUV -nUV +sfh +gdt rYQ vLx -qKO -xOh -lZV +cjh +etp qAx -hbK -cVi -qKO -hRj -hRj +qAx +qip +puv +cjh +cjh +cjh hRj -bCh +hIA bCh obJ -bCh -bCh +vwI +hIA hRj hRj -rKA -vtF -nEA -nEA -nEA -qHN -rKA -gtd -rKA -rKA -rKA -rKA -iEp -eND -rKA -erI -ubU -oLE -agO -uac -rKA -tkh -tFY -olL -fXT -uSE -kkM -tkh -rrY -rKA -jmh +uAp +dHx +kmv +kmv +kmv +qGe +uAp +lLN +uAp +uAp +uAp +uAp +eIQ +fMr +uAp +hYE +vzZ +kJl +lFF +bVq +uAp +jaT +ciN +twO +eaN +uLa +ggK +jaT +tcB +wKb +dlt wKb dGu gdG sUF -jcQ -jcQ -jcQ +gdG +gdG +gdG gdG gdG eEv @@ -131751,34 +135675,23 @@ dcE dcE dcE dcE -"} -(179,1,1) = {" -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE +"} +(179,1,1) = {" +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE dcE dcE dcE @@ -131820,41 +135733,53 @@ dcE dcE dcE dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +dcE +mXN +dcE +dcE pGP qpL qpL uEQ rbl -xpn -mSE -vqH -hCt -xZd -xZd -xZd -upL -fcT -unl -uua -xFJ -iTx -ydi -maS -rxH -chR -rxH +clX +lcb +gBZ +wMO +dkb +dkb +dkb +dLS +kWv +shQ +ofK +dNx +rQN +tHo +mgA +plQ +vMm rxH +iCq uip rxH brm rxH cKc -rxH +iCq khI -fPT +rtz uoU xTf sCD +syR plB bOO plB @@ -131867,77 +135792,76 @@ plB bOO nld jyv -dTJ -heR -qKO -bMh -hbK -hbK +bWY +pTP hbK hbK +fWe +fWe hbK +sAR qKO chb ksM -hCm -hCm -nUV +sMr +jZl +osx uCD -qKO +cjh hBh dmn -hbK -hbK -hbK -lAR -hRj -hRj +baY +rvX +eWc +cjh hRj hRj hRj +bCh +bEH llP +pUp +bCh hRj hRj -hRj -hRj -rKA -tSl -nEA -wqb -uta -uta -rKA -sce -rKA -paq -qHN -fvM -sbP -xPg -mKV -mYy -mZf -bcW -bcW -vFU -rKA -qHN -stR -xcV -hgC -jqG -scc -qHN -uHk -rKA -jmh +uAp +txp +kmv +uBU +dcO +dcO +uAp +aZa +uAp +xSB +qGe +uUx +tbv +nNg +hdK +lpw +ewg +loz +loz +nSK +uAp +qGe +iYr +rkE +iKI +cFN +tAe +qGe +xzl +wKb +dlt wKb tKw eEv gdG -jcQ -lBw -jcQ +gdG +pWQ +gdG gdG eEv qwy @@ -132073,45 +135997,46 @@ dcE dcE dcE dcE -dcE -dcE +heR +iWu dcE dcE pGP -xQB +mgR jRb oBp pQS heR -kbu -aKq -xLg -xZd -xNX -xZd -wOG -sxT -kgo -wve -iFf -pcg -gFp -qXj -mjy +wNN +aim +rwV +dkb +dmj +dkb +hRV +mAC +gvi +nhv +bZw +oxy +alM +vuh +msC xNn +lcU tXl +kAQ tXl -nwJ -lcU -vsM -rxH -cKc +xOG +tXl +vZa rxH -cfP -kgf -igK -oXS +vUx +gQH +gQH +kPR eaV +heR bWY bve plB @@ -132124,77 +136049,76 @@ bWY bve plB nld -dTJ heR qKO iJH hbK cVi -jxB +cVi hbK hbK qKO jVs -sWY -sfh +ksM sfh -bQC +caO +vlE sNG -qKO -lqS -hbK -hbK -hbK -hbK -lAR -hRj -hRj -hRj -hRj -hRj +tas +tas +tas +tas +cBU +tas +tas hRj hRj hRj +bCh +bCh +jia +bCh +bCh hRj hRj -rKA -jvf -nEA -jlf -prn -uta -rKA -gtd -rKA -bij -tkh -qHN -bZQ -keY -rKA -fXO -gKL -oLE -bcW -erI -rKA -tkh -tkh -bZQ -tkh -tkh -jTx -tkh -aoK -rKA -jmh +uAp +sml +kmv +bZf +rkA +dcO +uAp +lLN +uAp +qmy +jaT +qGe +ezh +vap +uAp +qHk +hpr +kJl +loz +hYE +uAp +jaT +jaT +ezh +jaT +jaT +aIJ +jaT +bdf +wKb +dlt wKb cjb eEv gdG -jcQ -jcQ -jcQ +gdG +gdG +gdG gdG eEv wKb @@ -132331,7 +136255,7 @@ dcE dcE dcE dcE -dcE +mXN dcE dcE pGP @@ -132339,40 +136263,38 @@ qpL qpL ovq kJI -hce -hsW -iLC -qAQ -jBb -omc -nQs -dDV -aKq -unl -kdZ -bZR -fuU -gjb -oBa -pub -pub -iqf -iqf -naq -wDt +mJI +pWi +tGm +kOj +fQT +bLP +cwy +aEg +oZS +shQ +xQJ +lnm +iRR +eaV +iTU +mqu +mqu +xNk +wDK +bOa +otW fhg wzV -oRU -lCw -hUM +bOa +war +euu eaV iUs eaV eaV -bWY -heR +gKw dcE -heR dcE heR dcE @@ -132382,7 +136304,9 @@ dcE dcE heR dcE -heR +dcE +dcE +epv qKO nNt oHX @@ -132397,54 +136321,54 @@ htF lLe vlE vLx -qKO +tas tsl -hbK -hbK +vgN +eXT tuF -hbK +qgr lAR hRj hRj hRj hRj hRj +pka hRj hRj hRj hRj -hRj -rKA -tSl -nEA -uta -uta -bGs -drA -gtd -rKA -qHN -uRx -qHN -jTx -bRD -rKA -rKA -rKA -rKA -kRd -rKA -rKA -qHN -tkh -jTx -tkh -sbP -nCx -lxJ -xFA -rKA -glN +uAp +txp +kmv +dcO +dcO +kxd +aKo +lLN +uAp +qGe +jrC +qGe +aIJ +tjB +uAp +uAp +uAp +uAp +pMC +uAp +uAp +qGe +jaT +aIJ +jaT +tbv +kaW +rzH +eER +wKb +aIh wKb kDF bxL @@ -132588,78 +136512,78 @@ dcE dcE dcE dcE -dcE -dcE -dcE +mXN +heR +heR pGP pGP pGP pGP pGP heR -unl -wrM -jQK -xZd -juO -xZd -dDV -aQS -unl -gjb -gjb -gjb -gjb -cyN -vAx -cfs +pZJ +vmR +nye +dkb +lGV +dkb +aEg +oov +shQ +shQ +xkc +shQ eaV -pVA +dVq +mCG +oKk +eaV +xwk qpa rki rki rki -kAr -xqE +qpa +jXR maB eaV ioU eaV heR heR -dcE -dcE +heR +heR heR dcE dcE +heR dcE dcE heR heR -dcE -dcE +heR heR heR qKO -uZs +hUh fwB kuS -hbK -vvY -gHH +beT +imH +ajw qKO jSn hCP bRT -vLx +lLe qoX vLx -qKO +tas lVc -hbK -cVi -hbK -hbK +cHt +ufK +rwf +wRb lAR hRj hRj @@ -132671,37 +136595,37 @@ hRj hRj hRj hRj -rKA -sAB -qHN -nEA -nEA -els -rKA -gtd -mtw -gtd -gtd -gtd -atj -pee -pee -pee -pee -pee -pee -iCS -mKV -lNs -lcy -qIa -gAt -sdm -tkh -qHN -rKA -rKA -jmh +uAp +kKG +qGe +kmv +kmv +fdV +uAp +lLN +vpX +lLN +lLN +lLN +sNF +enY +ncS +enY +enY +enY +enY +cHx +hdK +nkW +cDd +mKz +fZb +wSD +jaT +qGe +wKb +wKb +dlt wKb wKb kNU @@ -132845,7 +136769,7 @@ dcE dcE dcE dcE -dcE +mXN dcE dcE pGP @@ -132853,50 +136777,50 @@ sbp sbp xEF rbl -xpn -mSE -nrj -ocZ -xZd -xZd -xZd -dDV -aKq -unl -dcE -dcE -tYZ +clX +lcb +cOj +oGb +dkb +dkb +dkb +aEg +gdW +vcX +woN +vwp +nYV gpk -gav +kMF nqt nqt eaV -enK -jEx -oPU -oPU -oPU -xDp -fnY +loJ +nCh +vpy +jXS +dlv +wGP +dey eaV eaV eOr eaV -oaA +dcE heR dcE dcE heR dcE dcE +heR dcE dcE -dcE -heR heR dcE +dcE heR -kmY +bWY qKO qKO pTP @@ -132906,16 +136830,16 @@ pTP qKO qKO dvs -hCm +uHT omu -vLx -hCm -vLx -qKO +lLe +osx +dno +tas miB -hbK -hbK -hbK +caE +buA +jzo vHp lAR hRj @@ -132928,38 +136852,38 @@ hRj hRj hRj hRj -rKA -cHK -vvE -wBK -wBK -jHL -rKA -sce -rKA -rKA -nZa -rKA -xzo -rKA -rKA -fEO -rKA -rKA -fEO -rKA -rKA -rKA -rKA -oQk -oQk -oQk -rKA -rKA -rKA -dMp -jmh -dnO +uAp +laz +win +fNY +fNY +jVv +uAp +aZa +uAp +uAp +acd +uAp +hPq +uAp +uAp +iug +uAp +uAp +iug +uAp +uAp +uAp +uAp +vTh +vTh +vTh +uAp +uAp +wKb +kOi +dlt +imf wKb wKb wKb @@ -133101,30 +137025,30 @@ dcE dcE dcE dcE -dcE -dcE +heR +iWu dcE dcE pGP -lkT +eux hMt kGV pQS heR -kbu -aKq -sKI -xZd -xZd -xZd -dDV -aKq -kbu -dcE -dcE -heR +wNN +aim +ogR +dkb +lEl +dkb +aEg +qeV +wNN +bWY +bWY +bWY mcT -hQZ +uXL nqt nqt eaV @@ -133136,20 +137060,20 @@ ezq sNC xXV eaV -tWn -tWn -dcE -dcE +bWY +bWY +bWY +heR +heR +heR +heR +ktq heR -dcE -dcE -mGV -dcE -dcE -dcE -dcE -dcE -dcE +heR +heR +heR +heR +ktq heR heR bWY @@ -133164,17 +137088,17 @@ wUk qKO lzR iHF -sfh -caO +nUV +nUV lYr lmz -qKO +tas eZF -hbK -hbK -hbK +wvw +sWM +hhw yhu -qKO +tas hRj hRj hRj @@ -133185,27 +137109,27 @@ hRj hRj hRj hRj -rKA -lfG -rEv -nEA -wBK -rsn -rKA -rKA -rKA -tkh -qHN -rKA -snQ -qHN -rKA -fBn -nnB -rKA -qHN -uNo -rKA +uAp +rFM +qOC +kmv +fNY +avw +uAp +uAp +uAp +jaT +qGe +uAp +nEW +qGe +uAp +ujG +sfv +uAp +qGe +xUT +uAp heR heR dcE @@ -133359,7 +137283,7 @@ dcE dcE dcE dcE -dcE +mXN dcE dcE pGP @@ -133367,34 +137291,34 @@ sbp sbp aRc kJI -hce -hsW -iLC -vfF -xZd -xZd -xZd -dDV -aKq -kbu -heR -heR +mJI +pWi +tGm +upM +dkb +dkb +dkb +aEg +aim +wNN +dcE heR +dcE eaV eaV eaV eaV eaV -rHU +sOV sNC nlt nlt nlt sNC -xYi +mRs eaV -tWn dcE +heR dcE dcE heR @@ -133420,19 +137344,18 @@ hRj hRj qKO rql -vTE -nUV hCm +mhP +awV lYr jSz -qKO +tas dft ruE -hbK -hbK +eNH +acc wNw -qKO -wUk +tas hRj hRj hRj @@ -133442,27 +137365,28 @@ hRj hRj hRj hRj -rKA -lfG -rEv -qSD -rFq -nwe -rKA -kmL -rKA -fkh -qHN -rKA -wju -qUq -rKA -eUh -bRl -rKA -cHq -sql -rKA +hRj +uAp +rFM +qOC +dns +imI +rRP +uAp +mJO +uAp +piC +qGe +uAp +kPD +oui +uAp +oym +fva +uAp +hLl +qAq +uAp heR dcE dcE @@ -133550,11 +137474,8 @@ dcE dcE dcE dcE -"} -(186,1,1) = {" -dcE -dcE -dcE +"} +(186,1,1) = {" dcE dcE dcE @@ -133619,26 +137540,29 @@ dcE dcE dcE dcE +mXN +heR +heR pGP pGP pGP pGP pGP heR -unl -aKq -vbM -xZd -lSE -bcI -hUV -ibY -unl +pZJ +arc +fsy +dkb +gZi +dkb +aEg +inm +pZJ dcE -mXN -mXN -xXv -kOx +heR +dcE +mva +heR dcE dcE eaV @@ -133651,7 +137575,7 @@ sNC rRn eaV dcE -dcE +heR dcE dcE heR @@ -133666,7 +137590,7 @@ dcE dcE dcE dcE -dcE +kOx kOx qKO sON @@ -133678,48 +137602,48 @@ sON qKO lYr lYr -lYr -lYr -lYr +sfh +nGP +sfh jzH -qKO -qKO -pTP -pTP -pTP -qKO -qKO +tas +tas +xOh +xOh +xOh +tas +tas sON sON oCT sON sON -sON +oCT sON sON oCT sON -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -fyD -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA +uAp +uAp +uAp +uAp +uAp +uAp +uAp +uAp +uAp +uAp +uAp +uAp +oxC +uAp +uAp +uAp +uAp +uAp +uAp +uAp +uAp dcE dcE dcE @@ -133873,7 +137797,7 @@ dcE dcE dcE dcE -dcE +mXN dcE dcE pGP @@ -133881,24 +137805,24 @@ bxx bxx paE rbl -xpn -mSE -noM -iWe -jBb -omc -nQs -dDV -aKq -kbu -dcE +clX +lcb +qeN +bZu +fQT +bLP +cwy +aEg +aim +wNN dcE +heR dcE dcE -kOx +heR dcE dcE -aHc +gIQ sNC kLD nlt @@ -133908,7 +137832,7 @@ kLD sNC ipc dcE -dcE +heR dcE dcE heR @@ -133922,7 +137846,6 @@ dcE dcE dcE dcE -dcE kOx kOx dcE @@ -133932,6 +137855,7 @@ dcE dcE dcE dcE +dcE heR dcE dcE @@ -134129,33 +138053,33 @@ dcE dcE dcE dcE -dcE -dcE +heR +iWu dcE dcE pGP -gAq +fuV gZO bhn pQS heR -kbu -aKq -vRt -xZd -heO -eQW -dDV -aKq -unl -dcE -dcE -dcE -dcE +wNN +aim +nTf +dkb +pDQ +dkb +qkn +kct +pZJ +heR +mXN +xXv +kOx kOx dcE dcE -ipc +gIQ sNC kLD fsQ @@ -134165,7 +138089,7 @@ kLD nWe ipc dcE -dcE +heR dcE dcE heR @@ -134178,9 +138102,9 @@ dcE dcE dcE dcE +mqw +mqw dcE -kOx -kOx dcE dcE dcE @@ -134387,7 +138311,7 @@ dcE dcE dcE dcE -dcE +mXN dcE dcE pGP @@ -134395,24 +138319,24 @@ bxx bxx tZW kJI -hce -hsW -iLC -lLU -mil -mil -mil -mUN -aKq -kbu -dcE +mJI +pWi +tGm +miY +ygK +ygK +ygK +geJ +aim +wNN dcE +heR dcE dcE -kOx +heR dcE dcE -ipc +ggA tdx qWl nlt @@ -134422,7 +138346,7 @@ kLD nWe ipc dcE -dcE +heR dcE dcE heR @@ -134434,9 +138358,9 @@ dcE dcE dcE dcE +kOx +kOx dcE -mqw -mqw dcE dcE dcE @@ -134644,40 +138568,40 @@ dcE dcE dcE dcE -dcE -dcE -dcE +mXN +heR +heR pGP pGP pGP pGP pGP heR -unl -gCa -fPi -dkN -qxT -fPi -rnR -tbb -kbu -dcE -dcE +pZJ +jEg +dra +sKs +mDs +dra +feM +cUj +wNN dcE -dcE -kOx +heR dcE dcE -ipc -ipc -ipc -ipc -ipc -ipc -ipc -ipc -ipc +heR +heR +heR +eaV +gTP +rOW +rOW +rOW +rOW +rOW +rOW +eaV heR heR heR @@ -134690,9 +138614,9 @@ dcE dcE dcE dcE +mqw +kOx dcE -pkO -pkO dcE dcE dcE @@ -134901,40 +138825,40 @@ dcE dcE dcE dcE +mXN dcE dcE +heR dcE dcE dcE +heR dcE +pZJ +wNN +pZJ +pZJ +wNN +pZJ +pZJ +wNN +pZJ dcE -dcE -dcE -unl -kbu -unl -unl -kbu -unl -unl -kbu -unl -dcE -dcE -dcE -dcE -kOx +heR dcE dcE heR dcE dcE +pJW +dcE dcE dcE dcE dcE dcE dcE +pJW dcE heR dcE @@ -134946,9 +138870,9 @@ heR dcE dcE dcE -dcE +xXv mqw -pkO +dcE dcE dcE dcE @@ -135157,30 +139081,30 @@ dcE dcE dcE dcE +dZJ +iWu +mXN +mXN +mXN +mXN +iWu +kOx +mXN +heR +fkd +heR dcE dcE +heR dcE dcE +heR +fkd +heR +heR dcE dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -kOx +heR dcE dcE heR @@ -135191,7 +139115,7 @@ dcE dcE dcE dcE -dcE +heR dcE heR dcE @@ -135202,9 +139126,9 @@ dcE heR dcE dcE -dcE xXv -mqw +xXv +dcE dcE dcE dcE @@ -135415,28 +139339,28 @@ dcE dcE dcE dcE +heR dcE dcE dcE dcE +heR dcE +mXN dcE +heR dcE dcE dcE +heR dcE dcE dcE +heR dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE -dcE +mXN +mXN +mXN kOx kOx kOx @@ -135445,11 +139369,11 @@ kOx kOx kOx kOx -dcE -dcE -dcE -dcE -dcE +kOx +kOx +kOx +kOx +iWu heR dcE dcE @@ -135457,8 +139381,7 @@ heR dcE dcE heR -dcE -dcE +iWu xXv xXv dcE @@ -135472,6 +139395,7 @@ dcE dcE dcE dcE +dcE uCR dcE dcE @@ -135679,13 +139603,19 @@ dcE dcE dcE dcE -dcE -dcE -dcE -dcE -dcE -uCR -dcE +heR +heR +mXN +mXN +mXN +cXm +heR +heR +mXN +mXN +mXN +heR +heR dcE dcE dcE @@ -135701,12 +139631,6 @@ dcE dcE dcE dcE -kOx -kOx -kOx -kOx -kOx -iWu heR heR heR @@ -135714,9 +139638,9 @@ heR heR heR heR -iWu -xXv -xXv +dcE +dcE +dcE dcE dcE dcE @@ -135940,11 +139864,11 @@ dcE dcE dcE dcE +heR dcE dcE dcE -dcE -dcE +heR dcE dcE dcE @@ -136197,6 +140121,11 @@ dcE dcE dcE dcE +heR +mXN +mXN +mXN +heR dcE dcE dcE @@ -136217,15 +140146,10 @@ dcE dcE dcE dcE -dcE -dcE -dcE -dcE -dcE -mGV -dcE heR dcE +xae +dcE heR dcE dcE @@ -138536,8 +142460,8 @@ dcE dcE dcE hcx -tLV whw +tLV gVs hcx dcE @@ -168373,8 +172297,8 @@ nlm nlm osV nlm -dcE -dcE +nlm +nlm mae mae jfB @@ -168632,7 +172556,7 @@ gRG gRG gRG gRG -gCn +jqQ sjT sdA lSe @@ -169141,8 +173065,8 @@ nlm gRG gRG uof -xkV -awD +uof +stm uof uof psI @@ -171979,7 +175903,7 @@ nlO iGy ohb rwh -eas +bxg sFc aCE pIt @@ -173010,8 +176934,8 @@ lji cOS jQA sVJ -kUq aVy +oHH sRh cUf oaa @@ -175562,8 +179486,8 @@ aad uCF sjx sjx -sjx -qsM +kuT +fhO bLN onV waz @@ -175797,7 +179721,7 @@ adC adC adC adC -jbh +adC fgT hdN cVm @@ -177084,7 +181008,7 @@ thW mMC lQe gPW -trH +gjH gjH uwj wMn @@ -178104,11 +182028,11 @@ uRd bOk aBl vXh +iGT +jlX +pqd +nMr wiK -inG -woh -eqp -oIk gqj nPN qBh @@ -178361,11 +182285,11 @@ pev bOk qtM nbo -nli +ksr crj -xaP +bgs oxg -oIk +wiK bOk bOk iRH @@ -178397,7 +182321,7 @@ usP khG ugU ugU -dyg +ugU ugU usP gTp @@ -178421,10 +182345,10 @@ kUq xyz xyz rtO -jec -ggJ -jec -jec +dBz +lpW +dBz +dBz kUq kUq iSB @@ -178618,11 +182542,11 @@ uRd bOk pLO rly -wTr +kpF mjc mjc yhK -ibw +nnD bOk bTF jBk @@ -178678,10 +182602,10 @@ kUq kUq kUq kUq -mbK +liP kUq kUq -mbK +liP kUq sXU jkh @@ -178875,11 +182799,11 @@ uRd bOk gyc ssT -sjQ +eEf mjc mjc jkq -rkf +gPz bOk uLb jBk @@ -178937,12 +182861,12 @@ khm khm cOP cOP -vXU -xjL -aHD -pHq -sEt -tji +vOg +vOg +mbK +kuV +vpw +tTL vWj riD qrd @@ -179133,14 +183057,14 @@ bOk thB oZX iym -cxL -cxL -cxL -oIk +gpd +gpd +gpd +wiK bOk uJI jBk -hRX +yjM hBY taF tfK @@ -179167,7 +183091,7 @@ cba lgV xXY gNi -gNi +adq oVK nct sSw @@ -179194,7 +183118,7 @@ ygD ygD riD riD -jeD +cWc riD riD riD @@ -179457,10 +183381,10 @@ uoA dou kUq kUq -lEO +tTL pPO -gXy -tDc +iYe +fMd dnM ePT wKe @@ -179655,7 +183579,7 @@ opB fEW laD hRX -imo +knT cFa sGS hRX @@ -179724,7 +183648,7 @@ kqv kqv kqv lIr -pcQ +wYX lIr lIr ejh @@ -179893,7 +183817,7 @@ hRj ixF sUx sUx -lfx +sUx sUx sUx bOk @@ -179917,7 +183841,7 @@ aqg nHt hRX jFI -cqj +qeX qeX qeX qeX @@ -179955,7 +183879,7 @@ goR egF fbC vcf -xGG +hWt nRE nRE ygD @@ -180464,8 +184388,8 @@ dUb dUb dfn fbC -fkP -smV +vCF +gjj xQR ccY een @@ -180483,7 +184407,7 @@ jKp jKp oam ahf -eKH +pCX hmz hmz hmz @@ -180740,7 +184664,7 @@ xyA jKp rBd ahf -qBj +ujx qRq hmz hmz @@ -180770,7 +184694,7 @@ lIr lIr lIr iIu -iIu +vAe lIr lIr drI @@ -180940,8 +184864,8 @@ spO hvX uii dYi -vua -dEN +nwK +fbq sbd pzb vNc @@ -181241,7 +185165,7 @@ uNY sPc dxA pAn -loB +wTP xUJ mfR nRE @@ -181465,7 +185389,7 @@ dUb fDE vuO hrD -hrD +hzY hrD hrD qQd @@ -181496,12 +185420,12 @@ eTD vMP rto eWU -dxA +djn pAn -yee +fEf xUJ mfR -nqy +nRE syD pzQ slI @@ -181731,7 +185655,7 @@ rih aXN qQd aiI -iaG +aiI aiI aiI kPQ @@ -181753,9 +185677,9 @@ kPI vMP xEU lYy -axn +pjk pAn -mOx +hVx xUJ oam aSg @@ -181978,10 +185902,10 @@ dUb dUb fDE fOb +hqL hrD -hrD -hrD -hrD +hqL +hqL qQd qQd ndQ @@ -182012,7 +185936,7 @@ nde nde wwx ouo -uUK +wrn xUJ oam aSg @@ -182233,25 +186157,25 @@ quB sXd dUb dUb -fDE +uAn vuO -hqL -hrD -hqL -hqL +gNh +iis +lqB +mmP vzB mMb stv aFX -qVO -psk +cvP +eLU mpB -psk -psk +eLU +eLU rHS bot -psk -psk +eLU +eLU eLU rpB rpB @@ -182482,7 +186406,7 @@ vsh vsh umH onj -vRc +hYd tsI umH oIv @@ -182497,26 +186421,26 @@ cbV pML miZ vzB -dGv -inh +kzf +sCx oLH fro tCY xiQ xdU -qVO -qVO -psk -psk -sLY -sLY -sCx -sCx -sCx -sCx -sCx cvP -dfn +cvP +eLU +eLU +nGV +dtL +qbq +mRj +oRH +jDB +wLm +dkm +dUb dUb dfn rde @@ -182725,12 +186649,12 @@ klB iEQ wVJ uRt -tGM +wCC bOk cQP sJR dZH -ggN +imN qeq sJR hyS @@ -182744,37 +186668,37 @@ ulM umH wDu pGn -uGT -sRG +fjl +dUb dUb fDE -fOb +lkj eRC cAW nOF prr vzB -rBE -inh +qWm +sCx oLH uxq izh iGI xCI uOx +trZ qVO -qVO +suQ sLY -sLY -sLY -sCx -sCx +nlk +bAo +ebK uDl -sCx -sCx -cvP -dfn -dfn +mDv +mDv +dkm +dUb +dUb dfn rde nRE @@ -182785,7 +186709,7 @@ nRE nRE nRE lUJ -dDf +sJt aSg sxZ kVZ @@ -182982,7 +186906,7 @@ ljc ljc ljc xqd -cHp +wCC bOk cQP sJR @@ -182995,17 +186919,17 @@ lgi ugn tfR umH -tdt +bsC dgD hcD wZN flY -xuQ +rHX dEo dUb dUb fDE -fOb +hRd qKS fIh xUa @@ -183014,23 +186938,23 @@ hZG tDf tDf dXp -inh -inh -hub +sCx +sCx +tKp sSc mUD rms qVO lvj -sLY -sLY -sCx -sCx -sCx -sCx -sCx -cvP -pkx +mPa +wVu +aVQ +pfO +uFo +mDv +ibo +wkb +sRG dUb dfn rde @@ -183262,17 +187186,17 @@ umH dUb dUb fDE -fOb +hRd kfm dJF nPe mSa vzB -dGv -inh -oLH -inh -inh +kzf +sCx +xSq +sCx +sCx hub rwJ roy @@ -183281,15 +187205,15 @@ qVO tnf gNU txu -gNU -gNU -gNU -gNU -jeh -cvP -dfn +nAM +iRf +npf +gOp +mDv +dkm dUb dUb +dfn pEO pEO rde @@ -183519,14 +187443,14 @@ umH dUb dUb fDE -fOb +hRd lMy jnC hrD -hrD +jyd vzB qXl -inh +sCx alh uva giE @@ -183534,19 +187458,19 @@ hNZ nar tvN exS -qVO +iES nOe -jWP -hAC -hAC -hAC -hAC -jWP +iAw +xtC +umw +ejz +kxx +oVh mDv -cvP -dfn +dkm dUb dUb +jrz fXP afR afR @@ -183771,7 +187695,7 @@ psC psC fhj gPE -psC +kzB dCY dUb dUb @@ -183783,25 +187707,25 @@ vzB vzB vzB dGv -inh +sCx mpl itw gcf cpy -sfn +gcf nwG hAt oLi -iRf -ivr +sNj +clZ rgj -mfO +kjn mfO mPP ivr -vCT +mDv dkm -htH +dUb dUb dfn wga @@ -184003,7 +187927,7 @@ nlm jMr ljc ljc -ucj +ljc ljc ljc ljc @@ -184039,8 +187963,8 @@ vzB vzB jvB wOr -dGv -inh +kzf +sCx wwf jJH xZp @@ -184048,7 +187972,7 @@ yeg jps jdg uwA -byR +dkm leu wzS ocL @@ -184056,11 +187980,11 @@ jSV jKo nnW aia -bVS -cvP -jyM -lqB -htH +mDv +dkm +dUb +iPl +dfn wga afR afR @@ -184296,11 +188220,11 @@ ybO pZX pZX pZX -dGv -inh +kzf +sCx qQf -dRk -rAL +vON +sfn jxk sfn gyw @@ -184308,14 +188232,14 @@ azx bcg jsh iRf -vkQ -mfS +erp +vlK mfS uow -jsh -ivD -cvP -dfn +jEo +mDv +dkm +dUb dUb dfn wga @@ -184525,56 +188449,56 @@ ljc ljc hFG ivh -dCm -dCm -dCm -trR -trR -trR -trR -trR -dCm -dCm -dCm -tdT -dCm -dCm -dCm -dCm -dCm -dCm -dCm +yaI +yaI +yaI +gpS +gpS +gpS +gpS +gpS +yaI +yaI +yaI +yaI +yaI +yaI +yaI +hJx +yaI +yaI +yaI dUb dUb dUb drX bvY -vzx +rbt xvN iJc pZX qWm -inh +sCx nGr afn iJn hiK lSL fLs -umw +azx qVO kDc -jWP -hAC -hAC -hAC +gKE +jNh +umw hAC +qII jWP -clZ -cvP -dfn +mDv +dkm dUb dUb +jrz uBj jrD kIf @@ -184608,10 +188532,10 @@ wcN wcN wcN kVQ -mQh -mQh -mQh -wKb +kiS +kIf +kIf +upX nHg tjn tjn @@ -184782,7 +188706,7 @@ ljc ljc mND wCC -dCm +fMH nlm nlm nlm @@ -184791,30 +188715,30 @@ mDG cSg nlm nlm -dCm -dzI -mjN -dzI -dzI -thk -sPk -dqF -hVi -dCm +pRO +afu +afu +afu +tBs +xBP +tBs +afu +afu +pRO dUb dUb dUb drX pdr gOK -vzx +wwt aZo pZX -dGv -inh +kzf +sCx sYc -inh -inh +sCx +sCx asz gnt wfN @@ -184822,14 +188746,14 @@ cHP qVO pmX mxM -mxM -mxM -mxM -mxM -mxM -qpG -cvP -dfn +erp +eFq +iRf +jyM +gPP +mDv +dkm +dUb dUb gWM iHy @@ -184865,10 +188789,10 @@ bBV bBV kVQ kVQ -ubs -ubs -uKt -wKb +afR +afR +kIf +upX fHG tjn tjn @@ -185039,7 +188963,7 @@ ljc ljc mND wCC -dCm +fMH nlm nlm jph @@ -185048,47 +188972,47 @@ jph jph jph nlm -dCm -dzI -mjN -dzI -dzI -ffr -ozp -ozp -jWJ -dCm +pRO +afu +afu +afu +tBs +jap +tBs +tBs +tBs +pRO dUb dUb dUb drX doO -ebS -tUt +cuL +rfk nuz qGW irn oPM iTa -inh -inh +sCx +sCx asz sSc phd xYk qVO ixS -sLY -sLY -sCx -sCx -sCx -sCx -sCx -cvP -dfn +sLa +erp +erp +erp +erp +mDv +ibo +wkb dUb dUb +dfn jzM dyN dyN @@ -185122,10 +189046,10 @@ ujI ujI xnW kVQ -ubs -oQn -uKt -wKb +afR +afR +kIf +upX nHg nHg tjn @@ -185296,8 +189220,8 @@ dxf dxf asx wCC -dCm -pLQ +fMH +oDx dDL jph gYu @@ -185305,16 +189229,16 @@ cbm mIO jph dDL -dCm -ffr -ffr -ffr -ffr -ffr -ozp -ozp -naR -dCm +pRO +jap +jap +jap +jap +jap +tBs +afu +afu +pRO dUb dUb dUb @@ -185324,28 +189248,28 @@ aUO nYT pPX pZX -rBE -inh -oLH +qXl +sCx +pio pvC nfg czF pGf qyg +lZm qVO -qVO -sLY +sfR jBt -sLY -sCx -sCx -uDl -sCx -sCx -cvP -dfn +iRf +cmp +aBu +erp +mDv +mDv +dkm dUb dUb +dfn jzM dyN dyN @@ -185375,14 +189299,14 @@ fTs ujI ujI ujI -xjc +ujI ujI ujI kVQ -ubs -ubs -uKt -wKb +mQh +mQh +mQh +upX xpw nHg nHg @@ -185543,18 +189467,18 @@ nlm nlm nlm jMr -dCm -dCm -dCm -dCm -dCm -dCm -msm -dCm -dCm -dCm -dCm -dCm +fMH +fMH +fMH +fMH +fMH +fMH +tdH +fMH +fMH +fMH +fMH +fMH nlm jph oJj @@ -185562,16 +189486,16 @@ gQc tYl jph nlm -dCm -mjN -dzI -dzI -dzI -ffr -ozp -ozp -ozp -dCm +pRO +ifU +afu +afu +tBs +jap +tBs +afu +afu +pRO dUb dUb dUb @@ -185581,28 +189505,28 @@ uWi uWi uWi pZX -dGv -inh -oLH +kzf +sCx +pio lhn xjr xdG tPI -qVO -qVO -aVN -aVN -sLY -sLY -sCx -iFS -sCx -sCx -sCx cvP -dfn +cvP +tNW +tNW +yeo +ute +sFL +iFS +erp +vCT +ivD +dkm dUb dUb +dfn jzM dyN dyN @@ -185637,15 +189561,15 @@ ujI ujI kVQ uKt -ubs +oQn uKt -wKb -wKb -wKb -wKb -wKb -wKb -wKb +upX +upX +upX +upX +upX +upX +upX aGf nHg nHg @@ -185800,18 +189724,18 @@ nlm nlm nlm nlm -dCm -fYH -vMH -dzI -dzI -mtg -mjN -dzI -dzI -qmd -tmq -dCm +fMH +cmt +mNt +ulT +ulT +vGB +efc +ulT +ulT +kIL +hWF +fMH dDL jph etm @@ -185819,16 +189743,16 @@ ghb mtC jph dDL -dCm -gJi -dzI -dzI -dzI -ffr -ozp -ozp -giT -dCm +pRO +afu +afu +afu +tBs +jap +tBs +afu +afu +pRO sRG dUb dUb @@ -185838,25 +189762,25 @@ uWi uWi uWi pZX -tem +vre tem slS -aVN -aVN +tNW +tNW oMI -aVN -aVN +tNW +tNW oPY cEH -aVN -aVN tNW -cvP -cvP -cvP -cvP -cvP -cvP +tNW +qVO +qVO +qVO +gkB +wkb +wkb +wkb mJl mJl mJl @@ -185896,13 +189820,13 @@ kVQ uKt uKt uKt -wKb -tII -ktz -cTS -wKb -kiE -qSy +upX +kbY +srA +eUT +upX +vaR +kOo aGf nHg nHg @@ -186057,18 +189981,18 @@ nlm nlm nlm nlm -dCm -vGQ -xVZ -dzI -dzI -lzZ -yav -ffr -vDF -ffr -jyW -dCm +fMH +dwY +kas +ulT +ulT +uJF +nLt +tbg +osD +jVX +his +fMH nlm jph jph @@ -186076,16 +190000,16 @@ jph jph jph nlm -dCm -mjN -dzI -dzI -dzI -ffr -ozp -ozp -ozp -dCm +pRO +tBs +tBs +tBs +tBs +jap +tBs +afu +afu +pRO dUb dUb dUb @@ -186098,7 +190022,7 @@ dHL dHL rla dHL -dHL +qQd oOB oYE bQg @@ -186108,12 +190032,12 @@ ung gQR qom tNW -dsW -dsW +qVO +qol erp -dsW -dsW -rro +gts +qVO +dUb dfn dUb dUb @@ -186153,13 +190077,13 @@ kVQ uKt ubs uKt -wKb -grx -hRD -hRD -qSy -eEv -wKb +upX +brz +fTu +fTu +kOo +epH +upX aGf aGf aGf @@ -186314,18 +190238,18 @@ nlm nlm nlm nlm -dCm -dNw -xVZ -dzI -dzI -dzI -mjN -dzI -dzI -egr -jsD -dCm +fMH +bch +kas +ulT +ulT +ulT +efc +ulT +ulT +gmF +eoN +fMH nlm nlm dDL @@ -186333,16 +190257,16 @@ nlm dDL nlm nlm -dCm -mjN -mjN -mjN -mjN -ffr -ozp -ozp -ozp -dCm +pRO +afu +afu +afu +tBs +jap +tBs +tBs +tBs +pRO tWl dUb dUb @@ -186355,7 +190279,7 @@ dHL dXm qUG wnD -dHL +qQd jUb oYE ley @@ -186365,12 +190289,12 @@ aXZ uLN spC tNW -dsW -dUb -dUb -dUb +qVO +ivo +erp +jix +qVO dUb -rro dfn dUb dfn @@ -186410,31 +190334,31 @@ kVQ uKt ubs ubs -wKb -vYV -hRD -hRD -wKb -wKb -wKb -wKb -dkQ -wKb -wKb -dkQ -wKb -wKb -wKb -wKb -wKb -wKb -wKb -wKb -wKb -wKb -wKb -wKb -wKb +upX +xHC +fTu +fTu +upX +upX +upX +upX +nLZ +upX +upX +nLZ +upX +upX +upX +upX +upX +upX +upX +upX +upX +upX +upX +upX +upX nlm nlm nlm @@ -186571,48 +190495,48 @@ nlm nlm nlm nlm -dCm -dBe -qrS -ikZ -dXy -dXy -nzZ -dXy -aqQ -dCm -dCm -dCm -dCm -dCm -dCm -dCm -dCm -dCm -dCm -dCm -mjN -dzI -dzI -dzI -ffr -ozp -ozp -mWu -dCm +fMH +sOy +lBy +kPX +jJU +pva +wIN +jJU +oNH +fMH +fMH +fMH +pRO +pRO +pRO +pRO +pRO +pRO +pRO +pRO +afu +afu +afu +tBs +jap +tBs +afu +afu +pRO dUb dUb dUb drX uWi +jQw uWi uWi -uWi -nNj +dHL sVj uyn jni -nNj +qQd bNH rmB fpC @@ -186622,15 +190546,15 @@ npE jCO uHh tNW -dsW -dUb -dUb -dUb +qVO +qVO +nNj +qVO +qVO dUb -rro -dfn -dfn -dfn +htH +htH +htH iHy kpz dNP @@ -186641,7 +190565,7 @@ sFa jzM cwP cwP -gll +cwP cwP cwP vTI @@ -186667,25 +190591,25 @@ kVQ uKt ubs ubs -wKb -jlh -fCe -sZh -aFg -aFg -lbN -fpz -sZh -wKb -hlh -sZh -xjK -lfT -sZh -aFg -aFg -xjK -wKb +upX +ezz +uyG +ewu +vca +vca +sPr +jTG +ewu +upX +vPk +ewu +tdl +djM +ewu +vca +vca +tdl +upX rBU nnS bYZ @@ -186828,35 +190752,35 @@ nlm nlm hRj hRj -dCm -hEN -dGM -ikZ -ikZ -yem -dXy -ikZ -vsm -dCm -rNe -vqM -odE +fMH +vVt +xJZ +kPX +kPX +pNr +pva +kPX +pva +npo +nTy +mdW +pRO +jap +imi +imi +jap +imi +jap +pRO +pRO +pRO +pRO +qNG +pRO +pRO +pRO +pRO pRO -xlH -hmT -uHg -uok -aBV -dCm -vdN -dCm -dCm -dCm -dCm -tdT -dCm -dCm -dCm mJl mJl mJl @@ -186865,7 +190789,7 @@ drX drX drX drX -fNB +qQd qQd qQd qQd @@ -186879,15 +190803,15 @@ tNW tNW tNW tNW -qII -jQw -jQw -jQw -jQw -ghA -dfn dUb dfn +htH +htH +htH +htH +htH +dUb +htH jzM cjE oca @@ -186895,7 +190819,7 @@ ctb ctb sSs muN -jzM +xkV cwP cwP cwP @@ -186924,25 +190848,25 @@ kVQ rey ubs ubs -wKb -sZh -aFg -aFg -aFg -aFg -lbN -fpz -sZh -wKb -xjK -sZh -sZh -ccy -sZh -sZh -sZh -sZh -wKb +upX +ewu +vca +vca +vca +vca +sPr +jTG +ewu +upX +tdl +ewu +ewu +nfO +ewu +ewu +ewu +ewu +upX cgg hRj lkP @@ -187085,44 +191009,44 @@ nlm nlm hRj hRj -dCm -iyx -upl -nzZ -dXy -ikZ -dXy -tah -uyb -dCm -nDB -xCt -tms -pRO -hJL -mMx -cWG -kdG -hfz -pRO -nUB +fMH +frc +edm +ppe +jJU +kPX +jJU +gNR +wWg +fMH +pDi +rNe +sxh +dhZ +dhZ +dhZ +dhZ +dhZ +dhZ +sxh +eeg afu afu -ech +dVd +wBd afu +dhZ jap sxh -jap -afu dUb dUb dUb fkM dUb -xce +sym +dUb dUb dUb -htH dUb fkM dUb @@ -187136,13 +191060,13 @@ dfn dfn dfn dUb -ukT dUb -dfn -dfn +dUb oKw dfn -dfn +dUb +dUb +dUb dUb dUb jzM @@ -187181,25 +191105,25 @@ kVQ uKt ubs uKt -wKb -gdP -aFg -aFg -aFg -aFg -lbN -fpz -aQa -wKb -aQa -sZh -daw -ilB -sZh -aFg -sZh -aFg -wKb +upX +sSy +vca +vca +vca +vca +sPr +jTG +wmX +upX +wmX +ewu +ipY +wyl +ewu +vca +ewu +vca +upX lgv rfI htn @@ -187342,44 +191266,44 @@ nlm nlm hRj hRj -dCm -aNg -ebA -hcL -nzZ -oTp -xYa -eHz -rcs -dCm -oeR -cRk -wDf -pRO -rPs -jZL -oCs -aLW -kdG -hik -fmN -afu -qDi -afu -afu -jap +fMH +tsA +uaH +izP +wIN +kYz +cka +boF +sau +fMH +vJD +pDi +sxh +tBs +tBs +tBs +xLl +tBs +tBs sxh +eeg +uKO +dhZ +dVd +tBs +tBs +tBs jap -afu +sxh dUb dUb dUb dUb dUb +dsW dUb dUb dUb -htH dUb dUb dUb @@ -187417,7 +191341,7 @@ avZ xOy gaM ozt -fEU +cSD cSu soU soU @@ -187438,25 +191362,25 @@ vvD gsm gsm gsm -cWU -cWU -cWU -cWU -cWU -cWU -cWU -cWU -cWU -pAH -pAH -pAH -pAH -cWU -cWU -aFg -sZh -aFg -wKb +gUI +gUI +gUI +gUI +gUI +gUI +gUI +gUI +gUI +lRX +lRX +lRX +lRX +gUI +gUI +vca +ewu +vca +upX gep jAo lbD @@ -187597,46 +191521,46 @@ nlm nlm nlm nlm -dCm -dCm -dCm -dCm -dCm -dCm -hSv -dCm -dCm -dCm -dCm -dCm -sFZ -jwu -eaT +fMH +fMH +fMH +fMH +fMH +fMH +qZx +fMH +fMH +fMH +fMH +fMH +pDi +rNe pRO -wFj -ojZ -auA -fUJ -uxz pRO -tZV -afu +pRO +pRO +pRO +pRO +pRO +pRO +eeg afu afu +dVd +dhZ afu +dhZ jap sxh -jap -afu dUb dUb dUb dUb dUb +dsW dUb dUb dUb -htH dUb dUb dUb @@ -187704,16 +191628,16 @@ fHc kwQ mHd wfY -pAH +lRX aut gqz -pAH -mqb -cWU -dfO -sZh -sZh -wKb +lRX +dDx +gUI +rPh +ewu +ewu +upX jtE eCy hRj @@ -187866,38 +191790,38 @@ rNe rNe rNe bPW -chI -ylO -mkq +xKJ +rNe pRO +xYC +fQG pRO -iRF +qlj +dch +cVq pRO +vYq +afu +afu +dVd pRO pRO pRO -wiZ -afu -afu -afu -dCm -dCm -dCm -dCm -dCm -sSR -gVi -ivI -gVi -tEY -aTH -dCm -kYe -nUk -kTq -bvZ +pRO +pRO +pRO +pRO +tmT +vuC +tmT +pRO bvZ -tUd +opV +kKB +huv +gSh +nXB +tni tPU xSz xSz @@ -187944,7 +191868,7 @@ iDR kWr hkD kmJ -kou +eiu hMs nTe ljx @@ -187964,13 +191888,13 @@ lJo kMj geC geC -cWU -ncF -cWU -sZh -aFg -sZh -heC +gUI +tTx +gUI +ewu +vca +ewu +mMs jtE eCy hRj @@ -188123,38 +192047,38 @@ kow jCE rNe ixf -mkq -ylO -ylO +pDi +rNe pRO -uHY -jrp -iem -wZb -pIf pRO -kvo -afu +jOJ +pRO +xzr +sEV +aJA +pRO +eeg afu afu -dCm -wIW -dXy -dXy -dCm -fxp -dXy -dXy -dXy -dXy -heq -dCm -pnd -hxJ -fLC -dyQ -eOh -wzM +dVd +pRO +qaH +lJK +pRO +pbE +gyi +pRO +bEV +nFp +mgT +tGg +aSH +pzr +lEd +sjz +jNu +mLP +hwe tPU jPa paf @@ -188221,13 +192145,13 @@ jwB etN atm wgp -cWU -ncF -cWU -dlk -aFg -sZh -heC +gUI +tTx +gUI +jpZ +vca +ewu +mMs jtE eCy hRj @@ -188380,37 +192304,37 @@ rNe gxO rNe ixf -mkq -xHP -jvM +pDi +pDi +axj pRO -qJn -ihF -kdG -kdG -wsR +pOu +czG +iPx +sux +ekw +hua +tDh +cKK +cKK +mHv pRO -soH -afu -afu -afu -dCm -dCm -dCm -dXy -dCm -tAV -dXy -dCm -dCm -dCm -dCm -dCm -dCm -dCm -tPU +pBw +vYN +pRO +fDH +nfd +pRO +hsg +mkt +vxr +vxr +vxr +vxr +vxr +vxr tPU -bSe +dsN tPU tPU jPa @@ -188478,13 +192402,13 @@ ahC cFb iEf bhU -cWU -ncF -cWU -dfO -aFg -sZh -wKb +gUI +tTx +gUI +rPh +vca +ewu +upX jtE eCy hRj @@ -188637,38 +192561,38 @@ rNe gxO rNe ixf -ylO -mbC -jvM +pDi +rNe +eBF pRO -rPs -jZL -oCs -aLW -kdG -ios -fmN -afu -afu -afu -dCm -lKb -nzZ -dXy -dCm -dXy -dXy -rga -roj -tVI -roj -ewY -roj -fso -xPj -rBP -bam -sKO +pfY +viF +uPj +iMO +dPM +pRO +lOf +eNg +eNg +eCF +pRO +tGO +neh +pRO +neh +nOm +pRO +vfe +laC +vxr +krM +nAx +rPg +nnX +udV +hLe +cCb +fUy tPU jPa paf @@ -188735,13 +192659,13 @@ mdO nTB jdB wgp -cWU -ncF -cWU -sZh -aFg -sZh -heC +gUI +tTx +gUI +ewu +vca +ewu +mMs jtE eCy hRj @@ -188894,38 +192818,38 @@ kow wvK rNe bPW -owz -jvM -jvM +pDi +rNe pRO -oJK -ojZ -auA -fUJ -vMG pRO -fmN -afu +pRO +pRO +pRO +pRO +pRO +pRO +aLG afu afu -dCm -nGI -dXy -dXy -rga -dXy -nzZ -dCm -roj -dCm -dCm -dCm -vYI -gFW -tPU -iML +dVd +pRO +pRO +cKa +pRO +ocW +pRO +pRO +xgK +fdN +vxr +wEK +lpX +wEK +nnX +vxr +wdF iOK -vrx +npt tPU itK paf @@ -188992,13 +192916,13 @@ gnK kMj geC geC -cWU -xib -cWU -fGT -aFg -sZh -heC +gUI +aTB +gUI +enA +vca +ewu +mMs jtE dDL nlm @@ -189151,39 +193075,39 @@ rNe gxO rNe ixf -ylO -jvM -mbC -pRO -pRO -iRF -pRO +pDi +rNe pRO +rXj +bvJ pRO +hgb +bkr +afA pRO -mip +aLG afu afu -afu -dCm -rCP -dXy -hmM -dCm -dCm -dCm -dCm -lHi -dCm -tsR -jVB -jVB -jVB -jVB -jVB -jVB -jVB -jVB +dVd +xgK +foi +laC +kaq +laC +vfe +hVd +bmw +mWg +vxr +rai +vxr +vxr +vDu +vxr +vxr +vxr +vxr +vxr jPa paf paf @@ -189244,18 +193168,18 @@ tpe kwe mIK pMY -cWU -xWM -cWU +gUI +qPf +gUI jqw qGZ -cWU -nFE -cWU -dfO -aFg -dlk -wKb +gUI +okt +gUI +rPh +vca +jpZ +upX jtE dDL nlm @@ -189408,39 +193332,39 @@ rNe gxO rNe ixf -ylO -jvM -xHP +pDi +rNe pRO -gCQ -tAr -ekk -bJs -bJs pRO -fmN -afu +jOJ +pRO +uAX +sEV +wYb +pRO +aLG afu afu -idM -idM -idM -idM -idM -dll -wSW -dCm -roj -dCm -lRz -jVB -qJB -teV -mwL -aii -uzu -eZC -jVB +dVd +xgK +vfe +laC +laC +bEA +bEA +xCV +bmw +yfJ +vxr +nnX +sWX +vxr +vxr +vxr +bTl +oSV +wRQ +vxr jPa paf paf @@ -189494,25 +193418,25 @@ arT gsm gsm gsm -cWU -cWU -cWU -cWU -oVg -fKJ -cWU -cWU -wKb -cWU -cWU -cWU -cWU -cWU -cWU -fvG -wKb -wKb -wKb +gUI +gUI +gUI +gUI +asU +rzu +gUI +gUI +upX +gUI +gUI +gUI +gUI +gUI +gUI +dzn +upX +upX +upX jtE dDL nlm @@ -189665,39 +193589,39 @@ kow vpd rNe ixf -mkq -ylO -ylO -pRO -lbW -srx -bJs -sVb -bJs +pDi +pDi +eBF pRO -uId +pOu +czG +iPx +sux +ekw +wIo +aLG afu afu -afu -idM -uNn -tMS -jlo -idM -qNW -orb -dCm -roj -dCm -aMz -jVB -kVj -kVj -tSw -eZC -gZu -eZC -jVB +dVd +pRO +pRO +lPI +pRO +pwj +pRO +vxr +jMC +vxr +vxr +olH +tQq +srh +hJc +srh +tQq +rPg +dyu +vxr jPa paf paf @@ -189751,25 +193675,25 @@ arT gsm ubs uKt -wKb -aFg -aFg -aFg -vyt -oxe -gTX -heo -aFg -aFg -wKb -sZh -sZh -sZh -izp -hRD -hRD -iYZ -wKb +upX +vca +vca +vca +jgD +mLp +dqZ +tCh +vca +vca +upX +ewu +ewu +ewu +qLQ +fTu +fTu +oXp +upX jtE dDL nlm @@ -189922,39 +193846,39 @@ rNe rNe rNe bPW -rWH -ylO -ylO +xKJ +rNe +pAp pRO -eIR -ugM -qSs -paI -bJs -wEn -fmN -afu +ovJ +viF +uPj +iMO +rVA +pRO +aLG afu afu +dVd +pRO +qKY +gMW +pRO +gMW +neN +vxr +egg +olH +vxz +jRq +wNR idM -klx -xvD -tTG idM -iTE -doH -mQS -roj -dCm -dJR -jVB -mwL -kVj -qJB -eZC -ylo -imd -jVB +idM +vxr +uVb +vxr +vxr jPa paf paf @@ -190008,25 +193932,25 @@ arT gsm ubs ubs -wKb -wKb -wKb -wKb -vyt -wKb -wKb -cbq -hLp -hLp -wKb -sZh -aFg -aFg -aFg -aFg -aFg -aFg -wKb +upX +upX +upX +upX +wgq +upX +upX +pwY +pBm +pBm +upX +ewu +vca +vca +vca +vca +vca +vca +upX jtE dDL nlm @@ -190167,51 +194091,51 @@ nlm nlm nlm tSA -gGB -dCm -dCm -dCm -dCm -dCm -hwU -dCm -dCm -dCm -dCm -dCm -mmb -qCj -lMS +cZI +vxr +vxr +vxr +vxr +vxr +eOf +vxr +vxr +vxr +vxr +vxr +nTy +mdW pRO -dHS -tSa -eRm -bJs -jeX pRO -eza -afu -afu -afu +pRO +pRO +pRO +pRO +pRO +pRO +fOc +dhZ +dhZ +dVd +pRO +kml +vYN +pRO +fDH +ipr +vxr +mIE idM -vqq -giB -iJN idM -xuy -qNW -dCm -roj -dCm -dJR -jVB -lgF -lgF -wMi -lgF -pKJ -wMi -jVB +idM +idM +idM +uuD +idM +idM +hEu +fNP +biI jPa paf paf @@ -190269,21 +194193,21 @@ ewD wsv eTG ewD -xFw -baF -wKb -sZh -sZh -sZh -wKb -sZh -aFg -aFg -aFg -aFg -aFg -aFg -wKb +aOo +qIZ +upX +ewu +ewu +ewu +upX +ewu +vca +vca +vca +vca +vca +vca +upX jtE dDL nlm @@ -190402,73 +194326,73 @@ nlm nlm nlm nlm -heR -dbT -pmx -dbT -pmx -dbT -pmx -heR -heR -dcE -heR -heR -heR -heR -heR -heR -dDL +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm nlm nlm nlm nlm tSA -qqY -hRj -dCm -jda -dCm -qzB -dXy -ecP -ecP -cNl -tAV -dCm -dCm -vMs -dCm -dCm -dCm -doL -dCm -dCm -dCm -dCm -afu -afu +tLP +vxr +gfd +wrb +vxr +qoL +rPg +qUo +bAf +dEr +qZy +vxr +vxr +gOv +vxr +ssX +xED +pRO +ekk +aLA +fpf +pRO +aLG afu afu +dVd +pRO +qaH +pZd +pRO +wZk +gyi +vxr +mFv idM +jaI +lgC +sjy idM +qsr +wWM idM -idM -idM -dCm -dCm -dCm -rGw -dCm -tJw -cdi -nSp -nSp -xmQ -mDk -twC -rAq -cdi +hEu +bSg +elH jPa paf eqt @@ -190526,21 +194450,21 @@ ewD iFx ssV iPX -xFw -xzm -wKb -wKb -wKb -wKb -wKb -sZh -aFg -aFg -aFg -aFg -aFg -kbR -wKb +aOo +kuL +upX +upX +upX +upX +upX +ewu +vca +vca +vca +vca +vca +vbZ +upX ekn itl itl @@ -190659,73 +194583,73 @@ nlm nlm nlm nlm -dbT -mZo -mZo -mZo -mZo -mZo -mZo -pmx -heR -dcE -heR -wJJ -wJJ -wJJ -wJJ -wJJ -dDL nlm nlm nlm nlm -xrx -qqY -hRj -dCm -dCm -dCm -dXy -dXy -nYR -dXy -wsc -qPw -ecP -ecP -hqi -ecP -dCm -nit -eKc -dCm -pRx -lAE -dCm -afu -afu -afu -afu -dCm -ecP -lai -fNG -dCm -vvV -sgG -piT -piT -esn -uzY -sMw -lYT -twC -twC -twC -tzO -rPK -cdi +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +tSA +ixj +lWS +lRD +tQq +aqE +mAa +vgX +tpR +rPg +xTJ +nAx +vxr +vDv +rPg +vxr +vxr +pSk +pRO +xQg +dmC +uvx +nKE +mmO +jba +hgJ +vze +vxr +vxr +vxr +vxr +vxr +vxr +vxr +mIE +oFo +jaI +jaI +nIa +eWn +nIa +hMS +idM +hEu +fWL +biI jPa paf jPa @@ -190783,21 +194707,21 @@ ewD fTA eUV ewD -eEv -eEv -eEv -eEv -eEv -eEv -eEv -sZh -aFg -aFg -aFg -aFg -aFg -aFg -wKb +epH +epH +epH +epH +epH +epH +epH +ewu +vca +vca +vca +vca +vca +vca +upX hRj hRj hRj @@ -190862,39 +194786,63 @@ nlm nlm nlm nlm -"} -(154,1,2) = {" -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm +"} +(154,1,2) = {" +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm nlm nlm nlm @@ -190913,76 +194861,52 @@ nlm nlm nlm nlm -nlm -nlm -nlm -aDp -mZo -mZo -mZo -mZo -mZo -mZo -mZo -mrg -dcE -heR -wJJ -qeQ -qeQ -qeQ -wJJ -heR -heR -dDL -dDL -dDL -xrx -qqY -lrM -spK -roj -nxi -roj -hAh -ikK -tSE -dDq -cDA -roj -roj -hye -roj -iDw -dDq -dDq -jxj -sgG -sgG -dCm -dCm -dCm -dCm -dCm -dCm -gYY -dCm -dCm -dCm -qqe -yem -ijE -ivE -ijE -gKu -cdi -rnh -miE -wIl -ewf -wiA -jrb -cdi +waY +xIW +gVf +jbr +dTa +paZ +vfj +vyu +vUN +vUN +vUN +kwV +caK +vUN +yme +tBb +vxr +qHz +njf +njf +hop +kyp +vxr +vxr +emb +vxr +vxr +vxr +caB +nXh +caB +caB +nXh +mIE +egg +idM +bbX +jCS +pEm +idM +xym +bYt +idM +hEu +tua +biI jPa jPa jPa @@ -191039,22 +194963,22 @@ ubs ewD xCu vAg -cWU -cWU -cWU -cWU -cWU -sIn -eEv -siG -sZh -aFg -aFg -aFg -aFg -wlF -fMe -wKb +gUI +gUI +gUI +gUI +gUI +nyh +epH +eIq +ewu +vca +vca +vca +vca +xQr +qoB +upX hRj hRj hRj @@ -191173,73 +195097,73 @@ nlm nlm nlm nlm -heR -tWI -tWI -tWI -tWI -tWI -tWI -tWI -jyv -dcE -heR -wJJ -qeQ -qeQ -qeQ -wJJ -shx -uIx -uIx -uIx -uIx -shx -hRj -hRj -dCm -dCm -dCm -dCm -dCm -dCm -dXy -bNY -hMc -ojr -ojr -dDq -ojr -kHj -rCP -nGI -ecP -ecP -sgG -wul -sgG -sgG -sgG -sgG -sgG -sgG -sgG -sgG -xmx -exM -slP -ijE -sws -sws -iiS -cdi -cdi -cdi -cdi -cdi -cdi -cdi -cdi +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +xrx +jGG +jGG +jGG +jGG +jGG +jGG +unL +nOK +oit +rcc +wRQ +kYk +bSg +xSL +kwV +vxr +aDk +eKL +hFW +rxy +oGX +vxr +vUN +uwr +hkO +vep +gcT +caB +rPg +iGu +vxr +pCB +vxr +jGG +idM +omF +jBV +idM +idM +idM +idM +idM +vxr +vxr +vxr paf iFC paf @@ -191289,30 +195213,30 @@ uKt kKw uKt uKt -uKt +mQh gsm ubs ubs -wKb -weJ -cWU -cWU +upX +weM +gUI +gUI eeb mbP qYB -cWU -cWU -xJI -wKb -wKb -wKb -wKb -wKb -wKb -uQH -hBS -wKb -wKb +gUI +gUI +tsp +upX +upX +upX +upX +upX +upX +eot +eFE +upX +upX hRj hRj hRj @@ -191430,70 +195354,70 @@ nlm nlm nlm nlm -heR -tWI -aDp -uUH -aDp -uUH -aDp -uUH -jyv -dcE -heR -wJJ -rad -tOE -rOG -wJJ -shx -tlf -roz -lqv -ejA -shx -hRj -hRj -hRj -hRj -hRj -hRj -hRj -dCm -eEN -wIW -hkm -hkm -hkm -qhP -hkm -hkm -dCm -dCm -dCm -dCm -dCm -dCm -dCm -dCm -dCm -dCm -dCm -dCm -dCm -dCm -dCm -paf -paf -paf -paf -paf +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +xrx +kbu +txF +jya +eSI +hnO +jGG +jGG +jGG +jGG +jGG +jGG +jGG +rPg +xSL +kwV +vxr +vxr +vxr +vxr +vxr +vxr +vxr +kwV +mfF +uCO +uCO +flK +vxr +vxr +vxr +vxr +tkX kdR -uGj -jPa -jPa -jPa -jPa +kdR +kdR +tkX +tkX +uUg +tkX +tkX +tkX +tkX tLo paf paf @@ -191546,7 +195470,7 @@ ubs ubs ubs ubs -uKt +mQh gsm gsm gsm @@ -191687,70 +195611,70 @@ nlm nlm nlm nlm -heR -aDp -syR -syR -syR -syR -mrg -bWY -jyv -shx -shx -wJJ -eBf -pPu -eBf -wJJ -shx -pJf -dQb -tMf -evH -shx -hRj -hRj -hRj -hRj -hRj -hRj -hRj -hkm -hkm -hkm -kOk -dUH -fHk -vpi -fHk -kOk -hRj -hRj -dDL -dDL -heR -heR -heR -heR -heR -dCm -qLZ -ffr -ohJ -dzI -dCm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +xrx +kbu +psU +dyM +rVb +iub +unl +eZC +lBD +kjg +rtL +qFS +jGG +rPg +rPg +vUN +vUN +vUN +vUN +vUN +vUN +vUN +vUN +kwV +wkn +uCO +uCO +oXB +vxr +utv +uCO +vxr paf paf paf paf paf -kdR +jPa paf paf paf paf -jPa +tkX paf paf paf @@ -191803,7 +195727,7 @@ ubs ubs ubs ubs -uKt +mQh ubs ubs ubs @@ -191944,76 +195868,76 @@ nlm nlm nlm nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +slL +slL +slL dDL -dDL -dDL -dDL -dDL -shx -uIx -shx -uIx -shx -oOn -aMs -wDS -peo -iLg -pDm -shx -ncT -qJA -axF -iUo -shx -kOk -kOk -kOk -hdi -hdi -hdi -hdi -kOk -kOk -qTk -dBG -knN -knN -cTM -knN -kOk -hdi -hdi -hdi -hdi -hdi -hdi -hdi -hdi -hdi -kOk -kOk -kOk -lUM -kOk -kOk -kOk +xtW +xrx +kbu +orR +dyM +edC +mPx +unl +eZC +qJB +kVj +mwL +hYl +jGG +jGG +jGG +jGG +jGG +jGG +jGG +jGG +jGG +jGG +jGG +jGG +hUg +jGG +jGG +jGG +jGG +mch +jGG +jGG +vwg paf paf eaf paf -kdR -paf +jPa paf paf paf -jPa -jPa -jPa -jPa -jPa -jPa -jPa +tkX +tkX +cnw +cnw +cnw +cnw +cnw +cnw jPa paf paf @@ -192060,7 +195984,7 @@ ubs ubs ubs uKt -uKt +mQh uKt ubs ubs @@ -192201,76 +196125,76 @@ nlm nlm nlm nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm slL -dcE -heR -qHf -qHf -shx -fVM -sTS -fVM -nfE -lyd -chG -chG -chG -chG -wdu -xuG -iPL -sGR -sGR -hig -shx -dJn -oOs -oOs -oOs -oOs -oOs -oOs -iTB -mQT -oOs -oOs -oOs -oOs -fXG -oOs -iTB -oOs -oOs -oOs -anJ -oOs -oOs -oOs -oOs +slL +dDL +dDL +dDL +nlm +nlm +unl +unl +unl +xAC +suI +bBq +iub +unl +eZC +kVj +kVj +tSw +hYl +iHr +uFe +rvo +cbA +jVB +wPp oOs -ppA -mQT -mGO -rLz -xfj -dtC -fzS +aoY +qww kOk +jBJ +lnZ +fTa +aQO kOk +mze +ohi +uDx +weC +lDI kOk kOk -fnD +rDG kOk -cWU -wKb -wKb -qzb -wKb -wKb -wKb -wKb -wKb -dkQ +kOk +mAH +kOk +fTV +ksJ +fYG +ksJ +ksJ +ksJ +ksJ +ksJ +ksJ +dgl euG euG pJR @@ -192281,11 +196205,11 @@ cjh cjh cjh mus -dJC -mus +cXX mus -dJC mus +cXX +riN mus cXX mus @@ -192294,53 +196218,53 @@ gpO mHf mHf mHf -rKA -rJJ -rKA -rKA -rKA -rKA -rKA -rKA -rKA -daz -rKA -rKA -rKA -rKA -rKA -rKA -eij -hKh -cLq -cLq -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -evO -evO +wrT +vCG +wrT +wrT +wrT +wrT +wrT +wrT +wrT +hHi +wrT +wrT +wrT +wrT +wrT +wrT +aSk +omU +gKq +gKq +wrT +wrT +wrT +wrT +wrT +wrT +wrT +wrT +wrT +hdV +hdV rkB lmT uBq -evO -evO -rKA -rKA -rKA -rKA -rKA -rKA -rKA -qxE -qxE -rKA -rKA +saT +saT +blF +blF +blF +blF +blF +blF +blF +inv +inv +blF +blF hRj hRj hRj @@ -192458,76 +196382,76 @@ nlm nlm nlm nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm slL -dcE -heR -iVT -duQ -jCJ -fVM -fVM -uBv -wtd -aMs -wdu -iWM -aMs -aMq -iOk -aMs -aMs -ccV -hja -uuo -shx -eSh -bAW -bAW -bAW -smk -smk -smk -smk -smk -smk -smk -smk -smk -smk -smk -smk -smk -smk -smk -smk -smk -smk -nhz -qZE -qZE -iTn +nlm +nlm +nlm +dDL +nlm +nlm +kbu +pcM +uMG +jOm +dCs +kox +iub +unl +eZC +mwL +kVj +qJB +jRQ +jjp +xMf +pRB +ifk +lXl +kSk bAW -hWk +hHj +aAn +oOs +oOs +iKA +oOs +oOs +ipL +oOs +mGO cCM cCM -iak -fzS -ljh +eAh +kNc cCM cCM -oWN -kSL cCM cCM -aFg -cWU -tub -wKb -lKZ -ebM -mgM -wKb -rRW +sUW +cCM +cCM +fTV +nwH +oxH +ksJ +jem +duw +vZH +ksJ +hrC euG uAZ xDY @@ -192537,67 +196461,67 @@ euG sby jkW lRd -oTd -nUo -oTd -oTd +vAh +oJd avc -oTd -oTd avc -oTd -iju +avc +avc +avc +vAh +vAh +jkG qaI qiY bHb mHf -wcV -kFa -pIV -rKL -rKL -rKA -wcV -wcV -wcV -rMj -wcV -wcV -jip -wcV -rKA -rKL -pRm -rKL -rKL -rKL -wcV -rKL -rKA -www -dTi -rMj -rMj -ehO -pIV -xgb -evO -evO -mbv -evO -evO -wAW -rMj -pIV -wcV -wcV -wcV -pIV -rMj -wcV -wcV -fgg -rKA +sfc +vmk +avI +sfc +sfc +wrT +sfc +sfc +sfc +bJo +sfc +sfc +uzi +sfc +wrT +lwA +cCo +lwA +lwA +lwA +sfc +lwA +wrT +oyS +djX +bJo +bJo +kzy +avI +szA +hdV +saT +tUn +saT +saT +ugw +sOm +fGg +duC +duC +duC +fGg +sOm +duC +duC +lpA +blF hRj hRj hRj @@ -192715,76 +196639,76 @@ nlm nlm nlm nlm -slL -dcE +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm dDL -qHf -qHf -shx -buP -fVM -fVM -rDm -wKI -iWA -gqb -wdu -wdu -iOk -aMq -aMs -aMq -raa -bWC -shx -rqm -fMu -fMu -fMu -auP -fMu -qRb -fMu -oXO -fMu -fMu -fMu -fMu -fMu -fMu -fMu -fMu -fMu -fMu -fMu -pgh -fMu -auP +nlm +uSI +aDw +aDw +aDw +aDw +kbu +aNP +bLx +rvv +rvv +rvv +rvv +unl +eZC +wyV +eZC +vek +wVh +jVB +fop +fKl +uPz +oql +dBo +exk +exk +dmI +cdo +exk +dmI +xFg fMu -cfT -lmI +hdi fMu agz cCM cCM -iak -fzS -ljh +eAh +kNc +cCM cCM dVv uhO ulj -csN +xGV cCM -aFg -cWU -xJt -wKb -gOd -wYw -wYw -wKb -nhE +fTV +iQD +oBl +ksJ +hLr +lDH +lDH +ksJ +tey euG ceR cZh @@ -192798,63 +196722,63 @@ avc avc avc avc +rrE avc avc avc avc -avc -iju +jkG igc lDj -nWV +qEN mHf -rKL -kFa -rKL -rKL -rKL -rKA -wcV -wcV -wcV -nmH -wcV -wcV -pIV -wcV -rKA -rKL -pRm -rKL -rKL -rKL -pIV -rKL -rKA -www -rMj -pIV -rMj -rMj -pIV -rMj -rKA -lxN -gtd -rKA -tza -sqo -rMj -pIV -gBf -pIV -pIV -pIV -rMj -wcV -wcV -wcV -rKA +lwA +vmk +lwA +lwA +lwA +wrT +sfc +sfc +sfc +kki +sfc +sfc +avI +sfc +wrT +lwA +cCo +lwA +lwA +lwA +avI +lwA +wrT +oyS +bJo +avI +bJo +bJo +avI +bJo +wrT +oeH +mOk +blF +gYU +pZW +sOm +fGg +usk +fGg +fGg +fGg +sOm +duC +duC +duC +blF nGm hRj hRj @@ -192918,27 +196842,39 @@ nlm nlm nlm nlm -"} -(162,1,2) = {" -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm +"} +(162,1,2) = {" +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm nlm nlm nlm @@ -192973,75 +196909,63 @@ nlm nlm nlm slL -nlm -dDL dDL -dDL -shx -hVc -fVM -iZe -abi -nTp -vcF -gng -tls -uBh -uqw -jmD -tnX -aMq -vIy -tMw -shx -rqo -pGl -pGl -rqo -eLh -pGl -rqo -pGl -pGl -pGl -rqo -ngH -hYV -hYV -hYV -ngH -ngH -hYV -hYV -ngH -ngH -hYV -wdJ -hYV -ngH -ngH -cbT +nlm +qms +mDG +mDG +mDG +mDG +kbu +rSP +uMG +czx +lrZ +gfi +qVE +unl +unl +unl +unl +unl +unl +gmD +gmD +wPt +gmD +gmD +gmD +dwQ +dwQ +gmD +gmD +dwQ +aod +dwQ +gmD +gmD +gmD cbT +oDs cbT +sKx cbT -sdI cbT -ljh cCM bKj cCM cCM -wjT +eTP cCM -cCM -kOk -wGi -wKb -oFU -wYw -wYw -wKb -cea +fTV +xfQ +oBl +ksJ +oWJ +lDH +lDH +ksJ +iyZ euG fSW kek @@ -193050,68 +196974,68 @@ bzN aPG rTF geK -oip +uEL pSB avc -tDn pSB -avc +kxW +acx +tGv pSB -uAn avc pSB -iju +jkG cDZ -lDj +bqO ueN mHf -rKL -kFa -rKL -rKL -rKL -rKA -wcV -wcV -wcV -rMj -wcV -wcV -pIV -wcV -rKA -pIV -pRm -pIV -pIV -pIV -pIV -pIV -rKA -rMj -rMj -rMj -rMj -pIV -sKH -ceB -rKA -pPG -gtd -rKA -dTb -rMj -iCx -pIV -wcV -wcV -wcV -pIV -rMj -wcV -wcV -wcV -rKA +lwA +vmk +lwA +lwA +lwA +wrT +sfc +sfc +sfc +bJo +sfc +sfc +avI +sfc +wrT +avI +cCo +avI +avI +avI +avI +avI +wrT +bJo +bJo +bJo +bJo +avI +xMn +prO +wrT +isY +mOk +blF +mWC +sOm +bvE +fGg +duC +duC +duC +fGg +sOm +duC +duC +duC +blF hRj hRj hRj @@ -193229,76 +197153,76 @@ nlm nlm nlm nlm -slL -slL -slL nlm nlm -shx -vvb -foH -xpF -fVM -fVM -pPu -wUI -siN -oxu -qij -eOM -nKz -cot -chZ -lcN -shx -rqo -nhU -svt -mmt -nhU -ijs -uwn -ijs -xpr -ijs -ggW -ngH -tjy -jEV -fzl -rWs -bKY -arl -nJJ -eOy -xBt -mEr -tLs -xAI -lcx -hsd -ujX -tOR -vQw -xBa -qnn +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +hMq +iWu +dDL +dDL +qms +iVr +unl +unl +xFN +unl +rci +bLx +bkC +kcC +dWe +hOo +bKw +uwk +phI +kau +oDp +mWB +gmD +cca +vBT +njc +kep +jKL +lZW +uxZ +yfq +eeh +mzm +tla +kWs +gjR +wpK +dwU +riB +bNO +mej +kXW +tLD uAO uhO -uhO jgt cCM cCM -fyH -sIW -sIW -dLO -smi -wKb -kAq -wYw -wYw -iyk -eEv +tVe +dxQ +vlI +bEP +oBl +ksJ +aLB +lDH +lDH +fPo +mLv euG tCb koU @@ -193310,65 +197234,65 @@ pBa oRG pSB avc -pSB -pSB -avc -pSB -pSB +oTd +byE +psi +qKC +oTd avc pSB -iju +jkG gnx uuV -qvu +lfX mHf -pIV -kFa -pIV -wcV -pIV -uKm -pIV -pIV -pIV -rMj -pIV -pIV -pIV -pIV -rKA -rKL -dsY -rKL -rKL -rKL -pIV -rKL -rKA -pIV -pIV -rMj -rMj -rMj -rKA -rKA -rKA -rKA -lrT -rKA -rKA -rKA -rKA -uKm -rKA -wtn -uon -rKA -rMj -rMj -rMj -rMj -rKA +avI +vmk +avI +sfc +avI +ano +avI +avI +avI +bJo +avI +avI +avI +avI +wrT +lwA +dQk +lwA +lwA +lwA +avI +lwA +wrT +avI +avI +bJo +bJo +bJo +wrT +wrT +wrT +blF +fXr +blF +blF +blF +blF +nqf +blF +dSY +qge +blF +sOm +sOm +sOm +sOm +blF odg hRj hRj @@ -193488,74 +197412,74 @@ nlm nlm nlm nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm slL -dDL -dDL -shx -shx -aPr -hNJ -fVM -fVM -shx -sRd -shx -gfs -ngQ -ngQ -cay -cay -nqm -oGW -vqn -wyc -ltG -ijs -xBQ -sRP -bWQ -oNI -fke -fke -fke -fke -wzD -njY -ntA -eVy -xAI -dnC -nJJ -xCx -rjj -xAI -btj -sYH -xAI -xAI -tkV -ujX -uhv -ruB -ybT +nlm +nlm +qms +mDG +mDG +unl +nxq +unl +bIm +jTp +gfi +aWM +veh +veh +xpd +xYc +cNK +cNK +cNK +cNK +fUr +fVR +tnJ +bOK +tla +rRT +egA +obM +ldV +tla +egA +tla +bLm +bLm +nBm +dwU +uBo +xxr +gqc isr -iAW -ljh +eXJ +oDs cCM -bXp +nKe cCM cCM sUW -cCM lUC -kOk -cdP -wKb -iee -wYw -wYw -wKb -gTX +fTV +eMN +oBl +ksJ +mBZ +lDH +lDH +ksJ +mLv tWx mga hoJ @@ -193575,57 +197499,57 @@ tEl tEl tEl sfz -uRs +tpJ uRs djG mHf -rKL -kFa -rKL -rKL -rKL -rKA -rMj -rMj -rMj -rMj -wcV -pIV -wcV -wcV -rKA -rKL -pRm -rKL -rKL -rKL -pIV -rKL -rKA -rKA -vcT -rKA -rKA -rKA -rKA -iPt -cme -rKA -lrT -mtw -gtd -feR -gtd -gtd -gqM -gtd -gtd -mGx -rMj -rMj -wcV -rMj -rKA +lwA +vmk +lwA +lwA +lwA +wrT +bJo +bJo +bJo +bJo +sfc +avI +sfc +sfc +wrT +lwA +cCo +lwA +lwA +lwA +avI +lwA +wrT +wrT +jji +wrT +wrT +wrT +wrT +kbo +xEJ +blF +fXr +sZi +mOk +aZy +mOk +mOk +eZk +mOk +mOk +wel +sOm +sOm +duC +sOm +blF ilu hRj wyj @@ -193745,144 +197669,144 @@ nlm nlm nlm nlm -slL nlm nlm -uIx -fPl -ooF -cBY -xpF -fVM -shx -ogB -mDo -fQR -kBo -fAb -qij -qij -kxA -tES -isn -gvK -ijs -rhD -dwq -nhU -bmc -xqb -ijs -buF -vEI -vEI -ngH -cUA -xAI -iux -xAI -wuX -ajl -ajl -dVg -xAI -src -sYH -wrt -wrt -daQ -mcd -kUp -kjQ -jrQ -qic -xHU -ljh +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +xIe +nlm +nlm +qms +mDG +ezY +unl +wvR +xWN +wkF +qmT +izV +ufI +veh +veh +qHX +nWX +gfi +qFk +mfh +mfh +gmD +wmS +bGe +nUF +nKf +ruf +qpn +qpn +wbM +kWs +jdM +nKf +hBj +bGe +dqI +hjH +ctL +lHI +uIf +oaX +lxb +oDs cCM -bXp +nKe cCM cCM sUW cCM -cCM -kOk -xRJ -wKb -iee -wYw -wYw -wKb -kiT +fTV +rtm +oBl +ksJ +mBZ +lDH +lDH +ksJ +xxs euG euG euG kMr umq euG -cIN +cEj igJ -oip +uEL oTd avc oTd -oTd avc -oTd +avc +nCg oTd nUo dOQ mHf -iju -iju +jkG +jkG mHf mHf -rMj -lLa -rMj -rMj -rMj -rKA -wcV -wcV -rMj -wcV -wcV -pIV -wcV -pIV -uKm -pIV -vrO -nfB -mwh -nfB -nfB -nfB -lrb -iCS -mcR -gtd -gtd -gtd -vvL -gtd -gtd -qZB -lrT -rKA -aFm -sUV -rKA -gtd -rKA -rKA -rKA -rKA -cIp -rMj -rMj -dTi -rKA +bJo +rYU +bJo +bJo +bJo +wrT +sfc +sfc +bJo +sfc +sfc +avI +sfc +avI +eIN +avI +sVc +rVG +wfO +rVG +rVG +rVG +odo +iZk +qnh +rYh +rYh +rYh +jZQ +rYh +rYh +gUV +fXr +blF +fNr +kTm +blF +mOk +blF +blF +blF +blF +wNp +sOm +sOm +wDz +blF dXi hRj hRj @@ -194002,145 +197926,145 @@ nlm nlm nlm nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm slL nlm nlm -uIx -hcf -hbS -hbS -tRL -wpd -shx -ewK -shx -hMF -uRB -shx -qij -qij -kxA -qij -kXa -gvK -ijs -ijs -lEy -nhU -vPa -jMG -ijs -eri -nic -vNX -ngH -kbS -xAI -iux -xAI -gxi -xAI -xAI -xAI -xAI -xAI -xbp -xAI -jnQ -xAI -nyX -hcn -jsQ -dxL +qms +mDG +mDG +unl +rlF +unl +dZn +dhy +unl +pFY +ffs +xIk +eJx +nWX +gfi +ehu +fJY +tIo +gmD +nqo +eyC +rWn +dPC +kWs +kWs +kWs +kWs +kWs +kWs +dPC +dht +eyC +nKf +xEM +ush +hzk +klA vny -cjL -ljh +wpM +oDs cCM -bXp +nKe cCM cCM sUW cCM -cCM -kOk -xqG -wKb -lQE -dHb -jUI -wKb -hmG -fAV -uUX +fTV +apy +bHL +ksJ +mSN +mJT +gVj +ksJ +rpd +kCz +gvM euG euG euG euG rRM igJ -oip -pSB -pSB -pSB -pSB -uTJ -pSB -pSB +uEL pSB +avc +oTd +pZT +hmb +aiP +oTd +avc pSB lGA cAH emh -cjh -gtd -rKL -kFa -rKL -rKL -rKL -rKA -wcV -wcV -rMj -wcV -rMj -rMj -rMj -rMj -rKA -rKL -pIV -rKL -rKL -rKL -pIV -rKL -rKA -mpX -fZP -sgM -rFi -uhx -rKA -rKA -rKA -rKA -lrT -rKA -rKA -rKA -rKA -pIV -pIV -pIV -yfs -rKA -rKA -rKA -rKA -rKA -rKA -rKA +qcQ +svT +lwA +vmk +lwA +lwA +lwA +wrT +sfc +sfc +bJo +sfc +bJo +bJo +bJo +bJo +wrT +lwA +avI +lwA +lwA +lwA +avI +lwA +wrT +gxb +pWk +mOU +aur +jvK +wrT +wrT +wrT +blF +fXr +blF +blF +blF +blF +fGg +fGg +fGg +gJw +blF +blF +blF +blF +blF +blF +blF hRj hRj hRj @@ -194259,145 +198183,145 @@ nlm nlm nlm nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm slL nlm nlm -uIx -crn -llh -kEq -shx -shx -shx -vHa -aZQ -hHE -pha -iGC -goM -qij -kxA -qij -rqo -jdr -ijs -pID -ijs -ijs -ijs -ijs -qrt -uGg -vNX -poD -ngH -kbS -tLQ -gER -vQf -tLQ -eVu -sLx -upA -eVu -vQf -qpY -guy -vQf -xAI -ujX -lSs +qms +mDG +mDG +yau +qsx +fsW +kEf +qlu +cgI +kZw +tWe +jQH +tiN +nWX +fht +xgP +tIo +mOB +gmD +amd +tVz +alb +jyP +tVz +lPi +kPC +pGL +lPi +jyP +lrX +oiw +jyP +nKf +dwU +oVQ uvT hzk -xIo +vXC +ixW cbT -ljh cCM -bXp +nKe cCM cCM sUW cCM -cCM -kOk -vqE -wKb -wKb -wKb -wKb -wKb -gTX -syU -uJR -cea -nns -uEs -wKb +fTV +kzW +ulD +ksJ +ksJ +ksJ +ksJ +ksJ +mLv +nTU +gAS +inL +yiB +ruZ +ksJ wVx igJ -oip -pSB -pSB -pSB -pSB +roY +avc +avc +avc +fNn fPf -pSB -pSB -pSB -pSB +txz +avc +avc +avc mIp iMT sLK -cjh -tpA -kFa -kFa -wcV -pIV -wcV -rKA -wcV -wcV -rMj -pIV -rMj -rMj -rMj -dTi -rKA -rKL -pIV -rKL -rKL -rKL -pIV -rKL -rKA -dto -eNY -iqo -gYS -uhx -rKA -rKL -rKL -gtd -lrT -gtd -rKL -rKL -rKA -lcE -rKA -rKA -qHT -fqj -bCa -pIV -gtd -uEM -gtd -vJV +wrT +oVe +oPH +oPH +sfc +avI +sfc +wrT +sfc +sfc +bJo +avI +bJo +bJo +bJo +djX +wrT +lwA +avI +lwA +lwA +lwA +avI +lwA +wrT +dal +ayI +kYM +rGg +jvK +wrT +lwA +lwA +mOk +fXr +mOk +uMt +uMt +blF +xhv +blF +blF +sEc +lVR +xfi +fGg +mOk +pNV +mOk +neA hRj hRj pma @@ -194460,39 +198384,48 @@ nlm nlm nlm nlm -"} -(168,1,2) = {" -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm +"} +(168,1,2) = {" +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm nlm nlm nlm @@ -194509,152 +198442,143 @@ nlm nlm nlm nlm +dDL nlm nlm +dDL nlm nlm nlm nlm +xIe nlm -slL -dcE nlm -shx -dMJ -pFJ -vwx -shx -bbO -shx -kwG -fJc -shx -tHE -shx -way -qNX -mHZ -bpZ -rqo -vjC -ijs -ijs -ijs -ijs -ijs -ijs -bPj -rqo -lag -lag -ngH -wIS -sLx -nCR -nZD -eVu -eVu -sLx -ume -eVu -sLx -sLx -fXp -sLx -pvP -hql -cbT +qms +mDG +mDG +yau +tEi +aSc +unl +kKn +unl +lKl +rVt +aKj +tiN +nWX +xMJ +unl +kbu +kbu +gmD +raE +kPC +oBO +sUw +lPi +lPi +kPC +okG +lPi +kPC +kPC +gcx +kPC +bor +fPN +gmD sRE rET sRE cbT +cbT cCM +xfy +unU +ddu +sti cCM -eAd -iKj -txs -xqm -cCM -itq -kOk -lgZ -sDG -vwR -xIV -kFQ -mgY -cPW -wdD -vDT -cVH -wKb -wKb -wKb +fTV +bEP +xXC +nKk +oWD +ykK +esD +myP +uYg +tLE +vgf +sLO +ksJ +ksJ +ksJ pec igJ -oip -pSB -pSB -pSB -pSB -pSB +uEL pSB +avc pSB +xky +xky +xky pSB +avc pSB lnH peQ hXr -pZT -wqN -rKL -pIV -rKL -rKL -rKL -rKA -wcV -wcV -rMj -wcV -rMj -rMj -rMj -rMj -rKA -wcV -pIV -pIV -pIV -pIV -pIV -pIV -rKA -rKA -ter -hKh -hKh -rKA -rKA -rKA -rKA -rKA -lrT -rKA -rKA -rKA -rKA -rKA -exV -sPp -qHT -rKA -kQV -awK -rKA -rKA -rKA -rKA +wrT +rWg +lwA +tQB +lwA +lwA +lwA +wrT +sfc +sfc +bJo +sfc +bJo +bJo +bJo +bJo +wrT +sfc +avI +avI +avI +avI +avI +avI +wrT +wrT +lLG +omU +omU +wrT +wrT +wrT +wrT +blF +fXr +blF +blF +blF +blF +blF +fTC +dtT +sEc +blF +nEt +bjr +blF +blF +blF +blF hRj hRj hRj @@ -194773,144 +198697,144 @@ nlm nlm nlm nlm +nlm +hMq +iWu slL -heR +slL +iWu +slL +slL +slL +slL +iWu dDL -shx -shx -shx -shx -shx -shx -shx -kHY -kHY -shx -uOo -vVv -vVv -shx -shx -shx -rqo -eEW -bDn -ijs -ckn -ijs -ijs -ijs -lPE -qRp -qRp -qRp -ngH -nsN -xAI -qtC -pXM -oXX -woG -oSU -wgD -fZB -hKS -oXX -okO -xAI -xAI -jBh -cbT +dDL +qms +iVr +unl +unl +xSc +xSc +unl +agB +unl +gPk +oYu +kmT +eRO +nWX +sdP +nGA +nGA +ugm +gmD +kaj +kWs +eKq +nVz +sxP +hPj +htN +yay +rQG +vnC +sxP +hMz +kWs +nKf +qYb +gmD sLQ oef rVd cbT -cCM -cCM -cCM -okP -vLb -cCM -cCM -itq -kOk -jzz -jzz -pDa -jzz -jzz -wKb -njA -wKb -wKb -cth -icj -dXN -bNC +shi +shi +slo +shi +sjr +slo +shi +fTV +ksJ +ksJ +ksJ +mXI +ksJ +ksJ +ksJ +xDw +ksJ +ksJ +irj +tsV +xrU +uaU fqZ xGq vkO pSB +avc pSB -xsU -uib pSB pSB pSB pSB +avc pSB gLT -gYP +peQ rCF -cjh -ohw -rKL -pIV -rKL -rKL -rKL -rKA -wcV -wcV -rMj -wcV -rMj -dTi -rMj -rMj -rKA -rKL -wcV -rKL -rKL -rKL -wcV -rKL -rKA -wcV -xMv -bwd -bwd -bwd -jDq -rKL -wcV -rKA -lrT -rKA -yiW -fwd -rKA -tcz -exV -rKA -qHT -rKA -fnW -afB -dSX -dUG -rKA +wrT +rWg +lwA +tQB +lwA +lwA +lwA +wrT +sfc +sfc +bJo +sfc +bJo +djX +bJo +bJo +wrT +lwA +sfc +lwA +lwA +lwA +sfc +lwA +wrT +sfc +chg +dUK +dUK +dUK +sHi +lwA +sfc +blF +fXr +blF +hYW +rIm +blF +ucR +fTC +blF +sEc +blF +xrw +dDG +yel +aGe +blF hRj hRj hRj @@ -195031,83 +198955,83 @@ nlm nlm nlm nlm -dcE nlm -dcE -dcE -heR -myt -dcE -dcE -dcE -dcE -dcE -dcE -dcE -gaf +slL +nlm +nlm +dDL +nlm +nlm +nlm +nlm +dDL +nlm +nlm +qms mDG +nKW mDG mDG mDG -efZ -xbP -pxN -ijs -ijs -ijs -ijs -ijs -uxD -qRp -qRp -bgE -ngH -lse -xAI -dxv -phf -mLS -mLS -mLS -ado -mLS -mLS -mLS -lEf -okO -xAI -qYY -cbT +kbu +qWr +jYR +gPS +hrN +tpI +lWD +nWX +dPj +emd +nGA +lPR +gmD +kWs +kWs +gql +iQd +vxS +vxS +vxS +vxS +vxS +vxS +vxS +bkv +hMz +kWs +rjM +gmD hSa eDP eej cbT -kOk -kOk -kOk -kOk -wiO -kOk -kOk -kOk -kOk +eCa +mlc +iwq +oXv +iwq +uYT +pQp +uYT +iwq mKk qVD lia gQY -jzz -xwu -oeF -sZh -cWU -cWU -cWU -cWU -cWU +ksJ +fms +qFV +oBl +fTV +fTV +fTV +fTV +fTV kWj dNZ wtJ -wuz +bZK wuz xRI gQI @@ -195119,55 +199043,55 @@ dKL lhy peQ cCN -cjh -rBh -lEi -pIV -rKL -rKL -rKL -rKA -wcV -wcV -rMj -pIV -rMj -rMj -rMj -oXh -rKA -rKL -pIV -rKL -rKL -rKL -pIV -rKL -rKA -wcV -rKL -rKL -rKL -rKL -rKL -rKL -rKL -rKA -lrT -rKA -sqz -qHT -qHT -vcn -pbZ -rKA -fNZ -rKA -fHi -oSE -qHN -juz -rKA +wrT +bex +iGo +tQB +lwA +lwA +lwA +wrT +sfc +sfc +bJo +avI +bJo +bJo +bJo +pwW +wrT +lwA +avI +lwA +lwA +lwA +avI +lwA +wrT +sfc +lwA +lwA +lwA +lwA +lwA +lwA +lwA +blF +fXr +blF +mPK +iYa +hOV +msQ +xTq +blF +dQz +blF +gFF +oFI +rgL +lsl +blF hRj hRj hRj @@ -195288,143 +199212,143 @@ nlm nlm nlm nlm -dcE +nlm slL -dcE nlm -dDL -rAT nlm +dDL nlm nlm nlm nlm +dDL nlm nlm -gaf +qms mDG +nKW mDG mDG mDG -efZ -xbP -ijs -ijs -ijs -ijs -ijs -ijs -psw -qRp -qRp -txI -ngH -hFA -hFA -kvb -mLS -mLS -aSB -aSB -aSB -aSB -aSB -mLS -mLS -wVX -qcT -mNC -cbT +unl +xVG +rZp +rZp +onW +wDp +xAr +nWX +lst +nGA +nGA +wjG +gmD +cet +cet +eSk +vxS +vxS +rFg +rFg +rFg +rFg +rFg +vxS +vxS +fYR +cet +kbh +gmD phz fbe vuR cbT -omx +kGQ iwq vVR -fVn -gGc -ddM +pmd +fBs vRf -cfI -tfy +vRf +vRf +jHk wZE dJt ksa oOZ -jzz -fCe -aud -aUF -cWU -eku -oyG -cYq -cWU +ksJ +ntz +kEG +hyw +fTV +fFN +uCI +kGg +fTV rcF geK sRH +uHD +iju +inK +dbw +geK ntx geK -inK -aiP -uEL -xCe -hxW -kdQ +geK aPg jAO bEr ucf -cjh -mHx -wcV -pIV -pIV -wcV -pIV -rKA -wcV -rMj -rMj -wcV -dTi -rMj -oXh -xuu -rKA -pIV -pIV -wcV -rAH -pIV -pIV -pIV -rKA -rKL -rKL -rKL -rKL -rKL -rKL -rKL -rKL -rKA -lrT -rKA -gCv -odB -rKA -rKA -tpA -rKA -rKA -rKA -vqZ -lWQ -nWs -pJC -rKA +wrT +wrT +wrT +eSY +kIE +kIE +kIE +wrT +sfc +bJo +bJo +sfc +djX +bJo +pwW +bMx +wrT +avI +avI +sfc +cVW +avI +avI +avI +wrT +lwA +lwA +lwA +lwA +lwA +lwA +lwA +lwA +blF +fXr +blF +pul +oxo +blF +blF +vSA +blF +blF +blF +nVY +uop +rvz +pnF +blF hRj wyj hRj @@ -195545,10 +199469,10 @@ nlm nlm nlm nlm -dcE -slL -dcE -nlm +dDL +iWu +dDL +hMq bxd bxd ydS @@ -195561,43 +199485,43 @@ ydS bxd bxd mDG +udN mDG -mDG -rqo -bRd -ijs -ijs -ijs -ijs -ijs -ijs -jcP -gtw -gtw -gCL -ngH -hFA -hFA -dOl -mLS -mLS -aSB -sgX -pvS -sgX -aSB -mLS -mLS -wre -qcT -agh -shi +unl +gbN +gfi +sru +iUz +hPW +frT +nWX +gDk +uEi +jcM +fYy +gmD +cet +cet +mCa +vxS +vxS +rFg +tPe +tPe +tPe +rFg +vxS +vxS +qdP +cet +ubk +gmD shi shi shi shi shi -oLx +gCu fmO gPv iwq @@ -195608,18 +199532,18 @@ sus vfZ hsz bHG -arL -jzz -ulu -dHK -aUF -cWU -wYw -wYw -bgA -cWU +lsu +ksJ +iJY +uLD +hyw +fTV +lDH +lDH +bIq +fTV nKr -pBa +pxX xKc uAP dOH @@ -195628,60 +199552,60 @@ wXM xeN qHQ cud -tIm +cud cgX nwQ dKT ucX -cjh -mHx -rKA -onm -rKA -rKA -daz -rKA -rKA -rKA -daz -rKA -rKA -rKA -rKA -rKA -rKA -pIV -pIV -rKL -rKL -rKL -pIV -rKL -rKA -rKL -rKL -rKL -rKL -rKL -rKL -rKL -rKL -rKA -lrT -rKA -huR -rKA -rKA -aKB -qmI -tpA -tpA -rKA -jxW -iwN -lBS -igm -rKA +wrT +rYh +wrT +txm +wrT +wrT +wim +wrT +wrT +wrT +hHi +wrT +wrT +wrT +wrT +wrT +wrT +avI +avI +lwA +lwA +lwA +avI +lwA +wrT +lwA +lwA +lwA +lwA +lwA +lwA +lwA +lwA +blF +fXr +blF +bHJ +blF +blF +oim +sMK +vSA +vSA +blF +dTX +xIh +uGm +sVo +blF hRj hRj hRj @@ -195802,16 +199726,16 @@ nlm nlm nlm nlm -dcE +nlm slL -heR -dDL +nlm +nlm bxd -eFm +mIx bNX bNX bNX -fWz +dKM bNX bNX bNX @@ -195820,40 +199744,40 @@ bxd mDG mDG mDG -efZ -xbP -aEr -ijs -ijs -ijs -ijs -ijs -jcP -vUw -qRp -oEl -ngH -hFA -qcT -dOl -mLS -aSB -aSB -sgX -sgX -sgX -aSB -aSB -mLS -wre -qcT -qcT -kXT -udb -vVb -aIt +kbu +qWr +gfi +lrZ +iUz +gfi +gfi +nWX +gDk +nGA +nGA +mig +gmD +cet +ciT +mCa +vxS +rFg +rul +tPe +tPe +tPe +rul +rFg +vxS +qdP +ciT +vQe +tUG +rrI +ecz +eWZ tMJ -tnY +lyM tTS urx qbw @@ -195863,82 +199787,82 @@ bzL fmO sus sQp -jzz -jzz -jzz -jzz -wKb -wKb -wKb -cWU -oVF -cWU -cWU -cWU +ksJ +ksJ +ksJ +ksJ +ksJ +ksJ +ksJ +fTV +mxp +fTV +fTV +fTV cjh uKP -uKP -cjh -cjh -wwE -csK cjh -kLe -kPd +gYP +kdQ +tFD +kdQ +wqN cjh +uKP +uKP cjh uKP uKP uKP -cjh -cmO -cmO -qHN -vAv -rKA -ayr -kdE -hlm -sry -gtd -gtd -iWb -rmV -qHN -rKA -rKA -daz -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKL -rKL -rKL -rKL -rKL -rKL -rKL -rKA -lrT -rKA -rKA -rKA -pIV -pIV -rKA -rKA -tpA -rKA -rKA -rKA -rKA -rKA -rKA +wrT +rYh +wrT +icg +lVF +wrT +esr +iWF +qJk +vwL +hXV +hXV +qxw +mAR +wMy +wrT +wrT +qyT +wrT +wrT +wrT +wrT +wrT +wrT +wrT +wrT +lwA +lwA +lwA +lwA +lwA +lwA +lwA +blF +fXr +blF +blF +blF +fGg +fGg +blF +blF +vSA +blF +blF +blF +blF +blF +blF hRj hRj hRj @@ -196002,39 +199926,48 @@ nlm nlm nlm nlm -"} -(174,1,2) = {" -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm +"} +(174,1,2) = {" +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm nlm nlm nlm @@ -196051,17 +199984,8 @@ nlm nlm nlm nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -dcE slL -dcE +nlm nlm ydS bNX @@ -196069,7 +199993,7 @@ bNX bNX bNX bNX -kVm +bNX bNX bNX pSI @@ -196077,41 +200001,41 @@ bxd mDG mDG mDG -efZ -xbP -lrl -ijs -ijs -ijs -ijs -ijs -jcP -qRp -qRp -ukq -ngH -riI -qcT -dOl -mLS -aSB +kbu +qWr +gBC +jcw +jkM +gfi +gfi +nWX +gDk +emd +nGA +ged +gmD +dXq +ciT +mCa +vxS +rFg tPe tPe tPe tPe tPe -aSB -mLS -jnq -sRj -siz -shi -npj +rFg +vxS +xBU +cHL +fRy +gmD +jsG cEd vki -dPQ -spb -spb +vki +slo +qYr sus fmO aDN @@ -196120,82 +200044,82 @@ yiY sus oLL sus -wKb -sZh -sZh -sZh -sZh -sZh -sZh -oSo -wYw -cWU -hRj -hRj +ksJ +oBl +oBl +oBl +oBl +oBl +oBl +dJH +lDH +fTV hRj hRj hRj hRj uKP weW +dJC +cjh cly -lnv -cGp -vAh +xsU uKP hRj hRj hRj hRj hRj -rKA -cmO -xFS -rKA -rKA -rKA -rKA -rKA -daz -rKA -rKA -rKA -iGc -gtd -rKA -fus -gtd -vet -wcV -rKL -wcV -qMC -vSU -blq -rKA -pIV -rKL -rKL -rKL -rKL -rKL -pIV -rKA -lrT -qTm -gtd -gtd -gqM -pIV -qjt -rKA -kaN -vAF -kFa -kFa -kFa -xUW -rKA +hRj +wrT +wrT +wrT +hvy +wrT +wrT +wrT +wrT +wrT +qyT +wrT +wrT +wrT +ekH +hXV +wrT +wtN +rYh +tKH +sfc +lwA +sfc +dfy +pdg +cBl +wrT +avI +lwA +lwA +lwA +lwA +lwA +avI +blF +fXr +nIC +mOk +mOk +eZk +fGg +jnU +blF +bup +hkr +xex +xex +xex +pVr +blF hRj hRj hRj @@ -196316,9 +200240,9 @@ nlm nlm nlm nlm -dcE +nlm slL -dcE +nlm nlm ydS mfn @@ -196331,44 +200255,44 @@ cZP bNX hTs bxd -vGE +eTi bxd -vGE -rqo -xbP -ijs -ijs -ijs -pID -ijs -ijs -jcP -wKJ -cAI -smD -ngH -qcT -qcT -dOl -mLS -aSB +eTi +unl +tDq +gfi +gfi +iUz +gfi +nWX +nWX +gDk +xKS +uYs +xXQ +gmD +ciT +ciT +mCa +vxS +rFg tPe tPe tPe tPe tPe -aSB -mLS -vFP -qcT -qcT -shi +rFg +vxS +eKA +ciT +ciT +gmD iUX kDx -cAc -uxI -jkz -spb +xsS +xsS +xsS +xsS sus sus sus @@ -196377,82 +200301,82 @@ sus gzm sus rcl -wKb -sZh -dlk -dlk -iYM -dlk -dlk -wKb -wYw -heC -hRj +ksJ +oBl +oyp +oyp +iNn +oyp +oyp +ksJ +lDH +jUW hRj hRj hRj hRj -hRj -uKP +cjh wwE -utG +csK cjh -utG +kLe kPd -uKP +cjh +hRj hRj hRj hRj hRj hRj -rKA -szn -nhY -iMf -rKL -rKL -rKL -rKL -rTa -rKA -kiA -rKA -rKA -gtd -fhA -gtd -gtd -gtd -wcV -rKL -rKL -gtd -gtd -gtd -fhA -pIV -pIV -pIV -pIV -pIV -pIV -pIV -lXC -lrT -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -gKk -xUW -oQk +hRj +wrT +jNg +raU +tDJ +lwA +lwA +lwA +lwA +edR +wrT +cZn +wrT +wrT +hXV +oIB +hXV +hXV +rYh +sfc +lwA +lwA +rYh +rYh +rYh +gpD +avI +avI +avI +avI +avI +avI +avI +dJp +fXr +blF +blF +blF +blF +blF +blF +blF +blF +blF +blF +blF +pux +vSA +fsX hRj hRj hRj @@ -196573,9 +200497,9 @@ nlm nlm nlm nlm -dcE +nlm slL -dcE +nlm nlm ydS mBr @@ -196591,68 +200515,70 @@ yhO hvS saS hvS -liY -pRW -ijs -pID -ijs -ijs -cpN -rqo -gjb -gjb -gjb -gjb -ngH -xoH -qcT -dOl -mLS -aSB +jLE +qWr +gfi +sru +iUz +gfi +cRZ +shQ +shQ +shQ +shQ +gmD +gmD +iKF +ciT +mCa +vxS +rFg tPe tPe tPe tPe tPe -aSB -mLS -vFP -qcT -qcT +rFg +vxS +eKA +ciT +ciT +gmD +xRp xsS -ifs xsS -tse -iXH -vfb -spb -sus +pji +dTQ +xsS +wNJ sus fmO fmO tdF tTg sus -sus -wKb -dlk -dlk -dlk -sZh -dlk -dlk -wKb -dxh -heC -hRj +tPY +ksJ +oyp +oyp +oyp +oBl +oyp +oyp +ksJ +mwK +jUW hRj hRj hRj hRj -hBz -hRj -hRj +uKP +hML +wap +lnv emj +lZV +uKP hRj hRj hRj @@ -196660,56 +200586,54 @@ hRj hRj hRj hRj -hRj -sWg -rKA -rJB -oOm -xEo -rKL -rKL -rKL -rKL -rTa -rKA -lgN -emS -rKA -lgN -rKA -gRT -gtd -iVp -rKL -rKL -wcV -gtd -gtd -vSU -rKA -pIV -rKL -rKL -rKL -rKL -rKL -pIV -rKA -lrT -rKA -wyF -ffI -tJt -ffI -tJt -ffI -tJt -ffI -wyF -rKA -pMH -hIn -oQk +wrT +qxL +oKe +efQ +lwA +lwA +lwA +lwA +edR +wrT +ggD +tbU +wrT +ggD +wrT +cOJ +gIR +mSe +lwA +lwA +sfc +rYh +rYh +hGh +wrT +avI +lwA +lwA +lwA +lwA +lwA +avI +blF +fXr +blF +cPB +rue +sAI +rue +sAI +rue +sAI +rue +cPB +blF +asV +eVY +fsX hRj hRj hRj @@ -196830,9 +200754,9 @@ nlm nlm nlm nlm -dcE +nlm slL -dcE +nlm nlm bxd mZK @@ -196842,131 +200766,131 @@ cMY ewI gct jSO -bNX +kVm hJS oSq vbf +pfQ vbf -ePX -eWq -pRW -ijs -ijs -ckn -iyW -ijs -efZ -mUS -jvb -hyv -ydi -vti -qcT -qcT -dOl -mLS -aSB -aSB -aSB -aSB -aSB -aSB -aSB -mLS -tDB -nog -wCn -xsS +mKQ +iro +iro +iro +qrq +qCr +ttk +shQ +cXk +nWu +bWe +gmD +kWs +ciT +ciT +mCa +vxS +rFg +rFg +rFg +rul +rFg +rFg +rFg +vxS +nev +hJp +tBE +gmD apX -eMo +lIP +bPO +bqU +rpz xsS -oqW -jkz -spb sus gzm sus fmO -cEn +fmO sus sus fsj -wKb -sZh -dlk -dlk -sZh -dlk -dlk -wKb -wYw -heC -hRj -hRj -hRj -hRj -hRj -hRj -hRj -hRj -hRj -hRj +ksJ +oBl +oyp +oyp +oBl +oyp +oyp +ksJ +lDH +jUW hRj hRj hRj hRj +uKP +wwE +utG +cjh +utG +kPd +uKP +tIm hRj +wUk hRj +tIm hRj hRj -oQk -nBr -oOm -ddW -rKL -rKL -rKL -rKL -rTa -rKA -oSX -lgN -qHN -gtd -rKA -rKA -rKA -rKA -gtd -gtd -gtd -rKA -daz -rKA -rKA -rKL -rKL -rKL -rKL -rKL -rKL -rKL -rKA -lrT -rKA -tJt -lMU -lMU -lMU -lMU -lMU -lMU -lMU -tJt -rKA -gCv -tpA -oQk +mJP +rVo +oKe +ilO +lwA +lwA +lwA +lwA +edR +wrT +tio +ggD +oID +rYh +wrT +wrT +wrT +wrT +rYh +rYh +rYh +wrT +qyT +wrT +wrT +lwA +lwA +lwA +lwA +lwA +lwA +lwA +blF +fXr +blF +sAI +nUi +nUi +nUi +nUi +nUi +nUi +nUi +sAI +blF +pul +vSA +fsX hRj hRj hRj @@ -197087,9 +201011,9 @@ nlm nlm nlm nlm -dcE +nlm slL -dcE +nlm nlm ydS yhY @@ -197103,43 +201027,43 @@ bNX fmV bra eOY -prv -byA -gMP -eTt -gkP -ijs -ijs -xIS -alG -efZ -akK -onh -tCd -lan -htc -qcT -qcT -dOl -mLS -mLS -mLS -mLS -mLS -mLS -mLS -mLS -mLS -wre -xVF -mYh -xsS -qpD -nRS +nYA +eOY +wVP +hPR +sUY +peL +jkM +kHF +aJs +cQi +wgZ +lHz +hqj +iRW +tla +ciT +ciT +mCa +vxS +vxS +vxS +vxS +vxS +vxS +vxS +vxS +vxS +qdP +mKH +cWr +gmD +sKn +dKH +dKH +dKH +oYm xsS -shi -shi -shi sus sus sus @@ -197148,82 +201072,82 @@ sus rcl fmO xRg -wKb -sZh -dlk -dlk -sZh -dlk -dlk -wKb -wYw -wKb -hRj -hRj -hRj -hRj +ksJ +oBl +oyp +oyp +oBl +oyp +oyp +ksJ +lDH +ksJ hRj hRj hRj +hBz hRj hRj +cGp hRj +pKC hRj hRj hRj hRj hRj hRj +sWg hRj hRj -oQk -asA -oOm -ePM -rKL -rKL -rKL -rKL -rTa -rKA -bUp -rKA -rKA -rKA -rKA -rMj -dTi -rKA -xIJ -gtd -vet -rKA -rMj -rMj -rKL -rKL -rKL -rKL -rKL -rKL -rKL -rKL -rKA -lrT -rKA -tMj -lMU -rKL -rKL -rKL -rKL -rKL -lMU -tMj -rKA -rKA -pgu -rKA +mJP +mvd +oKe +nEn +lwA +lwA +lwA +lwA +edR +wrT +eyQ +wrT +wrT +wrT +wrT +bJo +djX +wrT +rpq +rYh +tKH +wrT +bJo +bJo +lwA +lwA +lwA +lwA +lwA +lwA +lwA +lwA +blF +fXr +blF +gIz +nUi +uMt +uMt +uMt +uMt +uMt +nUi +gIz +blF +blF +vRy +blF xwn hRj hRj @@ -197344,9 +201268,9 @@ nlm nlm nlm nlm -dcE +nlm slL -dcE +nlm nlm ydS riV @@ -197359,64 +201283,65 @@ tVS bNX syi bxd -vGE +eTi bxd -vGE -rqo -nhU -fKm -ijs -ijs -ijs -joP -hYu -sMa -uOF -uuF -gjb -eSO -qcT -qcT -kSS -foZ -mLS -mLS -mLS -mLS -mLS -mLS -mLS -seW -jAd -qcT -qyu -twY -ulh -sNW -hnh +eTi +unl +fGn +suV +vEp +jkM +kRv +bFW +jVN +oyA +boY +jLD +gmD +tGP +ciT +ciT +wit +stC +vxS +vxS +vxS +vxS +vxS +vxS +vxS +jNG +ivP +ciT +ojV +mvU +ePz +tCl +hhG +xsS leN -fbk -shi -sus +xsS sus +fmO lIA sus sus sus fmO bEp -wKb -sZh -dlk -dlk -sZh -dlk -dlk -wKb -wYw -wKb +ksJ +oBl +oyp +oyp +oBl +oyp +oyp +mDE +lDH +ksJ dyE hRj +tIm hRj hRj hRj @@ -197432,55 +201357,54 @@ hRj hRj hRj hRj -hRj -oQk -cAv -oOm -ePM -rKL -rKL -rKL -rKL -rTa -rKA -kkn -rKA -dTi -rMj -rMj -rMj -rMj -rKA -mMX -gtd -gtd -uKm -rMj -rMj -rKL -rKL -rKL -rKL -rKL -rKL -rKL -rKL -rKA -gtd -rKA -dNL -lMU -rKL -uhJ -rKL -rKL -rKL -lMU -tJt -rKA -rKA -fnp -rKA +mJP +ijv +oKe +nEn +lwA +lwA +lwA +lwA +edR +wrT +fef +wrT +djX +bJo +bJo +bJo +bJo +wrT +qNo +rYh +rYh +eIN +bJo +bJo +lwA +lwA +lwA +lwA +lwA +lwA +lwA +lwA +blF +mOk +blF +btU +nUi +uMt +aJn +uMt +uMt +uMt +nUi +sAI +blF +blF +bLp +blF hRj hRj hRj @@ -197601,9 +201525,9 @@ nlm nlm nlm nlm -dcE +nlm slL -dcE +nlm nlm ydS kWe @@ -197619,59 +201543,59 @@ bxd mDG mDG mDG -efZ -vji -ijs -ijs -ijs -ijs -joP -efZ -mVw -vIX -ggX -ydi -xAI -qcT -qcT -qcT -kSS -nUj -nUj -nUj -nUj -nUj -nUj -nUj -jAd -qcT -qcT -jfp -xsS -jRB -eUl -kyZ -xsS +kbu +gfi +gfi +gfi +klh +vcp +awR +cQi +iuQ +gnm +kAn +dwQ +eyC +ciT +ciT +ciT +wit +bEi +bEi +bEi +bEi +bEi +bEi +bEi +ivP +ciT +ciT +hPQ +gmD +pOP +uEU +cny +hSJ fbk -shi -sus +xsS sus sus sus +fmO gzm sus lIA nTg -wKb -sZh -sZh -sZh -sZh -sZh -sZh -ljW -dtP -ljW +ksJ +oBl +oBl +oBl +oBl +oBl +oBl +bci +lDH +bci eYm hRj hRj @@ -197690,55 +201614,55 @@ hRj hRj hRj hRj -rKA -asA -hMU -ePM -rKL -rKL -rKL -rKL -rTa -rKA -gtd -rKA -rMj -rMj -rMj -rMj -rMj -rKA -rKA -daz -rKA -rKA -rMj -rMj -rKL -rKL -rKL -rKL -rKL -rKL -rKL -rKL -rKA -gtd -rKA -tMj -lMU -rKL -rKL -rKL -rKL -rKL -lMU -tMj -rKA -rKA -tpA -rKA -rKA +wrT +mvd +doM +nEn +lwA +lwA +lwA +lwA +edR +wrT +rYh +wrT +bJo +bJo +bJo +bJo +bJo +wrT +wrT +qyT +wrT +wrT +bJo +bJo +lwA +lwA +lwA +lwA +lwA +lwA +lwA +lwA +blF +mOk +blF +gIz +nUi +uMt +uMt +uMt +uMt +uMt +nUi +gIz +blF +blF +vSA +blF +blF hRj hRj hRj @@ -197858,16 +201782,16 @@ nlm nlm nlm nlm -dcE +nlm slL -dcE +nlm nlm bxd dzH bNX bNX bNX -wJU +lGE bNX lmH lmH @@ -197876,59 +201800,59 @@ bxd mDG mDG mDG -efZ -sRP -ijs -ijs -ijs -ijs -sRP -rqo -gjb -gjb -gjb -gjb -vBg -qcT -qcT -qcT -eGq -roB -qcT -qcT -qcT -qcT -qcT -qcT -eGq -oEN -boh -ngH -xsS +kbu +gfi +gfi +lrZ +iUz +ucy +hSg +shQ +aIY +tfo +iyS +gmD +aWU +ciT +ciT +ciT +vJf +lYY +ciT +ciT +ciT +ciT +ciT +ciT +vJf +tAv +pbe +gmD +gmD iLL cYB cYB +hSJ +knW xsS -leN -shi gzm sus sus sus -shi -shi +jzz +jzz ekY jzz -wKb -sZh -dlk -dlk -dlk -dlk -dlk -wKb -kQD -wKb +ksJ +oBl +oyp +oyp +oyp +oyp +oyp +ksJ +cSs +ksJ wLU hRj hRj @@ -197947,55 +201871,55 @@ hRj hRj hRj hRj -rKA -pFb -qHN -ePM -rKL -rKL -rKL -rKL -rTa -uKm -lgN -rKA -rMj -rMj -rMj -rMj -rMj -rMj -rMj -rMj -rMj -rKA -rWf -rKA -wcV -rKL -rKL -rKL -rKL -rKL -rKL -wcV -rKA -lUp -rKA -wyF -lMU -lMU -lMU -lMU -lMU -lMU -lMU -tJt -hPH -gtd -tpA -gtd -pey +wrT +dHD +oID +nEn +lwA +lwA +lwA +lwA +edR +eIN +ggD +wrT +bJo +bJo +bJo +bJo +bJo +bJo +bJo +bJo +bJo +wrT +cXf +wrT +sfc +lwA +lwA +lwA +lwA +lwA +lwA +sfc +blF +rUR +blF +cPB +nUi +nUi +nUi +nUi +nUi +nUi +nUi +sAI +usZ +mOk +vSA +mOk +lva hRj hRj hRj @@ -198115,10 +202039,10 @@ nlm nlm nlm nlm -dcE -slL -heR dDL +iWu +dDL +hMq bxd bxd ydS @@ -198131,61 +202055,61 @@ ydS bxd bxd mDG +udN mDG -rYB -rqo -pkl -iZs -ijs -ijs -ijs -sRP -rqo -mDG -rYB -rYB -ngH -ngH -gBV -krk -ubv -ngH -ngH -gQW -hCg -hCg -hCg -pvQ -ngH -ngH -ngH -ngH -ngH -dDL +unl +sqy +gfi +gfi +iUz +ucy +xcZ +shQ +shQ +cQi +shQ +gmD +gmD +mXq +jPV +aDb +gmD +gmD +rmN +lVG +lVG +lVG +tJn +gmD +gmD +gmD +gmD +gmD +xrx lAS -dDL -dDL xrx xrx +xsS +leN +xsS shi +slo +slo shi -shi -shi -shi -shi +jzz iVc sus eqm -wKb -iYM -dlk -dlk -dlk -dlk -dlk -wKb -vmd -wKb +ksJ +iNn +oyp +oyp +oyp +oyp +oyp +ksJ +jug +ksJ hRj hRj hRj @@ -198204,55 +202128,55 @@ hRj hRj hRj hRj -oQk -cFc -oOm -oOm -rKL -rKL -rKL -rKL -uPy -rKA -qHN -rKA -wcV -wcV -rKL -rKL -rKL -rKL -rKL -rKL -rKL -wcV -pIV -rKA -wcV -wcV -rKL -rKL -rKL -rKL -wcV -wcV -rKA -mNj -rKA -wyF -jpj -tJt -jpj -tJt -jpj -tJt -jpj -lMU -rKA -pPG -vNM -rKA -rKA +mJP +nXR +oKe +oKe +lwA +lwA +lwA +lwA +hxM +wrT +oID +wrT +sfc +sfc +lwA +lwA +lwA +lwA +lwA +lwA +lwA +sfc +avI +wrT +sfc +sfc +lwA +lwA +lwA +lwA +sfc +sfc +blF +uPQ +blF +cPB +nOT +sAI +nOT +sAI +nOT +sAI +nOT +nUi +blF +isY +tEN +blF +blF hRj hRj hRj @@ -198315,40 +202239,24 @@ nlm nlm nlm nlm -"} -(183,1,2) = {" -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm +"} +(183,1,2) = {" +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm nlm nlm nlm @@ -198372,83 +202280,98 @@ nlm nlm nlm nlm -dcE -slL -dcE nlm -dDL nlm nlm nlm nlm -dDL nlm nlm -gaf -mDG -mDG -mDG -xmq -dDL -efZ -sRP -kEF -ijs -ijs -ijs -vji -efZ -xmq nlm nlm -qCR -hYV -aBv -nzG -kPL -ngH -ngH -ngH -jpw -jpw -jpw -ngH -ngH -heR -hRj -hRj -hRj nlm -lAS +nlm +nlm +nlm +nlm +nlm +nlm +nlm +slL +nlm nlm dDL nlm nlm nlm nlm +dDL nlm nlm +qms +mDG +nKW +mDG +mDG +mDG +unl +lyO +jrY +jFr +jkM +dsZ +wXQ +kbu +pqc +gtC +gtC +gtC +dwQ +pNj +qcc +xsF +gmD +gmD +gmD +tHv +tHv +tHv +gmD +gmD +gtC +gtC +gtC +hwu +xrx +lAS +xrx +xrx +xrx +xrx +xrx +dDL +dDL +dDL dDL jzz jzz qXI jzz -wKb -wKb -heC -heC -heC -heC -wKb -wKb -wKb -wKb +ksJ +ksJ +jUW +jUW +jUW +jUW +ksJ +ksJ +ksJ +ksJ hRj hRj hRj hRj hRj -vot hRj hRj hRj @@ -198460,55 +202383,56 @@ hRj hRj hRj hRj -uHD -oQk -aXn -iMV -ePM -rKL -rKL -rKL -rKL -rKL -rKA -gtd -uKm -rMj -rMj -rMj -rMj -rMj -rMj -rMj -rMj -rMj -rMj -rMj -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -uYL -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -vAa -rKA +hRj +hRj +mJP +aNE +rxS +nEn +lwA +lwA +lwA +lwA +lwA +wrT +rYh +eIN +bJo +bJo +bJo +bJo +bJo +bJo +bJo +bJo +bJo +bJo +bJo +wrT +wrT +wrT +wrT +wrT +wrT +wrT +wrT +wrT +blF +tip +blF +blF +blF +blF +blF +blF +blF +blF +blF +blF +blF +blF +qCc +blF hRj hRj hRj @@ -198629,57 +202553,57 @@ nlm nlm nlm nlm -dcE +nlm slL -dcE +nlm nlm dDL nlm nlm -dcE -dcE -heR -dcE -dcE -gaf +nlm +nlm +dDL +nlm +nlm +qms mDG +nKW mDG mDG -xmq +mDG +kbu +gfi +gfi +gfi +iUz +ucy +hSg +kbu +rqs +nlm +nlm +nlm +dwQ +khk +qcc +llO +gmD +gmD +ohd +ohd +bdq +rOy +jmK +gmD dDL -efZ -sRP -ijs -ijs -ijs -ijs -sRP -efZ -xmq -nlm -nlm -qCR -hYV -aBv -nzG -mVE -ngH -ngH -fhd -fhd -hCg -hCg -joI -ngH -heR -nlm nlm +dDL nlm nlm lAS nlm -dDL nlm +dDL nlm nlm nlm @@ -198690,18 +202614,19 @@ xrx xrx xrx oOw -nlm -nlm -nlm -nlm -nlm -nlm +xrx +xrx +xrx +dDL +dDL +xrx oOw cTR hRj hRj hRj hRj +tIm hRj hRj hRj @@ -198716,32 +202641,31 @@ hRj hRj hRj hRj -xky -psi -oQk -iBj -oOm -tkz -rKL -rKL -rKL -rKL -rKL -rKA -lUp -rKA -pIV -rKL -rMj -wcV -wcV -rMj -rKL -wcV -rMj -rKL -wcV -rKA +hRj +mJP +saX +oKe +xXR +lwA +lwA +lwA +lwA +lwA +wrT +jPz +wrT +avI +lwA +bJo +sfc +sfc +bJo +lwA +sfc +bJo +lwA +sfc +wrT nlm dDL dDL @@ -198886,57 +202810,57 @@ nlm nlm nlm nlm -dcE -mXN -mXN -mXN -mXN -mXN -mXN -mXN -mXN -mXN -kOx -kOx -gaf -mDG -mDG -mDG -xmq -heR -rqo -mHu -ijs -ijs -ckn -wSE -sRP -rqo -xmq -nlm +hMq +iWu slL slL -ngH -ngH -ngH -ngH -ngH -ngH -xoh -fhd -hCg -hCg -kKQ -ngH -heR -nlm +iWu +slL +slL +slL +slL +iWu +dDL +dDL +pGP +pGP +pGP +pGP +gjd +fPv +mnf +fHb +wIi +wkX +lWD +ucy +gji +unl +rqs +dDL +dDL +dDL +gmD +gmD +gmD +gmD +gmD +gmD +wkh +ohd +bdq +rOy +bMR +gmD +dDL nlm +dDL nlm nlm lAS nlm -dDL nlm +dDL nlm nlm nlm @@ -198947,7 +202871,7 @@ dDL xrx xrx xrx -nlm +dDL nlm nlm nlm @@ -198960,6 +202884,7 @@ hRj hRj hRj hRj +vot hRj hRj hRj @@ -198968,37 +202893,36 @@ hRj hRj hRj hRj -wUk hRj hRj hRj +hxW hRj hRj -tzv -rKA -hnU -bLG -qHN -rKL -rKL -rKL -rKL -rKL -rKA -mNj -rKA -vAl -wcV -rMj -wcV -rKL -rMj -rKL -wcV -dTi -wcV -wcV -rKA +wrT +gyr +oZK +oID +lwA +lwA +lwA +lwA +lwA +wrT +hUP +wrT +eHF +sfc +bJo +sfc +lwA +bJo +lwA +sfc +djX +sfc +sfc +wrT nlm nlm dDL @@ -199143,67 +203067,67 @@ nlm nlm nlm nlm -dcE -dcE -dcE -dcE -dcE -dcE -nlm nlm +dDL nlm nlm +dDL nlm nlm -gaf -mDG -mDG -mDG -xmq -dDL -efZ -sRP -hNV -ijs -ijs -hsY -sRP -efZ -xmq nlm nlm -slL -slL xIe nlm -dcE -heR -ngH -iQe -iQe -tWd -hCg -joI -ngH -heR nlm +pGP +xst +iqF +lhP +swS +kbu +ugA +voO +gfi +gfi +klh +yfx +hSg +kbu +rqs +nlm +dDL nlm +qfF +dDL nlm nlm -lAS +dDL +gmD +kCa +cyO +aNI +rOy +fCx +gmD +dDL nlm dDL nlm nlm +lAS +nlm +nlm +dDL +nlm nlm nlm nlm vof nlm -dDL +nlm nlm dDL -xrx +xIe dDL dDL dDL @@ -199223,39 +203147,39 @@ oCT sON sON sON -sON +tzv sON sON sON oCT sON sON -sON +tzv gSK -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -uYL -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA -rKA +wrT +wrT +wrT +wrT +wrT +wrT +wrT +wrT +wrT +wrT +bfH +wrT +wrT +wrT +wrT +wrT +wrT +wrT +wrT +wrT +wrT +wrT +wrT +wrT nlm nlm dDL @@ -199409,55 +203333,54 @@ nlm nlm nlm nlm +dDL nlm nlm -nlm -gaf -mDG -mDG +pGP +asM +tBB +kCh mDG -xmq -dDL -efZ -sRP -bJA -ijs -ijs -ijs -sRP -efZ -xmq -nlm +kbu +mht +gfi +llG +xsK +lWD +gfi +kHD +kbu +rqs nlm +dDL nlm nlm -xIe +dDL nlm -dcE -heR -ngH -iQe -iQe -hCg -hCg -joI -ngH -heR nlm +dDL +gmD +cyO +cyO +bdq +rOy +jmK +gmD +dDL nlm +dDL nlm nlm lAS nlm -dDL nlm +dDL nlm nlm nlm nlm nlm nlm -qCR nlm xIe xIe @@ -199497,6 +203420,7 @@ nlm nlm nlm nlm +nlm dDL dDL vwe @@ -199600,42 +203524,35 @@ nlm nlm nlm nlm -"} -(188,1,2) = {" -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm +"} +(188,1,2) = {" +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm +nlm nlm nlm nlm @@ -199669,54 +203586,61 @@ nlm nlm nlm nlm -gaf -mDG -mDG -mDG -xmq -dDL -rqo -sRP -ijs -ijs -ijs -oil -sRP -rqo -xmq nlm nlm nlm nlm xIe nlm -dcE -heR -ngH -vwQ -hCg -ugo -qlx -gRx -ngH -heR nlm +pGP +xst +liE +lhP +qSj +kbu +qHW +kbH +gfi +gfi +iUz +gfi +vPF +unl +rqs nlm +dDL nlm nlm -lAS +dDL +nlm nlm dDL +gmD +tUE +xVP +bdq +fGI +jbZ +gmD +dDL nlm +dDL nlm nlm +lAS nlm nlm +dDL nlm nlm nlm -xIe -xIe +nlm +nlm +nlm +dDL +dDL +nlm nlm nlm nlm @@ -199923,56 +203847,56 @@ nlm nlm nlm nlm -nlm -nlm -nlm -gaf -mDG -mDG -mDG -xmq +xIe dDL -efZ -sRP -ijs -jQQ -vbB -ijs -sRP -efZ -xmq -nlm +dDL +pGP +pGP +pGP +pGP +xKo +mnf +mnf +tbE +wIi +rcA +xGS +gfi +gfi +kbu +rqs nlm +dDL nlm nlm -xIe +dDL nlm -dcE -heR -ngH -btb -pTS -uXR -geE -gRx -ngH -heR nlm +dDL +gmD +lEm +cBv +aFn +ycy +jbZ +gmD +dDL nlm +dDL nlm nlm lAS nlm -dDL -nlm nlm +dDL nlm nlm nlm nlm nlm -qCR dDL +dDL +nlm nlm nlm nlm @@ -200180,55 +204104,55 @@ nlm nlm nlm nlm -nlm -nlm -nlm -rYB -rYB -rYB -rYB -rYB dDL -efZ -sRP -sRP -wDh -fvg -sRP -sRP -efZ -xmq -nlm nlm nlm +msd +gtC +gtC +gtC +gtC +fHO +kbu +bYd +bYd +eaU +oTi +owk +owk +kbu +rqs nlm -xIe -nlm -dcE -heR -ngH -ngH -ngH -ngH -ngH -ngH -ngH -heR +dDL +dDL +dDL +dDL +dDL +dDL +dDL +gmD +gmD +gmD +gmD +gmD +gmD +gmD dDL dDL eRz dDL -lAS dDL +lAS dDL dDL dDL -iWu nlm nlm nlm -qCR -qCR +nlm +dDL +dDL +nlm nlm nlm nlm @@ -200437,54 +204361,54 @@ nlm nlm nlm nlm +xIe nlm nlm nlm -nlm -nlm -nlm -nlm +dDL nlm dDL -rqo -efZ -efZ -rqo -rqo -efZ -efZ -rqo -xmq nlm +msd +unl +kbu +kbu +unl +unl +kbu +kbu +unl +roM nlm +dDL nlm nlm -xIe +dDL nlm -dcE -heR -heR -heR -heR -heR -heR -heR -heR -heR nlm +dDL +agX +dDL +dDL +dDL +dDL +dDL +agX +dDL nlm eRz nlm +nlm lAS nlm -dDL nlm +dDL nlm nlm nlm +xIe +dDL nlm -qCR -qCR nlm nlm nlm @@ -200693,30 +204617,30 @@ nlm nlm nlm nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm +hMq +iWu +xIe +xIe +xIe +xIe +dDL +ldr +lgA dDL +agX dDL dDL dDL dDL dDL dDL +agX dDL dDL dDL nlm nlm -nlm -nlm -xIe +dDL nlm nlm dDL @@ -200729,18 +204653,18 @@ nlm nlm nlm nlm -nlm eRz nlm -lAS nlm -dDL +lAS nlm nlm +dDL nlm nlm xIe -dDL +xIe +nlm nlm nlm nlm @@ -200951,50 +204875,49 @@ nlm nlm nlm nlm +dDL nlm nlm nlm nlm nlm nlm +xIe nlm +dDL nlm nlm nlm -nlm -nlm -nlm -nlm +dDL nlm nlm nlm nlm vof -nlm -nlm -nlm xIe xIe xIe xIe xIe xIe +iWu xIe xIe -nlm -nlm -nlm -nlm -nlm -nlm +xIe +xIe +xIe +xIe +xIe +xIe +iWu dDL nlm -lAS -nlm -dDL nlm +lAS nlm nlm +dDL +iWu xIe xIe nlm @@ -201039,6 +204962,7 @@ nlm nlm nlm nlm +nlm coh dDL vwe @@ -201215,6 +205139,19 @@ nlm nlm nlm nlm +dDL +dDL +xIe +xIe +xIe +dDL +dDL +dDL +xIe +xIe +xIe +dDL +dDL nlm nlm nlm @@ -201230,19 +205167,6 @@ nlm nlm nlm nlm -nlm -nlm -nlm -nlm -nlm -nlm -nlm -xIe -xIe -xIe -xIe -xIe -iWu dDL dDL dDL @@ -201250,9 +205174,9 @@ lAS dDL dDL dDL -iWu -xIe -xIe +nlm +nlm +nlm nlm nlm nlm @@ -201476,11 +205400,11 @@ nlm nlm nlm nlm +dDL nlm nlm nlm -nlm -nlm +dDL nlm nlm nlm @@ -201733,11 +205657,11 @@ nlm nlm nlm nlm -nlm -nlm -nlm -nlm -nlm +dDL +xIe +xIe +xIe +dDL nlm nlm nlm @@ -202273,9 +206197,9 @@ nlm nlm eRz dDL -dDL +upI tid -dDL +upI dDL eRz nlm diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm index 9cd4eeb96ac2d8..7faa02b18445b0 100644 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2.dmm @@ -24,14 +24,14 @@ /obj/item/kirbyplants/random, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "aaQ" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/window/reinforced/spawner/directional/east, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "aaR" = ( /obj/machinery/computer/security/telescreen/entertainment/directional/north, /obj/item/kirbyplants/random, @@ -64,13 +64,11 @@ /area/station/service/abandoned_gambling_den) "aaY" = ( /obj/effect/landmark/start/hangover, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/machinery/status_display/evac/directional/west, /obj/structure/closet/emcloset, /obj/effect/turf_decal/delivery, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark, /area/station/hallway/secondary/entry) "abi" = ( @@ -106,7 +104,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "aby" = ( /turf/open/floor/wood, /area/station/command/heads_quarters/captain) @@ -124,7 +122,7 @@ /area/station/medical/medbay) "abJ" = ( /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "abL" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -820,11 +818,9 @@ "akg" = ( /obj/machinery/disposal/bin, /obj/effect/turf_decal/bot, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/structure/disposalpipe/trunk, /obj/effect/turf_decal/tile/neutral/anticorner/contrasted, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/station/command/heads_quarters/cmo) "ako" = ( @@ -849,10 +845,6 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron, /area/station/maintenance/department/eva/abandoned) -"akM" = ( -/obj/structure/sign/warning/radiation, -/turf/closed/wall/r_wall, -/area/station/maintenance/department/science/xenobiology) "akS" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -880,7 +872,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/spawner/random/armory/dragnet, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "alG" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -904,7 +896,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/floor, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "alM" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -1087,10 +1079,6 @@ /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/wood, /area/station/service/library/abandoned) -"anB" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, -/area/station/engineering/supermatter/room) "anC" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/hatch{ @@ -1113,7 +1101,7 @@ /obj/structure/cable/layer3, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "anF" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -1165,10 +1153,8 @@ /turf/open/floor/iron/white, /area/station/medical/medbay) "anZ" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/structure/lattice, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/space/basic, /area/space/nearstation) "aoc" = ( @@ -1179,7 +1165,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/structure/disposalpipe/segment, @@ -1325,7 +1311,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "apV" = ( /obj/structure/cable, /obj/effect/turf_decal/trimline/blue/filled/line{ @@ -1454,7 +1440,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "arc" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -1592,7 +1578,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "asc" = ( /obj/effect/landmark/start/hangover, /obj/structure/chair{ @@ -1648,11 +1634,9 @@ /area/station/medical/surgery/theatre) "asO" = ( /obj/machinery/porta_turret/ai, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "asS" = ( /obj/structure/table/wood, /obj/item/flashlight/lamp, @@ -1866,7 +1850,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/spawner/random/armory/e_gun, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "auZ" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -1910,7 +1894,7 @@ name = "Maintenance Hatch" }, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/abandoned, @@ -2133,6 +2117,7 @@ dir = 8 }, /obj/machinery/light/directional/west, +/obj/structure/sign/warning/secure_area/directional/west, /turf/open/floor/iron, /area/station/engineering/main) "azm" = ( @@ -2156,7 +2141,7 @@ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/iron, @@ -2223,7 +2208,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/meter/layer4, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "aAj" = ( /turf/closed/wall, /area/station/science/breakroom) @@ -2337,7 +2322,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "aBV" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, @@ -2469,7 +2454,7 @@ }, /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "aEz" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -2558,10 +2543,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark/telecomms, /area/station/tcommsat/server) -"aFE" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/station/command/teleporter) "aGm" = ( /obj/machinery/door/firedoor, /obj/effect/turf_decal/stripes/line, @@ -2710,7 +2691,7 @@ /obj/machinery/airalarm/directional/south, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "aHv" = ( /obj/structure/rack, /obj/item/holosign_creator/robot_seat/restaurant{ @@ -2734,7 +2715,7 @@ "aHG" = ( /obj/structure/table, /obj/item/folder, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/item/stamp/denied{ pixel_x = 3; pixel_y = 3 @@ -2771,10 +2752,6 @@ }, /obj/effect/turf_decal/bot, /obj/machinery/disposal/bin, -/obj/structure/sign/directions/arrival{ - dir = 1; - pixel_y = -22 - }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/station/hallway/primary/central/fore) @@ -3045,7 +3022,7 @@ /obj/item/flashlight/lamp, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "aMc" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -3197,7 +3174,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aNM" = ( /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -3223,7 +3200,7 @@ /obj/effect/turf_decal/bot, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "aNP" = ( /obj/structure/sign/warning/hot_temp/directional/west, /turf/open/floor/plating, @@ -3476,11 +3453,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/item/kirbyplants/random, /obj/machinery/light/directional/east, +/obj/structure/sign/warning/radiation/directional/east, /turf/open/floor/iron, /area/station/engineering/supermatter/room) "aRr" = ( /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aRz" = ( /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -3540,7 +3518,7 @@ /obj/machinery/ore_silo, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "aSt" = ( /obj/effect/turf_decal/siding/thinplating/dark, /obj/effect/turf_decal/trimline/dark_blue/filled/line, @@ -3560,12 +3538,10 @@ }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/effect/turf_decal/tile/neutral{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/station/hallway/secondary/command) "aSJ" = ( @@ -3600,7 +3576,8 @@ id = "Cell 3"; name = "Prisoner Flash"; pixel_x = 25; - pixel_y = 7 + pixel_y = 7; + dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -4309,12 +4286,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron, /area/station/science/research) -"bbP" = ( -/obj/structure/plaque/static_plaque/golden/commission/delta, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden, -/turf/open/floor/iron, -/area/station/hallway/secondary/entry) "bbQ" = ( /obj/machinery/vending/wardrobe/hydro_wardrobe, /obj/effect/turf_decal/bot, @@ -4742,7 +4713,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bhw" = ( /turf/closed/wall, /area/station/maintenance/department/medical/morgue) @@ -4858,7 +4829,7 @@ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/turf_decal/stripes/line{ @@ -5099,7 +5070,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/command/maintenance, /turf/open/floor/iron, /area/station/maintenance/department/eva/abandoned) @@ -5133,7 +5104,7 @@ /obj/machinery/status_display/ai/directional/north, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "bmq" = ( /obj/structure/filingcabinet/chestdrawer, /obj/effect/turf_decal/tile/neutral/half/contrasted, @@ -5365,7 +5336,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "bpV" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 @@ -5499,14 +5470,12 @@ /turf/open/floor/iron/dark, /area/station/engineering/atmos) "bsd" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/machinery/airalarm/directional/south, /obj/effect/landmark/start/hangover, /obj/effect/spawner/random/structure/closet_private, /obj/item/clothing/suit/jacket/letterman_nanotrasen, /obj/item/clothing/under/pants/track, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/wood, /area/station/commons/dorms) "bsj" = ( @@ -5613,7 +5582,7 @@ /area/station/service/chapel) "btH" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "btT" = ( /obj/structure/cable, /obj/effect/turf_decal/stripes/line{ @@ -5799,7 +5768,7 @@ /obj/structure/cable, /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "bwr" = ( /obj/structure/table/wood, /obj/effect/spawner/random/bureaucracy/paper, @@ -6099,8 +6068,11 @@ pixel_y = 10 }, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/flasher/directional/south{ + id = "AI" + }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "bAM" = ( /obj/structure/rack, /obj/effect/spawner/random/techstorage/rnd_all, @@ -6118,7 +6090,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/landmark/event_spawn, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bAO" = ( /obj/structure/chair/pew/right, /turf/open/floor/iron/chapel{ @@ -6178,10 +6150,6 @@ /area/station/maintenance/starboard/aft) "bBh" = ( /obj/machinery/disposal/bin, -/obj/structure/sign/nanotrasen{ - pixel_x = 32; - pixel_y = -32 - }, /obj/structure/disposalpipe/trunk{ dir = 1 }, @@ -6249,23 +6217,24 @@ /obj/item/bedsheet/medical{ dir = 4 }, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/effect/turf_decal/trimline/green/filled/line{ dir = 9 }, /obj/structure/cable, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron/white, /area/station/medical/virology) "bBK" = ( -/obj/machinery/flasher/directional/south{ - id = "brigflashdoor"; - pixel_x = 26 +/obj/structure/sign/directions/dorms{ + dir = 4; + pixel_y = 8 }, -/obj/effect/turf_decal/tile/red, -/turf/open/floor/iron, -/area/station/hallway/primary/starboard) +/obj/structure/sign/directions/medical, +/obj/structure/sign/directions/evac{ + pixel_y = -8 + }, +/turf/closed/wall, +/area/station/commons/vacant_room/commissary) "bCc" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -6305,7 +6274,7 @@ "bCu" = ( /obj/structure/cable, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "bCC" = ( /obj/machinery/door/poddoor{ id = "justiceblast"; @@ -6451,14 +6420,14 @@ name = "Private Channel" }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "bEl" = ( /obj/machinery/ai_slipper{ uses = 10 }, /obj/structure/cable, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "bEm" = ( /obj/effect/landmark/start/ai/secondary, /obj/item/radio/intercom/directional/north{ @@ -6478,7 +6447,7 @@ name = "Private Channel" }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "bEH" = ( /obj/structure/rack, /obj/item/book/manual/wiki/engineering_guide, @@ -6604,7 +6573,6 @@ /turf/open/floor/iron/white, /area/station/medical/treatment_center) "bFT" = ( -/obj/effect/landmark/start/ai, /obj/item/radio/intercom/directional/west{ freerange = 1; listening = 0; @@ -6635,8 +6603,9 @@ pixel_x = 24; req_access = list("ai_upload") }, +/obj/effect/landmark/start/ai, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "bFV" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -6651,7 +6620,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bGa" = ( /obj/structure/table/wood/fancy, /obj/structure/sign/painting/large/library{ @@ -6813,7 +6782,7 @@ dir = 1 }, /obj/effect/turf_decal/stripes/line, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/iron, @@ -6838,7 +6807,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -6911,7 +6880,7 @@ dir = 1 }, /turf/open/floor/iron/large, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "bID" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/bot, @@ -6950,7 +6919,6 @@ /area/station/maintenance/solars/port/aft) "bIW" = ( /obj/machinery/turretid{ - icon_state = "control_stun"; name = "AI Chamber turret control"; pixel_x = 3; pixel_y = -23 @@ -6963,7 +6931,7 @@ /obj/machinery/power/apc/auto_name/directional/north, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "bJf" = ( /obj/structure/chair/sofa/bench/right{ dir = 8 @@ -7176,7 +7144,7 @@ /area/station/medical/medbay/lobby) "bLs" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "bLu" = ( /obj/effect/landmark/event_spawn, /obj/effect/turf_decal/stripes/line{ @@ -7186,7 +7154,7 @@ dir = 4 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "bLx" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/rack, @@ -7325,7 +7293,7 @@ /obj/machinery/airalarm/directional/south, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "bMV" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron, @@ -7417,10 +7385,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/maintenance/port/fore) "bOF" = ( @@ -7461,7 +7429,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "bOU" = ( /obj/effect/landmark/start/hangover, /obj/structure/chair/sofa/bench{ @@ -7494,10 +7462,10 @@ /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "bPC" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bPD" = ( /obj/item/clothing/mask/gas, /obj/item/wrench, @@ -7526,7 +7494,7 @@ "bPH" = ( /obj/structure/sign/plaques/kiddie, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bPI" = ( /obj/machinery/light/small/directional/south, /turf/open/floor/engine, @@ -7619,7 +7587,7 @@ /obj/machinery/atmospherics/components/unary/portables_connector/visible/layer4, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bRz" = ( /obj/machinery/portable_atmospherics/canister/air, /obj/structure/cable, @@ -7629,11 +7597,7 @@ /obj/machinery/atmospherics/components/unary/portables_connector/visible/layer4, /obj/machinery/airalarm/directional/north, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) -"bRD" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bRE" = ( /obj/structure/cable, /obj/machinery/chem_master/condimaster{ @@ -7666,14 +7630,14 @@ }, /obj/machinery/airalarm/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bRM" = ( /obj/machinery/computer/teleporter, /obj/effect/turf_decal/stripes/line{ dir = 6 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bRP" = ( /obj/structure/sign/warning/vacuum, /turf/closed/wall, @@ -7853,7 +7817,7 @@ "bTq" = ( /obj/effect/turf_decal/stripes/line, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bTs" = ( /obj/machinery/camera/directional/east{ c_tag = "AI Satellite - Maintenance"; @@ -7864,11 +7828,11 @@ /obj/effect/turf_decal/stripes/line, /obj/structure/cable/layer3, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bTu" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bTy" = ( /obj/effect/turf_decal/siding/wood, /obj/machinery/vending/clothing, @@ -7877,7 +7841,8 @@ name = "curtain control"; pixel_x = -24; pixel_y = -8; - req_access = list("theatre") + req_access = list("theatre"); + dir = 8 }, /turf/open/floor/iron/dark, /area/station/service/theater) @@ -8069,10 +8034,6 @@ /obj/effect/mapping_helpers/requests_console/announcement, /obj/effect/mapping_helpers/requests_console/information, /obj/effect/mapping_helpers/requests_console/assistance, -/obj/structure/sign/nanotrasen{ - pixel_x = 32; - pixel_y = 32 - }, /obj/effect/turf_decal/bot_white, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, @@ -8222,13 +8183,13 @@ /area/station/medical/paramedic) "bYe" = ( /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bYf" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 }, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bYh" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -8282,7 +8243,7 @@ /obj/item/gps, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "bYK" = ( /obj/machinery/atmospherics/pipe/smart/simple/cyan/hidden{ dir = 5 @@ -8378,7 +8339,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "cac" = ( /obj/machinery/recharge_station, /obj/machinery/status_display/evac/directional/south, @@ -8386,7 +8347,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "cad" = ( /obj/item/storage/toolbox/mechanical{ pixel_x = -3; @@ -8398,12 +8359,8 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "cak" = ( -/obj/machinery/flasher/directional/south{ - id = "AI"; - pixel_x = -26 - }, /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 10 }, @@ -8530,7 +8487,7 @@ dir = 1 }, /obj/effect/turf_decal/stripes/line, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/abandoned, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -8663,10 +8620,10 @@ dir = 1 }, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "cdt" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "cdB" = ( /obj/structure/chair/sofa/bench/right{ dir = 1 @@ -8770,9 +8727,10 @@ /turf/closed/wall, /area/station/science/genetics) "ceV" = ( -/obj/structure/sign/warning/radiation, -/turf/closed/wall, -/area/station/engineering/main) +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/warning/radiation/directional/west, +/turf/open/floor/iron, +/area/station/engineering/supermatter/room) "cfb" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/generic, @@ -8782,7 +8740,7 @@ /area/station/maintenance/department/science/xenobiology) "cfu" = ( /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "cfx" = ( /obj/structure/cable, /obj/machinery/computer/station_alert{ @@ -8901,7 +8859,8 @@ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; name = "WARNING: PRESSURIZED DOORS"; - pixel_x = 32 + pixel_x = 32; + dir = 4 }, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/yellow/opposingcorners, @@ -8920,7 +8879,7 @@ }, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "chn" = ( /obj/machinery/atmospherics/pipe/smart/simple/purple/visible, /obj/effect/decal/cleanable/dirt, @@ -8952,23 +8911,15 @@ /turf/open/floor/iron, /area/station/engineering/gravity_generator) "chF" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/directions/dorms{ - dir = 4; - pixel_x = 32; +/obj/structure/sign/directions/security{ pixel_y = 8 }, -/obj/structure/sign/directions/medical{ - pixel_x = 32 - }, -/obj/structure/sign/directions/evac{ - pixel_x = 32; +/obj/structure/sign/directions/dorms, +/obj/structure/sign/directions/vault{ pixel_y = -8 }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/iron, -/area/station/hallway/primary/central/aft) +/turf/closed/wall, +/area/station/hallway/primary/central/fore) "chT" = ( /obj/machinery/door/firedoor, /obj/effect/turf_decal/stripes/line, @@ -8986,7 +8937,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "chY" = ( /obj/machinery/door/poddoor/shutters/radiation/preopen{ id = "engsm"; @@ -9007,10 +8958,8 @@ /turf/open/floor/iron, /area/station/engineering/atmos/hfr_room) "ciz" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, /obj/effect/turf_decal/tile/neutral, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron, /area/station/hallway/secondary/entry) "ciB" = ( @@ -9331,7 +9280,7 @@ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/security/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/structure/disposalpipe/segment{ @@ -9847,7 +9796,7 @@ /obj/effect/turf_decal/delivery, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "crZ" = ( /obj/machinery/door/airlock/external{ name = "External Docking Port" @@ -9878,7 +9827,7 @@ "csk" = ( /obj/structure/cable, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "csw" = ( /turf/closed/wall, /area/station/service/hydroponics) @@ -9990,7 +9939,7 @@ }, /obj/machinery/status_display/evac/directional/north, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ctU" = ( /obj/structure/chair/office{ dir = 1 @@ -10255,7 +10204,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "cxp" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible, /obj/effect/decal/cleanable/dirt, @@ -10857,7 +10806,7 @@ /obj/machinery/holopad, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "cEK" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -11127,7 +11076,7 @@ dir = 1 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "cHU" = ( /obj/effect/turf_decal/stripes/line{ dir = 9 @@ -11214,7 +11163,7 @@ /obj/machinery/airalarm/directional/south, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "cJw" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -11274,7 +11223,7 @@ /obj/machinery/status_display/evac/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "cKI" = ( /obj/structure/closet/secure_closet/medical3, /obj/effect/turf_decal/bot, @@ -11544,7 +11493,7 @@ }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/service/theater/abandoned) @@ -11576,7 +11525,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "cOR" = ( /obj/effect/spawner/random/maintenance/two, /obj/structure/closet, @@ -11666,7 +11615,7 @@ /obj/machinery/porta_turret/ai, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "cQj" = ( /obj/machinery/light/small/dim/directional/south, /turf/open/floor/plating, @@ -11703,7 +11652,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "cQy" = ( /obj/machinery/camera/directional/south{ c_tag = "Bridge - Command Chair"; @@ -11783,7 +11732,7 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -12089,7 +12038,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "cVy" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment{ @@ -12763,7 +12712,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "deY" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -12991,10 +12940,6 @@ /obj/effect/mapping_helpers/airlock/access/any/engineering/construction, /turf/open/floor/iron, /area/station/engineering/storage_shared) -"djf" = ( -/obj/structure/sign/warning/radiation, -/turf/closed/wall/r_wall, -/area/station/engineering/atmos/project) "djn" = ( /obj/structure/table/wood, /obj/item/toy/talking/codex_gigas, @@ -13491,7 +13436,7 @@ /obj/effect/turf_decal/stripes/line, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "dql" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -13742,6 +13687,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/station/hallway/primary/port) "dsz" = ( @@ -14081,7 +14027,7 @@ /obj/machinery/door/window/right/directional/north, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "dwv" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -14155,7 +14101,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "dwV" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/security{ @@ -14296,9 +14242,6 @@ /turf/open/floor/iron/cafeteria, /area/station/service/kitchen) "dyi" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/effect/turf_decal/tile/neutral{ dir = 1 }, @@ -14343,7 +14286,7 @@ name = "Maintenance Hatch" }, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/machinery/duct, @@ -14452,7 +14395,7 @@ "dBO" = ( /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "dBR" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -14801,7 +14744,6 @@ /obj/machinery/status_display/ai/directional/south, /obj/machinery/camera/directional/south{ c_tag = "Service - Cafeteria Aft"; - dir = 5; name = "service camera" }, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -14929,7 +14871,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden/layer5, @@ -15131,7 +15073,7 @@ /obj/machinery/status_display/evac/directional/north, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "dKR" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -15176,8 +15118,9 @@ /obj/machinery/porta_turret/ai, /obj/machinery/status_display/ai/directional/north, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "dLu" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/delivery, @@ -15255,7 +15198,6 @@ "dMh" = ( /obj/machinery/camera/directional/south{ c_tag = "Atmospherics - Project Room Fore"; - dir = 5; name = "atmospherics camera" }, /obj/machinery/status_display/evac/directional/south, @@ -15308,6 +15250,7 @@ /obj/effect/turf_decal/tile/neutral/half/contrasted{ dir = 4 }, +/obj/structure/sign/warning/vacuum/external/directional/east, /turf/open/floor/iron, /area/station/maintenance/starboard/aft) "dMM" = ( @@ -15398,7 +15341,7 @@ /obj/structure/cable/layer3, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "dNm" = ( /obj/item/radio/intercom/directional/north, /obj/structure/disposalpipe/segment{ @@ -15432,7 +15375,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/duct, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/iron, /area/station/science/research) "dNr" = ( @@ -15477,7 +15420,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "dNU" = ( /obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ dir = 4 @@ -15711,7 +15654,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/spawner/random/armory/barrier_grenades, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "dQN" = ( /obj/structure/table/wood, /obj/effect/spawner/random/food_or_drink/donkpockets, @@ -15896,9 +15839,7 @@ /turf/open/floor/plating, /area/station/maintenance/department/medical/morgue) "dTS" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/space/basic, /area/space/nearstation) "dUb" = ( @@ -16136,8 +16077,9 @@ dir = 1 }, /obj/effect/turf_decal/stripes/line, -/obj/effect/mapping_helpers/airlock/unres, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/maintenance/department/crew_quarters/bar) "dXr" = ( @@ -16148,10 +16090,6 @@ /turf/open/floor/iron, /area/station/maintenance/port) "dXw" = ( -/obj/structure/sign/painting/large/library_private{ - dir = 1; - pixel_x = -29 - }, /obj/structure/destructible/cult/item_dispenser/archives/library, /obj/item/book/codex_gigas, /turf/open/floor/iron/dark, @@ -16265,7 +16203,7 @@ /obj/structure/cable/layer3, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "dYQ" = ( /obj/structure/table, /obj/machinery/computer/records/medical/laptop{ @@ -16343,7 +16281,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/iron, @@ -16364,7 +16302,7 @@ dir = 9 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "eae" = ( /obj/structure/table/reinforced, /obj/item/paper_bin, @@ -16372,14 +16310,14 @@ /obj/item/pen, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "eaA" = ( /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/transit_tube/curved, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "eaC" = ( /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch" @@ -16388,7 +16326,7 @@ dir = 1 }, /obj/effect/turf_decal/stripes/line, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, @@ -16497,7 +16435,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, @@ -16738,6 +16676,24 @@ "efg" = ( /obj/structure/table/reinforced, /obj/effect/turf_decal/tile/red/half/contrasted, +/obj/machinery/button/door{ + id = "brigprison"; + name = "Prison Lockdown"; + req_access = list("brig"); + pixel_y = 9 + }, +/obj/machinery/button/door{ + id = "brigfront"; + name = "Brig Access Control"; + req_access = list("security"); + pixel_x = 7 + }, +/obj/machinery/button/door{ + id = "brigwindows"; + name = "Cell Window Control"; + req_access = list("security"); + pixel_x = -7 + }, /turf/open/floor/iron, /area/station/security/warden) "efh" = ( @@ -17160,6 +17116,7 @@ /obj/effect/turf_decal/delivery, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/small/directional/south, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron/dark, /area/station/hallway/secondary/entry) "emB" = ( @@ -17202,8 +17159,11 @@ pixel_y = 10 }, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/flasher/directional/south{ + id = "AI" + }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "enw" = ( /obj/item/storage/toolbox/electrical, /obj/effect/decal/cleanable/dirt, @@ -17495,7 +17455,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, @@ -17658,7 +17618,7 @@ }, /obj/machinery/light/directional/east, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "esQ" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -18198,7 +18158,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "eAi" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, @@ -18273,7 +18233,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/small/dim/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "eBb" = ( /obj/structure/filingcabinet/security, /obj/effect/turf_decal/tile/red/anticorner/contrasted{ @@ -18390,7 +18350,7 @@ /obj/machinery/porta_turret/ai, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "eCn" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 @@ -18874,9 +18834,6 @@ /obj/machinery/computer/robotics{ dir = 8 }, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/machinery/keycard_auth/wall_mounted/directional/south, /obj/effect/turf_decal/tile/purple, /obj/effect/turf_decal/tile/neutral/opposingcorners{ @@ -19102,6 +19059,7 @@ /obj/effect/turf_decal/tile/red/anticorner/contrasted{ dir = 1 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/station/security/checkpoint/escape) "eKV" = ( @@ -19121,7 +19079,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/camera/directional/south{ c_tag = "Library - Aft Starboard"; - dir = 5; name = "library camera" }, /turf/open/floor/iron/grimy, @@ -19144,7 +19101,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "eLY" = ( /obj/machinery/door/window/right/directional/west{ name = "Bar Delivery"; @@ -19307,14 +19264,15 @@ /area/station/hallway/primary/central/fore) "eNP" = ( /obj/structure/sign/painting/library{ - pixel_x = 32 + pixel_x = 32; + dir = 4 }, /turf/open/floor/wood/large, /area/station/service/library/lounge) "eOb" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "eOe" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -19458,7 +19416,7 @@ }, /obj/structure/disposalpipe/segment, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/iron, /area/station/maintenance/department/science) "ePK" = ( @@ -19503,7 +19461,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "eQd" = ( /obj/structure/disposalpipe/sorting/mail/flip{ dir = 8; @@ -19527,7 +19485,7 @@ /area/station/security/checkpoint/customs/aft) "eQr" = ( /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "eQs" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock{ @@ -19593,7 +19551,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "eQK" = ( /obj/effect/turf_decal/tile/neutral/anticorner/contrasted{ dir = 1 @@ -19838,16 +19796,12 @@ /turf/open/floor/carpet, /area/station/command/bridge) "eUq" = ( +/obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/ai_slipper{ uses = 10 }, -/obj/machinery/flasher/directional/south{ - id = "AI"; - pixel_x = 26 - }, -/obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "eUu" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -20430,25 +20384,16 @@ /turf/open/floor/iron, /area/station/service/kitchen/abandoned) "fcP" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/landmark/start/hangover, -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/directions/lavaland{ - dir = 1; - pixel_x = 1; - pixel_y = 38 - }, /obj/structure/sign/directions/arrival{ - dir = 8; - pixel_x = 1; - pixel_y = 28 + dir = 1; + pixel_y = -4 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/obj/structure/sign/directions/lavaland{ + dir = 4; + pixel_y = 10 }, -/turf/open/floor/iron, -/area/station/hallway/secondary/entry) +/turf/closed/wall, +/area/station/service/janitor) "fcR" = ( /obj/effect/turf_decal/bot, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -20582,7 +20527,8 @@ name = "curtain control"; pixel_x = 24; pixel_y = -8; - req_access = list("theatre") + req_access = list("theatre"); + dir = 4 }, /obj/machinery/light/small/directional/east, /turf/open/floor/wood, @@ -21054,7 +21000,7 @@ /obj/structure/cable/layer3, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "fkS" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -21109,10 +21055,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/iron, /area/station/maintenance/department/crew_quarters/bar) "flB" = ( @@ -21235,7 +21181,7 @@ dir = 1 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "fmB" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/window/reinforced/spawner/directional/south, @@ -21319,7 +21265,7 @@ /obj/machinery/door/window/left/directional/north, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "fnx" = ( /obj/effect/landmark/secequipment, /obj/effect/turf_decal/bot, @@ -21385,7 +21331,7 @@ /area/station/security/holding_cell) "fot" = ( /turf/closed/wall, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "foI" = ( /obj/docking_port/stationary{ dwidth = 2; @@ -21752,10 +21698,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/maintenance/port/fore) "ftw" = ( @@ -21781,9 +21727,6 @@ /turf/open/floor/iron, /area/station/maintenance/department/crew_quarters/bar) "ftG" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, /obj/structure/table, /obj/machinery/cell_charger, /obj/item/gps, @@ -21791,6 +21734,7 @@ dir = 4 }, /obj/effect/turf_decal/trimline/purple/filled/line, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron/white, /area/station/science/lobby) "ftO" = ( @@ -21812,11 +21756,6 @@ }, /obj/machinery/status_display/evac/directional/south, /obj/effect/turf_decal/bot, -/obj/structure/sign/directions/arrival{ - dir = 1; - pixel_x = 32; - pixel_y = -4 - }, /obj/effect/turf_decal/tile/neutral{ dir = 4 }, @@ -21908,7 +21847,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, @@ -21924,7 +21863,7 @@ "fvZ" = ( /obj/structure/sign/warning/no_smoking, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "fwa" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -22015,7 +21954,7 @@ dir = 8 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "fxc" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -22112,7 +22051,7 @@ /turf/open/floor/iron/white/smooth_large, /area/station/medical/virology) "fyt" = ( -/obj/machinery/light/built/directional/west, +/obj/machinery/light/empty/directional/west, /turf/open/floor/plating, /area/station/maintenance/port/aft) "fyv" = ( @@ -22163,12 +22102,10 @@ /turf/open/floor/iron, /area/station/engineering/atmos) "fyU" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/neutral, /obj/machinery/light/directional/south, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron, /area/station/hallway/secondary/entry) "fza" = ( @@ -22316,7 +22253,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/status_display/ai/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "fAE" = ( /obj/effect/turf_decal/siding/green{ dir = 1 @@ -22448,6 +22385,7 @@ /obj/effect/turf_decal/delivery, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/small/directional/south, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron/dark, /area/station/hallway/secondary/entry) "fCd" = ( @@ -22459,7 +22397,7 @@ req_access = list("ai_upload") }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "fCf" = ( /obj/machinery/door/poddoor/preopen{ id = "atmoslock"; @@ -22572,7 +22510,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "fDS" = ( /obj/machinery/shieldgen, /obj/effect/turf_decal/bot, @@ -22733,7 +22671,6 @@ "fFp" = ( /obj/machinery/camera/directional/east{ c_tag = "Departures Lounge - Fore Starboard"; - dir = 6; name = "departures camera" }, /obj/effect/turf_decal/tile/neutral, @@ -23113,7 +23050,7 @@ /obj/item/ai_module/supplied/freeform, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "fKP" = ( /obj/effect/turf_decal/trimline/white/warning, /obj/effect/mapping_helpers/burnt_floor, @@ -23248,7 +23185,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "fMo" = ( /obj/effect/turf_decal/tile/neutral{ dir = 4 @@ -23660,7 +23597,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "fRb" = ( /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -23697,7 +23634,7 @@ /obj/machinery/firealarm/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "fRK" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -23876,7 +23813,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -24109,7 +24046,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/machinery/atmospherics/pipe/layer_manifold/supply/hidden, @@ -24160,7 +24097,8 @@ id = "Cell 1"; name = "Prisoner Flash"; pixel_x = 25; - pixel_y = 7 + pixel_y = 7; + dir = 4 }, /obj/machinery/door/firedoor, /obj/effect/turf_decal/delivery, @@ -24189,7 +24127,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "fXQ" = ( /obj/effect/spawner/random/structure/tank_holder, /obj/effect/turf_decal/trimline/green/filled/corner{ @@ -24568,7 +24506,6 @@ /obj/item/radio/intercom/directional/north, /obj/machinery/camera/directional/east{ c_tag = "Service - Hydroponics Front Fore"; - dir = 6; name = "service camera" }, /obj/effect/turf_decal/tile/green/opposingcorners, @@ -24587,7 +24524,7 @@ /obj/effect/turf_decal/stripes/line, /obj/machinery/light/cold/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "gcu" = ( /obj/machinery/door/poddoor/preopen{ id = "transitlock"; @@ -24631,7 +24568,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "gcP" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -24810,7 +24747,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/command/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, @@ -24900,10 +24837,8 @@ /area/station/security/checkpoint/arrivals) "gfp" = ( /obj/structure/table/wood, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/machinery/computer/security/telescreen/entertainment/directional/south, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/wood, /area/station/commons/dorms) "gfq" = ( @@ -24988,7 +24923,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "ggs" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 @@ -25169,7 +25104,8 @@ id = "Cell 4"; name = "Prisoner Flash"; pixel_x = 25; - pixel_y = 7 + pixel_y = 7; + dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -25227,7 +25163,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "gjB" = ( /obj/structure/cable, /obj/structure/closet/emcloset, @@ -25439,7 +25375,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -25612,7 +25548,7 @@ /obj/machinery/power/apc/auto_name/directional/south, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "gnW" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/landmark/start/hangover, @@ -25656,7 +25592,8 @@ /area/station/command/bridge) "goj" = ( /obj/structure/sign/painting/library{ - pixel_y = 33 + pixel_y = 33; + dir = 1 }, /turf/open/floor/carpet/green, /area/station/commons/dorms) @@ -25842,10 +25779,10 @@ dir = 1 }, /obj/effect/turf_decal/stripes/line, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/commons/vacant_room/office) "gqF" = ( @@ -25924,6 +25861,7 @@ /obj/item/tank/internals/emergency_oxygen/engi, /obj/item/clothing/glasses/meson, /obj/item/clothing/glasses/meson, +/obj/structure/sign/warning/secure_area/directional/east, /turf/open/floor/iron, /area/station/engineering/main) "grm" = ( @@ -26149,10 +26087,10 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch" }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/iron, /area/station/maintenance/port/aft) "gtJ" = ( @@ -26191,7 +26129,6 @@ /obj/machinery/light/small/directional/north, /obj/machinery/camera/directional/north{ c_tag = "Service - Janitorial Closet"; - dir = 9; name = "service camera" }, /mob/living/basic/lizard/eats_the_roaches, @@ -26295,7 +26232,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, @@ -26434,7 +26371,8 @@ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; name = "WARNING: EXTERNAL AIRLOCK"; - pixel_x = 32 + pixel_x = 32; + dir = 4 }, /obj/effect/turf_decal/stripes/line, /obj/effect/turf_decal/stripes/line{ @@ -26463,7 +26401,7 @@ req_access = list("command") }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "gwx" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -26724,7 +26662,7 @@ dir = 8 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "gAu" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/neutral/half/contrasted{ @@ -27108,9 +27046,12 @@ /turf/closed/wall, /area/station/service/library/lounge) "gDW" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/station/maintenance/port/aft) +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/structure/sign/nanotrasen/directional/west, +/turf/open/floor/iron, +/area/station/hallway/primary/central/fore) "gDY" = ( /obj/effect/turf_decal/tile/neutral/half/contrasted{ dir = 1 @@ -27230,7 +27171,7 @@ dir = 1 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "gFM" = ( /obj/machinery/power/apc/auto_name/directional/east, /obj/structure/cable, @@ -27303,7 +27244,7 @@ /obj/structure/window/reinforced/spawner/directional/north, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "gHh" = ( /obj/effect/turf_decal/bot, /obj/machinery/camera/directional/east{ @@ -27880,10 +27821,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/iron, /area/station/maintenance/fore) "gPh" = ( @@ -27894,7 +27835,7 @@ /obj/effect/spawner/random/contraband/armory, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "gPj" = ( /obj/machinery/hydroponics/soil, /obj/effect/decal/cleanable/dirt, @@ -28215,12 +28156,14 @@ "gSB" = ( /obj/structure/cable, /obj/machinery/button/door/incinerator_vent_atmos_main{ + pixel_y = 36; pixel_x = -8; - pixel_y = 36 + dir = 1 }, /obj/machinery/button/door/incinerator_vent_atmos_aux{ pixel_x = -8; - pixel_y = 24 + pixel_y = 24; + dir = 1 }, /obj/effect/decal/cleanable/dirt, /obj/structure/chair/stool/directional/south, @@ -28624,7 +28567,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -28661,7 +28604,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "gYz" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -28893,7 +28836,7 @@ /obj/item/kirbyplants/random, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "hct" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/line, @@ -29156,7 +29099,7 @@ /obj/structure/window/reinforced/spawner/directional/south, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "hfB" = ( /obj/effect/spawner/random/vending/colavend, /obj/effect/turf_decal/delivery, @@ -29256,7 +29199,7 @@ dir = 4 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "hgX" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -29492,7 +29435,7 @@ "hkC" = ( /obj/structure/cable/layer3, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "hkG" = ( /obj/effect/turf_decal/tile/neutral/half/contrasted{ dir = 8 @@ -29665,7 +29608,7 @@ "hmU" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "hmY" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/binary/pump/on{ @@ -29704,9 +29647,6 @@ /area/station/hallway/secondary/command) "hnx" = ( /obj/structure/table, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, /obj/machinery/computer/records/security/laptop{ dir = 8; pixel_y = 6 @@ -29927,6 +29867,10 @@ /obj/effect/turf_decal/tile/neutral/half/contrasted{ dir = 4 }, +/obj/machinery/flasher/directional/south{ + id = "AI"; + pixel_x = 6 + }, /turf/open/floor/iron/dark, /area/station/engineering/transit_tube) "hrs" = ( @@ -30115,10 +30059,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/maintenance/port/fore) "htQ" = ( @@ -30215,7 +30159,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "hvf" = ( /obj/machinery/duct, /obj/effect/turf_decal/trimline/blue/filled/warning{ @@ -30262,12 +30206,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron/large, /area/station/science/auxlab/firing_range) "hvv" = ( @@ -30302,7 +30244,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "hwe" = ( /obj/structure/cable, /obj/effect/turf_decal/siding/yellow{ @@ -30357,8 +30299,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/iron, @@ -30568,7 +30509,7 @@ /obj/structure/cable/layer3, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "hzK" = ( /obj/machinery/computer/holodeck{ dir = 4 @@ -30987,7 +30928,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "hGG" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/trimline/green/filled/line, @@ -31112,6 +31053,7 @@ "hIh" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/brown/visible, /obj/machinery/light/small/directional/south, +/obj/structure/sign/warning/radiation/directional/south, /turf/open/floor/iron, /area/station/engineering/supermatter/room) "hIs" = ( @@ -31603,7 +31545,7 @@ dir = 1 }, /turf/open/floor/iron/large, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "hPh" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, @@ -31626,7 +31568,7 @@ dir = 1 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "hPu" = ( /obj/effect/turf_decal/delivery, /obj/effect/turf_decal/tile/neutral/half/contrasted{ @@ -31777,7 +31719,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "hRs" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/structure/crate_loot, @@ -31961,7 +31903,7 @@ }, /mob/living/simple_animal/bot/secbot/beepsky/armsky, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "hTv" = ( /obj/structure/cable, /obj/effect/turf_decal/trimline/green/filled/line{ @@ -32078,7 +32020,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "hVx" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 @@ -32098,7 +32040,7 @@ /obj/structure/window/reinforced/spawner/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "hVE" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -32270,7 +32212,7 @@ /obj/machinery/firealarm/directional/north, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "hYa" = ( /obj/structure/chair/office, /obj/machinery/newscaster/directional/north, @@ -32499,7 +32441,7 @@ /obj/effect/spawner/random/armory/bulletproof_armor, /obj/effect/spawner/random/armory/bulletproof_helmet, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "iaY" = ( /obj/effect/turf_decal/tile/neutral/anticorner/contrasted{ dir = 4 @@ -32656,7 +32598,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/holopad/secure, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "icD" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -32793,9 +32735,6 @@ /turf/open/floor/plating, /area/station/maintenance/department/electrical) "idD" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk{ dir = 4 @@ -32805,6 +32744,7 @@ dir = 8 }, /obj/effect/turf_decal/tile/purple/fourcorners, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron, /area/station/hallway/primary/central/fore) "idF" = ( @@ -33066,7 +33006,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -33297,7 +33237,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ikV" = ( /obj/effect/turf_decal/siding/yellow{ dir = 1 @@ -33572,7 +33512,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/red_alert_access, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "inR" = ( /obj/machinery/door/airlock/research{ name = "Research and Development Lab" @@ -33667,7 +33607,7 @@ /turf/open/floor/iron, /area/station/security/prison/garden) "ipr" = ( -/obj/machinery/computer/rdconsole{ +/obj/machinery/computer/rdconsole/unlocked{ dir = 8 }, /obj/machinery/camera/directional/east{ @@ -34119,7 +34059,7 @@ req_access = list("captain") }, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "iuI" = ( /obj/item/book/manual/hydroponics_pod_people, /obj/item/paper/guides/jobs/hydroponics, @@ -34319,7 +34259,7 @@ /obj/structure/cable/multilayer/connected, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ixG" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -35087,7 +35027,7 @@ /obj/effect/mapping_helpers/airlock/access/all/command/minisat, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "iGL" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -35214,7 +35154,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "iIn" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -35478,6 +35418,7 @@ dir = 4; pixel_y = 8 }, +/obj/structure/sign/directions/medical, /turf/closed/wall, /area/station/security/courtroom) "iLD" = ( @@ -35534,12 +35475,10 @@ /area/station/science/ordnance/burnchamber) "iMO" = ( /obj/structure/closet/secure_closet/personal, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/item/storage/wallet, /obj/effect/turf_decal/bot, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron/dark, /area/station/commons/locker) "iMS" = ( @@ -35764,7 +35703,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "iQf" = ( /obj/effect/turf_decal/siding/wood/corner, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -35835,7 +35774,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "iRk" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/landmark/generic_maintenance_landmark, @@ -36269,14 +36208,19 @@ /turf/open/floor/grass, /area/station/hallway/secondary/exit/departure_lounge) "iWH" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/directions/medical{ - pixel_x = 32 +/obj/structure/sign/directions/supply{ + dir = 1; + pixel_y = 8 }, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/iron, -/area/station/hallway/primary/central/fore) +/obj/structure/sign/directions/vault{ + dir = 1 + }, +/obj/structure/sign/directions/security{ + dir = 1; + pixel_y = -8 + }, +/turf/closed/wall, +/area/station/security/courtroom) "iWR" = ( /obj/effect/turf_decal/tile/brown/half/contrasted{ dir = 8 @@ -36414,7 +36358,7 @@ /obj/machinery/nuclearbomb/selfdestruct, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "iYq" = ( /obj/machinery/computer/prisoner/management{ dir = 4 @@ -36446,10 +36390,8 @@ "iYJ" = ( /obj/structure/table/wood, /obj/item/camera, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, /obj/item/hand_labeler, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/wood, /area/station/commons/vacant_room/office) "iZc" = ( @@ -36495,6 +36437,7 @@ pixel_y = 8; req_access = list("atmospherics") }, +/obj/structure/sign/warning/secure_area/directional/east, /turf/open/floor/iron, /area/station/engineering/lobby) "iZG" = ( @@ -36576,7 +36519,7 @@ /obj/structure/cable/layer3, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "jaz" = ( /obj/effect/spawner/random/structure/steam_vent, /obj/effect/turf_decal/tile/neutral/half/contrasted{ @@ -36590,6 +36533,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/plating, /area/station/maintenance/port) "jaV" = ( @@ -36984,13 +36928,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/station/command/bridge) -"jeI" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = -32; - pixel_y = 32 - }, -/turf/open/floor/wood, -/area/station/command/heads_quarters/captain) "jeM" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark, @@ -37046,7 +36983,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/status_display/evac/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "jfn" = ( /obj/machinery/vending/wardrobe/bar_wardrobe, /obj/structure/sign/poster/random/directional/east, @@ -37090,11 +37027,6 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/central/fore) -"jfL" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/structure/sign/warning/secure_area/directional/west, -/turf/open/floor/plating, -/area/station/engineering/atmos/mix) "jfP" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -37766,7 +37698,7 @@ /obj/machinery/airalarm/directional/north, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "jnG" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -37838,19 +37770,14 @@ /turf/open/floor/iron, /area/station/hallway/primary/central/fore) "jom" = ( -/obj/structure/sign/directions/evac{ - pixel_x = -32; - pixel_y = -8 - }, /obj/structure/sign/directions/science{ - dir = 8; - pixel_x = -32 + dir = 8 }, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 +/obj/structure/sign/directions/evac{ + pixel_y = -8 }, -/turf/open/floor/iron, -/area/station/hallway/primary/central/aft) +/turf/closed/wall/r_wall, +/area/station/command/gateway) "jop" = ( /obj/structure/falsewall, /turf/open/floor/iron/dark, @@ -38027,7 +37954,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/service/chapel_office, @@ -38141,6 +38068,7 @@ name = "Head of Security's Fax Machine" }, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark, /area/station/command/heads_quarters/hos) "jsL" = ( @@ -38232,7 +38160,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "jtB" = ( /obj/structure/table/wood, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -38261,7 +38189,8 @@ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; name = "WARNING: BLAST DOORS"; - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, @@ -38852,7 +38781,8 @@ name = "Flash Control"; pixel_x = 26; pixel_y = 7; - req_access = list("security") + req_access = list("security"); + dir = 4 }, /obj/machinery/button/door/directional/east{ id = "brigfront"; @@ -39231,13 +39161,11 @@ dir = 4 }, /obj/item/bedsheet/medical, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/effect/turf_decal/trimline/green/filled/line{ dir = 5 }, /obj/structure/cable, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron/white, /area/station/medical/virology) "jFP" = ( @@ -39386,7 +39314,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, @@ -39809,7 +39737,6 @@ /obj/item/radio/intercom/directional/east, /obj/machinery/camera/directional/east{ c_tag = "Departures Lounge - Aft Starboard"; - dir = 6; name = "departures camera" }, /obj/effect/turf_decal/tile/neutral{ @@ -39887,7 +39814,7 @@ dir = 8 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "jOr" = ( /obj/effect/turf_decal/tile/brown/half/contrasted{ dir = 4 @@ -39932,7 +39859,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "jPd" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -39949,7 +39876,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "jPf" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -40470,11 +40397,13 @@ }, /obj/structure/sign/picture_frame/showroom/three{ pixel_x = -20; - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/structure/sign/picture_frame/showroom/four{ pixel_x = 2; - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/wood/large, /area/station/command/corporate_showroom) @@ -40668,7 +40597,7 @@ /obj/effect/turf_decal/bot, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "jYs" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -40705,7 +40634,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "jYM" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -40735,7 +40664,7 @@ /obj/machinery/airalarm/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "jZf" = ( /obj/effect/landmark/event_spawn, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -40776,18 +40705,6 @@ /turf/open/floor/iron, /area/station/commons/vacant_room) "jZs" = ( -/obj/structure/sign/directions/science{ - pixel_x = -32 - }, -/obj/structure/sign/directions/medical{ - pixel_x = -32; - pixel_y = -8 - }, -/obj/structure/sign/directions/upload{ - dir = 8; - pixel_x = -32; - pixel_y = 8 - }, /obj/effect/turf_decal/tile/neutral{ dir = 8 }, @@ -40859,7 +40776,7 @@ /obj/machinery/firealarm/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "kax" = ( /obj/structure/chair/office/light{ dir = 4 @@ -40878,11 +40795,9 @@ /area/station/service/abandoned_gambling_den) "kaG" = ( /obj/structure/closet/secure_closet/personal, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/effect/turf_decal/bot, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron/dark, /area/station/commons/locker) "kaL" = ( @@ -40953,15 +40868,13 @@ /area/station/service/hydroponics) "kbg" = ( /obj/machinery/pdapainter/research, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/effect/turf_decal/bot_red, /obj/effect/turf_decal/tile/purple{ dir = 8 }, /obj/effect/turf_decal/tile/neutral/opposingcorners, /obj/structure/extinguisher_cabinet/directional/south, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron, /area/station/command/heads_quarters/rd) "kbn" = ( @@ -41024,9 +40937,7 @@ }, /obj/effect/spawner/random/structure/crate, /obj/structure/sign/warning/secure_area/directional/west, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/station/maintenance/department/engine/atmos) "kca" = ( @@ -41172,13 +41083,14 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "kdX" = ( /obj/machinery/piratepad/civilian, /obj/effect/turf_decal/trimline/yellow, /obj/effect/turf_decal/tile/brown/anticorner/contrasted{ dir = 8 }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron, /area/station/cargo/lobby) "kdY" = ( @@ -41229,7 +41141,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "keE" = ( /obj/structure/table/reinforced, /obj/item/plant_analyzer, @@ -41733,7 +41645,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "kke" = ( /turf/open/floor/plating, /area/station/cargo/drone_bay) @@ -41747,7 +41659,7 @@ "kkh" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "kkm" = ( /obj/effect/turf_decal/trimline/blue/filled/corner{ dir = 8 @@ -41873,7 +41785,7 @@ }, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -41951,7 +41863,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "knd" = ( /obj/effect/turf_decal/siding/blue{ dir = 8 @@ -42106,7 +42018,7 @@ /obj/item/wrench, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "kpn" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -42197,11 +42109,9 @@ /obj/effect/turf_decal/stripes/corner{ dir = 1 }, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/item/kirbyplants/random, /obj/effect/turf_decal/tile/purple/fourcorners, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron, /area/station/hallway/primary/central/aft) "kqQ" = ( @@ -42270,7 +42180,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ksd" = ( /obj/machinery/portable_atmospherics/canister/oxygen, /obj/effect/decal/cleanable/dirt, @@ -42387,7 +42297,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable/layer3, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "kun" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, @@ -42476,7 +42386,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "kvq" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -42564,7 +42474,7 @@ }, /obj/effect/mapping_helpers/airlock/access/all/science/general, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/iron, /area/station/science/research) "kvK" = ( @@ -42696,7 +42606,7 @@ /obj/machinery/status_display/ai/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "kxA" = ( /obj/machinery/vending/coffee, /obj/effect/turf_decal/tile/purple{ @@ -42776,7 +42686,7 @@ /obj/effect/turf_decal/bot, /obj/effect/turf_decal/tile/neutral/full, /turf/open/floor/iron/large, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "kzm" = ( /obj/structure/disposalpipe/sorting/mail/flip{ dir = 4; @@ -43102,6 +43012,9 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/scanner_gate/preset_guns, +/obj/machinery/flasher/directional/south{ + id = "brigflashdoor" + }, /turf/open/floor/iron/dark, /area/station/security/brig) "kEw" = ( @@ -43123,7 +43036,7 @@ dir = 6 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "kEJ" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt, @@ -43540,22 +43453,18 @@ /area/station/medical/storage) "kKz" = ( /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/ai_upload"; - icon_state = "control_stun"; + control_area = "/area/station/ai/upload/chamber"; name = "AI Upload Turret Control"; pixel_y = -32 }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "kKW" = ( /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating, /area/station/maintenance/department/electrical) "kKY" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/effect/turf_decal/tile/neutral{ dir = 4 }, @@ -43605,27 +43514,19 @@ /turf/open/floor/iron/white, /area/station/medical/virology) "kLz" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/public/glass{ - name = "Departures Lounge" +/obj/structure/sign/directions/command{ + dir = 1; + pixel_y = 8 }, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ +/obj/structure/sign/directions/vault{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/directions/science{ +/obj/structure/sign/directions/engineering{ dir = 8; - pixel_x = -32 - }, -/obj/structure/sign/directions/command{ - dir = 1; - pixel_x = -32; - pixel_y = 8 + pixel_y = -8 }, -/turf/open/floor/iron, -/area/station/hallway/secondary/exit/departure_lounge) +/turf/closed/wall, +/area/station/commons/storage/primary) "kLA" = ( /obj/structure/chair{ dir = 4 @@ -43899,7 +43800,7 @@ /obj/machinery/door/window/left/directional/south, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "kPc" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 9 @@ -44089,7 +43990,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -44216,10 +44117,6 @@ }, /turf/open/floor/iron/grimy, /area/station/command/heads_quarters/hos) -"kTV" = ( -/obj/structure/sign/warning/radiation, -/turf/closed/wall/r_wall, -/area/station/engineering/gravity_generator) "kUn" = ( /obj/item/kirbyplants/random, /obj/effect/turf_decal/tile/brown{ @@ -44243,6 +44140,7 @@ /obj/effect/turf_decal/tile/blue{ dir = 8 }, +/obj/structure/sign/warning/radiation/directional/south, /turf/open/floor/iron, /area/station/engineering/hallway) "kUC" = ( @@ -44473,7 +44371,7 @@ /obj/structure/window/reinforced/spawner/directional/north, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "kXH" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -44485,16 +44383,16 @@ dir = 1 }, /obj/effect/turf_decal/stripes/line, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/maintenance/port/fore) "kXJ" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "kXO" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/red/opposingcorners{ @@ -44525,9 +44423,6 @@ /turf/open/space/basic, /area/space/nearstation) "kYb" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/structure/closet/emcloset, /obj/effect/turf_decal/delivery, /obj/machinery/camera/directional/west{ @@ -44536,6 +44431,7 @@ }, /obj/effect/landmark/start/hangover, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron/dark, /area/station/hallway/secondary/exit/departure_lounge) "kYn" = ( @@ -44706,10 +44602,8 @@ /turf/open/floor/plating, /area/station/science/research/abandoned) "laJ" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/effect/turf_decal/tile/blue/half/contrasted, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron, /area/station/security/courtroom) "laK" = ( @@ -44942,7 +44836,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ldn" = ( /obj/effect/landmark/start/hangover, /obj/effect/decal/cleanable/dirt, @@ -44991,7 +44885,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "len" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -45037,13 +44931,11 @@ /turf/open/floor/iron, /area/station/hallway/primary/port) "lfs" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, /obj/effect/turf_decal/tile/neutral{ dir = 8 }, /obj/machinery/light/directional/south, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron, /area/station/hallway/secondary/entry) "lfz" = ( @@ -45116,7 +45008,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "lgG" = ( /obj/machinery/modular_computer/preset/engineering, /obj/structure/cable, @@ -45234,7 +45126,7 @@ /area/station/maintenance/port) "lhY" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "lhZ" = ( /obj/effect/turf_decal/delivery, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -45662,7 +45554,7 @@ }, /obj/machinery/power/apc/auto_name/directional/north, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "lmm" = ( /obj/structure/closet/emcloset, /obj/effect/turf_decal/delivery, @@ -45777,6 +45669,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 6 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/station/command/heads_quarters/captain/private) "lnp" = ( @@ -45904,8 +45797,7 @@ /turf/open/floor/iron/white, /area/station/medical/chemistry) "lpy" = ( -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/turf_decal/stripes/line{ dir = 1 }, @@ -45915,6 +45807,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/abandoned, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/iron, /area/station/maintenance/port/aft) "lpz" = ( @@ -45966,6 +45859,7 @@ /obj/structure/table/reinforced, /obj/machinery/light_switch/directional/east, /obj/effect/spawner/random/engineering/toolbox, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/plating, /area/station/maintenance/department/eva/abandoned) "lqa" = ( @@ -46143,7 +46037,7 @@ /area/station/hallway/secondary/entry) "lte" = ( /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/turf_decal/stripes/line, /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -46176,8 +46070,8 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch" }, -/obj/effect/mapping_helpers/airlock/unres, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/maintenance/port/fore) "ltt" = ( @@ -46249,13 +46143,13 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, /obj/effect/turf_decal/stripes/line{ dir = 8 }, /obj/machinery/duct, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 8 + }, /turf/open/floor/iron, /area/station/medical/cryo) "ltV" = ( @@ -46272,7 +46166,7 @@ dir = 4 }, /obj/effect/spawner/random/structure/barricade, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -46588,15 +46482,12 @@ /obj/machinery/flasher{ id = "justiceflash"; pixel_x = 26; - req_access = list("security") + req_access = list("security"); + dir = 4 }, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 }, -/obj/machinery/flasher/directional/east{ - id = "justiceflash"; - req_access = list("security") - }, /obj/effect/turf_decal/tile/red{ dir = 4 }, @@ -46609,7 +46500,7 @@ /obj/machinery/newscaster/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lyh" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/trimline/red/filled/line{ @@ -46921,9 +46812,14 @@ /turf/open/floor/iron, /area/station/medical/virology) "lBR" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/station/ai_monitored/command/storage/eva) +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/sign/nanotrasen/directional/west, +/turf/open/floor/iron, +/area/station/hallway/primary/central/aft) "lBV" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/effect/decal/cleanable/dirt, @@ -46978,7 +46874,7 @@ dir = 1 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, @@ -47064,10 +46960,6 @@ }, /turf/open/floor/iron/dark, /area/station/service/library/printer) -"lDV" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall, -/area/station/engineering/main) "lDY" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -47085,10 +46977,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/iron, /area/station/maintenance/starboard/fore) "lEe" = ( @@ -47366,7 +47258,7 @@ dir = 1 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "lGW" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -47382,7 +47274,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "lHd" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -47509,15 +47401,13 @@ /turf/open/floor/plating, /area/station/maintenance/department/science) "lIy" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/structure/table/reinforced, /obj/item/storage/lockbox/loyalty, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/directional/east, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "lID" = ( /obj/structure/cable, /obj/machinery/power/apc/auto_name/directional/west, @@ -47782,7 +47672,7 @@ /obj/structure/cable/layer3, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "lKK" = ( /obj/structure/cable, /obj/effect/landmark/event_spawn, @@ -47869,7 +47759,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lMz" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible, @@ -47886,7 +47776,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/small/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lMF" = ( /obj/machinery/vending/autodrobe, /obj/effect/turf_decal/siding/dark_blue{ @@ -48243,6 +48133,7 @@ "lRx" = ( /obj/machinery/portable_atmospherics/canister/oxygen, /obj/effect/turf_decal/bot, +/obj/structure/sign/warning/secure_area/directional/east, /turf/open/floor/iron, /area/station/maintenance/port) "lSh" = ( @@ -48278,12 +48169,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/maintenance/port/fore) "lSo" = ( @@ -48339,9 +48230,7 @@ /turf/open/floor/iron/white, /area/station/command/heads_quarters/captain/private) "lTC" = ( -/obj/structure/sign/plaques/kiddie/library, /obj/effect/spawner/structure/window, -/obj/machinery/door/firedoor, /turf/open/floor/plating, /area/station/service/library/artgallery) "lTG" = ( @@ -48449,7 +48338,7 @@ /obj/effect/mapping_helpers/airlock/access/all/command/general, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "lUF" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/line{ @@ -48683,7 +48572,7 @@ /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/iron, @@ -48874,7 +48763,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "mck" = ( /obj/structure/chair/office, /obj/effect/landmark/start/depsec/medical, @@ -48969,7 +48858,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "mdg" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -48982,9 +48871,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 6 }, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron, /area/station/science/auxlab/firing_range) "mdm" = ( @@ -49176,13 +49063,6 @@ /obj/machinery/computer/security/telescreen/entertainment/directional/west, /turf/open/floor/iron, /area/station/cargo/office) -"mfO" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, -/obj/structure/lattice, -/turf/open/space/basic, -/area/space/nearstation) "mfP" = ( /obj/machinery/door/firedoor, /obj/effect/turf_decal/stripes/line{ @@ -49457,7 +49337,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "miD" = ( /obj/effect/spawner/random/structure/tank_holder, /turf/open/floor/plating, @@ -49590,7 +49470,7 @@ dir = 5 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "mly" = ( /obj/structure/table, /obj/effect/decal/cleanable/dirt, @@ -49614,17 +49494,15 @@ /area/station/maintenance/department/electrical) "mlE" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "mlW" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/structure/railing{ dir = 1 }, /obj/effect/turf_decal/tile/neutral{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/station/hallway/primary/central/aft) "mmq" = ( @@ -49780,7 +49658,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/small/dim/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "mph" = ( /obj/effect/landmark/start/hangover, /obj/structure/table/wood, @@ -50144,6 +50022,7 @@ /obj/effect/turf_decal/tile/yellow/opposingcorners{ dir = 1 }, +/obj/structure/sign/warning/secure_area/directional/northwest, /turf/open/floor/iron/dark/corner{ dir = 1 }, @@ -50279,11 +50158,12 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "muA" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/bot, +/obj/structure/sign/warning/secure_area/directional/west, /turf/open/floor/iron, /area/station/engineering/main) "muK" = ( @@ -50356,7 +50236,8 @@ /obj/machinery/button/flasher{ id = "visitorflash"; pixel_x = -6; - pixel_y = 24 + pixel_y = 24; + dir = 1 }, /obj/machinery/button/door/directional/north{ id = "visitation"; @@ -50463,12 +50344,12 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, /obj/machinery/door/airlock/medical/glass{ name = "Medbay" }, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 8 + }, /turf/open/floor/iron, /area/station/medical/medbay) "mwS" = ( @@ -51222,6 +51103,7 @@ /obj/effect/turf_decal/box/corners{ dir = 1 }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron, /area/station/engineering/supermatter/room) "mFH" = ( @@ -51602,11 +51484,12 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "mJi" = ( /obj/structure/sign/departments/science{ name = "ROBOTICS"; - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -51702,9 +51585,7 @@ /area/station/engineering/atmos/pumproom) "mJS" = ( /obj/structure/dresser, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/wood, /area/station/commons/dorms) "mJW" = ( @@ -51826,7 +51707,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "mMr" = ( /obj/effect/turf_decal/stripes/end{ dir = 1 @@ -51870,7 +51751,7 @@ /obj/structure/tank_dispenser/oxygen, /obj/effect/turf_decal/bot, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "mNC" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -52303,10 +52184,10 @@ /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/unres, /obj/machinery/door/airlock/medical/glass{ name = "Medbay Treatment Center" }, +/obj/effect/mapping_helpers/airlock/unres, /turf/open/floor/iron, /area/station/medical/treatment_center) "mTc" = ( @@ -52398,6 +52279,7 @@ /obj/machinery/light/small/directional/east, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/sign/warning/radiation/directional/east, /turf/open/floor/iron, /area/station/engineering/atmos/project) "mUZ" = ( @@ -52412,7 +52294,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/iron, @@ -52606,7 +52488,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "mYk" = ( /obj/effect/turf_decal/loading_area{ dir = 8 @@ -52694,7 +52576,7 @@ dir = 4 }, /obj/effect/spawner/random/structure/barricade, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -52951,7 +52833,7 @@ }, /obj/structure/cable/layer3, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ndc" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -53107,7 +52989,7 @@ /obj/machinery/recharger, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ngb" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/railing/corner{ @@ -53383,10 +53265,6 @@ }, /turf/open/floor/iron, /area/station/security/checkpoint/supply) -"njz" = ( -/obj/structure/sign/warning/vacuum/external, -/turf/closed/wall, -/area/station/maintenance/starboard/aft) "njA" = ( /obj/machinery/airalarm/directional/east, /obj/effect/decal/cleanable/dirt, @@ -53420,7 +53298,7 @@ /obj/item/kirbyplants/random, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "nkd" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible, /obj/effect/turf_decal/stripes/line{ @@ -53636,15 +53514,9 @@ dir = 1 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "nmU" = ( /obj/structure/cable, -/obj/machinery/firealarm/directional/south{ - pixel_x = -32 - }, -/obj/machinery/light_switch/directional/south{ - pixel_x = -24 - }, /obj/effect/turf_decal/tile/red/anticorner/contrasted{ dir = 8 }, @@ -54142,11 +54014,13 @@ }, /obj/structure/sign/picture_frame/showroom/one{ pixel_x = -2; - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/structure/sign/picture_frame/showroom/four{ pixel_x = 19; - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/wood/large, /area/station/command/corporate_showroom) @@ -54191,7 +54065,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -54330,9 +54204,6 @@ /turf/open/floor/iron/dark, /area/station/science/xenobiology) "nwW" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/machinery/status_display/ai/directional/north, /obj/structure/table/wood/fancy/red, /obj/machinery/door/window/brigdoor/left/directional/east{ @@ -54345,8 +54216,9 @@ /obj/item/ai_module/reset/purge{ pixel_y = 11 }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "nwY" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -54387,7 +54259,7 @@ }, /obj/structure/cable, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "nxs" = ( /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/lattice, @@ -54561,10 +54433,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/maintenance/port/fore) "nyZ" = ( @@ -54612,6 +54484,7 @@ name = "engineering camera"; network = list("ss13","engine") }, +/obj/structure/sign/warning/radiation/directional/south, /turf/open/floor/iron, /area/station/engineering/supermatter/room) "nzt" = ( @@ -54767,10 +54640,10 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "nBF" = ( /obj/structure/cable, -/obj/machinery/computer/rdconsole, +/obj/machinery/computer/rdconsole/unlocked, /obj/effect/turf_decal/tile/yellow/half/contrasted{ dir = 1 }, @@ -54897,7 +54770,7 @@ /obj/effect/mapping_helpers/airlock/access/all/engineering/construction, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "nDx" = ( /obj/effect/landmark/event_spawn, /obj/effect/turf_decal/tile/blue/fourcorners, @@ -55039,6 +54912,7 @@ dir = 1 }, /obj/machinery/light/directional/north, +/obj/structure/sign/warning/radiation/directional/north, /turf/open/floor/iron, /area/station/engineering/main) "nFv" = ( @@ -55176,7 +55050,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -55335,7 +55209,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "nIW" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -55451,7 +55325,7 @@ dir = 10 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "nJP" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -55682,7 +55556,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "nNK" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/delivery, @@ -56034,9 +55908,12 @@ /turf/open/floor/iron/white, /area/station/medical/virology) "nSv" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/station/command/heads_quarters/captain/private) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/neutral, +/obj/structure/sign/nanotrasen/directional/east, +/turf/open/floor/iron, +/area/station/hallway/primary/central/aft) "nSA" = ( /obj/effect/spawner/structure/window/reinforced/tinted, /turf/open/floor/plating, @@ -56116,7 +55993,7 @@ /obj/machinery/firealarm/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "nTQ" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/trash/cigbutt, @@ -56642,7 +56519,8 @@ id = "Cell 5"; name = "Prisoner Flash"; pixel_x = 25; - pixel_y = 7 + pixel_y = 7; + dir = 4 }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -56748,7 +56626,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -56803,7 +56681,7 @@ /obj/item/kirbyplants/random, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "odl" = ( /obj/item/radio{ pixel_x = -5; @@ -56829,7 +56707,7 @@ /obj/machinery/newscaster/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "odD" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt, @@ -56956,14 +56834,12 @@ dir = 4; name = "Mix Outlet Pump" }, -/obj/structure/sign/warning/secure_area/directional/west{ - pixel_y = -32 - }, /obj/machinery/power/apc/auto_name/directional/south, /obj/structure/cable, /obj/effect/turf_decal/tile/green/anticorner/contrasted{ dir = 8 }, +/obj/structure/sign/warning/secure_area/directional/southwest, /turf/open/floor/iron, /area/station/engineering/atmos/mix) "ofN" = ( @@ -57271,9 +57147,14 @@ }, /area/station/hallway/primary/fore) "okb" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/station/maintenance/department/crew_quarters/bar) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/structure/sign/nanotrasen/directional/east, +/turf/open/floor/iron, +/area/station/hallway/primary/central/aft) "oke" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -57284,7 +57165,7 @@ "okj" = ( /obj/effect/spawner/random/structure/crate_loot, /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /turf/open/floor/plating, /area/station/medical/abandoned) "okk" = ( @@ -57430,7 +57311,7 @@ /obj/structure/extinguisher_cabinet/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "olI" = ( /obj/machinery/computer/shuttle/mining{ dir = 8 @@ -57488,7 +57369,7 @@ /obj/machinery/door/window/right/directional/south, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "omj" = ( /obj/structure/chair{ dir = 4 @@ -58034,7 +57915,7 @@ /obj/machinery/light/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ouc" = ( /obj/structure/sign/warning/electric_shock{ pixel_y = -30 @@ -58090,12 +57971,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron/large, /area/station/science/auxlab/firing_range) "ovb" = ( @@ -58751,7 +58630,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "oDz" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -59010,15 +58889,13 @@ /turf/closed/wall, /area/station/service/chapel) "oGM" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/structure/closet/secure_closet/armory2, /obj/effect/turf_decal/bot, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/spawner/random/armory/rubbershot, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "oHe" = ( /obj/effect/turf_decal/bot, /obj/effect/landmark/start/hangover, @@ -59434,6 +59311,7 @@ /area/station/maintenance/department/eva/abandoned) "oMh" = ( /obj/effect/turf_decal/tile/blue, +/obj/structure/sign/warning/radiation/directional/south, /turf/open/floor/iron, /area/station/engineering/hallway) "oMo" = ( @@ -59518,7 +59396,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "oNb" = ( /obj/structure/rack, /obj/item/circuitboard/machine/teleporter_hub{ @@ -59550,7 +59428,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/floor, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "oNF" = ( /obj/effect/turf_decal/siding/blue, /obj/effect/turf_decal/tile/blue/opposingcorners, @@ -59885,10 +59763,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/maintenance/port/fore) "oSd" = ( @@ -60157,6 +60035,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/maintenance/department/science) +"oVq" = ( +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden, +/obj/structure/plaque/static_plaque/golden/commission/delta, +/turf/open/floor/iron, +/area/station/hallway/secondary/entry) "oVt" = ( /obj/structure/chair/pew, /turf/open/floor/iron/chapel{ @@ -60191,7 +60075,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -60553,7 +60437,7 @@ }, /obj/machinery/status_display/ai/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "pbP" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -60939,10 +60823,6 @@ }, /turf/open/floor/glass, /area/station/maintenance/space_hut/observatory) -"pgA" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, -/area/station/engineering/main) "pgE" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -61509,6 +61389,21 @@ /obj/machinery/duct, /turf/open/floor/iron/diagonal, /area/station/medical/break_room) +"pnc" = ( +/obj/machinery/light/small/directional/north, +/obj/structure/sign/directions/engineering{ + desc = "A sign that shows there are doors here. There are doors everywhere!"; + icon_state = "doors"; + name = "WARNING: BLAST DOORS"; + pixel_y = 32; + dir = 1 + }, +/obj/item/kirbyplants/organic/plant22, +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "png" = ( /obj/effect/landmark/event_spawn, /obj/structure/cable, @@ -61868,7 +61763,7 @@ /obj/structure/sign/warning/electric_shock/directional/south, /obj/structure/cable, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "ptC" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -61883,6 +61778,9 @@ /area/station/maintenance/department/crew_quarters/bar) "ptI" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/painting/large/library_private{ + dir = 1 + }, /turf/open/floor/iron/dark, /area/station/service/library/printer) "ptM" = ( @@ -61903,7 +61801,7 @@ /obj/effect/turf_decal/stripes/line, /obj/item/radio/intercom/directional/south, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "puh" = ( /obj/effect/spawner/structure/window/hollow/reinforced/directional{ dir = 8 @@ -61951,7 +61849,7 @@ /obj/effect/turf_decal/delivery, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "puK" = ( /obj/structure/table, /obj/item/storage/crayons, @@ -62046,7 +61944,6 @@ /obj/effect/turf_decal/bot, /obj/machinery/camera/directional/west{ c_tag = "Service - Hydroponics Back"; - dir = 10; name = "hallway camera" }, /obj/effect/turf_decal/tile/blue{ @@ -62235,7 +62132,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "pxz" = ( /obj/machinery/portable_atmospherics/canister/air, /obj/effect/turf_decal/bot, @@ -62709,7 +62606,7 @@ /obj/effect/turf_decal/bot, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "pDx" = ( /obj/effect/turf_decal/siding/purple{ dir = 4 @@ -62838,7 +62735,8 @@ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; name = "WARNING: BLAST DOORS"; - pixel_x = 32 + pixel_x = 32; + dir = 4 }, /turf/open/floor/iron/dark/textured_large, /area/station/security/execution/transfer) @@ -62917,7 +62815,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "pFq" = ( /obj/structure/sign/warning/no_smoking/directional/west, /obj/effect/turf_decal/stripes/line{ @@ -62961,7 +62859,7 @@ /obj/effect/turf_decal/delivery, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "pFF" = ( /obj/item/kirbyplants/random, /obj/machinery/camera/directional/north{ @@ -63087,7 +62985,7 @@ /obj/item/aicard, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "pGR" = ( /obj/structure/disposalpipe/segment, /turf/open/floor/iron/herringbone, @@ -63131,10 +63029,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron, /area/station/hallway/primary/central/aft) -"pHy" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/station/service/chapel) "pHz" = ( /obj/structure/disposalpipe/segment{ dir = 10 @@ -63148,7 +63042,7 @@ pixel_x = -7; pixel_y = 9 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = -7; pixel_y = 1 }, @@ -63228,7 +63122,7 @@ "pIX" = ( /obj/effect/turf_decal/trimline/dark_red/filled/warning, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "pJf" = ( /obj/structure/chair/office, /obj/effect/turf_decal/siding/yellow, @@ -63331,7 +63225,7 @@ /obj/effect/turf_decal/stripes/line, /obj/machinery/light/small/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "pKb" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -63394,7 +63288,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "pKG" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -63617,7 +63511,7 @@ /obj/item/kirbyplants/random, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "pNq" = ( /obj/effect/turf_decal/tile/blue{ dir = 8 @@ -63728,12 +63622,14 @@ /turf/open/floor/iron, /area/station/commons/dorms) "pOQ" = ( -/obj/structure/lattice, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 +/obj/machinery/door/poddoor/preopen{ + id = "bridgedoors"; + name = "Bridge Access Blast Door" }, -/turf/open/space/basic, -/area/space/nearstation) +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "pOT" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt, @@ -64006,7 +63902,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "pSg" = ( /obj/effect/spawner/structure/window/reinforced/tinted, /turf/open/floor/plating, @@ -64225,7 +64121,8 @@ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; name = "WARNING: EXTERNAL AIRLOCK"; - pixel_x = 32 + pixel_x = 32; + dir = 4 }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, @@ -64344,7 +64241,7 @@ /obj/machinery/status_display/evac/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "pUG" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -64397,7 +64294,7 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "pUU" = ( /obj/effect/landmark/start/hangover, /obj/structure/chair/sofa/bench/left{ @@ -64422,7 +64319,7 @@ /obj/effect/spawner/random/armory/bulletproof_armor, /obj/effect/spawner/random/armory/bulletproof_helmet, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "pVb" = ( /obj/effect/spawner/random/vending/colavend, /obj/effect/turf_decal/bot, @@ -64454,7 +64351,7 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch" }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/iron, /area/station/maintenance/port) "pVR" = ( @@ -64688,7 +64585,7 @@ dir = 1 }, /obj/effect/turf_decal/stripes/line, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -64878,12 +64775,9 @@ /obj/machinery/status_display/ai/directional/south, /obj/machinery/camera/directional/south{ c_tag = "Service - Bar Aft"; - dir = 5; name = "service camera" }, -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 - }, +/obj/effect/turf_decal/tile/red/opposingcorners, /obj/effect/turf_decal/tile/yellow/opposingcorners, /turf/open/floor/iron, /area/station/commons/lounge) @@ -64997,7 +64891,7 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/security/maintenance, @@ -65137,7 +65031,7 @@ /obj/structure/cable/layer3, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "qdP" = ( /obj/item/kirbyplants/random, /obj/structure/extinguisher_cabinet/directional/east, @@ -65151,15 +65045,6 @@ /obj/structure/closet/secure_closet/paramedic, /turf/open/floor/iron/dark, /area/station/medical/paramedic) -"qdV" = ( -/obj/machinery/flasher/directional/south{ - id = "AI"; - pixel_x = -26 - }, -/obj/structure/cable, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) "qdW" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -65189,7 +65074,7 @@ /obj/item/folder/documents, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "qeg" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -65715,6 +65600,7 @@ /obj/effect/turf_decal/tile/yellow{ dir = 8 }, +/obj/structure/sign/warning/secure_area/directional/east, /turf/open/floor/iron/dark/corner, /area/station/engineering/atmos/project) "qlA" = ( @@ -65723,12 +65609,12 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch" }, /obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/maintenance/port/fore) "qlD" = ( @@ -65929,6 +65815,7 @@ "qoo" = ( /obj/structure/table/wood, /obj/item/pai_card, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/wood, /area/station/command/meeting_room/council) "qoA" = ( @@ -66404,9 +66291,15 @@ /turf/open/floor/iron, /area/station/maintenance/port/aft) "qvn" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, -/area/station/maintenance/port/fore) +/obj/effect/turf_decal/trimline/yellow/warning{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/yellow/mid_joiner{ + dir = 4 + }, +/obj/structure/sign/warning/secure_area/directional/south, +/turf/open/floor/plating, +/area/station/engineering/supermatter/room) "qvo" = ( /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch" @@ -66417,10 +66310,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/maintenance/port/fore) "qvq" = ( @@ -66465,6 +66358,7 @@ /obj/item/paper_bin, /obj/item/pen, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron/dark, /area/station/security/courtroom) "qvG" = ( @@ -66579,7 +66473,7 @@ /obj/structure/sign/departments/aiupload/directional/south, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "qxi" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 @@ -66685,6 +66579,7 @@ }, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/structure/sign/warning/radiation/directional/east, /turf/open/floor/iron, /area/station/engineering/atmos/project) "qyy" = ( @@ -66772,7 +66667,7 @@ normaldoorcontrol = 1; specialfunctions = 4 }, -/obj/item/food/sandwich/cheese/grilled, +/obj/item/food/sandwich/grilled_cheese, /turf/open/floor/iron/cafeteria, /area/station/medical/break_room) "qzT" = ( @@ -66946,7 +66841,7 @@ /obj/item/restraints/handcuffs, /obj/item/assembly/flash/handheld, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "qBF" = ( /obj/machinery/status_display/ai/directional/east, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -66996,7 +66891,7 @@ /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/iron, @@ -67139,7 +67034,7 @@ /obj/effect/mapping_helpers/airlock/access/all/supply/vault, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "qDT" = ( /obj/effect/turf_decal/stripes/line, /obj/effect/turf_decal/stripes/line{ @@ -67335,7 +67230,7 @@ /obj/machinery/power/apc/auto_name/directional/south, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "qGw" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -67649,7 +67544,7 @@ "qKc" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "qKg" = ( /obj/machinery/duct, /obj/effect/landmark/event_spawn, @@ -67666,7 +67561,7 @@ /obj/structure/cable/layer3, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "qKk" = ( /obj/structure/table/wood, /obj/item/radio/intercom, @@ -67809,6 +67704,7 @@ /obj/structure/chair{ dir = 8 }, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/plating, /area/station/security/execution/transfer) "qLG" = ( @@ -67817,10 +67713,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron, /area/station/hallway/primary/central/aft) -"qLJ" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/station/security/checkpoint/engineering) "qLO" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/suit_storage_unit/engine, @@ -67866,7 +67758,7 @@ dir = 1 }, /obj/effect/turf_decal/stripes/line, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/service/library, /obj/structure/disposalpipe/segment, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -67908,10 +67800,10 @@ /turf/open/floor/iron, /area/station/engineering/atmos) "qMS" = ( -/obj/item/kirbyplants/random, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/delivery, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/item/kirbyplants/random, /turf/open/floor/iron/dark, /area/station/hallway/secondary/entry) "qNb" = ( @@ -68026,7 +67918,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -68188,7 +68080,7 @@ name = "Security Transferring Center" }, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/structure/disposalpipe/segment, @@ -68383,7 +68275,7 @@ /obj/machinery/porta_turret/ai, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "qTK" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -68395,19 +68287,17 @@ /area/station/security/courtroom) "qTR" = ( /obj/effect/turf_decal/tile/neutral/half/contrasted, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron/dark, /area/station/service/chapel) "qUi" = ( -/obj/structure/disposalpipe/sorting/mail{ - name = "Engineering Junction" - }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/mail_sorting/engineering/general, +/obj/structure/disposalpipe/junction, /turf/open/floor/iron, /area/station/engineering/main) "qUu" = ( @@ -68453,10 +68343,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden, /turf/open/floor/iron, /area/station/cargo/storage) -"qUM" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/station/tcommsat/server) "qUP" = ( /obj/machinery/hydroponics/soil, /obj/item/shovel/spade, @@ -68678,10 +68564,6 @@ dir = 1 }, /area/station/medical/morgue) -"qZb" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, -/area/station/maintenance/port) "qZn" = ( /obj/machinery/status_display/ai/directional/south, /obj/effect/turf_decal/trimline/yellow/filled/line, @@ -69000,7 +68882,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -69113,7 +68995,7 @@ /obj/effect/spawner/random/engineering/tracking_beacon, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "rgj" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -69180,7 +69062,7 @@ }, /obj/machinery/light/small/directional/north, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "rgK" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -69192,7 +69074,7 @@ "rgL" = ( /obj/structure/cable, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "rgN" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/landmark/start/depsec/engineering, @@ -69217,7 +69099,7 @@ /obj/effect/turf_decal/stripes/line, /obj/structure/cable/multilayer/connected, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "rhf" = ( /obj/structure/table/reinforced, /obj/effect/turf_decal/bot, @@ -69276,7 +69158,7 @@ /obj/machinery/status_display/ai/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "rhK" = ( /obj/structure/flora/bush/stalky/style_random, /obj/structure/flora/bush/lavendergrass/style_random, @@ -69351,16 +69233,13 @@ /obj/structure/cable/layer3, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "rjt" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/service/theater) "rju" = ( /obj/structure/closet/crate/preopen, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/item/tank/internals/oxygen/red{ pixel_x = 3 }, @@ -69370,6 +69249,7 @@ /obj/item/wrench, /obj/machinery/atmospherics/pipe/smart/manifold4w/general/visible, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron/dark, /area/station/security/execution/education) "rjz" = ( @@ -69482,7 +69362,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/camera/directional/south{ c_tag = "Library - Aft Port"; - dir = 5; name = "library camera" }, /turf/open/floor/iron/grimy, @@ -69547,7 +69426,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, /turf/open/floor/iron, @@ -69701,9 +69580,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 10 }, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron, /area/station/science/auxlab/firing_range) "rmo" = ( @@ -69767,6 +69644,10 @@ "rnf" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/small/directional/east, +/obj/machinery/flasher/directional/east{ + id = "justiceflash"; + req_access = list("security") + }, /turf/open/floor/iron/dark, /area/station/security/execution/education) "rni" = ( @@ -70250,8 +70131,9 @@ /obj/machinery/porta_turret/ai, /obj/machinery/status_display/ai/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "ruU" = ( /obj/item/instrument/violin, /obj/structure/table/wood, @@ -70589,7 +70471,7 @@ }, /obj/machinery/status_display/ai/directional/north, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ryE" = ( /obj/structure/closet/crate, /obj/item/stack/sheet/iron/fifty, @@ -70734,7 +70616,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "rAG" = ( /obj/structure/table/reinforced, /obj/item/stack/sheet/iron{ @@ -71151,6 +71033,7 @@ dir = 4 }, /obj/machinery/light/small/directional/north, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron/dark, /area/station/engineering/hallway) "rGU" = ( @@ -71274,7 +71157,7 @@ dir = 4 }, /obj/effect/spawner/random/structure/barricade, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -71282,9 +71165,7 @@ /area/station/service/kitchen/abandoned) "rIl" = ( /obj/machinery/mass_driver/chapelgun, -/obj/structure/sign/warning/vacuum/external{ - pixel_y = 32 - }, +/obj/structure/sign/warning/vacuum/external/directional/north, /obj/effect/turf_decal/stripes/line{ dir = 1 }, @@ -71376,7 +71257,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/spawner/random/structure/barricade, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -71480,7 +71361,7 @@ /obj/machinery/firealarm/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "rKE" = ( /obj/effect/turf_decal/trimline/yellow/line, /obj/machinery/light/directional/south, @@ -71491,7 +71372,7 @@ dir = 10 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "rKG" = ( /obj/effect/turf_decal/trimline/blue/filled/line, /obj/structure/cable, @@ -71788,11 +71669,11 @@ /turf/open/floor/iron, /area/station/science/robotics/lab) "rOa" = ( -/obj/structure/sign/warning/secure_area{ - pixel_y = -14 - }, -/turf/closed/wall/r_wall, -/area/station/engineering/atmos/storage/gas) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/warning/secure_area/directional/north, +/turf/open/floor/plating, +/area/station/maintenance/port) "rOc" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/large, @@ -71840,7 +71721,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, @@ -71878,7 +71759,7 @@ dir = 10 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "rOV" = ( /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -71919,7 +71800,7 @@ /obj/structure/cable, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "rPf" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/neutral/half/contrasted{ @@ -71980,6 +71861,10 @@ /obj/structure/sign/directions/science{ pixel_y = 2 }, +/obj/structure/sign/directions/arrival{ + dir = 1; + pixel_y = 10 + }, /turf/closed/wall, /area/station/commons/vacant_room/office) "rPJ" = ( @@ -72067,7 +71952,7 @@ dir = 4 }, /obj/effect/spawner/random/trash/grille_or_waste, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, @@ -72387,10 +72272,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/maintenance/port/fore) "rTW" = ( @@ -72456,11 +72341,9 @@ /turf/open/floor/iron, /area/station/hallway/secondary/entry) "rUX" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/item/kirbyplants/random, /obj/machinery/digital_clock/directional/north, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/wood, /area/station/commons/dorms) "rVc" = ( @@ -72474,7 +72357,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/iron, /area/station/service/library/abandoned) @@ -72828,7 +72711,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "rZF" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/segment{ @@ -73088,12 +72971,10 @@ dir = 4 }, /obj/effect/turf_decal/bot/left, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/machinery/modular_computer/preset/cargochat/science{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron, /area/station/science/research) "scs" = ( @@ -73133,8 +73014,11 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/small/directional/south, +/obj/machinery/flasher/directional/south{ + id = "AI" + }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "sde" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden, @@ -73195,7 +73079,7 @@ /obj/structure/cable, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "sdO" = ( /obj/machinery/atmospherics/pipe/smart/manifold/scrubbers/visible{ dir = 1 @@ -73280,15 +73164,13 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/effect/turf_decal/tile/neutral{ dir = 4 }, /obj/structure/disposalpipe/segment{ dir = 6 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/station/hallway/primary/central/fore) "sfc" = ( @@ -73304,6 +73186,7 @@ /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 8 }, +/obj/effect/landmark/firealarm_sanity, /turf/open/floor/iron, /area/station/security/checkpoint/engineering) "sfs" = ( @@ -73325,7 +73208,8 @@ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; name = "WARNING: EXTERNAL AIRLOCK"; - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/machinery/light/small/directional/north, /turf/open/floor/iron/smooth_large, @@ -73583,7 +73467,7 @@ /obj/structure/cable/layer3, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "siV" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/yellow/opposingcorners{ @@ -73713,13 +73597,6 @@ /obj/machinery/light_switch/directional/north{ pixel_x = -8 }, -/obj/machinery/button/door{ - id = "rdordnance"; - name = "Ordnance Containment Control"; - pixel_x = 8; - pixel_y = 26; - req_access = list("science") - }, /obj/structure/filingcabinet/chestdrawer, /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -73729,6 +73606,13 @@ name = "science camera"; network = list("ss13","rd") }, +/obj/machinery/button/door/directional/north{ + pixel_x = 7; + pixel_y = 26; + id = "rdordnance"; + name = "Ordnance Containment Contro"; + req_access = list("science") + }, /turf/open/floor/iron/white, /area/station/science/ordnance/office) "skC" = ( @@ -73739,7 +73623,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "skI" = ( /obj/effect/turf_decal/tile/yellow{ dir = 4 @@ -73950,7 +73834,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/spawner/random/armory/disablers, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "sob" = ( /obj/structure/disposalpipe/segment, /obj/item/kirbyplants/random, @@ -74010,6 +73894,7 @@ pixel_y = 4 }, /obj/item/radio/intercom/directional/south, +/obj/structure/sign/warning/secure_area/directional/east, /turf/open/floor/iron, /area/station/engineering/main) "soU" = ( @@ -74271,27 +74156,6 @@ /turf/open/floor/iron, /area/station/commons/vacant_room/commissary) "ssr" = ( -/obj/machinery/button/door{ - id = "brigwindows"; - name = "Cell Window Control"; - pixel_x = -32; - pixel_y = -26; - req_access = list("security") - }, -/obj/machinery/button/door{ - id = "brigfront"; - name = "Brig Access Control"; - pixel_x = -26; - pixel_y = -36; - req_access = list("security") - }, -/obj/machinery/button/door{ - id = "brigprison"; - name = "Prison Lockdown"; - pixel_x = -38; - pixel_y = -36; - req_access = list("brig") - }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -74481,7 +74345,7 @@ req_access = list("captain") }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "suZ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -74642,6 +74506,7 @@ fax_name = "Captain's Office"; name = "Captain's Fax Machine" }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/wood, /area/station/command/heads_quarters/captain) "swn" = ( @@ -74707,7 +74572,7 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, @@ -74941,7 +74806,7 @@ /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "szs" = ( /obj/structure/disposalpipe/segment{ dir = 5 @@ -75298,7 +75163,8 @@ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; name = "WARNING: PRESSURIZED DOORS"; - pixel_x = -32 + pixel_x = -32; + dir = 8 }, /turf/open/floor/plating, /area/station/maintenance/port/fore) @@ -75327,7 +75193,7 @@ /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/iron, @@ -75357,7 +75223,7 @@ dir = 1 }, /obj/effect/turf_decal/stripes/line, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/iron, @@ -75466,7 +75332,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "sGi" = ( /obj/structure/cable, /obj/effect/landmark/start/hangover, @@ -75488,17 +75354,13 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "sGx" = ( /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"sGz" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/station/command/heads_quarters/hop) "sGB" = ( /obj/machinery/airalarm/directional/east, /obj/machinery/disposal/bin, @@ -75523,7 +75385,7 @@ req_access = list("ai_upload") }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "sGQ" = ( /obj/structure/chair/office{ dir = 4 @@ -75706,26 +75568,15 @@ /turf/open/floor/plating, /area/station/maintenance/department/security) "sIZ" = ( -/obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/sign/directions/engineering{ +/obj/structure/sign/directions/arrival{ dir = 8; - pixel_x = -32; - pixel_y = -8 - }, -/obj/structure/sign/directions/command{ - dir = 1; - pixel_x = -32; pixel_y = 8 }, -/obj/structure/sign/directions/vault{ - dir = 1; - pixel_x = -32 +/obj/structure/sign/directions/medical, +/obj/structure/sign/directions/evac{ + pixel_y = -8 }, -/turf/open/floor/iron, +/turf/closed/wall, /area/station/hallway/primary/central/fore) "sJb" = ( /obj/effect/spawner/random/trash/mess, @@ -75771,7 +75622,7 @@ "sJr" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "sJF" = ( /obj/machinery/button/ignition/incinerator/atmos, /turf/closed/wall/r_wall, @@ -75855,7 +75706,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -75911,7 +75762,7 @@ "sKP" = ( /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "sKQ" = ( /obj/machinery/computer/pandemic, /obj/effect/turf_decal/bot, @@ -76071,13 +75922,11 @@ /turf/open/floor/iron, /area/station/engineering/supermatter/room) "sMx" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/neutral{ dir = 8 }, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron, /area/station/hallway/secondary/entry) "sMG" = ( @@ -76472,7 +76321,7 @@ "sSb" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "sSe" = ( /obj/effect/turf_decal/stripes/corner{ dir = 4 @@ -76559,7 +76408,8 @@ id = "Cell 2"; name = "Prisoner Flash"; pixel_x = 25; - pixel_y = 7 + pixel_y = 7; + dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -76605,24 +76455,15 @@ /turf/open/floor/iron/white, /area/station/science/lobby) "sTR" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/sign/directions/dorms{ - pixel_x = 32; - pixel_y = -8 +/obj/structure/sign/directions/science{ + dir = 8 }, -/obj/structure/sign/directions/supply{ +/obj/structure/sign/directions/command{ dir = 1; - pixel_x = 32; pixel_y = 8 }, -/turf/open/floor/iron, -/area/station/hallway/primary/central/fore) +/turf/closed/wall, +/area/station/medical/psychology) "sTV" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/virology/glass{ @@ -76766,7 +76607,7 @@ dir = 4 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "sVW" = ( /obj/effect/spawner/random/engineering/atmospherics_portable, /turf/open/floor/plating, @@ -76900,14 +76741,6 @@ /obj/machinery/igniter/incinerator_ordmix, /turf/open/floor/engine/vacuum, /area/station/science/ordnance/burnchamber) -"sXE" = ( -/obj/machinery/atmospherics/pipe/smart/simple/orange/visible, -/obj/structure/lattice/catwalk, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, -/turf/open/space/basic, -/area/space/nearstation) "sXI" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 @@ -77169,12 +77002,15 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/structure/table, /obj/machinery/light/directional/west, -/obj/item/stack/conveyor/thirty, -/obj/item/boulder_beacon{ - pixel_x = -5 +/obj/item/food/ready_donk/donkrange_chicken, +/obj/item/food/ready_donk/donkhiladas{ + pixel_y = 5 }, -/obj/item/conveyor_switch_construct{ - pixel_x = 10 +/obj/item/food/ready_donk/country_chicken{ + pixel_y = 10 + }, +/obj/structure/closet/mini_fridge{ + name = "mini-fridge" }, /turf/open/floor/iron, /area/station/cargo/miningoffice) @@ -77188,7 +77024,7 @@ }, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden, /turf/open/floor/iron, /area/station/maintenance/department/medical/morgue) @@ -77353,7 +77189,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "tcH" = ( /obj/structure/table/glass, /obj/item/folder/yellow, @@ -77458,7 +77294,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "teA" = ( /obj/structure/displaycase/captain, /turf/open/floor/iron/grimy, @@ -77489,7 +77325,7 @@ /obj/structure/cable, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "tfi" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/door/airlock{ @@ -77511,7 +77347,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "tfq" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -77601,6 +77437,7 @@ /obj/effect/turf_decal/tile/neutral/half/contrasted{ dir = 8 }, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron/dark, /area/station/service/chapel/funeral) "tgT" = ( @@ -77712,6 +77549,7 @@ dir = 5 }, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/departments/vault/directional/south, /turf/open/floor/iron/dark, /area/station/engineering/atmos) "tiP" = ( @@ -77806,7 +77644,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "tkB" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -77975,7 +77813,7 @@ /obj/structure/cable/layer3, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "tnJ" = ( /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/wood, @@ -78138,10 +77976,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/station/service/abandoned_gambling_den/gaming) -"tpJ" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/station/security/courtroom) "tpP" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -78312,7 +78146,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "trW" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/camera/directional/north{ @@ -78440,7 +78274,7 @@ /obj/machinery/power/apc/auto_name/directional/south, /obj/structure/extinguisher_cabinet/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "tti" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -78489,7 +78323,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -78604,7 +78438,7 @@ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/security/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/iron, @@ -79002,15 +78836,13 @@ /turf/open/floor/wood, /area/station/command/heads_quarters/captain/private) "tAL" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/structure/railing{ dir = 1 }, /obj/effect/turf_decal/tile/neutral{ dir = 1 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/station/hallway/primary/central/aft) "tAM" = ( @@ -79279,7 +79111,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "tDD" = ( /obj/machinery/computer/shuttle/mining{ dir = 1 @@ -79343,13 +79175,10 @@ /turf/open/floor/iron, /area/station/service/kitchen/abandoned) "tEd" = ( -/obj/machinery/flasher/directional/south{ - id = "AI"; - pixel_x = 26 - }, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/departments/vault/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/command/vault) "tEh" = ( /obj/structure/sign/directions/evac{ pixel_y = -8 @@ -79685,27 +79514,13 @@ /obj/machinery/firealarm/directional/south, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "tHV" = ( /turf/closed/wall/r_wall, /area/station/maintenance/department/medical/morgue) "tHW" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/directions/supply{ - dir = 1; - pixel_x = 32; - pixel_y = 8 - }, -/obj/structure/sign/directions/vault{ - dir = 1; - pixel_x = 32 - }, -/obj/structure/sign/directions/security{ - dir = 1; - pixel_x = 32; - pixel_y = -8 - }, /obj/effect/turf_decal/tile/neutral, /obj/machinery/light/directional/east, /turf/open/floor/iron, @@ -79715,7 +79530,7 @@ /obj/machinery/light_switch/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "tIe" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/door/airlock/maintenance_hatch{ @@ -79728,7 +79543,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, @@ -79810,26 +79625,17 @@ /turf/open/floor/carpet, /area/station/commons/vacant_room/office) "tJT" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/sign/directions/vault{ - pixel_x = 32; - pixel_y = -8 - }, -/obj/structure/sign/directions/dorms{ - pixel_x = 32 +/obj/structure/sign/directions/arrival{ + dir = 8; + pixel_x = 1 }, -/obj/structure/sign/directions/security{ - pixel_x = 32; - pixel_y = 8 +/obj/structure/sign/directions/lavaland{ + dir = 1; + pixel_x = 1; + pixel_y = 10 }, -/turf/open/floor/iron, -/area/station/hallway/primary/central/fore) +/turf/closed/wall, +/area/station/hallway/secondary/entry) "tJU" = ( /obj/machinery/atmospherics/pipe/smart/manifold/scrubbers/visible{ dir = 1 @@ -79876,7 +79682,7 @@ "tKq" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "tKw" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -79932,10 +79738,6 @@ /obj/effect/turf_decal/tile/neutral/full, /turf/open/floor/iron/half, /area/station/security/range) -"tLC" = ( -/obj/structure/sign/warning/radiation, -/turf/closed/wall/r_wall, -/area/station/engineering/supermatter/room) "tLW" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/red/fourcorners, @@ -80135,11 +79937,11 @@ }, /obj/effect/turf_decal/stripes/line, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/unres, /obj/machinery/door/airlock/medical/glass{ id_tag = "MedbayFoyer"; name = "Medbay Foyer" }, +/obj/effect/mapping_helpers/airlock/unres, /turf/open/floor/iron, /area/station/medical/medbay/lobby) "tOm" = ( @@ -80480,7 +80282,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "tSq" = ( /obj/structure/extinguisher_cabinet/directional/south, /obj/structure/table/reinforced, @@ -80695,7 +80497,7 @@ /obj/effect/spawner/random/armory/riot_helmet, /obj/effect/spawner/random/armory/riot_shield, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "tVC" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/landmark/start/hangover, @@ -80767,7 +80569,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "tWx" = ( /obj/effect/turf_decal/tile/red/diagonal_centre, /obj/effect/turf_decal/tile/blue/diagonal_edge, @@ -80981,6 +80783,13 @@ /obj/structure/sign/directions/command{ dir = 1 }, +/obj/structure/sign/directions/dorms{ + pixel_y = -8 + }, +/obj/structure/sign/directions/supply{ + dir = 1; + pixel_y = 8 + }, /turf/closed/wall, /area/station/commons/storage/tools) "tYz" = ( @@ -81196,7 +81005,7 @@ }, /area/station/science/research) "uaY" = ( -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible, +/obj/machinery/atmospherics/pipe/bridge_pipe/cyan/visible, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/layer_manifold/yellow/visible{ dir = 4 @@ -81215,10 +81024,10 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/maintenance/port/fore) "ubz" = ( @@ -81455,13 +81264,13 @@ }, /obj/effect/turf_decal/stripes/line, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/medical/abandoned) "udG" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible, +/obj/machinery/atmospherics/pipe/bridge_pipe/cyan/visible, /obj/machinery/atmospherics/pipe/layer_manifold/yellow/visible{ dir = 4 }, @@ -81570,7 +81379,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ueC" = ( /obj/structure/table/reinforced, /obj/structure/window/reinforced/spawner/directional/east, @@ -81678,10 +81487,6 @@ /obj/machinery/newscaster/directional/west, /turf/open/floor/iron/dark, /area/station/engineering/atmos/hfr_room) -"ugP" = ( -/obj/structure/sign/warning/radiation, -/turf/closed/wall/r_wall, -/area/station/maintenance/port) "uhb" = ( /turf/closed/wall/r_wall, /area/station/science/xenobiology) @@ -81711,7 +81516,7 @@ /obj/machinery/status_display/ai/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "uhH" = ( /obj/structure/cable, /obj/effect/spawner/structure/window/reinforced, @@ -81730,7 +81535,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/small/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "uhS" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -81887,7 +81692,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ujL" = ( /obj/structure/table/reinforced, /obj/item/clipboard, @@ -81970,7 +81775,7 @@ /obj/structure/cable, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ukR" = ( /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plating, @@ -82107,7 +81912,7 @@ dir = 5 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "umA" = ( /obj/machinery/airalarm/directional/south, /obj/effect/turf_decal/siding/blue{ @@ -82135,7 +81940,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/machinery/atmospherics/pipe/layer_manifold/scrubbers/hidden, @@ -82160,7 +81965,7 @@ dir = 8 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "umT" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/broken_floor, @@ -82247,7 +82052,7 @@ /turf/open/floor/iron, /area/station/engineering/supermatter/room) "unO" = ( -/obj/machinery/atmospherics/pipe/smart/simple/cyan/visible, +/obj/machinery/atmospherics/pipe/bridge_pipe/cyan/visible, /obj/machinery/atmospherics/pipe/layer_manifold/yellow/visible{ dir = 4 }, @@ -82285,9 +82090,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 }, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, /obj/machinery/light/small/directional/south, /obj/effect/turf_decal/tile/red/half/contrasted, /turf/open/floor/iron/dark, @@ -82306,7 +82108,7 @@ /obj/structure/table/wood/fancy/green, /obj/effect/spawner/random/aimodule/harmless, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "uoS" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/green/filled/line{ @@ -82361,10 +82163,11 @@ "upp" = ( /obj/item/kirbyplants/random, /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/aisat_interior"; + control_area = "/area/station/ai/satellite/interior"; name = "Antechamber Turret Control"; pixel_x = -32; - req_access = list("minisat") + req_access = list("minisat"); + dir = 8 }, /obj/machinery/camera/directional/west{ c_tag = "AI Satellite - Teleporter"; @@ -82374,13 +82177,13 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "upB" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "upM" = ( /obj/structure/table, /obj/item/storage/photo_album/prison, @@ -82404,7 +82207,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "uqk" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/neutral, @@ -82480,7 +82283,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "urq" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, @@ -82506,7 +82309,7 @@ /obj/machinery/firealarm/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "urC" = ( /obj/structure/cable, /obj/structure/table/reinforced, @@ -82561,7 +82364,7 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -82795,7 +82598,7 @@ cycle_id = "sci-toxins-passthrough" }, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/iron, /area/station/maintenance/department/science) "uuP" = ( @@ -82867,7 +82670,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/small/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "uvR" = ( /obj/machinery/camera/directional/south{ c_tag = "Security Hallway - Center"; @@ -83119,7 +82922,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "uyB" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -83269,12 +83072,9 @@ /turf/open/floor/wood/large, /area/station/service/library) "uzZ" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, -/obj/structure/lattice, -/turf/open/space/basic, -/area/space/nearstation) +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/circuit/telecomms/mainframe, +/area/station/tcommsat/server) "uAc" = ( /obj/structure/closet/crate, /obj/item/target/alien, @@ -83318,9 +83118,6 @@ /turf/open/floor/iron/dark, /area/station/engineering/atmos/hfr_room) "uAL" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, /obj/structure/table/reinforced, /obj/machinery/recharger{ pixel_x = -6; @@ -83332,6 +83129,7 @@ }, /obj/effect/turf_decal/tile/red/fourcorners, /obj/machinery/light/small/directional/south, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron/dark, /area/station/security/lockers) "uAV" = ( @@ -83529,18 +83327,14 @@ /turf/open/floor/iron, /area/station/engineering/lobby) "uDj" = ( -/obj/structure/cable, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, -/obj/effect/turf_decal/siding/wood{ - dir = 8 - }, -/obj/effect/turf_decal/tile/blue/half/contrasted{ - dir = 8 +/obj/machinery/door/poddoor/preopen{ + id = "bridgedoors"; + name = "Bridge Access Blast Door" }, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark, -/area/station/command/corporate_showroom) +/area/station/command/bridge) "uDk" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -83558,7 +83352,7 @@ }, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "uDp" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -83588,10 +83382,6 @@ /obj/structure/chair/stool/bar/directional/north, /turf/open/floor/carpet/green, /area/station/commons/lounge) -"uDI" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/station/service/chapel/funeral) "uDJ" = ( /obj/structure/sign/poster/contraband/random/directional/west, /obj/effect/turf_decal/tile/brown/anticorner/contrasted{ @@ -83670,9 +83460,6 @@ /turf/open/floor/iron/white/side, /area/station/science/research) "uFa" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, /obj/machinery/camera/directional/south{ c_tag = "Security - Brig Desk" }, @@ -83682,6 +83469,7 @@ dir = 4 }, /obj/effect/turf_decal/tile/red/half/contrasted, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron, /area/station/security/holding_cell) "uFs" = ( @@ -84046,7 +83834,7 @@ "uJH" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "uJN" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -84395,7 +84183,7 @@ /obj/item/kirbyplants/random, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "uNt" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/effect/turf_decal/bot_white, @@ -84453,8 +84241,9 @@ /turf/open/floor/iron, /area/station/maintenance/port) "uNU" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, +/obj/item/kirbyplants/random, +/obj/structure/sign/nanotrasen/directional/west, +/turf/open/floor/wood, /area/station/command/heads_quarters/hop) "uNY" = ( /turf/closed/wall, @@ -84505,9 +84294,7 @@ /area/station/service/abandoned_gambling_den) "uOC" = ( /obj/structure/lattice, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/space/basic, /area/space/nearstation) "uOE" = ( @@ -84669,9 +84456,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/smart/simple/orange/visible, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/space/basic, /area/space/nearstation) "uPS" = ( @@ -84731,24 +84516,6 @@ }, /turf/open/floor/iron, /area/station/commons/storage/primary) -"uQD" = ( -/obj/machinery/light/small/directional/north, -/obj/structure/sign/nanotrasen{ - pixel_x = 32; - pixel_y = 32 - }, -/obj/structure/sign/directions/engineering{ - desc = "A sign that shows there are doors here. There are doors everywhere!"; - icon_state = "doors"; - name = "WARNING: BLAST DOORS"; - pixel_y = 32 - }, -/obj/item/kirbyplants/organic/plant22, -/obj/effect/turf_decal/tile/blue/half/contrasted{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) "uQF" = ( /obj/machinery/computer/security/telescreen/entertainment/directional/west, /obj/effect/turf_decal/tile/neutral/half/contrasted{ @@ -84784,7 +84551,7 @@ /obj/structure/cable/layer3, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "uRe" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple/layer2{ dir = 10 @@ -84903,6 +84670,17 @@ }, /turf/open/floor/iron, /area/station/security/prison/safe) +"uSo" = ( +/obj/structure/sign/directions/upload{ + dir = 8; + pixel_y = 8 + }, +/obj/structure/sign/directions/science, +/obj/structure/sign/directions/medical{ + pixel_y = -8 + }, +/turf/closed/wall, +/area/station/service/barber) "uSL" = ( /obj/effect/turf_decal/box/white{ color = "#9FED58" @@ -84968,7 +84746,7 @@ /obj/structure/cable, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "uTM" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 @@ -85042,7 +84820,7 @@ dir = 1 }, /obj/effect/turf_decal/stripes/line, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/maintenance/port/fore) @@ -85086,7 +84864,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/stripes/corner, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "uVZ" = ( /obj/structure/cable, /obj/machinery/duct, @@ -85208,7 +84986,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "uYp" = ( /obj/machinery/computer/records/medical{ dir = 8 @@ -85601,7 +85379,7 @@ }, /obj/machinery/light/small/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "vdH" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -85808,7 +85586,7 @@ /obj/structure/cable, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "vgm" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/bridge_pipe/scrubbers/visible, @@ -85882,9 +85660,7 @@ /area/station/service/bar/backroom) "vhW" = ( /obj/item/kirbyplants/random, -/obj/structure/sign/warning/pods/directional/south{ - dir = 8 - }, +/obj/structure/sign/warning/pods/directional/south, /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 4 }, @@ -86119,11 +85895,9 @@ "vkX" = ( /obj/effect/turf_decal/bot, /obj/machinery/vending/cigarette, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/small/directional/west, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron/dark, /area/station/hallway/primary/central/fore) "vlA" = ( @@ -86340,6 +86114,7 @@ /obj/effect/turf_decal/trimline/yellow/mid_joiner{ dir = 8 }, +/obj/structure/sign/warning/secure_area/directional/south, /turf/open/floor/plating, /area/station/engineering/supermatter/room) "voi" = ( @@ -86461,10 +86236,8 @@ /turf/open/floor/iron, /area/station/engineering/storage_shared) "vqg" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/effect/landmark/start/hangover, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/wood, /area/station/commons/dorms) "vqt" = ( @@ -86621,7 +86394,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/iron, @@ -86892,6 +86665,7 @@ dir = 1 }, /obj/machinery/light/small/directional/south, +/obj/structure/sign/warning/secure_area/directional/south, /turf/open/floor/iron/half, /area/station/engineering/main) "vvy" = ( @@ -86950,7 +86724,7 @@ /obj/structure/cable, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "vvO" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -87096,7 +86870,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/small/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "vxQ" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -87148,7 +86922,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/spawner/random/armory/laser_gun, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "vyl" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -87223,7 +86997,7 @@ /obj/item/storage/belt/utility, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "vze" = ( /obj/structure/bookcase/random, /obj/item/radio/intercom/directional/south{ @@ -87324,13 +87098,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron, /area/station/hallway/primary/fore) -"vAl" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32; - pixel_y = 32 - }, -/turf/open/floor/wood, -/area/station/command/meeting_room/council) "vAs" = ( /obj/structure/cable, /obj/machinery/holopad/secure, @@ -87493,10 +87260,6 @@ icon_state = "foam_plating" }, /area/station/maintenance/department/science/xenobiology) -"vBX" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/station/engineering/storage/tech) "vBY" = ( /obj/effect/turf_decal/tile/yellow/half/contrasted{ dir = 4 @@ -87515,7 +87278,8 @@ /area/station/hallway/primary/fore) "vCk" = ( /obj/structure/sign/departments/medbay/alt{ - pixel_x = 32 + pixel_x = 32; + dir = 4 }, /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 4 @@ -87736,7 +87500,6 @@ /obj/structure/cable, /obj/machinery/camera/directional/east{ c_tag = "Dormitories - Hall"; - dir = 6; name = "dormitories camera" }, /obj/effect/turf_decal/tile/neutral/half/contrasted{ @@ -87778,7 +87541,7 @@ pixel_y = -16 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "vFC" = ( /obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ dir = 5 @@ -87847,7 +87610,7 @@ /obj/structure/secure_safe/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "vGP" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/railing{ @@ -88031,6 +87794,7 @@ }, /obj/structure/closet/radiation, /obj/machinery/firealarm/directional/north, +/obj/structure/sign/warning/secure_area/directional/east, /turf/open/floor/iron, /area/station/engineering/main) "vJh" = ( @@ -88107,7 +87871,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "vKl" = ( /obj/item/kirbyplants/random, /obj/effect/turf_decal/tile/brown/half/contrasted{ @@ -88151,6 +87915,7 @@ /obj/effect/turf_decal/tile/red/anticorner/contrasted{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron, /area/station/security/checkpoint/engineering) "vLg" = ( @@ -88310,17 +88075,6 @@ /obj/machinery/airalarm/directional/west, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"vOe" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = -32; - pixel_y = -32 - }, -/obj/machinery/light/small/directional/south, -/obj/item/kirbyplants/organic/plant22, -/obj/effect/turf_decal/tile/blue/half/contrasted, -/obj/machinery/firealarm/directional/south, -/turf/open/floor/iron/dark, -/area/station/command/bridge) "vOh" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -88395,7 +88149,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "vPe" = ( /obj/structure/cable, /obj/effect/spawner/structure/window/reinforced, @@ -88605,10 +88359,6 @@ "vRU" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/directions/lavaland{ - dir = 4; - pixel_y = -26 - }, /obj/effect/turf_decal/tile/neutral{ dir = 8 }, @@ -88629,7 +88379,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/mapping_helpers/airlock/red_alert_access, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "vSk" = ( /obj/structure/table/wood, /obj/item/folder/red, @@ -88971,7 +88721,7 @@ /obj/item/kirbyplants/random, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "vWV" = ( /obj/effect/turf_decal/bot, /obj/machinery/requests_console/directional/north{ @@ -89192,7 +88942,7 @@ "vZE" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "vZX" = ( /obj/machinery/status_display/ai/directional/north, /obj/effect/turf_decal/tile/yellow/opposingcorners, @@ -89222,7 +88972,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -89279,11 +89029,11 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/iron, /area/station/maintenance/port/aft) "wbe" = ( @@ -89585,7 +89335,7 @@ dir = 4 }, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, @@ -89716,7 +89466,7 @@ /obj/structure/cable/layer3, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "wgL" = ( /turf/open/floor/wood, /area/station/service/library/abandoned) @@ -90112,15 +89862,18 @@ /obj/structure/cable, /obj/machinery/button/door/incinerator_vent_atmos_aux{ pixel_x = -8; - pixel_y = 24 + pixel_y = 24; + dir = 1 }, /obj/machinery/button/door/incinerator_vent_atmos_main{ pixel_x = -8; - pixel_y = 36 + pixel_y = 36; + dir = 1 }, /obj/machinery/button/ignition/incinerator/atmos{ pixel_x = 8; - pixel_y = 36 + pixel_y = 36; + dir = 1 }, /obj/structure/closet/radiation, /obj/item/analyzer, @@ -90498,25 +90251,14 @@ /turf/open/floor/stone, /area/station/command/corporate_showroom) "wpu" = ( -/obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/sign/directions/evac{ - pixel_x = -32; - pixel_y = -8 - }, -/obj/structure/sign/directions/medical{ - pixel_x = -32 - }, -/obj/structure/sign/directions/arrival{ - dir = 8; - pixel_x = -32; - pixel_y = 8 +/obj/machinery/door/poddoor/preopen{ + id = "brigwindows"; + name = "Brig Front Blast Door" }, -/turf/open/floor/iron, -/area/station/hallway/primary/central/fore) +/obj/structure/cable, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/security/holding_cell) "wpx" = ( /obj/machinery/airalarm/directional/north, /obj/structure/table, @@ -90687,7 +90429,8 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/visible, /obj/structure/sign/warning/no_smoking{ - pixel_x = -32 + pixel_x = -32; + dir = 8 }, /obj/effect/turf_decal/stripes/line{ dir = 10 @@ -90833,7 +90576,7 @@ /obj/effect/turf_decal/trimline/dark_red/filled/line, /obj/structure/chair/office, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "wtS" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -90846,6 +90589,10 @@ /area/station/science/research) "wtU" = ( /obj/structure/cable, +/obj/structure/sign/plaques/kiddie/library{ + dir = 1; + pixel_y = 32 + }, /turf/open/floor/wood/tile, /area/station/service/library/artgallery) "wtV" = ( @@ -91170,9 +90917,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/station/hallway/primary/central/fore) "wxX" = ( @@ -91493,7 +91238,8 @@ "wCr" = ( /obj/machinery/button/crematorium{ id = "crematoriumChapel"; - pixel_x = 25 + pixel_x = 25; + dir = 4 }, /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -91925,7 +91671,7 @@ /obj/effect/turf_decal/stripes/line, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "wHW" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table/wood, @@ -92028,7 +91774,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/floor, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "wJs" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -92081,7 +91827,7 @@ /obj/structure/cable, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "wJY" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible, @@ -92100,14 +91846,12 @@ /turf/open/floor/iron/chapel, /area/station/service/chapel) "wKm" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/item/kirbyplants/random, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/turf_decal/tile/blue/half/contrasted{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron/dark, /area/station/hallway/secondary/exit/departure_lounge) "wKo" = ( @@ -92248,7 +91992,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "wLZ" = ( /obj/structure/cable, /obj/effect/turf_decal/siding/yellow{ @@ -92474,7 +92218,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/small/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "wQo" = ( /obj/structure/table/wood, /obj/machinery/recharger{ @@ -92558,7 +92302,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "wRz" = ( /obj/structure/table/wood, /obj/item/storage/briefcase/secure{ @@ -92745,7 +92489,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "wTF" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, @@ -92842,7 +92586,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "wVQ" = ( /obj/structure/table, /obj/effect/spawner/random/food_or_drink/snack, @@ -93157,8 +92901,8 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres, -/obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/commons/vacant_room/office) "xbp" = ( @@ -93453,7 +93197,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -93664,7 +93408,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, @@ -93720,7 +93464,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -93762,6 +93506,7 @@ "xil" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/brown/visible, /obj/machinery/light/directional/south, +/obj/structure/sign/warning/radiation/directional/south, /turf/open/floor/iron, /area/station/engineering/supermatter/room) "xin" = ( @@ -93847,7 +93592,7 @@ /obj/structure/cable, /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "xjo" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -94156,7 +93901,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "xnw" = ( /obj/structure/table/wood, /obj/machinery/computer/security/wooden_tv, @@ -94243,7 +93988,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "xpy" = ( /obj/effect/turf_decal/delivery, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -94266,6 +94011,7 @@ /obj/effect/turf_decal/tile/yellow{ dir = 4 }, +/obj/structure/sign/warning/secure_area/directional/east, /turf/open/floor/iron/dark/corner{ dir = 1 }, @@ -94375,7 +94121,7 @@ /obj/machinery/power/apc/auto_name/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "xrg" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -94642,7 +94388,7 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Drone Maintenance" }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/turf_decal/stripes/line{ dir = 1 }, @@ -94744,7 +94490,7 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch" }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/iron, @@ -94968,7 +94714,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/floor, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "xxN" = ( /obj/structure/table/wood, /obj/machinery/computer/security/telescreen/entertainment/directional/north, @@ -95047,9 +94793,11 @@ /turf/open/floor/iron, /area/station/hallway/primary/fore) "xyu" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, -/area/station/maintenance/department/medical/morgue) +/obj/item/kirbyplants/random, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/west, +/turf/open/floor/iron/dark, +/area/station/ai/satellite/interior) "xyC" = ( /obj/effect/decal/cleanable/blood/oil, /obj/structure/reflector/single, @@ -95397,13 +95145,11 @@ /turf/open/floor/circuit/telecomms/mainframe, /area/station/tcommsat/server) "xCf" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/neutral{ dir = 1 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/station/hallway/secondary/entry) "xCC" = ( @@ -95534,10 +95280,6 @@ /turf/open/floor/iron, /area/station/science/xenobiology) "xEg" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32; - pixel_y = -32 - }, /obj/machinery/light/small/directional/south, /obj/item/kirbyplants/organic/plant22, /obj/effect/turf_decal/tile/blue/half/contrasted, @@ -96208,7 +95950,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "xMI" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/machinery/computer/atmos_control/nitrogen_tank{ @@ -96259,7 +96001,7 @@ /obj/structure/cable/layer3, /mob/living/simple_animal/bot/secbot/pingsky, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "xMX" = ( /obj/structure/chair/office{ dir = 4 @@ -96269,7 +96011,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "xNe" = ( /obj/structure/lattice, /obj/structure/grille/broken, @@ -96334,12 +96076,14 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/obj/structure/disposalpipe/junction{ - dir = 8 - }, /obj/effect/turf_decal/tile/yellow/half/contrasted{ dir = 1 }, +/obj/effect/mapping_helpers/mail_sorting/engineering/general, +/obj/structure/disposalpipe/sorting/mail{ + dir = 8; + name = "Engineering Junction" + }, /turf/open/floor/iron, /area/station/engineering/lobby) "xNU" = ( @@ -96398,7 +96142,6 @@ /obj/structure/extinguisher_cabinet/directional/west, /obj/machinery/camera/directional/west{ c_tag = "Service - Kitchen Coldroom"; - dir = 10; name = "service camera" }, /turf/open/floor/iron/kitchen_coldroom/freezerfloor, @@ -96531,7 +96274,7 @@ /obj/structure/cable, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "xRv" = ( /obj/effect/landmark/start/hangover, /obj/effect/turf_decal/stripes/line, @@ -96548,7 +96291,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "xRF" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -96758,6 +96501,7 @@ network = list("ss13","engine") }, /obj/item/kirbyplants/random, +/obj/structure/sign/warning/radiation/directional/east, /turf/open/floor/iron, /area/station/engineering/supermatter/room) "xUq" = ( @@ -96912,7 +96656,7 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "xWw" = ( /obj/structure/disposalpipe/segment, /obj/machinery/door/airlock/maintenance_hatch{ @@ -96966,7 +96710,7 @@ /obj/item/multitool, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "xWQ" = ( /obj/structure/disposalpipe/segment, /obj/effect/decal/cleanable/dirt, @@ -97133,7 +96877,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/structure/cable, @@ -97190,7 +96934,7 @@ /obj/machinery/computer/bank_machine, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "yaj" = ( /obj/effect/turf_decal/siding/white/corner, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -97255,7 +96999,7 @@ /area/station/commons/dorms) "yaW" = ( /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "yba" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -97607,7 +97351,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ygc" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -97644,7 +97388,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/structure/disposalpipe/segment{ @@ -97693,13 +97437,14 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/floor, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "ygY" = ( /obj/structure/sign/directions/engineering{ desc = "A sign that shows there are doors here. There are doors everywhere!"; icon_state = "doors"; name = "WARNING: BLAST DOORS"; - pixel_x = -32 + pixel_x = -32; + dir = 8 }, /obj/effect/turf_decal/tile/red{ dir = 4 @@ -97773,7 +97518,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "yhJ" = ( /turf/open/floor/plating/airless, /area/space/nearstation) @@ -97989,15 +97734,12 @@ /turf/open/floor/plating, /area/station/engineering/supermatter/room) "ykl" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/departments/vault/directional/east{ - pixel_y = -32 +/obj/structure/sign/plaques/kiddie/library{ + dir = 1; + pixel_y = 32 }, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/turf/open/floor/wood/tile, +/area/station/service/library/artgallery) "ykm" = ( /obj/structure/table/wood, /obj/item/clipboard, @@ -98036,7 +97778,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 10 }, -/obj/machinery/computer/rdconsole{ +/obj/machinery/computer/rdconsole/unlocked{ dir = 4 }, /turf/open/floor/iron, @@ -105450,7 +105192,7 @@ jPe kXJ cQh bPC -bRD +bPC bPC tnG bPC @@ -105712,7 +105454,7 @@ ikT uQY ikT qTF -bRD +bPC ruN aRr csk @@ -105975,7 +105717,7 @@ hmU sdK xpt sdK -qdV +sdK qGs cdt idU @@ -107003,7 +106745,7 @@ hmU sdK tDB hmU -tEd +hmU cJh cdt idU @@ -107506,7 +107248,7 @@ xMX kXJ cQh bPC -bRD +bPC bPC dNg bPC @@ -107763,7 +107505,7 @@ lyf lMA btH bPC -uNh +xyu upp hzJ rKC @@ -116235,7 +115977,7 @@ efQ qYo wes gnH -sXE +gnH gnH wFJ wFJ @@ -117026,7 +116768,7 @@ qYo aaa vVc gAw -uzZ +qYo qYo ksq vVc @@ -117810,7 +117552,7 @@ ike cbs wry hIh -akM +nCi jyt hKV dXH @@ -118294,7 +118036,7 @@ xUy xqR qzc kUx -kTV +nUp chv dQl oIE @@ -119081,8 +118823,8 @@ ntd hWY heZ bpr -bpr -anB +qvn +gAw ilG cwI sHT @@ -119322,7 +119064,7 @@ xUy xqR vTc oMh -kTV +nUp oow qzT nAF @@ -119352,9 +119094,9 @@ jcL vUV ugr xil -tLC +gAw epC -qZb +pTC jaI kwX pTC @@ -119596,7 +119338,7 @@ ntd bzY cMA vog -anB +gAw aVW lbl sHT @@ -119866,10 +119608,10 @@ sHT qqQ sLe nzs -tLC +gAw eYG -qZb -uKY +pTC +rOa gcr pTC kWi @@ -120082,7 +119824,7 @@ unO jxJ avX tiC -jfL +hhM mtm guU nNz @@ -120637,7 +120379,7 @@ qJI nCl gAw dtX -ugP +pTC pTC pTC uKY @@ -120894,7 +120636,7 @@ xEt nlS cCY jxQ -nlS +ceV lDk pTC wle @@ -121904,18 +121646,18 @@ rex ttE gAw mwW -anB +gAw cCY cCY cCY gAw gAw gAw -tLC +gAw cCY rAd cCY -tLC +gAw gAw gAw gAw @@ -122939,11 +122681,11 @@ jkK fbn gTr rRD -pgA +rRD aYU pzA aYU -pgA +rRD rRD dOr mKv @@ -124201,7 +123943,7 @@ gvj rNf xLZ xLZ -rOa +xLZ xLZ iVV cZY @@ -124211,11 +123953,11 @@ eSk wif pEY vvp -lDV +tqo tUg gmP qeP -ceV +tqo nFr bfX gRE @@ -124481,11 +124223,11 @@ vvH hcQ dsj rRD -pgA +rRD hOa aGo auD -pgA +rRD fii pUf bID @@ -125708,9 +125450,9 @@ hwM hwM hwM hwM -djf +hwM bGC -djf +hwM hwM oXU vjF @@ -125751,7 +125493,7 @@ bjl lNk nSJ bDX -qLJ +wGA wGA wGA rAH @@ -126222,9 +125964,9 @@ oYs oYs azA nmw -qvn +nmw pKG -qvn +nmw nmw nmw nmw @@ -127038,7 +126780,7 @@ dGS dGS dGS dGS -vBX +dGS dsy nps nps @@ -127309,7 +127051,7 @@ lhZ rQi pTC pTC -qZb +pTC guQ pTC pTC @@ -128926,7 +128668,7 @@ msu deV kpa ydW -pOQ +anZ efQ qYo efQ @@ -129946,7 +129688,7 @@ qQM qQM uBt lVQ -gDW +kzc lpY tsJ wbP @@ -131921,11 +131663,11 @@ ilJ iyq iyq fHI -fHI +kLz mvA rtO rtO -qAQ +uSo sAh sAh qAQ @@ -132178,7 +131920,7 @@ sYU sYU sYU giC -sIZ +cpr hAc ctw lSl @@ -132374,7 +132116,7 @@ aaa aaa qld lYd -bbP +oVq kJd xcm lSh @@ -132706,14 +132448,14 @@ eMc wXU uiR piG -clH +nSv unK erS nXY plO nXY nXY -nXY +okb sxD nXY kHu @@ -132963,14 +132705,14 @@ pRS pRS pRS pRS -uNU +pRS jaV tPc mlE mlE mlE mlE -lBR +mlE mlE mlE mlE @@ -133158,7 +132900,7 @@ sjt dyi iWA vRU -tCs +fcP tCs tCs bJf @@ -133197,7 +132939,7 @@ xms xms xms diL -uQD +pnc drj bog xEg @@ -133454,10 +133196,10 @@ aaa qYo aaa diL -nBJ +uDj eVb jYX -nBJ +pOQ awc fIn rgW @@ -133733,7 +133475,7 @@ tns lZx lZx dQf -sGz +lZx pRS mcv qLS @@ -133808,7 +133550,7 @@ xPc sTV xPc tgT -pOQ +anZ aaa aaa qYo @@ -133990,7 +133732,7 @@ mqr uNy cIb asq -qnQ +uNU pRS tMj kxs @@ -135259,7 +135001,7 @@ yil obc sQA qoo -vAl +mGw mGw qHx awc @@ -136034,8 +135776,8 @@ kZu cjl yfN yiC -qUM -jDi +xkw +uzZ eDK dfb hup @@ -137556,7 +137298,7 @@ qAV ttF qAV qAV -okb +qAV rKN pXg jkf @@ -138110,7 +137852,7 @@ duA fqN mzL sFu -uDj +sFu duA tAL nEk @@ -138283,8 +138025,8 @@ sjt qld qld sjt -sjt -fcP +tJT +qso sde nSF koM @@ -138424,7 +138166,7 @@ tHV tHV tHV tHV -xyu +tHV eKU imN exJ @@ -138857,7 +138599,7 @@ bog jlZ gOU swj -jeI +aby aby igb gOU @@ -140148,7 +139890,7 @@ aby wRz aGZ teA -nSv +ivA lnm tLa nDn @@ -140650,7 +140392,7 @@ aaa qYo aaa diL -nBJ +uDj eVb jYX nBJ @@ -140907,10 +140649,10 @@ xms xms xms diL -uQD +pnc drj bog -vOe +xEg gOU prt wUw @@ -141159,7 +140901,7 @@ vRO eUH dvy lSl -kOj +sIZ kGK kNw anV @@ -141187,7 +140929,7 @@ vIQ twE vIQ vIQ -aFE +vIQ jaV tPc ksK @@ -141198,7 +140940,7 @@ ksK ksK ksK ksK -ksK +jom kxg hJs vlY @@ -141231,7 +140973,7 @@ dki jzN ram pvF -dki +sTR pAK aZO hXm @@ -141416,7 +141158,7 @@ xhW upX aGG lSl -wpu +cpr lSl lSl lSl @@ -141425,7 +141167,7 @@ pNq kHp skX pNq -lSl +gDW jol lSl lSl @@ -141444,7 +141186,7 @@ ltY lSl lSl dbU -qSd +lBR rRB nOP sqd @@ -141455,7 +141197,7 @@ uKZ sqd sqd rbb -jom +sqd aLv qAW gnz @@ -141488,7 +141230,7 @@ cUY fdX dju dju -kLz +qRA ocC xgH vZl @@ -141930,7 +141672,7 @@ hXg seX mEv vPp -tJT +oAW qzY qzY edB @@ -141944,11 +141686,11 @@ vPp qzY qzY jfK -sTR +oAW eFr ohP lZt -iWH +lZt wXU lZt lZt @@ -141964,7 +141706,7 @@ tHW juZ dHb clH -chF +clH clH clH clH @@ -142187,7 +141929,7 @@ hXg lDY tpZ kOj -kOj +chF nHQ nHQ xPt @@ -142217,11 +141959,11 @@ iVq iVq iVq iVq -iVq +iWH kuO orL orL -hgJ +bBK gFi ssp ssp @@ -142447,7 +142189,7 @@ aaa qYo aaa teY -ykl +tcG teY aaa qYo @@ -142791,7 +142533,7 @@ oWo oWo oGK oGK -pHy +oGK aaa qYo qYo @@ -142962,7 +142704,7 @@ lhY vZE ldU tcG -vZE +tEd vZE lhY qYo @@ -143757,7 +143499,7 @@ aSi aSi aSi aSi -tpJ +iVq wmM iVq oKL @@ -144040,7 +143782,7 @@ nHY gnh aBz lTC -pPl +ykl pPl pPl vPf @@ -145875,7 +145617,7 @@ vNn vNn oGK oGK -pHy +oGK aaa qYo aaa @@ -147411,7 +147153,7 @@ kgf cVh uuP brb -uDI +brb aaa aaa aaa @@ -147859,8 +147601,8 @@ lim uLf grp mJq -bBK -vMj +mJq +wpu jCb kHZ myc @@ -150986,7 +150728,7 @@ qOK nXH nXH nXH -njz +nXH mOH nXH nXH @@ -151687,7 +151429,7 @@ sgh lTJ gJk qIH -pOQ +anZ qYo hQq fNW @@ -153251,10 +152993,10 @@ efQ aaa aaa aaa -mfO +qYo pYW aaa -mfO +qYo aaa aaa aaa @@ -156056,7 +155798,7 @@ cBD hms qLF gJk -pOQ +qYo qYo efQ efQ @@ -157143,7 +156885,7 @@ fIQ uKw mfC uKw -pOQ +anZ efQ aaa aaa diff --git a/_maps/map_files/IceBoxStation/IceBoxStation.dmm b/_maps/map_files/IceBoxStation/IceBoxStation.dmm index c8a073fd4d044b..70abb1613d3989 100644 --- a/_maps/map_files/IceBoxStation/IceBoxStation.dmm +++ b/_maps/map_files/IceBoxStation/IceBoxStation.dmm @@ -23,6 +23,9 @@ /obj/item/taperecorder, /turf/open/floor/iron/dark, /area/station/security/interrogation) +"aax" = ( +/turf/open/floor/plating, +/area/station/maintenance/central/greater) "aaI" = ( /obj/structure/closet/wardrobe/white, /obj/item/clothing/shoes/jackboots, @@ -67,6 +70,12 @@ /obj/item/clothing/head/helmet/skull, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/underground/explored) +"abC" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/science/server) "abJ" = ( /obj/machinery/camera{ c_tag = "Service - Botany"; @@ -99,14 +108,6 @@ }, /turf/open/floor/iron, /area/station/science/robotics/lab) -"abQ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/brown/half/contrasted{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/maintenance/disposal) "abT" = ( /obj/structure/table, /obj/item/folder/white, @@ -123,7 +124,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, @@ -170,7 +171,7 @@ /area/station/tcommsat/computer) "adq" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -251,7 +252,7 @@ }, /obj/effect/turf_decal/tile/green, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aey" = ( /obj/machinery/camera/directional/east{ c_tag = "Xenobiology Pens - Starboard Fore"; @@ -359,7 +360,7 @@ }, /obj/effect/turf_decal/tile/red/half/contrasted, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "agI" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -478,7 +479,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ajr" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 @@ -683,7 +684,7 @@ }, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "alM" = ( /turf/closed/wall, /area/station/maintenance/aft/lesser) @@ -741,6 +742,15 @@ /obj/structure/flora/bush/style_random, /turf/open/floor/grass, /area/station/service/hydroponics) +"amD" = ( +/obj/machinery/navbeacon{ + codes_txt = "delivery;dir=1"; + location = "Bridge" + }, +/obj/structure/plasticflaps/opaque, +/obj/effect/turf_decal/bot, +/turf/open/floor/iron, +/area/station/maintenance/central/greater) "amE" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -767,6 +777,10 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/central) +"amS" = ( +/obj/effect/turf_decal/trimline/blue/filled/warning, +/turf/open/floor/iron/white, +/area/station/medical/medbay/aft) "amW" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -779,7 +793,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -983,20 +997,6 @@ }, /turf/open/floor/iron, /area/station/service/bar) -"aoP" = ( -/obj/machinery/door/airlock/external{ - dir = 8; - name = "Lower Medical External Access" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ - cycle_id = "chem-morgue-airlock" - }, -/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, -/obj/effect/mapping_helpers/broken_floor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/access/any/engineering/external, -/turf/open/floor/plating, -/area/station/medical/morgue) "aoW" = ( /obj/machinery/door/poddoor/preopen{ dir = 4; @@ -1048,7 +1048,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "apo" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 @@ -1090,14 +1090,6 @@ /obj/structure/extinguisher_cabinet/directional/east, /turf/open/floor/iron, /area/station/maintenance/department/electrical) -"apI" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/siding/thinplating/dark{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/command/gateway) "apS" = ( /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, @@ -1105,7 +1097,7 @@ dir = 4 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "apT" = ( /obj/structure/cable, /obj/machinery/door/poddoor/preopen{ @@ -1496,24 +1488,6 @@ }, /turf/open/floor/iron, /area/station/cargo/miningdock) -"aui" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, -/obj/structure/cable, -/turf/open/floor/iron/large, -/area/station/hallway/secondary/entry) -"aus" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 8 - }, -/obj/structure/railing/corner{ - dir = 8 - }, -/obj/machinery/power/apc/auto_name/directional/south, -/obj/structure/cable, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) "auw" = ( /obj/machinery/atmospherics/components/binary/pump/on{ dir = 8; @@ -1600,6 +1574,10 @@ }, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/icemoon/underground/explored) +"avw" = ( +/obj/effect/turf_decal/tile/purple, +/turf/open/floor/iron, +/area/station/service/janitor) "avC" = ( /obj/machinery/firealarm/directional/east, /turf/open/floor/iron/white/corner{ @@ -1630,7 +1608,7 @@ /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "awe" = ( /obj/effect/turf_decal/siding/wood{ dir = 4 @@ -1975,7 +1953,7 @@ dir = 4 }, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aAl" = ( /obj/machinery/computer/mech_bay_power_console{ dir = 1 @@ -2017,6 +1995,19 @@ /obj/machinery/firealarm/directional/south, /turf/open/floor/iron/dark, /area/station/command/heads_quarters/cmo) +"aBE" = ( +/obj/machinery/door/airlock{ + name = "Custodial Closet" + }, +/obj/structure/disposalpipe/segment, +/obj/effect/landmark/event_spawn, +/obj/effect/landmark/navigate_destination, +/obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/all/service/janitor, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/service/janitor) "aBK" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, @@ -2063,13 +2054,6 @@ }, /turf/open/floor/iron, /area/station/cargo/miningdock) -"aCj" = ( -/obj/structure/sign/poster/official/twelve_gauge/directional/north, -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/turf/open/floor/iron, -/area/mine/laborcamp/security) "aCo" = ( /obj/structure/chair/wood{ dir = 8 @@ -2091,13 +2075,6 @@ /obj/machinery/light/small/directional/south, /turf/open/floor/iron/dark, /area/station/medical/morgue) -"aCA" = ( -/obj/effect/turf_decal/trimline/blue/filled/warning, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white, -/area/station/medical/treatment_center) "aCC" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -2266,7 +2243,7 @@ }, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "aFn" = ( /obj/effect/decal/cleanable/blood/oil, /obj/effect/decal/cleanable/dirt, @@ -2288,12 +2265,13 @@ /obj/machinery/dna_scannernew, /turf/open/floor/iron/dark, /area/station/science/genetics) -"aFz" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/tile/brown/half/contrasted, -/turf/open/floor/iron/dark, -/area/station/cargo/miningdock) +"aFy" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/effect/turf_decal/tile/red/half, +/turf/open/floor/iron/smooth_half, +/area/station/security/brig/upper) "aFG" = ( /obj/structure/railing/corner{ dir = 1 @@ -2321,6 +2299,12 @@ /obj/item/flashlight/lantern/on, /turf/open/misc/hay/icemoon, /area/icemoon/underground/explored) +"aGl" = ( +/obj/item/radio/intercom/directional/east, +/turf/open/floor/iron/white/side{ + dir = 10 + }, +/area/station/science/research) "aGr" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/camera/directional/east{ @@ -2489,14 +2473,6 @@ }, /turf/open/floor/plating/snowed/icemoon, /area/icemoon/underground/explored) -"aID" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/science/robotics/mechbay) "aIE" = ( /obj/structure/closet/toolcloset, /turf/open/floor/plating, @@ -2521,6 +2497,17 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark, /area/station/medical/morgue) +"aIW" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Mining Station Maintenance" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/airlock/access/all/supply/mining_station, +/obj/structure/cable, +/turf/open/floor/iron/dark/textured_half{ + dir = 1 + }, +/area/station/maintenance/department/cargo) "aJa" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -2660,6 +2647,17 @@ /obj/effect/turf_decal/tile/blue, /turf/open/floor/iron, /area/station/hallway/primary/fore) +"aLf" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/item/radio/intercom/directional/east, +/obj/machinery/light/directional/east, +/obj/structure/cable, +/turf/open/floor/iron/white/corner, +/area/station/hallway/secondary/entry) "aLz" = ( /obj/machinery/conveyor{ id = "garbage" @@ -2694,8 +2692,9 @@ "aLX" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/maintenance/aft/greater) "aMa" = ( @@ -2707,7 +2706,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -2733,7 +2732,7 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/sign/poster/contraband/random/directional/north, +/obj/structure/sign/poster/contraband/random/directional/west, /turf/open/floor/plating, /area/station/maintenance/department/medical/central) "aMr" = ( @@ -2821,9 +2820,7 @@ /turf/open/floor/plating, /area/mine/eva/lower) "aNE" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron, /area/station/hallway/primary/central) "aOb" = ( @@ -2854,7 +2851,8 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/vending/clothing, /obj/structure/noticeboard/staff{ - pixel_y = 36 + pixel_y = 36; + dir = 1 }, /turf/open/floor/iron, /area/station/commons/locker) @@ -2876,11 +2874,6 @@ }, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/icemoon/underground/explored) -"aOS" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white/textured, -/area/station/security/medical) "aOU" = ( /obj/machinery/door/firedoor, /obj/structure/disposalpipe/trunk/multiz/down, @@ -2976,7 +2969,7 @@ dir = 1 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "aPZ" = ( /obj/machinery/atmospherics/pipe/multiz/scrubbers/visible/layer2, /obj/machinery/atmospherics/pipe/multiz/supply/visible/layer4, @@ -3025,6 +3018,13 @@ /obj/structure/cable, /turf/open/floor/circuit/telecomms/mainframe, /area/station/tcommsat/server) +"aQS" = ( +/obj/effect/turf_decal/stripes/line, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/iron/white, +/area/station/science/ordnance/office) "aQW" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -3111,7 +3111,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "aRR" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -3158,18 +3158,11 @@ /obj/effect/turf_decal/box, /turf/open/floor/iron/dark, /area/station/science/ordnance/office) -"aSC" = ( -/obj/structure/window/spawner/directional/south, -/obj/item/radio/intercom/directional/west, -/obj/effect/turf_decal/tile/brown/half/contrasted, -/obj/structure/railing/corner, -/turf/open/floor/iron/dark, -/area/station/maintenance/disposal) "aSH" = ( /obj/machinery/flasher/portable, /obj/effect/turf_decal/tile/red/half/contrasted, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "aSI" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -3238,6 +3231,14 @@ }, /turf/open/floor/plating/icemoon, /area/station/science/ordnance/bomb/planet) +"aTA" = ( +/obj/effect/landmark/start/hangover, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/sign/warning/cold_temp/directional/north, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/medical/morgue) "aTE" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 4 @@ -3495,7 +3496,7 @@ req_access = list("armory") }, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "aWo" = ( /obj/machinery/hydroponics/constructable, /obj/effect/decal/cleanable/dirt, @@ -3687,12 +3688,10 @@ /turf/open/floor/plating, /area/station/maintenance/port/aft) "aZw" = ( -/obj/structure/sign/warning/secure_area{ - desc = "A warning sign which reads 'BOMB RANGE"; - name = "BOMB RANGE" - }, -/turf/closed/wall, -/area/station/science/ordnance/bomb/planet) +/obj/structure/flora/rock/pile/icy/style_random, +/obj/structure/sign/warning/secure_area/directional/north, +/turf/open/misc/asteroid/snow/icemoon, +/area/icemoon/underground/explored) "aZx" = ( /obj/machinery/camera/directional/east{ c_tag = "Telecomms Monitoring"; @@ -3886,13 +3885,6 @@ }, /turf/open/floor/plating, /area/station/maintenance/department/medical/morgue) -"bbB" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) "bbM" = ( /obj/effect/turf_decal/tile/blue{ dir = 8 @@ -3908,16 +3900,6 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron/dark, /area/station/medical/paramedic) -"bbQ" = ( -/obj/structure/chair{ - dir = 4 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/security/courtroom) "bbU" = ( /obj/structure/closet/toolcloset, /obj/machinery/status_display/evac/directional/south, @@ -4053,7 +4035,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "bdQ" = ( /obj/structure/table, /obj/item/assembly/signaler{ @@ -4093,7 +4075,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bep" = ( /obj/effect/landmark/start/hangover, /turf/open/floor/iron, @@ -4190,12 +4172,6 @@ /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating, /area/station/maintenance/aft/lesser) -"bgt" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/mine/eva) "bgx" = ( /turf/closed/wall/r_wall, /area/station/maintenance/starboard/aft) @@ -4218,15 +4194,7 @@ name = "Private Channel" }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) -"bgF" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, -/turf/open/floor/iron/large, -/area/station/command/gateway) +/area/station/ai/satellite/chamber) "bgK" = ( /obj/structure/table, /obj/item/toner, @@ -4310,16 +4278,6 @@ }, /turf/open/floor/plating, /area/mine/production) -"bij" = ( -/obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/white/line, -/obj/effect/turf_decal/stripes/white/line{ - dir = 1 - }, -/obj/effect/turf_decal/tile/blue/fourcorners, -/obj/structure/cable, -/turf/open/floor/iron/dark/textured, -/area/station/medical/treatment_center) "bin" = ( /obj/effect/turf_decal/stripes/asteroid/line{ dir = 4 @@ -4439,7 +4397,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -4497,7 +4455,7 @@ "bkr" = ( /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "bkC" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -4508,6 +4466,14 @@ /obj/effect/turf_decal/tile/red/half/contrasted, /turf/open/floor/iron, /area/station/security/brig/upper) +"bkI" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/turf/open/floor/iron/white/side{ + dir = 9 + }, +/area/station/science/research) "bkQ" = ( /obj/structure/tank_holder/extinguisher, /obj/structure/sign/warning/biohazard/directional/north, @@ -4753,7 +4719,7 @@ /obj/machinery/nuclearbomb/selfdestruct, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "bnL" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/door/airlock/maintenance_hatch, @@ -4864,7 +4830,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "bpq" = ( /obj/effect/turf_decal/siding/thinplating{ dir = 1 @@ -4889,8 +4855,8 @@ /area/station/engineering/atmos/mix) "bpK" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/greater) "bpQ" = ( @@ -4968,7 +4934,7 @@ "bqt" = ( /obj/machinery/airalarm/directional/west, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "bqx" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -5037,7 +5003,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "brp" = ( /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/tile/blue{ @@ -5297,12 +5263,6 @@ "btU" = ( /turf/closed/wall, /area/station/medical/morgue) -"btW" = ( -/obj/structure/cable, -/turf/open/floor/iron/white/corner{ - dir = 1 - }, -/area/station/hallway/secondary/entry) "bub" = ( /obj/machinery/vending/cola/red, /obj/machinery/light/warm/directional/north, @@ -5566,6 +5526,19 @@ "bxe" = ( /turf/closed/wall/r_wall, /area/station/maintenance/solars/starboard/fore) +"bxp" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/turf/open/floor/iron/white, +/area/station/science/ordnance/office) "bxJ" = ( /obj/structure/closet/crate, /turf/open/floor/plating, @@ -5684,6 +5657,10 @@ /obj/structure/girder, /turf/open/floor/plating, /area/station/maintenance/fore) +"byT" = ( +/mob/living/basic/lizard/wags_his_tail, +/turf/open/floor/iron, +/area/station/service/janitor) "bza" = ( /obj/structure/fence/end{ dir = 8 @@ -5728,7 +5705,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/green, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "bzD" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "mining-aux-mechbay-external" @@ -5777,19 +5754,6 @@ /obj/structure/chair/stool/directional/north, /turf/open/floor/carpet, /area/station/command/heads_quarters/qm) -"bAj" = ( -/obj/machinery/door/firedoor{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/white/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/white/line{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue/fourcorners, -/turf/open/floor/iron/dark/textured, -/area/station/medical/cryo) "bAk" = ( /obj/machinery/firealarm/directional/west, /turf/open/floor/carpet, @@ -6000,7 +5964,8 @@ /area/station/engineering/lobby) "bDB" = ( /obj/structure/plaque/static_plaque/golden/commission/icebox{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) @@ -6109,7 +6074,7 @@ }, /obj/effect/mapping_helpers/airlock/access/all/command/general, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "bEC" = ( /obj/effect/turf_decal/siding/wood{ dir = 8 @@ -6135,7 +6100,7 @@ "bEN" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, /area/station/maintenance/department/chapel) "bEX" = ( @@ -6211,6 +6176,11 @@ /obj/effect/turf_decal/tile/brown/half/contrasted, /turf/open/floor/iron, /area/station/command/bridge) +"bGl" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/circuit, +/area/station/science/robotics/mechbay) "bGm" = ( /obj/machinery/firealarm/directional/south, /obj/structure/filingcabinet/white, @@ -6350,7 +6320,7 @@ /turf/open/floor/iron/dark/smooth_edge{ dir = 4 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "bIl" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -6452,7 +6422,7 @@ "bJj" = ( /obj/effect/turf_decal/tile/red/half/contrasted, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "bJp" = ( /obj/machinery/camera/directional/east{ c_tag = "Security - Permabrig Workout"; @@ -6495,10 +6465,17 @@ name = "Firefighting Equipment" }, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"bKz" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/white, +/area/station/science/explab) "bKA" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -6580,17 +6557,13 @@ /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/wood, /area/station/maintenance/fore) -"bLs" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/turf/open/floor/iron/dark/smooth_large, -/area/station/hallway/secondary/entry) "bLz" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "bLA" = ( /obj/structure/closet, /turf/open/floor/plating, @@ -6682,9 +6655,16 @@ /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/abandoned, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) +"bMV" = ( +/obj/structure/railing/corner/end{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/service/chapel) "bMY" = ( /turf/open/floor/glass/reinforced, /area/station/hallway/primary/starboard) @@ -6732,12 +6712,6 @@ /obj/effect/mapping_helpers/airlock/access/all/engineering/atmos, /turf/open/floor/iron/dark, /area/station/engineering/atmos/storage/gas) -"bNH" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron/white, -/area/station/medical/cryo) "bOg" = ( /obj/item/kirbyplants/random, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -6755,8 +6729,8 @@ "bOj" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical/central) "bOk" = ( @@ -6828,7 +6802,7 @@ "bPc" = ( /obj/structure/reagent_dispensers/watertank, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "bPl" = ( /obj/structure/table/wood, /obj/item/folder/blue, @@ -7169,7 +7143,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "bTM" = ( /obj/structure/closet/crate, /obj/machinery/light/small/directional/south, @@ -7285,25 +7259,6 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/iron/textured, /area/station/maintenance/fore) -"bVI" = ( -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/obj/item/radio/intercom/directional/south, -/obj/effect/turf_decal/tile/neutral/anticorner/contrasted{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/commons/fitness) -"bVJ" = ( -/obj/structure/cable, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/cargo/miningdock) "bVL" = ( /obj/machinery/space_heater, /obj/structure/sign/poster/official/random/directional/east, @@ -7355,7 +7310,7 @@ /area/station/maintenance/port/fore) "bWn" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "bWp" = ( /obj/effect/spawner/structure/window/reinforced/tinted, /turf/open/floor/iron/dark, @@ -7419,6 +7374,12 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/service/chapel) +"bXa" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/command/gateway) "bXf" = ( /obj/structure/closet/emcloset, /turf/open/floor/plating, @@ -7438,18 +7399,9 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/station/engineering/engine_smes) -"bXx" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/obj/structure/cable, -/turf/open/floor/iron/white/corner{ - dir = 1 - }, -/area/station/hallway/secondary/entry) "bXy" = ( /turf/open/openspace, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "bXD" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -7477,22 +7429,13 @@ }, /obj/effect/spawner/random/armory/laser_gun, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "bYi" = ( /obj/machinery/light/directional/south, /obj/effect/turf_decal/tile/yellow/half/contrasted, /obj/machinery/firealarm/directional/south, /turf/open/floor/iron, /area/station/hallway/primary/aft) -"bYm" = ( -/obj/structure/chair/pew{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/chapel{ - dir = 8 - }, -/area/station/service/chapel) "bYu" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -7582,7 +7525,7 @@ }, /obj/structure/cable, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical/morgue) @@ -7693,7 +7636,8 @@ }, /obj/effect/turf_decal/bot_white, /obj/structure/sign/picture_frame/portrait/bar{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/wood/large, /area/station/service/bar/atrium) @@ -7745,6 +7689,15 @@ dir = 1 }, /area/mine/living_quarters) +"cbf" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/plating, +/area/station/maintenance/aft/greater) "cbk" = ( /turf/open/floor/iron, /area/mine/mechbay) @@ -7768,7 +7721,7 @@ "cbz" = ( /obj/machinery/light/small/directional/south, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "cbC" = ( /obj/machinery/meter, /obj/effect/turf_decal/trimline/dark_red/arrow_ccw{ @@ -7820,7 +7773,8 @@ /area/station/hallway/primary/central) "cct" = ( /obj/structure/noticeboard/captain{ - pixel_y = 36 + pixel_y = 36; + dir = 1 }, /turf/open/floor/wood, /area/station/command/meeting_room) @@ -7839,7 +7793,7 @@ "ccw" = ( /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "ccx" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 @@ -8018,7 +7972,8 @@ "ceO" = ( /obj/machinery/button/crematorium{ id = "crematoriumChapel"; - pixel_x = 25 + pixel_x = 25; + dir = 4 }, /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -8062,7 +8017,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "cfh" = ( /obj/structure/railing{ dir = 1 @@ -8244,13 +8199,11 @@ /turf/open/floor/wood/large, /area/mine/eva/lower) "chP" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/structure/marker_beacon/burgundy, /obj/effect/turf_decal/weather/snow/corner{ dir = 5 }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/plating/snowed/icemoon, /area/icemoon/surface/outdoors/nospawn) "chQ" = ( @@ -8262,6 +8215,11 @@ }, /turf/open/floor/iron/white/side, /area/mine/living_quarters) +"chZ" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/white, +/area/station/science/xenobiology) "cie" = ( /obj/structure/cable, /obj/effect/turf_decal/tile/purple, @@ -8541,13 +8499,6 @@ /obj/structure/closet/crate/trashcart, /turf/open/floor/iron/dark, /area/station/maintenance/disposal) -"cmV" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/hallway/secondary/entry) "cmX" = ( /obj/effect/spawner/random/structure/crate, /obj/effect/mapping_helpers/broken_floor, @@ -8618,7 +8569,7 @@ "cnz" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -8635,6 +8586,12 @@ }, /turf/open/floor/iron, /area/station/cargo/office) +"cnQ" = ( +/obj/effect/turf_decal/tile/brown{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/commons/storage/mining) "cod" = ( /obj/effect/turf_decal/tile/yellow/half/contrasted{ dir = 1 @@ -8662,6 +8619,16 @@ /obj/effect/decal/cleanable/rubble, /turf/open/floor/iron, /area/mine/production) +"coZ" = ( +/obj/machinery/camera/directional/south{ + c_tag = "Locker Room West" + }, +/obj/structure/cable, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/commons/locker) "cpe" = ( /obj/machinery/atmospherics/components/tank/air{ dir = 8 @@ -8773,7 +8740,7 @@ /obj/structure/disposalpipe/segment, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, /obj/effect/mapping_helpers/airlock/access/any/service/library, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -8835,7 +8802,15 @@ /obj/structure/cable, /obj/effect/turf_decal/tile/red/half/contrasted, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) +"cqY" = ( +/obj/item/stack/ore/silver, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/brown/anticorner/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/cargo/miningdock) "crf" = ( /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/tile/red{ @@ -8950,7 +8925,7 @@ "ctl" = ( /obj/structure/grille, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "ctm" = ( /obj/structure/railing{ dir = 5 @@ -9043,6 +9018,12 @@ /obj/machinery/light/small/directional/west, /turf/open/floor/wood, /area/station/commons/vacant_room/office) +"cuu" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/circuit, +/area/station/science/robotics/mechbay) "cuJ" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 @@ -9053,10 +9034,6 @@ /obj/machinery/light/small/directional/north, /turf/open/floor/iron/dark, /area/station/medical/virology) -"cuP" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/hallway/secondary/exit/departure_lounge) "cvg" = ( /obj/effect/mapping_helpers/trapdoor_placer, /obj/effect/turf_decal/delivery, @@ -9083,7 +9060,7 @@ pixel_y = -8 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "cvj" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ dir = 1 @@ -9242,7 +9219,7 @@ "cxl" = ( /obj/machinery/status_display/evac/directional/west, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "cxp" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/closet/secure_closet/personal{ @@ -9276,7 +9253,7 @@ /area/station/medical/medbay/central) "cxO" = ( /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "cxP" = ( /obj/structure/disposalpipe/sorting/mail/flip{ dir = 4 @@ -9327,7 +9304,7 @@ /area/station/medical/surgery/fore) "cyA" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -9349,10 +9326,6 @@ /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"cyL" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/science/explab) "cyU" = ( /obj/structure/table, /obj/item/storage/toolbox/emergency, @@ -9373,13 +9346,7 @@ /obj/item/radio/intercom/directional/south, /obj/machinery/light/small/directional/south, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) -"czj" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/medical/morgue) +/area/station/ai/satellite/interior) "czl" = ( /obj/effect/turf_decal/tile/brown/fourcorners, /obj/machinery/modular_computer/preset/cargochat/engineering, @@ -9517,7 +9484,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "cAM" = ( /obj/structure/table, /obj/item/folder/white{ @@ -9602,11 +9569,8 @@ dir = 4 }, /obj/machinery/light/directional/east, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "cBY" = ( /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/underground/unexplored/rivers/deep/shoreline) @@ -9696,7 +9660,7 @@ name = "Maintenance" }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) "cDz" = ( @@ -9824,6 +9788,11 @@ /obj/item/radio/intercom/directional/north, /turf/open/floor/iron/smooth_edge, /area/station/security/lockers) +"cFp" = ( +/obj/effect/turf_decal/tile/brown, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/commons/storage/mining) "cFr" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/spawner/structure/window/reinforced/tinted, @@ -9837,7 +9806,7 @@ /obj/machinery/light/small/directional/north, /obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "cFZ" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -9873,7 +9842,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "cGu" = ( /obj/structure/closet/crate, /turf/open/floor/plating, @@ -9895,12 +9864,6 @@ }, /turf/open/floor/iron, /area/station/security/prison/garden) -"cGS" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating, -/area/station/maintenance/disposal) "cGZ" = ( /obj/machinery/airalarm/directional/north, /turf/open/floor/iron/stairs/medium{ @@ -9955,7 +9918,7 @@ }, /obj/effect/turf_decal/tile/green, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "cHQ" = ( /obj/machinery/vending/wardrobe/robo_wardrobe, /obj/machinery/button/door/directional/east{ @@ -10052,9 +10015,9 @@ /turf/open/floor/iron, /area/station/hallway/primary/fore) "cJi" = ( -/obj/structure/sign/warning, -/turf/closed/wall/r_wall, -/area/station/security/warden) +/obj/structure/sign/warning/directional/south, +/turf/open/misc/asteroid/snow/icemoon, +/area/icemoon/surface/outdoors/nospawn) "cJk" = ( /obj/machinery/chem_mass_spec, /obj/effect/turf_decal/tile/yellow/anticorner/contrasted{ @@ -10070,6 +10033,12 @@ "cJt" = ( /turf/open/floor/plating, /area/station/hallway/secondary/entry) +"cJu" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/hallway/secondary/entry) "cJw" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/effect/turf_decal/tile/yellow/half/contrasted{ @@ -10431,13 +10400,6 @@ }, /turf/open/floor/iron, /area/station/science/xenobiology) -"cOa" = ( -/obj/structure/sign/warning/secure_area{ - desc = "A warning sign which reads 'SERVER ROOM'."; - name = "SERVER ROOM" - }, -/turf/closed/wall, -/area/station/tcommsat/computer) "cOi" = ( /obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/mix_output{ dir = 8 @@ -10597,6 +10559,17 @@ /obj/effect/mapping_helpers/airlock/access/any/security/maintenance, /turf/open/floor/plating, /area/station/maintenance/fore) +"cQy" = ( +/obj/machinery/door/airlock/highsecurity{ + name = "Chemistry Lab Exit" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "chem-airlock" + }, +/obj/effect/mapping_helpers/airlock/access/all/medical/chemistry, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/medical/chemistry) "cQA" = ( /obj/effect/turf_decal/trimline/neutral/warning{ dir = 8 @@ -10611,14 +10584,14 @@ /turf/open/floor/iron/dark/smooth_edge{ dir = 8 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "cQL" = ( /obj/machinery/porta_turret/ai{ dir = 4 }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "cQV" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /obj/effect/turf_decal/siding/dark_blue, @@ -10759,7 +10732,7 @@ /obj/machinery/door/airlock/maintenance, /obj/structure/barricade/wooden, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -10788,7 +10761,7 @@ /obj/machinery/door/airlock/maintenance{ name = "Locker Room Maintenance" }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/structure/cable, /turf/open/floor/plating, @@ -11055,7 +11028,7 @@ /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -11131,10 +11104,19 @@ "cZv" = ( /obj/machinery/holopad/secure, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "cZD" = ( /turf/open/floor/iron/checker, /area/station/maintenance/port/fore) +"cZG" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/iron/cafeteria{ + dir = 8 + }, +/area/station/hallway/secondary/entry) "cZJ" = ( /obj/effect/spawner/structure/window/reinforced/tinted, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -11371,6 +11353,18 @@ }, /turf/open/floor/iron/dark, /area/station/security/interrogation) +"dcz" = ( +/obj/machinery/camera/directional/south{ + c_tag = "Research Division Break Room"; + network = list("ss13","rd") + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/spawner/random/entertainment/arcade{ + dir = 1 + }, +/obj/machinery/light/small/directional/south, +/turf/open/floor/iron/dark, +/area/station/science/breakroom) "dcC" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -11465,10 +11459,6 @@ }, /turf/open/floor/iron/smooth, /area/station/maintenance/starboard/fore) -"ddk" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/circuit, -/area/station/science/robotics/mechbay) "ddm" = ( /mob/living/basic/pet/penguin/emperor{ name = "Club" @@ -11554,7 +11544,7 @@ "deg" = ( /obj/structure/cable/layer3, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "dei" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/vending/cigarette, @@ -11763,7 +11753,7 @@ dir = 9 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "dhR" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/bookcase/random, @@ -11854,14 +11844,14 @@ }, /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "dix" = ( /obj/machinery/light/small/dim/directional/south, /turf/open/floor/plating, /area/station/maintenance/port/fore) "diC" = ( /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "diI" = ( /obj/machinery/mech_bay_recharge_port, /obj/item/radio/intercom/directional/south, @@ -12014,6 +12004,10 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron, /area/station/science/robotics/lab) +"dkt" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/grimy, +/area/station/hallway/secondary/entry) "dku" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -12024,17 +12018,9 @@ /turf/open/floor/plating, /area/station/maintenance/starboard/fore) "dky" = ( -/obj/effect/turf_decal/tile/red{ - dir = 8 - }, -/obj/machinery/airalarm/directional/south, -/turf/open/floor/iron, -/area/station/hallway/primary/fore) -"dkK" = ( -/obj/structure/railing/corner, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) +/obj/structure/sign/nanotrasen/directional/east, +/turf/open/openspace/icemoon/keep_below, +/area/icemoon/underground/explored) "dkT" = ( /obj/effect/spawner/structure/window/hollow/reinforced/middle{ dir = 1 @@ -12062,6 +12048,15 @@ /obj/effect/landmark/start/cook, /turf/open/floor/iron/kitchen/diagonal, /area/station/service/kitchen) +"dlq" = ( +/obj/machinery/camera/directional/south{ + c_tag = "Labor Camp Security Office"; + network = list("labor") + }, +/obj/effect/turf_decal/tile/red/half/contrasted, +/obj/machinery/light/directional/south, +/turf/open/floor/iron, +/area/mine/laborcamp/security) "dlt" = ( /obj/effect/turf_decal/weather/snow/corner{ dir = 8 @@ -12138,12 +12133,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/station/maintenance/department/electrical) -"dmU" = ( -/obj/structure/cable, -/obj/structure/table, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/aft/lesser) "dmV" = ( /obj/structure/cable, /obj/machinery/door/poddoor/preopen{ @@ -12292,7 +12281,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "doM" = ( /obj/structure/table, /obj/item/paper{ @@ -12325,6 +12314,7 @@ /obj/machinery/light/directional/south, /obj/effect/spawner/random/vending/colavend, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron/dark, /area/station/hallway/secondary/entry) "dpq" = ( @@ -12408,7 +12398,7 @@ /turf/open/floor/plating, /area/station/security/checkpoint/medical) "dqR" = ( -/obj/machinery/computer/rdconsole, +/obj/machinery/computer/rdconsole/unlocked, /obj/structure/cable, /obj/effect/turf_decal/tile/green/anticorner/contrasted{ dir = 8 @@ -12793,13 +12783,6 @@ }, /turf/open/floor/plating/snowed/icemoon, /area/icemoon/surface/outdoors/less_spawns) -"dwb" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/hallway/secondary/entry) "dwj" = ( /obj/machinery/atmospherics/components/binary/pump/off, /obj/machinery/atmospherics/pipe/layer_manifold/supply/hidden{ @@ -12933,6 +12916,15 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor/iron_smooth, /area/station/maintenance/port/lesser) +"dxF" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/iron/large, +/area/station/hallway/secondary/entry) "dxI" = ( /obj/structure/chair/stool/directional/west, /obj/effect/turf_decal/tile/yellow{ @@ -12994,7 +12986,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "dzl" = ( /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plating, @@ -13094,16 +13086,6 @@ dir = 5 }, /area/station/command/heads_quarters/rd) -"dAP" = ( -/obj/structure/cable, -/obj/structure/chair{ - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/aft/greater) "dAQ" = ( /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable, @@ -13184,7 +13166,7 @@ network = list("aicore") }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "dBX" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, @@ -13387,18 +13369,6 @@ }, /turf/open/floor/plating, /area/station/maintenance/fore) -"dER" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/obj/machinery/light/directional/north, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/brown/half/contrasted{ - dir = 1 - }, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/maintenance/disposal) "dEV" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -13777,19 +13747,17 @@ }, /area/station/security/processing) "dKW" = ( -/obj/structure/sign/directions/security{ - dir = 1; - pixel_x = 32; - pixel_y = 36 - }, /obj/structure/sign/directions/evac{ dir = 4; - pixel_x = 32; - pixel_y = 28 + pixel_y = -10 }, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron, -/area/station/hallway/primary/central) +/obj/structure/sign/directions/medical{ + dir = 4; + pixel_y = 10 + }, +/obj/structure/sign/directions/engineering, +/turf/closed/wall, +/area/station/commons/storage/mining) "dLe" = ( /obj/structure/chair/stool/directional/west, /turf/open/floor/wood/large, @@ -13825,7 +13793,7 @@ "dLL" = ( /obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "dLN" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -13883,9 +13851,7 @@ /turf/open/floor/iron/dark, /area/station/medical/morgue) "dMn" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/icemoon/underground/unexplored/rivers/deep/shoreline) "dMo" = ( @@ -13982,14 +13948,6 @@ /obj/item/wallframe/camera, /turf/open/floor/plating, /area/station/construction) -"dOa" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/structure/girder, -/obj/effect/spawner/structure/electrified_grille, -/turf/open/floor/plating, -/area/station/maintenance/port/aft) "dOp" = ( /obj/structure/table/wood, /obj/item/instrument/saxophone, @@ -14078,22 +14036,12 @@ /area/mine/mechbay) "dPT" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"dQd" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Mining Station Maintenance" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/access/all/supply/mining_station, -/turf/open/floor/iron/dark/textured_half{ - dir = 1 - }, -/area/station/maintenance/department/cargo) "dQl" = ( /obj/structure/closet/emcloset, /obj/structure/sign/warning/cold_temp/directional/north, @@ -14163,6 +14111,11 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/mine/laborcamp) +"dRx" = ( +/obj/effect/turf_decal/tile/brown, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark/corner, +/area/mine/eva) "dRz" = ( /obj/effect/turf_decal/trimline/green/filled/line, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -14257,6 +14210,14 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/service/bar) +"dTh" = ( +/obj/machinery/airalarm/directional/west, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/tile/brown/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/maintenance/disposal) "dTm" = ( /obj/effect/decal/cleanable/blood/splatter, /obj/effect/mob_spawn/corpse/human/skeleton, @@ -14448,21 +14409,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/smooth, /area/station/engineering/lobby) -"dVS" = ( -/obj/machinery/door/firedoor{ - dir = 4 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/stripes/white/line{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/white/line{ - dir = 4 - }, -/obj/effect/turf_decal/tile/blue/fourcorners, -/turf/open/floor/iron/dark/textured, -/area/station/medical/cryo) "dWl" = ( /obj/structure/closet/emcloset, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -14524,7 +14470,7 @@ /turf/open/floor/plating, /area/station/maintenance/port/aft) "dXh" = ( -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = -3; pixel_y = 3 }, @@ -14732,7 +14678,7 @@ "dZX" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "eaa" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -14791,6 +14737,15 @@ /obj/structure/sign/departments/vault/directional/north, /turf/open/openspace/icemoon/keep_below, /area/icemoon/surface/outdoors/nospawn) +"eaO" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/machinery/light/directional/south, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/brown/half/contrasted, +/turf/open/floor/iron/dark, +/area/station/maintenance/disposal) "eaQ" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/light/small/directional/north, @@ -14804,7 +14759,8 @@ name = "Biohazard Containment Door" }, /obj/structure/noticeboard/rd{ - pixel_y = 36 + pixel_y = 36; + dir = 1 }, /obj/effect/turf_decal/tile/purple/fourcorners, /obj/effect/turf_decal/delivery, @@ -14843,7 +14799,7 @@ /obj/machinery/newscaster/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "ebO" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 @@ -14912,8 +14868,9 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "sci-med-passthrough" }, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, -/obj/effect/mapping_helpers/airlock/unres, /turf/open/floor/plating, /area/station/maintenance/aft/greater) "ede" = ( @@ -14938,7 +14895,7 @@ /obj/machinery/ore_silo, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "edq" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -14974,6 +14931,13 @@ /obj/structure/sign/warning/docking/directional/north, /turf/open/floor/engine, /area/station/science/xenobiology) +"eee" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/obj/structure/railing, +/turf/open/floor/iron/dark, +/area/station/service/chapel) "eei" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -14988,7 +14952,7 @@ "eeD" = ( /obj/machinery/light/directional/west, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "eeF" = ( /obj/item/cigbutt/cigarbutt, /obj/effect/decal/cleanable/blood/old, @@ -15088,6 +15052,13 @@ initial_gas_mix = "ICEMOON_ATMOS" }, /area/icemoon/underground/explored) +"efQ" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Custodial Maintenance" + }, +/obj/effect/mapping_helpers/airlock/access/all/service/janitor, +/turf/open/floor/plating, +/area/station/maintenance/department/medical/central) "efR" = ( /obj/structure/ladder, /obj/structure/railing{ @@ -15116,7 +15087,7 @@ /obj/effect/spawner/random/armory/riot_helmet, /obj/effect/spawner/random/armory/riot_shield, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "egm" = ( /obj/structure/table, /obj/item/restraints/handcuffs, @@ -15140,13 +15111,7 @@ /obj/effect/turf_decal/bot_white, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) -"egL" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/vault) "egS" = ( /obj/effect/mapping_helpers/broken_floor, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -15187,13 +15152,6 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"ehd" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) "ehh" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -15202,6 +15160,13 @@ /obj/effect/spawner/random/structure/steam_vent, /turf/open/floor/plating, /area/station/maintenance/starboard/lesser) +"ehn" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/neutral/half/contrasted, +/obj/effect/landmark/start/hangover, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/commons/fitness) "ehp" = ( /obj/item/kirbyplants/random, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -15211,6 +15176,15 @@ /obj/structure/noticeboard/directional/north, /turf/open/floor/iron, /area/station/hallway/primary/central) +"ehB" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/blue, +/obj/structure/cable, +/turf/open/floor/iron/white/corner{ + dir = 4 + }, +/area/station/hallway/secondary/entry) "ehJ" = ( /obj/effect/turf_decal/stripes/line{ dir = 10 @@ -15270,6 +15244,14 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood, /area/station/security/prison/rec) +"eia" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/structure/statue/goliath{ + dir = 8 + }, +/turf/open/floor/iron/white, +/area/mine/living_quarters) "eic" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -15335,6 +15317,14 @@ /obj/item/clothing/suit/hooded/wintercoat/engineering, /turf/open/floor/iron/dark, /area/station/engineering/storage_shared) +"eiR" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/hallway/secondary/exit/departure_lounge) "ejb" = ( /obj/structure/cable, /obj/machinery/door/airlock/security/glass{ @@ -15419,6 +15409,11 @@ }, /turf/open/floor/iron, /area/station/engineering/atmos) +"eki" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/iron/dark/textured, +/area/station/security/range) "ekj" = ( /obj/structure/closet, /obj/effect/spawner/random/clothing/costume, @@ -15461,6 +15456,18 @@ }, /turf/open/floor/iron/white, /area/station/medical/surgery/fore) +"ekM" = ( +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/obj/item/radio/intercom/directional/south, +/obj/effect/turf_decal/tile/neutral/anticorner/contrasted{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/commons/fitness) "ekW" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -15580,6 +15587,12 @@ /obj/effect/turf_decal/stripes/box, /turf/open/floor/plating, /area/station/engineering/lobby) +"eny" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/hallway/primary/aft) "enH" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -15594,7 +15607,7 @@ name = "Tool Storage Maintenance" }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -15641,7 +15654,7 @@ /obj/machinery/firealarm/directional/east, /obj/machinery/status_display/ai/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "eoL" = ( /obj/structure/table, /obj/item/taperecorder, @@ -15828,7 +15841,7 @@ "erk" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -15906,13 +15919,6 @@ }, /turf/open/floor/iron/textured, /area/station/security/brig) -"erN" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment, -/obj/effect/landmark/event_spawn, -/turf/open/floor/iron, -/area/station/cargo/storage) "erO" = ( /obj/effect/spawner/structure/window/hollow/reinforced/middle{ dir = 1 @@ -15926,12 +15932,6 @@ }, /turf/open/floor/plating/icemoon, /area/station/science/ordnance/bomb/planet) -"erV" = ( -/obj/structure/railing/corner/end/flip{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/service/chapel) "erY" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -16095,7 +16095,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "eud" = ( /obj/item/food/chococoin, /obj/structure/closet/secure_closet/freezer/fridge, @@ -16141,6 +16141,13 @@ /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/iron, /area/station/science/xenobiology) +"euO" = ( +/obj/structure/railing/corner, +/obj/effect/turf_decal/stripes/line, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/white, +/area/station/science/xenobiology) "euZ" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -16223,6 +16230,10 @@ /obj/machinery/light/floor, /turf/open/floor/iron, /area/station/security/brig/upper) +"ewP" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/carpet/royalblue, +/area/station/command/heads_quarters/captain) "ewT" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -16289,14 +16300,6 @@ /obj/effect/decal/cleanable/generic, /turf/open/floor/iron/smooth, /area/station/maintenance/port/fore) -"exN" = ( -/obj/effect/spawner/random/trash, -/obj/machinery/light/directional/south, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/security/prison/work) "exQ" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -16335,15 +16338,6 @@ }, /turf/open/floor/iron/dark/textured, /area/station/hallway/secondary/entry) -"eyj" = ( -/obj/structure/cable, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/iron/white/corner{ - dir = 1 - }, -/area/station/hallway/secondary/entry) "eyk" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/status_display/evac/directional/south, @@ -16389,7 +16383,7 @@ /area/mine/eva/lower) "ezq" = ( /obj/structure/table, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/item/poster/random_official, /turf/open/floor/plating, /area/station/maintenance/port/fore) @@ -16477,7 +16471,7 @@ "eAx" = ( /obj/machinery/firealarm/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "eAQ" = ( /obj/structure/rack, /obj/item/storage/box/lights/mixed{ @@ -16538,6 +16532,10 @@ }, /turf/open/floor/iron, /area/station/engineering/main) +"eBL" = ( +/obj/machinery/holopad, +/turf/open/floor/iron, +/area/station/commons/fitness) "eBV" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, /turf/closed/wall/r_wall, @@ -16600,7 +16598,7 @@ /turf/open/floor/iron, /area/station/hallway/primary/central/fore) "eCR" = ( -/obj/structure/no_effect_signpost{ +/obj/structure/signpost{ desc = "Now, where to go from here? That's a timeless question." }, /turf/open/misc/asteroid/snow/icemoon, @@ -16640,7 +16638,7 @@ name = "MiniSat Teleport Access" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "eDj" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ dir = 8 @@ -16706,6 +16704,16 @@ /obj/effect/landmark/event_spawn, /turf/open/floor/glass/reinforced, /area/station/engineering/storage/tech) +"eEs" = ( +/obj/machinery/door/airlock/maintenance{ + name = "Mining Station Maintenance" + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/all/supply/mining_station, +/turf/open/floor/iron/dark/textured_half{ + dir = 1 + }, +/area/station/maintenance/department/cargo) "eEO" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -16739,13 +16747,6 @@ }, /turf/open/floor/iron/cafeteria, /area/station/hallway/secondary/exit/departure_lounge) -"eFn" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/stripes/corner{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/hallway/secondary/exit/departure_lounge) "eFt" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 @@ -16974,14 +16975,6 @@ }, /turf/open/floor/iron/dark/textured, /area/station/hallway/secondary/entry) -"eHZ" = ( -/obj/effect/turf_decal/trimline/blue/filled/line{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/iron/white, -/area/station/medical/treatment_center) "eId" = ( /obj/structure/railing/corner{ dir = 8 @@ -16992,7 +16985,7 @@ /obj/effect/turf_decal/tile/red/anticorner/contrasted{ dir = 1 }, -/obj/structure/sign/poster/official/here_for_your_safety/directional/north, +/obj/structure/sign/poster/official/here_for_your_safety/directional/west, /turf/open/floor/iron, /area/station/security/prison/visit) "eIk" = ( @@ -17003,9 +16996,7 @@ /turf/open/floor/wood, /area/station/service/library) "eIv" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/plating/snowed/icemoon, /area/icemoon/underground/explored) "eIC" = ( @@ -17084,6 +17075,15 @@ /obj/structure/flora/bush/sparsegrass/style_random, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/surface/outdoors/nospawn) +"eJO" = ( +/obj/machinery/airalarm/directional/north, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/iron/dark/side{ + dir = 4 + }, +/area/mine/production) "eJU" = ( /obj/machinery/door/airlock/security{ name = "Permanent Cell 2" @@ -17268,11 +17268,11 @@ /obj/effect/turf_decal/stripes/line, /obj/item/radio/intercom/directional/west, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "eMT" = ( /obj/effect/mapping_helpers/airlock/abandoned, /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/aft) @@ -17466,6 +17466,13 @@ /obj/structure/sign/warning/pods/directional/north, /turf/open/floor/iron/dark/textured, /area/station/hallway/secondary/entry) +"eQt" = ( +/obj/structure/chair/pew{ + dir = 1 + }, +/obj/effect/landmark/start/assistant, +/turf/open/floor/iron/chapel, +/area/station/service/chapel) "eQz" = ( /obj/structure/grille, /turf/open/floor/plating, @@ -17510,7 +17517,7 @@ "eRh" = ( /obj/effect/turf_decal/tile/neutral, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "eRk" = ( /obj/effect/landmark/start/hangover, /obj/machinery/duct, @@ -17538,8 +17545,8 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/door/airlock/maintenance/glass, -/obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical/central) "eRE" = ( @@ -17553,21 +17560,13 @@ dir = 4 }, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "eRO" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/showroomfloor, /area/station/security/warden) -"eRZ" = ( -/obj/structure/table, -/obj/item/papercutter{ - pixel_x = 8; - pixel_y = 6 - }, -/turf/open/floor/iron, -/area/station/command/heads_quarters/hop) "eSn" = ( /obj/structure/chair/office, /obj/effect/landmark/start/assistant, @@ -17588,12 +17587,6 @@ /obj/effect/turf_decal/tile/red, /turf/open/floor/iron, /area/mine/laborcamp/security) -"eSA" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/structure/sign/poster/official/random/directional/north, -/turf/open/floor/iron/dark, -/area/mine/eva) "eSC" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -18080,7 +18073,7 @@ /obj/machinery/power/smes/super/full, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "eYK" = ( /obj/structure/rack, /obj/item/clothing/suit/hooded/wintercoat{ @@ -18174,6 +18167,13 @@ }, /turf/open/floor/engine/xenobio, /area/station/science/xenobiology) +"eZF" = ( +/obj/machinery/holopad, +/obj/effect/turf_decal/bot_white, +/obj/effect/turf_decal/stripes/corner, +/obj/structure/cable, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/eva) "eZK" = ( /obj/machinery/recycler{ dir = 8 @@ -18366,7 +18366,7 @@ /obj/structure/chair, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "fcA" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 1 @@ -18485,6 +18485,13 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/general, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) +"fdK" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/carpet/royalblue, +/area/station/command/heads_quarters/captain) "fdN" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/decal/cleanable/dirt, @@ -18522,7 +18529,7 @@ /turf/open/floor/plating, /area/station/maintenance/aft/greater) "fep" = ( -/obj/structure/no_effect_signpost, +/obj/structure/signpost, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/underground/explored) "fez" = ( @@ -18545,7 +18552,7 @@ /area/station/maintenance/department/medical/morgue) "feJ" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "feQ" = ( /obj/machinery/portable_atmospherics/canister/air, /turf/open/floor/plating, @@ -18565,6 +18572,13 @@ }, /turf/open/floor/iron/white, /area/station/medical/pharmacy) +"ffd" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/commons/locker) "ffe" = ( /turf/closed/wall/r_wall, /area/station/maintenance/aft/lesser) @@ -18640,13 +18654,13 @@ /turf/open/floor/iron/dark/smooth_half{ dir = 1 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "fgU" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "fgV" = ( /obj/structure/railing/wooden_fence{ dir = 8 @@ -18685,6 +18699,14 @@ /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating, /area/station/maintenance/fore) +"fhF" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 + }, +/obj/effect/turf_decal/tile/red, +/obj/machinery/light/warm/directional/east, +/turf/open/floor/iron, +/area/station/security/prison/mess) "fhL" = ( /obj/structure/sign/warning/directional/north, /turf/open/openspace/icemoon/keep_below, @@ -18984,6 +19006,11 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/primary/central) +"fly" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/large, +/area/station/commons/storage/mining) "flD" = ( /obj/effect/spawner/random/structure/tank_holder, /turf/open/floor/plating, @@ -19002,7 +19029,7 @@ "flW" = ( /obj/machinery/atmospherics/components/tank/air, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "flZ" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -19047,7 +19074,7 @@ /obj/item/stack/rods/fifty, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "fmq" = ( /obj/docking_port/stationary{ dir = 4; @@ -19114,12 +19141,6 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/iron, /area/station/engineering/atmos) -"fnC" = ( -/obj/effect/turf_decal/tile/neutral/fourcorners, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/station/hallway/secondary/entry) "fnF" = ( /obj/structure/chair/sofa/middle/brown, /turf/open/floor/carpet/blue, @@ -19203,6 +19224,15 @@ /obj/machinery/suit_storage_unit/atmos, /turf/open/floor/iron/dark/textured, /area/station/engineering/atmos) +"fqd" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/cargo/office) "fqv" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -19228,11 +19258,6 @@ /obj/structure/sign/departments/security/directional/north, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/underground/explored) -"fqH" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/obj/effect/turf_decal/tile/red/half, -/turf/open/floor/iron/smooth_half, -/area/station/security/brig/upper) "fqJ" = ( /obj/effect/turf_decal/trimline/white/filled/warning, /turf/open/genturf, @@ -19258,9 +19283,6 @@ /obj/machinery/camera/directional/north{ c_tag = "Starboard Primary Hallway West" }, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) "fqW" = ( @@ -19317,7 +19339,7 @@ /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "frt" = ( /obj/effect/decal/cleanable/blood/tracks{ dir = 4 @@ -19429,7 +19451,7 @@ /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/abandoned, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -19483,10 +19505,8 @@ /turf/open/floor/iron, /area/station/maintenance/starboard/aft) "ftY" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/structure/flora/grass/both/style_random, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/surface/outdoors/nospawn) "fuc" = ( @@ -19563,13 +19583,6 @@ "fvk" = ( /turf/open/floor/glass/reinforced, /area/station/science/xenobiology) -"fvx" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/light_switch/directional/west, -/turf/open/floor/iron, -/area/station/cargo/miningdock) "fvA" = ( /obj/machinery/computer/security/telescreen/entertainment/directional/north, /obj/effect/turf_decal/siding/yellow/corner{ @@ -19583,6 +19596,15 @@ /obj/effect/turf_decal/tile/brown/fourcorners, /turf/open/floor/iron/dark, /area/station/engineering/lobby) +"fvJ" = ( +/obj/structure/chair/pew{ + dir = 1 + }, +/obj/effect/landmark/start/hangover, +/turf/open/floor/iron/chapel{ + dir = 8 + }, +/area/station/service/chapel) "fvK" = ( /obj/structure/rack, /obj/item/storage/box/petridish, @@ -19748,7 +19770,7 @@ "fyc" = ( /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "fyr" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/command/glass{ @@ -19763,7 +19785,7 @@ /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "fyw" = ( /obj/machinery/telecomms/server/presets/service, /turf/open/floor/iron/dark/telecomms, @@ -19866,7 +19888,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -19990,12 +20012,6 @@ dir = 8 }, /area/station/service/chapel) -"fBQ" = ( -/obj/structure/cable, -/turf/open/floor/iron/white/corner{ - dir = 8 - }, -/area/station/hallway/secondary/entry) "fBR" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -20051,7 +20067,7 @@ /turf/open/floor/wood/parquet, /area/station/service/bar/atrium) "fDl" = ( -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /turf/open/floor/iron, /area/station/maintenance/starboard/fore) "fDn" = ( @@ -20101,6 +20117,14 @@ }, /turf/open/floor/iron/dark/textured, /area/station/commons/dorms) +"fEi" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/commons/fitness) "fEA" = ( /obj/structure/cable, /obj/machinery/door/airlock/maintenance{ @@ -20272,7 +20296,7 @@ }, /obj/effect/turf_decal/tile/green, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "fHq" = ( /obj/effect/decal/cleanable/blood/oil, /obj/effect/decal/cleanable/dirt, @@ -20284,10 +20308,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/smooth, /area/station/maintenance/port/aft) -"fHK" = ( -/obj/machinery/holopad, -/turf/open/floor/carpet, -/area/station/command/meeting_room) "fHO" = ( /obj/effect/spawner/structure/window/hollow/reinforced/middle, /obj/machinery/door/poddoor/shutters/preopen{ @@ -20564,14 +20584,6 @@ /obj/structure/closet/toolcloset, /turf/open/floor/plating, /area/station/maintenance/aft/lesser) -"fLl" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white/side{ - dir = 9 - }, -/area/station/science/research) "fLq" = ( /obj/structure/cable, /obj/effect/turf_decal/tile/red/half/contrasted{ @@ -20582,7 +20594,7 @@ "fLs" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/closed/wall/r_wall, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "fLu" = ( /obj/effect/turf_decal/tile/green/opposingcorners{ dir = 1 @@ -20760,11 +20772,6 @@ /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/white/smooth_large, /area/station/service/kitchen) -"fOl" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/science/explab) "fOq" = ( /obj/structure/sign/warning/cold_temp/directional/north, /turf/open/floor/plating, @@ -20891,7 +20898,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "fQc" = ( /obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ dir = 1 @@ -20919,7 +20926,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "fQz" = ( /obj/effect/landmark/start/hangover, /turf/open/floor/carpet, @@ -20938,7 +20945,7 @@ "fRb" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -20980,9 +20987,7 @@ dir = 1 }, /obj/effect/mapping_helpers/burnt_floor, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/plating, /area/station/maintenance/port/lesser) "fSm" = ( @@ -21026,7 +21031,7 @@ /obj/item/clothing/head/utility/welding, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "fTb" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -21069,13 +21074,6 @@ /obj/item/radio/intercom/prison/directional/north, /turf/open/floor/iron/cafeteria, /area/station/security/prison/mess) -"fTq" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 10 - }, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) "fTx" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 @@ -21143,7 +21141,7 @@ /obj/machinery/door/airlock/maintenance{ name = "Firefighting Equipment" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, @@ -21210,7 +21208,7 @@ name = "Chemical Storage" }, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -21236,7 +21234,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -21312,6 +21310,10 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"fWF" = ( +/obj/effect/spawner/random/structure/steam_vent, +/turf/open/floor/plating, +/area/station/maintenance/aft/greater) "fWL" = ( /obj/structure/table, /obj/item/paper_bin{ @@ -21696,7 +21698,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/door/firedoor, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "gbK" = ( /obj/structure/rack, /obj/item/clothing/suit/utility/beekeeper_suit, @@ -21832,12 +21834,6 @@ /obj/effect/turf_decal/tile/green/half/contrasted, /turf/open/floor/iron, /area/station/hallway/primary/port) -"gea" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/spawner/random/structure/steam_vent, -/turf/open/floor/plating, -/area/station/maintenance/aft/greater) "gec" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, @@ -21906,12 +21902,6 @@ /obj/structure/cable, /turf/open/floor/iron/smooth_large, /area/station/engineering/lobby) -"geW" = ( -/obj/structure/cable, -/obj/structure/closet, -/obj/effect/spawner/random/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/aft/lesser) "gfb" = ( /turf/closed/wall/r_wall, /area/station/maintenance/central/greater) @@ -21938,6 +21928,11 @@ /obj/effect/turf_decal/siding/yellow, /turf/open/floor/iron, /area/station/engineering/storage) +"gfu" = ( +/obj/structure/closet, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/aft/lesser) "gfw" = ( /obj/machinery/light/small/directional/west, /obj/structure/table, @@ -21973,7 +21968,7 @@ /obj/effect/mapping_helpers/airlock/abandoned, /obj/machinery/atmospherics/pipe/layer_manifold/supply/hidden, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -22018,7 +22013,7 @@ dir = 8 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ggV" = ( /obj/machinery/conveyor{ id = "gulag" @@ -22032,6 +22027,7 @@ /obj/effect/turf_decal/tile/neutral{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron, /area/station/hallway/primary/starboard) "ghl" = ( @@ -22071,7 +22067,7 @@ /area/station/maintenance/port/fore) "ghY" = ( /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "gib" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -22106,11 +22102,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood, /area/station/maintenance/aft/greater) -"giN" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/trimline/yellow/line, -/turf/open/floor/iron/dark/side, -/area/station/security/prison/workout) "giO" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/spawner/random/trash/grille_or_waste, @@ -22175,6 +22166,11 @@ "gjq" = ( /turf/open/openspace/icemoon/keep_below, /area/icemoon/underground/explored) +"gjt" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/medical/morgue) "gjI" = ( /obj/effect/spawner/random/structure/tank_holder, /obj/effect/turf_decal/tile/yellow, @@ -22236,6 +22232,13 @@ "gka" = ( /turf/closed/wall/r_wall, /area/station/engineering/supermatter/room) +"gkk" = ( +/obj/structure/railing, +/obj/effect/turf_decal/stripes/line, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/white, +/area/station/science/xenobiology) "gko" = ( /obj/machinery/conveyor{ dir = 8; @@ -22387,7 +22390,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "glS" = ( /obj/machinery/camera/directional/south{ c_tag = "MiniSat Pod Access"; @@ -22399,7 +22402,7 @@ dir = 8 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "glX" = ( /obj/structure/closet/firecloset, /turf/open/floor/plating, @@ -22521,9 +22524,7 @@ /obj/effect/decal/cleanable/blood/tracks{ dir = 4 }, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/underground/explored) "goa" = ( @@ -22565,21 +22566,6 @@ /obj/effect/spawner/random/trash/mess, /turf/open/floor/iron, /area/station/service/janitor) -"goy" = ( -/obj/effect/turf_decal/stripes/corner, -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/door/firedoor/border_only{ - dir = 8 - }, -/turf/open/floor/iron/white, -/area/station/science/ordnance/office) "goB" = ( /obj/effect/spawner/structure/window/hollow/reinforced/middle{ dir = 4 @@ -22664,7 +22650,7 @@ "gpB" = ( /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "gpM" = ( /obj/effect/turf_decal/siding/wood{ dir = 4 @@ -22792,6 +22778,18 @@ }, /turf/open/floor/plating, /area/station/commons/dorms/laundry) +"gro" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/turf_decal/tile/brown/half/contrasted{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/cargo/office) "grp" = ( /turf/open/misc/asteroid/snow/coldroom, /area/icemoon/underground/explored) @@ -22995,6 +22993,14 @@ /obj/machinery/firealarm/directional/south, /turf/open/floor/iron/white/smooth_large, /area/station/service/kitchen) +"guM" = ( +/obj/machinery/door/airlock/mining/glass{ + id_tag = "innercargo"; + name = "Cargo Bay" + }, +/obj/effect/mapping_helpers/airlock/access/all/supply/general, +/turf/open/floor/iron, +/area/station/cargo/storage) "guO" = ( /obj/item/stack/sheet/mineral/wood, /obj/effect/decal/cleanable/generic, @@ -23300,7 +23306,7 @@ /obj/structure/cable, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "gzH" = ( /obj/machinery/door/firedoor/heavy, /obj/machinery/door/airlock/research{ @@ -23313,17 +23319,6 @@ dir = 8 }, /area/station/science/ordnance/office) -"gzI" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/commons/fitness) "gzJ" = ( /obj/structure/cable/multilayer/multiz, /obj/effect/turf_decal/stripes/box, @@ -23495,23 +23490,6 @@ /obj/structure/cable, /turf/open/floor/catwalk_floor/iron_smooth, /area/station/commons/storage/mining) -"gCh" = ( -/obj/effect/turf_decal/trimline/blue/filled/line{ - dir = 4 - }, -/obj/structure/cable, -/turf/open/floor/iron/white, -/area/station/medical/treatment_center) -"gCl" = ( -/obj/structure/railing/corner/end/flip{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/commons/storage/mining) "gCn" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -23685,11 +23663,6 @@ }, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/surface/outdoors/nospawn) -"gEn" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/science/server) "gEq" = ( /obj/structure/chair/office{ dir = 4 @@ -23763,21 +23736,6 @@ "gFX" = ( /turf/closed/wall, /area/icemoon/underground/explored) -"gGj" = ( -/obj/machinery/airalarm/directional/north, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/railing/corner{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/dark_red/arrow_ccw{ - dir = 9 - }, -/obj/structure/cable, -/obj/structure/disposalpipe/junction{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/engineering/atmos/storage) "gGs" = ( /obj/structure/closet/secure_closet/engineering_welding, /obj/machinery/newscaster/directional/west, @@ -23826,12 +23784,22 @@ }, /turf/open/floor/iron/dark, /area/station/medical/storage) +"gGN" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/brown/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark/side{ + dir = 8 + }, +/area/mine/eva) "gGZ" = ( /obj/machinery/computer/bank_machine, /obj/effect/turf_decal/bot_white, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "gHe" = ( /obj/machinery/firealarm/directional/east, /obj/effect/turf_decal/tile/blue, @@ -23942,10 +23910,6 @@ /obj/structure/cable, /turf/open/floor/iron/smooth, /area/station/security/holding_cell) -"gIJ" = ( -/obj/machinery/light/small/directional/east, -/turf/open/floor/plating, -/area/station/medical/morgue) "gIL" = ( /obj/machinery/door/airlock/security/glass{ name = "Secure Walkway" @@ -23958,18 +23922,13 @@ }, /turf/open/floor/iron, /area/station/security/brig/upper) -"gIN" = ( -/obj/structure/reagent_dispensers/water_cooler, -/obj/effect/turf_decal/tile/neutral/anticorner/contrasted{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/commons/fitness) "gIY" = ( /turf/closed/wall, /area/station/medical/medbay/central) +"gJa" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/hallway/secondary/exit/departure_lounge) "gJs" = ( /obj/machinery/portable_atmospherics/canister, /obj/structure/disposalpipe/segment, @@ -23997,7 +23956,7 @@ /mob/living/simple_animal/bot/secbot/beepsky/armsky, /obj/machinery/airalarm/directional/east, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "gJK" = ( /obj/effect/spawner/structure/window/hollow/reinforced/middle{ dir = 4 @@ -24225,13 +24184,6 @@ dir = 4 }, /area/station/command/gateway) -"gNH" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/security/prison/workout) "gNL" = ( /obj/machinery/status_display/evac/directional/south, /obj/machinery/light/directional/south, @@ -24275,7 +24227,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "gOi" = ( /obj/structure/rack, /obj/item/clothing/glasses/sunglasses/big{ @@ -24350,7 +24302,7 @@ /obj/structure/cable, /obj/machinery/door/firedoor, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "gPC" = ( /obj/structure/lattice/catwalk, /obj/structure/railing/corner{ @@ -24506,17 +24458,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, /turf/open/floor/iron, /area/station/maintenance/disposal/incinerator) -"gRZ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, -/obj/effect/turf_decal/tile/red/anticorner/contrasted{ - dir = 8 - }, -/obj/machinery/light/small/directional/south, -/obj/machinery/newscaster/directional/south, -/turf/open/floor/iron, -/area/station/security/prison/visit) "gSd" = ( /obj/structure/fence/door{ dir = 4 @@ -24545,7 +24486,6 @@ "gSq" = ( /obj/machinery/rnd/production/circuit_imprinter/department/science, /obj/machinery/button/door/directional/north{ - dir = 2; id = "rnd"; name = "Shutters Control Button"; req_access = list("research") @@ -24954,6 +24894,11 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/mine/laborcamp) +"gXD" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron, +/area/mine/eva) "gXJ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -25451,7 +25396,7 @@ pixel_y = -24 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "hfA" = ( /obj/structure/window/reinforced/spawner/directional/north{ pixel_y = 2 @@ -25485,7 +25430,7 @@ /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/abandoned, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -25500,12 +25445,10 @@ /area/station/security/brig/entrance) "hho" = ( /obj/machinery/vending/cigarette, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/effect/turf_decal/siding/wood{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron/dark, /area/station/command/heads_quarters/captain) "hhr" = ( @@ -25869,6 +25812,18 @@ dir = 8 }, /area/station/commons/storage/mining) +"hmA" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/obj/effect/turf_decal/tile/red/anticorner/contrasted{ + dir = 8 + }, +/obj/machinery/light/small/directional/south, +/obj/machinery/newscaster/directional/south, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/security/prison/visit) "hmE" = ( /obj/structure/chair, /obj/effect/turf_decal/tile/blue/half/contrasted{ @@ -25965,6 +25920,12 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"hot" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/iron/white, +/area/station/science/research) "hoz" = ( /obj/structure/fence/corner{ dir = 6 @@ -26027,7 +25988,6 @@ "hpl" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light/small/directional/north, -/obj/structure/sign/warning/directional/north, /turf/open/floor/iron, /area/mine/laborcamp) "hpm" = ( @@ -26154,17 +26114,6 @@ dir = 1 }, /area/station/commons/storage/art) -"hqv" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/decal/cleanable/dirt, -/obj/structure/table, -/obj/item/cigarette{ - pixel_x = 6; - pixel_y = 12 - }, -/turf/open/floor/iron, -/area/mine/eva) "hqx" = ( /obj/effect/landmark/start/assistant, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -26244,7 +26193,7 @@ "hsh" = ( /obj/effect/turf_decal/stripes/line, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "hsn" = ( /obj/effect/landmark/start/medical_doctor, /obj/machinery/holopad, @@ -26281,6 +26230,17 @@ "hsB" = ( /turf/open/floor/iron/freezer, /area/station/commons/toilet) +"hsG" = ( +/obj/machinery/door/airlock/security/glass{ + name = "Holding Area" + }, +/obj/machinery/door/firedoor, +/obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/all/security/general, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/hallway/secondary/exit/departure_lounge) "hsN" = ( /obj/structure/table, /obj/item/storage/box/firingpins, @@ -26289,7 +26249,7 @@ /obj/machinery/light/directional/east, /obj/item/radio/intercom/directional/south, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "hsQ" = ( /obj/structure/tank_holder/oxygen, /turf/open/floor/plating, @@ -26563,7 +26523,7 @@ name = "Utilities Room" }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) "hxs" = ( @@ -26730,7 +26690,7 @@ }, /obj/machinery/firealarm/directional/west, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "hzJ" = ( /obj/structure/disposalpipe/segment{ dir = 5 @@ -26931,13 +26891,6 @@ /obj/item/paper/fluff/jobs/engineering/frequencies, /turf/open/floor/carpet, /area/station/command/meeting_room) -"hCa" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron, -/area/station/commons/locker) "hCn" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -27215,7 +27168,7 @@ /area/station/security/lockers) "hHb" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "hHg" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, @@ -27334,7 +27287,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/aft) @@ -27416,6 +27369,16 @@ /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) +"hJA" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/brown/half/contrasted{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark/side{ + dir = 1 + }, +/area/mine/eva) "hJD" = ( /obj/structure/ladder, /turf/open/floor/wood, @@ -27518,12 +27481,6 @@ }, /turf/open/floor/iron/white/corner, /area/station/engineering/atmos) -"hLW" = ( -/obj/structure/disposalpipe/segment, -/obj/structure/cable, -/obj/machinery/duct, -/turf/open/floor/iron, -/area/station/commons/fitness) "hLX" = ( /obj/structure/girder, /obj/structure/grille, @@ -27531,12 +27488,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/maintenance/aft/greater) -"hLY" = ( -/obj/structure/cable, -/obj/structure/chair, -/obj/effect/landmark/start/shaft_miner, -/turf/open/floor/iron, -/area/station/cargo/storage) "hLZ" = ( /obj/machinery/telecomms/bus/preset_three, /turf/open/floor/circuit/telecomms/mainframe, @@ -27544,7 +27495,7 @@ "hMc" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "hMg" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -27774,16 +27725,11 @@ }, /turf/open/floor/iron, /area/station/engineering/atmos) -"hOY" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/circuit, -/area/station/science/robotics/mechbay) "hPe" = ( /obj/structure/cable/multilayer/connected, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "hPf" = ( /obj/structure/safe/vault, /obj/item/clothing/head/costume/bearpelt, @@ -27795,7 +27741,7 @@ /obj/effect/turf_decal/bot_white/left, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "hPk" = ( /obj/machinery/door/airlock/security{ name = "Permabrig Chapel" @@ -27815,6 +27761,15 @@ }, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/surface/outdoors/nospawn) +"hPx" = ( +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/stripes/white/line, +/obj/effect/turf_decal/stripes/white/line{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue/fourcorners, +/turf/open/floor/iron/dark/textured, +/area/station/medical/treatment_center) "hPz" = ( /obj/structure/chair{ dir = 8 @@ -27851,13 +27806,6 @@ /obj/effect/turf_decal/trimline/yellow/filled/line, /turf/open/floor/iron/dark, /area/station/engineering/atmos/hfr_room) -"hPQ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/large, -/area/station/commons/storage/mining) "hPT" = ( /obj/effect/turf_decal/stripes/line{ dir = 6 @@ -28022,22 +27970,6 @@ /obj/structure/railing/corner, /turf/open/floor/iron, /area/mine/eva) -"hSl" = ( -/obj/effect/turf_decal/trimline/neutral/mid_joiner{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/neutral/mid_joiner{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/neutral/warning{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/iron/dark/smooth_corner, -/area/station/ai_monitored/command/storage/eva) "hSm" = ( /obj/structure/table, /obj/item/paper/crumpled{ @@ -28271,19 +28203,6 @@ /obj/structure/table, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) -"hVq" = ( -/obj/effect/turf_decal/stripes/asteroid/corner{ - dir = 1 - }, -/obj/structure/cable, -/obj/effect/turf_decal/tile/dark{ - dir = 1 - }, -/obj/machinery/light/floor, -/turf/open/floor/iron/white/side{ - dir = 6 - }, -/area/mine/living_quarters) "hVu" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -28335,7 +28254,7 @@ "hWi" = ( /obj/machinery/teleport/hub, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "hWl" = ( /obj/effect/turf_decal/siding/wood{ dir = 8 @@ -28425,7 +28344,7 @@ name = "Disposal Access" }, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -28465,6 +28384,22 @@ }, /turf/open/floor/plating, /area/station/cargo/sorting) +"hYH" = ( +/obj/machinery/airalarm/directional/north, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/railing/corner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark_red/arrow_ccw{ + dir = 9 + }, +/obj/structure/cable, +/obj/structure/disposalpipe/junction{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/engineering/atmos/storage) "hYL" = ( /obj/structure/closet/lasertag/blue, /obj/effect/landmark/start/hangover, @@ -28524,6 +28459,14 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/central) +"hZk" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/holopad, +/obj/effect/turf_decal/box/white{ + color = "#52B4E9" + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/medical/paramedic) "hZo" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/rack, @@ -28535,9 +28478,7 @@ /turf/open/floor/plating, /area/station/maintenance/port/greater) "hZu" = ( -/obj/structure/sign/warning/secure_area{ - pixel_y = 32 - }, +/obj/structure/sign/warning/secure_area/directional/north, /obj/structure/flora/grass/both/style_random, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/surface/outdoors/less_spawns) @@ -28619,6 +28560,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/starboard/lesser) +"iaC" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/hallway/secondary/entry) "iaF" = ( /obj/effect/turf_decal/delivery, /turf/open/floor/iron, @@ -28699,7 +28646,7 @@ /turf/open/floor/iron/dark/smooth_edge{ dir = 1 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ibm" = ( /obj/structure/cable, /obj/machinery/newscaster/directional/north, @@ -28757,7 +28704,7 @@ /obj/effect/turf_decal/tile/dark_green, /obj/machinery/firealarm/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "ich" = ( /obj/structure/sign/warning/electric_shock/directional/north, /turf/open/openspace/icemoon/keep_below, @@ -28772,21 +28719,6 @@ /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"icu" = ( -/obj/effect/turf_decal/stripes/asteroid/line{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/item/kirbyplants/random, -/obj/effect/turf_decal/tile/dark/half/contrasted{ - dir = 8 - }, -/turf/open/floor/iron/white/side{ - dir = 4 - }, -/area/mine/living_quarters) "icA" = ( /obj/structure/table/reinforced, /obj/machinery/door/window/brigdoor/left/directional/east{ @@ -28861,7 +28793,7 @@ name = "Garden Maintenance" }, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -28980,7 +28912,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "ifX" = ( /obj/machinery/vending/wardrobe/cargo_wardrobe, /turf/open/floor/iron, @@ -29026,7 +28958,8 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/sign/plaques/kiddie/library{ - pixel_x = 32 + pixel_x = 32; + dir = 4 }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) @@ -29110,10 +29043,8 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/machinery/light/cold/directional/north, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark/textured, /area/station/engineering/storage/tech) "ihu" = ( @@ -29127,7 +29058,7 @@ /obj/effect/mapping_helpers/airlock/access/all/security/armory, /obj/machinery/door/firedoor, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "ihB" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -29266,7 +29197,7 @@ "ijT" = ( /obj/structure/transit_tube/horizontal, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ijU" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -29280,6 +29211,15 @@ /obj/structure/cable, /turf/open/floor/plating, /area/mine/eva/lower) +"ijW" = ( +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/blue/filled/corner{ + dir = 8 + }, +/turf/open/floor/iron/white, +/area/station/medical/treatment_center) "ijY" = ( /obj/structure/flora/rock/icy/style_random, /turf/open/misc/asteroid/snow/icemoon, @@ -29429,7 +29369,7 @@ /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "ilN" = ( /obj/effect/spawner/structure/window/hollow/reinforced/middle{ dir = 1 @@ -29453,6 +29393,12 @@ /obj/effect/spawner/random/structure/steam_vent, /turf/open/floor/plating, /area/station/maintenance/department/medical/morgue) +"imo" = ( +/obj/machinery/holopad, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/science/robotics/mechbay) "imH" = ( /obj/structure/rack, /obj/effect/spawner/random/clothing/gloves, @@ -29552,7 +29498,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ior" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -29698,7 +29644,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "iqC" = ( /obj/structure/table, /obj/item/flashlight/lamp, @@ -29880,7 +29826,7 @@ "itl" = ( /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "itt" = ( /obj/machinery/door/window/brigdoor/right/directional/south{ name = "Research Director Observation"; @@ -29981,7 +29927,7 @@ "iuS" = ( /obj/machinery/airalarm/directional/north, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "ivi" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/yellow, @@ -30059,6 +30005,18 @@ }, /turf/open/floor/wood, /area/station/service/library) +"ivN" = ( +/obj/effect/turf_decal/stripes/asteroid/corner{ + dir = 1 + }, +/obj/effect/turf_decal/tile/dark{ + dir = 1 + }, +/obj/machinery/light/floor, +/turf/open/floor/iron/white/side{ + dir = 6 + }, +/area/mine/living_quarters) "iwa" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -30130,7 +30088,8 @@ /area/station/commons/vacant_room/office) "ixl" = ( /obj/structure/sign/plaques/kiddie/devils_tooth{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/underground/explored) @@ -30166,6 +30125,14 @@ /obj/machinery/light/small/directional/east, /turf/open/floor/iron/dark, /area/station/engineering/engine_smes) +"ixK" = ( +/obj/machinery/door/firedoor/heavy, +/obj/machinery/door/airlock/research{ + name = "Ordnance Lab" + }, +/obj/effect/mapping_helpers/airlock/access/all/science/ordnance, +/turf/open/floor/iron/white, +/area/station/science/ordnance/office) "ixZ" = ( /obj/machinery/door/airlock/command/glass{ name = "Chief Engineer" @@ -30274,11 +30241,11 @@ "izI" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/unres, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/greater) "izJ" = ( @@ -30312,7 +30279,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "iAu" = ( /obj/structure/closet/emcloset, /turf/open/floor/plating, @@ -30365,14 +30332,6 @@ }, /turf/open/floor/plating/snowed/coldroom, /area/station/service/kitchen/coldroom) -"iBl" = ( -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark/smooth_large, -/area/station/science/breakroom) "iBo" = ( /obj/machinery/door/firedoor, /obj/structure/disposalpipe/segment, @@ -30482,7 +30441,7 @@ "iDp" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/closed/wall, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "iDq" = ( /turf/closed/wall/r_wall, /area/station/security/warden) @@ -30514,6 +30473,13 @@ /obj/machinery/atmospherics/pipe/smart/simple/dark/visible, /turf/open/floor/iron, /area/station/maintenance/disposal/incinerator) +"iEt" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/science/robotics/mechbay) "iEA" = ( /obj/structure/table/glass, /obj/item/storage/box/gloves{ @@ -30667,7 +30633,7 @@ /area/station/science/ordnance/office) "iHp" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "iHP" = ( /obj/machinery/holopad, /obj/effect/spawner/random/engineering/tracking_beacon, @@ -30762,14 +30728,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood, /area/station/commons/vacant_room/office) -"iJr" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/obj/effect/turf_decal/tile/red, -/obj/machinery/light/warm/directional/east, -/turf/open/floor/iron, -/area/station/security/prison/mess) "iJC" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 @@ -30786,7 +30744,7 @@ }, /obj/effect/spawner/random/armory/rubbershot, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "iJK" = ( /obj/structure/lattice/catwalk, /obj/structure/railing, @@ -30816,7 +30774,7 @@ /area/station/hallway/primary/central) "iJO" = ( /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "iJV" = ( /obj/structure/railing/corner/end{ dir = 8 @@ -30889,7 +30847,7 @@ /obj/machinery/door/airlock/maintenance, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/any/security/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -31006,7 +30964,7 @@ "iMp" = ( /obj/machinery/status_display/ai/directional/east, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "iMu" = ( /obj/machinery/camera/directional/east{ c_tag = "Arrivals Escape Pod 1" @@ -31030,7 +30988,7 @@ /obj/effect/turf_decal/bot_red, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "iMA" = ( /obj/effect/turf_decal/loading_area{ dir = 1 @@ -31113,6 +31071,12 @@ }, /turf/open/floor/iron/grimy, /area/station/commons/vacant_room/office) +"iNL" = ( +/obj/effect/turf_decal/stripes/line, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/white, +/area/station/science/xenobiology) "iNQ" = ( /turf/open/floor/carpet, /area/station/maintenance/space_hut/cabin) @@ -31136,12 +31100,6 @@ }, /turf/open/floor/plating/snowed/icemoon, /area/icemoon/surface/outdoors/less_spawns) -"iOs" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/airalarm/directional/south, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/security/courtroom) "iOv" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ dir = 8 @@ -31193,6 +31151,21 @@ }, /turf/open/floor/iron, /area/station/commons/dorms) +"iPr" = ( +/obj/machinery/door/airlock/external{ + dir = 8; + name = "Lower Medical External Access" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "chem-morgue-airlock" + }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, +/obj/effect/mapping_helpers/broken_floor, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/airlock/access/any/engineering/external, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/medical/morgue) "iPz" = ( /obj/effect/landmark/start/medical_doctor, /obj/effect/turf_decal/tile/blue/fourcorners, @@ -31268,18 +31241,6 @@ /obj/machinery/status_display/ai/directional/south, /turf/open/floor/iron, /area/station/cargo/miningdock) -"iQx" = ( -/obj/effect/turf_decal/stripes/asteroid/line{ - dir = 1 - }, -/obj/structure/chair/office/light{ - dir = 1 - }, -/obj/effect/turf_decal/tile/dark/half/contrasted{ - dir = 1 - }, -/turf/open/floor/iron/white/side, -/area/mine/living_quarters) "iQF" = ( /obj/effect/turf_decal/trimline/yellow/filled/line, /obj/machinery/airalarm/directional/south, @@ -31306,6 +31267,11 @@ /obj/machinery/airalarm/directional/south, /turf/open/floor/iron, /area/station/science/xenobiology) +"iQN" = ( +/obj/machinery/firealarm/directional/east, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/medical/chemistry) "iQQ" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, @@ -31396,14 +31362,6 @@ /obj/machinery/light/small/directional/south, /turf/open/floor/iron/dark/textured, /area/station/security/interrogation) -"iRN" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, -/turf/open/floor/iron/white/side{ - dir = 6 - }, -/area/station/science/research) "iRV" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -31462,19 +31420,24 @@ name = "Unisex Showers" }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/iron, /area/station/maintenance/starboard/fore) "iST" = ( /obj/structure/chair/office, /obj/structure/extinguisher_cabinet/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "iSX" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor/iron_smooth, /area/station/maintenance/port/fore) +"iTb" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/hallway/secondary/exit/departure_lounge) "iTr" = ( /obj/structure/disposalpipe/segment{ dir = 6 @@ -31498,11 +31461,6 @@ /obj/effect/spawner/random/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical/morgue) -"iTC" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/sign/warning/docking/directional/north, -/turf/open/floor/plating, -/area/station/maintenance/aft/lesser) "iTP" = ( /obj/item/reagent_containers/cup/bucket, /obj/effect/turf_decal/trimline/green/filled/line, @@ -31510,6 +31468,9 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/station/maintenance/starboard/aft) +"iTR" = ( +/turf/open/floor/carpet, +/area/station/command/heads_quarters/hop) "iTY" = ( /obj/machinery/light/small/directional/east, /turf/open/floor/engine/plasma, @@ -31590,7 +31551,7 @@ /turf/open/floor/iron/dark/smooth_half{ dir = 1 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "iUT" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -31615,18 +31576,6 @@ }, /turf/open/floor/iron, /area/station/commons/storage/primary) -"iVv" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/obj/structure/cable, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, -/turf/open/floor/iron/cafeteria{ - dir = 8 - }, -/area/station/hallway/secondary/entry) "iVA" = ( /obj/effect/landmark/start/shaft_miner, /turf/open/floor/iron, @@ -31745,13 +31694,6 @@ }, /turf/open/floor/iron/cafeteria, /area/station/engineering/atmos) -"iXu" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) "iXC" = ( /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, @@ -31836,6 +31778,14 @@ /obj/structure/sink/directional/west, /turf/open/floor/iron/white, /area/station/medical/medbay/aft) +"iYt" = ( +/obj/machinery/portable_atmospherics/scrubber, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/obj/structure/sign/warning/secure_area/directional/north, +/turf/open/floor/plating, +/area/station/ai/satellite/maintenance) "iYy" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, @@ -31883,11 +31833,6 @@ /obj/effect/turf_decal/trimline/yellow/line, /turf/open/floor/iron/dark/side, /area/station/security/prison/workout) -"iZq" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/maintenance/central/greater) "iZr" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/electrolyzer, @@ -31932,6 +31877,7 @@ /obj/effect/turf_decal/tile/brown/anticorner/contrasted{ dir = 1 }, +/obj/machinery/firealarm/directional/west, /turf/open/floor/iron/white, /area/station/medical/break_room) "iZW" = ( @@ -31958,7 +31904,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "jai" = ( /obj/structure/fence/post{ dir = 8 @@ -32196,7 +32142,8 @@ dir = 1 }, /obj/structure/noticeboard/hos{ - pixel_y = 36 + pixel_y = 36; + dir = 1 }, /turf/open/floor/iron, /area/station/security/brig/upper) @@ -32237,12 +32184,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/security/prison/mess) -"jdm" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, -/turf/open/floor/iron/white, -/area/station/medical/cryo) "jdA" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 4 @@ -32414,15 +32355,6 @@ /obj/effect/landmark/event_spawn, /turf/open/floor/glass, /area/station/security/lockers) -"jgx" = ( -/obj/machinery/airalarm/directional/west, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/tile/brown/half/contrasted{ - dir = 8 - }, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/maintenance/disposal) "jgC" = ( /obj/structure/minecart_rail{ dir = 10 @@ -32522,6 +32454,13 @@ /obj/structure/table, /turf/open/floor/iron/grimy, /area/station/security/prison/work) +"jhL" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/disposal) "jhQ" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -32560,7 +32499,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "jjt" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -32673,6 +32612,19 @@ }, /turf/open/floor/iron/smooth, /area/mine/mechbay) +"jld" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/obj/item/radio/intercom/directional/south, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/brown/half/contrasted, +/obj/machinery/camera/directional/south{ + c_tag = "Mining B-1 Hallway North"; + network = list("ss13", "mine") + }, +/turf/open/floor/iron/dark/side, +/area/mine/eva) "jle" = ( /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable, @@ -32759,14 +32711,6 @@ }, /turf/open/floor/iron/cafeteria, /area/mine/laborcamp) -"jmh" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 - }, -/turf/open/floor/iron/white/side{ - dir = 10 - }, -/area/station/science/research) "jms" = ( /obj/structure/cable, /obj/machinery/power/apc/auto_name/directional/west, @@ -32829,7 +32773,8 @@ }, /obj/machinery/light/directional/north, /obj/structure/noticeboard/qm{ - pixel_y = 36 + pixel_y = 36; + dir = 1 }, /turf/open/floor/iron, /area/station/cargo/storage) @@ -32903,7 +32848,7 @@ /obj/item/clothing/mask/gas, /obj/machinery/status_display/ai/directional/east, /turf/open/floor/iron/textured, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "jol" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/segment{ @@ -33114,11 +33059,6 @@ }, /turf/open/floor/iron, /area/station/science/robotics/lab) -"jsp" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer4, -/turf/open/floor/iron, -/area/station/security/prison/work) "jsq" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -33130,7 +33070,7 @@ req_one_access = list("teleporter","minisat") }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "jss" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -33171,10 +33111,10 @@ installation = /obj/item/gun/energy/e_gun }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "jtn" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) @@ -33293,10 +33233,6 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/disposal) -"jum" = ( -/obj/effect/turf_decal/tile/brown, -/turf/open/floor/iron/dark/corner, -/area/mine/eva) "juq" = ( /obj/structure/closet/secure_closet/personal{ anchored = 1 @@ -33371,6 +33307,19 @@ /obj/machinery/light/floor, /turf/open/floor/iron, /area/mine/production) +"jvJ" = ( +/obj/structure/sign/directions/engineering{ + pixel_y = -10 + }, +/obj/structure/sign/directions/evac{ + dir = 4; + pixel_y = 10 + }, +/obj/structure/sign/directions/security{ + dir = 4 + }, +/turf/closed/wall, +/area/station/commons/storage/tools) "jvL" = ( /obj/structure/cable, /obj/effect/spawner/structure/window/hollow/reinforced/middle{ @@ -33449,11 +33398,16 @@ /area/station/security/brig/upper) "jwz" = ( /obj/structure/flora/rock/icy/style_random, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/underground/explored) +"jwC" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/white/side{ + dir = 9 + }, +/area/station/science/research) "jwF" = ( /obj/effect/spawner/random/trash/mess, /turf/open/floor/iron, @@ -33499,7 +33453,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "jxw" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating/icemoon, @@ -33621,7 +33575,7 @@ /obj/machinery/firealarm/directional/east, /obj/structure/sign/warning/secure_area/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "jzH" = ( /obj/machinery/modular_computer/preset/research{ dir = 4 @@ -33631,6 +33585,19 @@ }, /turf/open/floor/iron/smooth_corner, /area/station/command/heads_quarters/rd) +"jzI" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/railing{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark_red/arrow_ccw{ + dir = 8 + }, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/engineering/atmos/storage) "jzL" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/mining/glass{ @@ -33752,14 +33719,6 @@ }, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/underground/explored) -"jBr" = ( -/obj/machinery/computer/security{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/computer/security/telescreen/prison/directional/north, -/turf/open/floor/iron/showroomfloor, -/area/station/security/warden) "jBB" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/junction, /obj/effect/spawner/structure/window, @@ -33836,12 +33795,30 @@ dir = 4 }, /area/mine/production) +"jCW" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/spawner/random/structure/steam_vent, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/plating, +/area/station/maintenance/aft/greater) "jDc" = ( /obj/effect/spawner/random/vending/snackvend, /obj/structure/sign/departments/restroom/directional/south, /obj/effect/turf_decal/tile/brown/fourcorners, /turf/open/floor/iron/white, /area/station/medical/break_room) +"jDf" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/hallway/secondary/exit/departure_lounge) "jDl" = ( /obj/structure/sign/warning/cold_temp/directional/north, /turf/open/floor/plating, @@ -33914,7 +33891,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "jDX" = ( /obj/structure/training_machine, /obj/item/target, @@ -33985,6 +33962,14 @@ }, /turf/open/floor/plating/icemoon, /area/station/science/ordnance/bomb/planet) +"jEW" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/cargo/miningdock) "jFf" = ( /obj/effect/turf_decal/siding/thinplating/dark{ dir = 1 @@ -34061,12 +34046,6 @@ /obj/effect/turf_decal/tile/red/full, /turf/open/floor/iron/dark/smooth_large, /area/station/security/checkpoint/medical) -"jHb" = ( -/obj/structure/sign/warning/secure_area{ - pixel_y = 32 - }, -/turf/open/misc/asteroid/snow/icemoon, -/area/icemoon/surface/outdoors/less_spawns) "jHe" = ( /obj/structure/table/wood, /turf/open/floor/wood/parquet, @@ -34210,16 +34189,17 @@ }, /obj/structure/cable/multilayer/connected, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) -"jJd" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/area/station/ai/satellite/chamber) +"jJa" = ( +/obj/machinery/door/airlock/public/glass{ + name = "Public Mining Storage" + }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/hallway/secondary/entry) +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/textured, +/area/station/commons/storage/mining) "jJe" = ( /obj/machinery/conveyor{ dir = 4; @@ -34354,7 +34334,7 @@ /turf/open/floor/iron/freezer, /area/station/science/xenobiology) "jKJ" = ( -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -34369,9 +34349,8 @@ /obj/effect/landmark/event_spawn, /obj/structure/cable, /obj/effect/turf_decal/tile/green, -/obj/structure/sign/plaques/kiddie, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "jKN" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -34389,7 +34368,8 @@ /area/station/maintenance/port/greater) "jKQ" = ( /obj/structure/sign/warning/fire{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/surface/outdoors/less_spawns) @@ -34531,7 +34511,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "jMn" = ( /obj/structure/disposalpipe/segment, /obj/machinery/door/airlock/maintenance{ @@ -34782,12 +34762,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/fore) -"jPx" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/science/breakroom) "jPL" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -34816,10 +34790,24 @@ /obj/structure/sign/warning/directional/north, /turf/open/floor/engine, /area/station/engineering/supermatter) +"jQf" = ( +/obj/machinery/computer/crew, +/obj/effect/turf_decal/tile/blue/full, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/large, +/area/station/medical/treatment_center) "jQi" = ( /obj/machinery/space_heater, /turf/open/floor/plating, /area/station/maintenance/aft/lesser) +"jQv" = ( +/obj/structure/reagent_dispensers/water_cooler, +/obj/effect/turf_decal/tile/neutral/anticorner/contrasted{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/commons/fitness) "jQy" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, @@ -34893,11 +34881,8 @@ /obj/item/ai_module/supplied/freeform, /obj/effect/turf_decal/tile/dark_green, /obj/machinery/light/directional/west, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "jRi" = ( /obj/structure/fence{ dir = 8 @@ -34926,10 +34911,6 @@ "jRA" = ( /turf/open/openspace, /area/station/service/bar/atrium) -"jRC" = ( -/obj/structure/cable, -/turf/open/floor/carpet, -/area/station/command/heads_quarters/hop) "jRI" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -35022,15 +35003,6 @@ }, /turf/open/floor/plastic, /area/station/commons/dorms/laundry) -"jST" = ( -/obj/machinery/door/window/right/directional/north{ - name = "Bridge Delivery"; - req_access = list("command") - }, -/obj/effect/turf_decal/delivery, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/maintenance/central/greater) "jTf" = ( /obj/structure/fence{ dir = 1 @@ -35051,12 +35023,6 @@ }, /turf/open/floor/iron/white, /area/station/science/lab) -"jTr" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white, -/area/station/science/explab) "jTw" = ( /obj/machinery/power/port_gen/pacman/pre_loaded, /turf/open/floor/plating, @@ -35150,7 +35116,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "jUY" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/closet/secure_closet/personal{ @@ -35225,6 +35191,11 @@ }, /turf/open/floor/wood/parquet, /area/station/service/bar/atrium) +"jWn" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/turf/open/floor/iron, +/area/station/security/prison/work) "jWq" = ( /obj/structure/fence{ dir = 4 @@ -35381,7 +35352,7 @@ /obj/structure/cable, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "jZe" = ( /obj/structure/disposalpipe/segment{ dir = 6 @@ -35738,6 +35709,15 @@ }, /turf/open/floor/engine/vacuum, /area/station/engineering/atmos) +"kea" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/turf/open/floor/iron/white, +/area/station/science/xenobiology) "kei" = ( /obj/docking_port/stationary/escape_pod, /turf/open/floor/plating/snowed/icemoon, @@ -35759,13 +35739,6 @@ dir = 4 }, /area/station/security/brig/entrance) -"kex" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white, -/area/station/science/explab) "keA" = ( /obj/effect/turf_decal/weather/snow/corner{ dir = 8 @@ -35867,7 +35840,7 @@ pixel_x = -10 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "kfS" = ( /obj/machinery/atmospherics/components/tank/air/layer4{ initialize_directions = 2 @@ -35983,11 +35956,11 @@ /obj/item/crowbar/red, /obj/machinery/airalarm/directional/north, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "khR" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "khW" = ( /obj/effect/decal/cleanable/cobweb, /obj/effect/spawner/random/structure/crate, @@ -36090,7 +36063,7 @@ /obj/effect/spawner/random/armory/bulletproof_armor, /obj/effect/spawner/random/armory/bulletproof_helmet, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "kjd" = ( /obj/structure/plasticflaps{ dir = 4 @@ -36116,7 +36089,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -36201,13 +36174,13 @@ /obj/effect/turf_decal/bot_red, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "kke" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -36233,11 +36206,6 @@ /obj/machinery/power/port_gen/pacman/pre_loaded, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"kkA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/newscaster/directional/west, -/turf/open/floor/plating, -/area/station/maintenance/disposal) "kkB" = ( /obj/machinery/light/small/directional/south, /obj/structure/closet/secure_closet/brig{ @@ -36377,15 +36345,6 @@ }, /turf/open/floor/iron/white, /area/mine/laborcamp) -"kmC" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Public Mining Storage" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/machinery/door/firedoor, -/turf/open/floor/iron/textured, -/area/station/commons/storage/mining) "kmG" = ( /obj/machinery/defibrillator_mount/directional/north, /obj/effect/turf_decal/tile/blue/full, @@ -36413,7 +36372,7 @@ /obj/machinery/door/airlock/engineering{ name = "Utilities Room" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, @@ -36670,21 +36629,17 @@ /turf/open/floor/plating, /area/mine/eva/lower) "krv" = ( -/obj/structure/sign/directions/engineering{ - pixel_x = -32; - pixel_y = -40 +/obj/structure/sign/directions/command{ + pixel_y = 10 }, -/obj/structure/sign/directions/medical{ - dir = 4; - pixel_x = -32; - pixel_y = -24 +/obj/structure/sign/directions/vault{ + dir = 8; + pixel_y = -10 }, -/obj/structure/sign/directions/evac{ - dir = 4; - pixel_x = -32; - pixel_y = -32 +/obj/structure/sign/directions/supply{ + dir = 8 }, -/turf/open/floor/iron, +/turf/closed/wall, /area/station/hallway/primary/central) "kry" = ( /obj/structure/cable, @@ -36795,6 +36750,20 @@ "ksC" = ( /turf/open/floor/iron, /area/station/security/brig/upper) +"ksP" = ( +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/door/firedoor{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/white/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/white/line{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark/textured, +/area/station/hallway/secondary/entry) "kta" = ( /turf/closed/wall, /area/station/commons/storage/mining) @@ -36823,6 +36792,15 @@ /obj/structure/grille, /turf/open/floor/plating, /area/station/maintenance/aft/greater) +"kth" = ( +/obj/structure/railing/corner/end/flip{ + dir = 1 + }, +/obj/effect/turf_decal/tile/brown{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/commons/storage/mining) "ktl" = ( /obj/machinery/holopad, /obj/structure/cable, @@ -36947,6 +36925,12 @@ }, /turf/open/floor/plating, /area/station/service/hydroponics) +"kvc" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/white, +/area/station/science/xenobiology) "kvf" = ( /obj/effect/turf_decal/caution{ dir = 4 @@ -37131,11 +37115,6 @@ dir = 5 }, /area/station/hallway/secondary/entry) -"kyi" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/iron, -/area/station/command/gateway) "kyp" = ( /obj/effect/turf_decal/box/corners, /obj/effect/turf_decal/box/corners{ @@ -37205,6 +37184,21 @@ /obj/effect/mapping_helpers/airlock/red_alert_access, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/storage) +"kzh" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/turf_decal/tile/brown/half/contrasted{ + dir = 4 + }, +/obj/effect/turf_decal/tile/brown/half/contrasted{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/cargo/storage) "kzv" = ( /obj/structure/bed, /obj/effect/spawner/random/bedsheet/any, @@ -37364,16 +37358,20 @@ /obj/machinery/atmospherics/pipe/layer_manifold/supply/hidden{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"kBl" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/circuit, -/area/station/science/robotics/mechbay) +"kBy" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/white, +/area/station/science/xenobiology) "kBL" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -37413,7 +37411,8 @@ /obj/machinery/firealarm/directional/west, /obj/machinery/light/small/directional/west, /obj/structure/sign/painting/library{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/wood, /area/station/service/library) @@ -37493,7 +37492,7 @@ /area/station/construction) "kCV" = ( /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "kDa" = ( /obj/structure/extinguisher_cabinet/directional/west, /obj/structure/table, @@ -37563,6 +37562,14 @@ }, /turf/open/floor/plating/icemoon, /area/station/science/ordnance/bomb/planet) +"kEa" = ( +/obj/structure/cable, +/obj/effect/turf_decal/tile/blue/half/contrasted, +/obj/effect/turf_decal/siding/thinplating, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/commons/locker) "kEj" = ( /obj/machinery/computer/libraryconsole/bookmanagement, /obj/structure/table, @@ -37662,9 +37669,7 @@ /obj/structure/disposalpipe/trunk{ dir = 4 }, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/station/command/heads_quarters/hop) "kGc" = ( @@ -37779,13 +37784,6 @@ /obj/structure/sign/poster/official/random/directional/west, /turf/open/floor/stone, /area/mine/eva/lower) -"kHl" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/hallway/secondary/entry) "kHn" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/firealarm/directional/south, @@ -37845,7 +37843,7 @@ dir = 8 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "kIh" = ( /obj/effect/turf_decal/tile/blue{ dir = 4 @@ -37929,6 +37927,13 @@ /obj/effect/spawner/random/maintenance/two, /turf/open/floor/plating, /area/station/maintenance/starboard/upper) +"kJd" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/command/heads_quarters/hop) "kJe" = ( /obj/machinery/door/airlock/external{ name = "Solar Maintenance" @@ -38133,6 +38138,12 @@ /obj/machinery/space_heater, /turf/open/floor/plating, /area/station/maintenance/department/chapel) +"kMX" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/hallway/secondary/entry) "kMY" = ( /obj/effect/turf_decal/siding/yellow{ dir = 6 @@ -38326,7 +38337,7 @@ }, /obj/effect/turf_decal/tile/dark_green, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "kPg" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -38437,7 +38448,7 @@ }, /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "kQE" = ( /obj/structure/reagent_dispensers/watertank, /turf/open/floor/plating, @@ -38482,6 +38493,11 @@ /obj/structure/bookcase, /turf/open/floor/iron, /area/mine/laborcamp) +"kRp" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/aft/lesser) "kRw" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/computer/atmos_control/nocontrol/incinerator{ @@ -38504,16 +38520,6 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/science/robotics/mechbay) -"kRH" = ( -/obj/machinery/door/airlock/highsecurity{ - name = "Chemistry Lab Exit" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ - cycle_id = "chem-airlock" - }, -/obj/effect/mapping_helpers/airlock/access/all/medical/chemistry, -/turf/open/floor/plating, -/area/station/medical/chemistry) "kRJ" = ( /obj/machinery/camera/directional/north{ c_tag = "Atmospherics Distribution Loop" @@ -38557,9 +38563,9 @@ /turf/open/floor/iron, /area/mine/laborcamp/security) "kSw" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, -/area/icemoon/underground/explored) +/obj/structure/sign/warning/secure_area/directional/north, +/turf/open/misc/asteroid/snow/icemoon, +/area/icemoon/surface/outdoors/nospawn) "kSA" = ( /obj/machinery/mining_weather_monitor/directional/east, /turf/open/floor/iron/grimy, @@ -38590,6 +38596,17 @@ }, /turf/open/floor/plating, /area/station/engineering/supermatter) +"kSR" = ( +/obj/effect/turf_decal/tile/blue, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/light/directional/east, +/obj/item/radio/intercom/directional/east, +/obj/structure/cable, +/turf/open/floor/iron/white/corner{ + dir = 4 + }, +/area/station/hallway/secondary/entry) "kSU" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -38601,6 +38618,13 @@ dir = 1 }, /area/station/service/chapel/office) +"kTy" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/obj/structure/railing, +/turf/open/floor/iron/dark, +/area/station/service/chapel) "kTz" = ( /turf/open/floor/iron/smooth_half, /area/station/security/brig/upper) @@ -38638,7 +38662,7 @@ "kUn" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -38691,7 +38715,7 @@ /area/station/cargo/storage) "kUJ" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/south, +/obj/machinery/light/small/empty/directional/south, /obj/structure/mirror/directional/west, /obj/structure/sign/poster/contraband/random/directional/south, /obj/effect/turf_decal/tile/yellow/opposingcorners, @@ -38741,14 +38765,13 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) -"kVA" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/machinery/mining_weather_monitor/directional/north, -/turf/open/floor/iron/large, -/area/station/hallway/secondary/entry) +"kVD" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/cargo/storage) "kVF" = ( /obj/structure/closet/secure_closet/courtroom, /obj/item/gavelhammer, @@ -38791,6 +38814,11 @@ }, /turf/open/floor/iron/white, /area/station/medical/medbay/aft) +"kVY" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/brown/half/contrasted, +/turf/open/floor/iron/dark, +/area/station/cargo/miningdock) "kWh" = ( /obj/machinery/holopad/secure, /turf/open/floor/iron/dark/smooth_large, @@ -39021,7 +39049,6 @@ /turf/open/floor/iron, /area/mine/laborcamp) "kYF" = ( -/obj/structure/light_construct/directional/west, /mob/living/basic/goose/vomit, /turf/open/floor/wood, /area/station/maintenance/port/aft) @@ -39047,15 +39074,6 @@ }, /turf/open/floor/iron/dark, /area/station/commons/storage/mining) -"kYS" = ( -/obj/machinery/door/airlock/public/glass{ - name = "Public Mining Storage" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/landmark/navigate_destination, -/obj/machinery/door/firedoor, -/turf/open/floor/iron/textured, -/area/station/commons/storage/mining) "kZa" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -39108,12 +39126,6 @@ "kZu" = ( /turf/closed/wall, /area/mine/production) -"kZC" = ( -/obj/machinery/holopad, -/obj/effect/turf_decal/bot_white, -/obj/effect/turf_decal/stripes/corner, -/turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/command/storage/eva) "kZI" = ( /obj/structure/rack, /obj/effect/spawner/random/contraband/permabrig_weapon, @@ -39134,18 +39146,7 @@ req_access = list("armory") }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) -"laf" = ( -/obj/structure/cable, -/obj/structure/chair{ - dir = 1 - }, -/obj/item/storage/fancy/cigarettes, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/aft/greater) +/area/station/security/armory) "lah" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -39251,6 +39252,12 @@ /obj/effect/turf_decal/tile/brown/half/contrasted, /turf/open/floor/iron, /area/station/command/heads_quarters/qm) +"lbj" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/turf/open/floor/iron/dark/smooth_large, +/area/station/hallway/secondary/entry) "lbk" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -39339,9 +39346,9 @@ /area/station/maintenance/disposal/incinerator) "ldw" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/greater) "ldz" = ( @@ -39373,13 +39380,6 @@ /obj/effect/turf_decal/tile/blue/half/contrasted, /turf/open/floor/iron/white, /area/station/medical/chemistry) -"ldV" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/hallway/secondary/exit/departure_lounge) "lec" = ( /obj/structure/railing{ dir = 4 @@ -39442,6 +39442,13 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/cargo/storage) +"lfd" = ( +/obj/machinery/light/small/directional/west, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/hallway/secondary/entry) "lfo" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 @@ -39831,12 +39838,6 @@ dir = 1 }, /area/station/security/office) -"lke" = ( -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/service/janitor) "lkj" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -39868,8 +39869,6 @@ }, /obj/item/storage/box/rxglasses, /obj/item/hand_labeler, -/obj/item/gun/syringe, -/obj/item/gun/syringe, /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 8 }, @@ -39888,6 +39887,9 @@ "lli" = ( /turf/open/floor/plating, /area/station/maintenance/starboard/fore) +"llm" = ( +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/eva) "lln" = ( /obj/effect/decal/cleanable/blood/tracks{ dir = 4 @@ -39897,11 +39899,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/medical/morgue) -"llw" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) "llD" = ( /obj/structure/table/wood, /obj/item/paper_bin/carbon, @@ -40089,12 +40086,19 @@ dir = 1 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "lom" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/stone, /area/station/commons/lounge) +"lon" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/obj/structure/cable, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/eva) "loy" = ( /obj/effect/turf_decal/tile/red/anticorner/contrasted, /obj/machinery/button/door/directional/east{ @@ -40118,6 +40122,20 @@ /obj/structure/statue/snow/snowman, /turf/open/misc/asteroid/snow/standard_air, /area/station/science/cytology) +"loP" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/security/prison/workout) +"loQ" = ( +/obj/structure/table, +/obj/item/papercutter{ + pixel_x = 8; + pixel_y = 6 + }, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/command/heads_quarters/hop) "loT" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -40238,18 +40256,10 @@ /obj/item/rcl/pre_loaded, /turf/open/floor/iron, /area/station/command/heads_quarters/ce) -"lqj" = ( -/obj/structure/chair/pew/right{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron/dark, -/area/station/service/chapel) "lqz" = ( /obj/structure/cable, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lqA" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/line{ @@ -40355,6 +40365,13 @@ /obj/effect/decal/cleanable/blood/drip, /turf/open/floor/iron/showroomfloor, /area/station/security/prison/work) +"lrO" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/science/explab) "lrY" = ( /obj/machinery/space_heater, /obj/machinery/light/small/directional/east, @@ -40390,6 +40407,13 @@ "lso" = ( /turf/open/floor/iron, /area/station/hallway/primary/starboard) +"lst" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/medical/morgue) "lsA" = ( /obj/effect/turf_decal/siding/wood{ dir = 4 @@ -40421,7 +40445,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "ltk" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 @@ -40455,15 +40479,6 @@ /obj/effect/spawner/structure/window, /turf/open/floor/plating, /area/station/commons/fitness) -"ltW" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/blue/opposingcorners{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/cafeteria, -/area/station/commons/dorms/laundry) "ltY" = ( /obj/machinery/camera/directional/north{ c_tag = "Central Hallway North-East" @@ -40537,10 +40552,6 @@ }, /turf/open/floor/iron/dark, /area/station/medical/morgue) -"lva" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/science/xenobiology) "lvb" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 10 @@ -40723,16 +40734,6 @@ /obj/machinery/light/small/directional/north, /turf/open/floor/iron/textured, /area/mine/mechbay) -"lxb" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown/half/contrasted{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/cargo/storage) "lxc" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/public/glass{ @@ -40751,7 +40752,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "lxu" = ( /obj/machinery/atmospherics/pipe/bridge_pipe/green/visible{ dir = 4 @@ -40763,16 +40764,6 @@ /obj/effect/spawner/random/structure/crate_abandoned, /turf/open/floor/plating, /area/station/maintenance/starboard/upper) -"lxT" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/brown/half/contrasted{ - dir = 1 - }, -/turf/open/floor/iron/dark/side{ - dir = 1 - }, -/area/mine/eva) "lxU" = ( /obj/machinery/atmospherics/pipe/smart/manifold/general/visible{ dir = 8 @@ -40793,7 +40784,7 @@ /obj/machinery/airalarm/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "lyg" = ( /turf/closed/wall/r_wall, /area/station/security/brig) @@ -40818,14 +40809,12 @@ /obj/machinery/computer/gateway_control, /obj/effect/turf_decal/bot_white, /obj/effect/turf_decal/tile/blue/opposingcorners, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark, /area/station/command/gateway) "lyG" = ( /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "lyH" = ( /obj/machinery/atmospherics/pipe/smart/simple/dark/visible, /obj/machinery/atmospherics/pipe/smart/manifold4w/brown/visible/layer2, @@ -41141,18 +41130,16 @@ /area/station/engineering/lobby) "lCI" = ( /obj/effect/spawner/random/vending/snackvend, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/effect/turf_decal/siding/wood{ dir = 8 }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron/dark, /area/station/command/meeting_room) "lCV" = ( /obj/machinery/door/airlock/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -41180,22 +41167,19 @@ /turf/open/floor/plating, /area/station/maintenance/port/aft) "lDo" = ( -/obj/structure/sign/directions/medical{ +/obj/structure/sign/directions/evac{ dir = 4; - pixel_x = 32; - pixel_y = -24 + pixel_y = -10 }, -/obj/structure/sign/directions/science{ +/obj/structure/sign/directions/medical{ dir = 4; - pixel_x = 32; - pixel_y = -32 + pixel_y = 10 }, -/obj/structure/sign/directions/engineering{ - pixel_x = 32; - pixel_y = -40 +/obj/structure/sign/directions/security{ + dir = 1 }, -/turf/open/floor/iron, -/area/station/hallway/primary/central) +/turf/closed/wall, +/area/station/maintenance/fore) "lDq" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 @@ -41261,7 +41245,7 @@ req_access = list("ai_upload") }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lEj" = ( /turf/open/floor/iron/dark/textured, /area/station/security/processing) @@ -41281,7 +41265,7 @@ /obj/machinery/door/airlock/research{ name = "Ordnance Launch Room" }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/science/ordnance/testlab) @@ -41370,16 +41354,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"lFA" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 - }, -/obj/machinery/light/directional/south, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/brown/half/contrasted, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/maintenance/disposal) "lFG" = ( /obj/machinery/door/airlock/engineering{ name = "Starboard Bow Solar Access" @@ -41492,23 +41466,11 @@ /obj/machinery/button/door{ id = "Interrogation"; name = "Interrogation Shutters"; - pixel_x = -22 + pixel_x = -22; + dir = 8 }, /turf/open/floor/iron/dark/textured, /area/station/security/interrogation) -"lGL" = ( -/obj/machinery/camera/directional/west{ - c_tag = "Arrivals Hallway South" - }, -/obj/machinery/newscaster/directional/west, -/obj/structure/cable, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/iron/white/corner{ - dir = 1 - }, -/area/station/hallway/secondary/entry) "lGN" = ( /obj/effect/landmark/start/botanist, /obj/structure/chair/office/light, @@ -41627,7 +41589,7 @@ /area/mine/eva/lower) "lIW" = ( /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "lJc" = ( /obj/machinery/hydroponics/soil/rich, /turf/open/floor/grass, @@ -41676,7 +41638,7 @@ "lKs" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, @@ -41725,13 +41687,20 @@ }, /obj/machinery/status_display/evac/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lLm" = ( /turf/open/floor/iron/cafeteria, /area/station/maintenance/port/aft) +"lLr" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/turf/open/floor/carpet, +/area/station/command/meeting_room) "lLA" = ( /obj/structure/sign/warning/fire{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/openspace/icemoon, /area/icemoon/underground/explored) @@ -41754,6 +41723,14 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/recharge_floor, /area/mine/mechbay) +"lLZ" = ( +/obj/machinery/light_switch/directional/west, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/turf_decal/tile/brown/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/maintenance/disposal) "lMa" = ( /obj/item/trash/pistachios, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -41806,7 +41783,7 @@ }, /obj/machinery/light/small/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lNi" = ( /obj/effect/spawner/random/trash/moisture_trap, /turf/open/floor/plating, @@ -41841,7 +41818,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lNG" = ( /obj/machinery/door/airlock/security/glass{ name = "Security Office" @@ -41897,6 +41874,10 @@ }, /turf/open/floor/iron/dark, /area/station/engineering/atmos/mix) +"lOp" = ( +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/white, +/area/station/science/xenobiology) "lOr" = ( /obj/structure/railing, /obj/structure/stairs/east, @@ -41982,7 +41963,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "lPh" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/public/glass{ @@ -42045,7 +42026,7 @@ /turf/open/floor/iron/dark/smooth_edge{ dir = 1 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "lPK" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -42176,12 +42157,6 @@ /obj/machinery/teleport/station, /turf/open/floor/plating, /area/station/command/teleporter) -"lRg" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/hallway/secondary/entry) "lRj" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -42204,7 +42179,7 @@ "lRx" = ( /obj/effect/turf_decal/tile/dark_green, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "lRy" = ( /obj/structure/showcase/cyborg/old{ dir = 8; @@ -42217,7 +42192,7 @@ }, /obj/machinery/newscaster/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lRD" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, @@ -42282,7 +42257,7 @@ /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, /area/station/maintenance/aft/greater) "lRZ" = ( @@ -42343,13 +42318,13 @@ id_tag = "MedbayFoyer"; name = "Medbay" }, -/obj/effect/mapping_helpers/airlock/unres, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/effect/turf_decal/tile/blue/full, +/obj/effect/mapping_helpers/airlock/unres, /turf/open/floor/iron/large, /area/station/medical/medbay/lobby) "lUf" = ( @@ -42396,7 +42371,7 @@ dir = 1 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "lVk" = ( /obj/effect/spawner/structure/window/hollow/reinforced/end{ dir = 1 @@ -42423,6 +42398,12 @@ "lVt" = ( /obj/machinery/firealarm/directional/west, /obj/machinery/light/floor, +/obj/machinery/button/door/directional/west{ + pixel_x = -22; + id = "xenobia10"; + name = "Xenobio Pen 10 Blast DOors"; + req_access = list("xenobiology") + }, /turf/open/floor/iron/white, /area/station/science/xenobiology) "lVu" = ( @@ -42781,7 +42762,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -42824,7 +42805,7 @@ name = "Fitness Maintenance" }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, @@ -42912,12 +42893,6 @@ /obj/structure/closet/crate/mod, /turf/open/floor/iron/white, /area/station/science/robotics/lab) -"mdo" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/landmark/start/prisoner, -/turf/open/floor/iron, -/area/station/security/prison/work) "mdy" = ( /obj/machinery/camera/directional/south{ c_tag = "Morgue Hallway" @@ -42955,7 +42930,7 @@ /obj/item/clothing/gloves/color/grey/protects_cold, /obj/item/clothing/mask/gas, /turf/open/floor/iron/textured, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "mdX" = ( /obj/effect/turf_decal/tile/red{ dir = 8 @@ -42991,7 +42966,7 @@ /obj/machinery/airalarm/directional/south, /obj/effect/turf_decal/tile/neutral/half/contrasted, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "meH" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -43046,7 +43021,7 @@ /area/mine/eva/lower) "mfD" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "mfH" = ( /turf/closed/wall/r_wall, /area/station/security/brig/upper) @@ -43159,13 +43134,13 @@ dir = 8 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "mhb" = ( /obj/effect/turf_decal/trimline/dark/warning{ dir = 8 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "mhx" = ( /obj/effect/turf_decal/bot, /obj/effect/landmark/secequipment, @@ -43236,6 +43211,14 @@ /obj/machinery/light/small/directional/east, /turf/open/floor/engine/n2o, /area/station/engineering/atmos) +"mjA" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/hallway/secondary/entry) "mjH" = ( /obj/structure/table/optable, /obj/machinery/newscaster/directional/east, @@ -43283,12 +43266,6 @@ /obj/item/clothing/head/costume/fancy, /turf/open/floor/iron/dark/textured, /area/station/security/prison) -"mkn" = ( -/obj/structure/cable, -/obj/effect/turf_decal/tile/brown, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron, -/area/station/commons/storage/mining) "mku" = ( /obj/effect/spawner/random/structure/grille, /obj/effect/decal/cleanable/glass, @@ -43337,7 +43314,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "mly" = ( /obj/structure/sign/warning/electric_shock/directional/north, /turf/open/floor/iron/recharge_floor, @@ -43599,6 +43576,14 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/security/prison/mess) +"mpx" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/turf/open/floor/iron/white/side{ + dir = 10 + }, +/area/station/science/research) "mpH" = ( /obj/effect/landmark/event_spawn, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -43612,9 +43597,6 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /turf/open/floor/catwalk_floor/iron_smooth, /area/station/maintenance/port/greater) "mqd" = ( @@ -43723,6 +43705,12 @@ }, /turf/open/floor/iron/white, /area/station/medical/virology) +"mrW" = ( +/obj/structure/disposalpipe/segment{ + dir = 5 + }, +/turf/open/floor/iron, +/area/station/cargo/office) "msb" = ( /obj/effect/spawner/random/maintenance, /turf/open/floor/plating, @@ -43787,13 +43775,6 @@ /obj/machinery/atmospherics/pipe/smart/simple/dark/visible, /turf/closed/wall/r_wall, /area/station/maintenance/disposal/incinerator) -"msP" = ( -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/commons/storage/mining) "msT" = ( /obj/structure/extinguisher_cabinet/directional/south, /obj/machinery/atmospherics/components/binary/valve/digital/on{ @@ -43906,19 +43887,6 @@ }, /turf/open/floor/iron/dark, /area/station/maintenance/disposal) -"mue" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/railing{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/dark_red/arrow_ccw{ - dir = 8 - }, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron, -/area/station/engineering/atmos/storage) "muv" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/chair/stool/directional/west, @@ -43969,7 +43937,7 @@ /obj/structure/cable, /obj/effect/mapping_helpers/airlock/red_alert_access, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "mvG" = ( /obj/machinery/atmospherics/pipe/smart/manifold/yellow/visible{ dir = 8 @@ -44003,7 +43971,7 @@ dir = 5 }, /turf/open/floor/plating/snowed/icemoon, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "mwp" = ( /obj/structure/disposalpipe/trunk/multiz{ dir = 4 @@ -44025,6 +43993,12 @@ }, /turf/open/floor/plating, /area/station/medical/pharmacy) +"mwP" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/corner, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/command/gateway) "mwQ" = ( /obj/structure/tank_holder/extinguisher, /turf/open/floor/plating, @@ -44045,11 +44019,6 @@ /obj/machinery/digital_clock/directional/north, /turf/open/floor/iron, /area/station/commons/locker) -"mxD" = ( -/obj/machinery/holopad, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/science/robotics/mechbay) "mxF" = ( /obj/machinery/door/firedoor, /obj/effect/turf_decal/stripes/white/line{ @@ -44069,17 +44038,6 @@ /obj/machinery/camera/directional/north{ c_tag = "Central Hallway North" }, -/obj/structure/sign/directions/supply{ - dir = 8; - pixel_y = 32 - }, -/obj/structure/sign/directions/vault{ - dir = 8; - pixel_y = 24 - }, -/obj/structure/sign/directions/command{ - pixel_y = 40 - }, /obj/effect/turf_decal/tile/blue/half/contrasted{ dir = 1 }, @@ -44121,7 +44079,7 @@ /obj/machinery/door/airlock/maintenance, /obj/structure/disposalpipe/segment, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /obj/effect/mapping_helpers/airlock/access/any/supply/mining, /turf/open/floor/plating, @@ -44155,7 +44113,7 @@ "myP" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, @@ -44168,11 +44126,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/security/prison/safe) -"myR" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/maintenance/department/cargo) "myW" = ( /obj/structure/ore_box, /turf/open/floor/plating/snowed/smoothed/icemoon, @@ -44282,19 +44235,10 @@ /turf/open/floor/plating, /area/station/maintenance/starboard/fore) "mzZ" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable/layer3, -/obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/aisat/hallway"; - name = "Chamber Hallway Turret Control"; - pixel_x = 32; - pixel_y = -24; - req_access = list("minisat") - }, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/obj/effect/mapping_helpers/broken_floor, +/obj/structure/light_construct/directional/north, +/turf/open/floor/wood, +/area/station/maintenance/port/aft) "mAc" = ( /obj/machinery/door/airlock/maintenance{ name = "Mining Maintenance" @@ -44308,6 +44252,16 @@ "mAe" = ( /turf/open/floor/glass/reinforced, /area/station/security/lockers) +"mAh" = ( +/obj/effect/turf_decal/stripes/asteroid/line{ + dir = 1 + }, +/obj/effect/turf_decal/tile/dark/half/contrasted{ + dir = 1 + }, +/obj/structure/cable, +/turf/open/floor/iron/white/side, +/area/mine/living_quarters) "mAn" = ( /obj/effect/spawner/random/trash, /obj/structure/grille/broken, @@ -44469,7 +44423,7 @@ /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "mCx" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/airalarm/directional/south, @@ -44528,6 +44482,17 @@ /obj/item/stamp/head/ce, /turf/open/floor/iron, /area/station/command/heads_quarters/ce) +"mDS" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/commons/fitness) "mDX" = ( /turf/open/floor/engine/n2, /area/station/engineering/atmos) @@ -44546,7 +44511,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "mEv" = ( /obj/structure/rack, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -44574,7 +44539,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "mEz" = ( /obj/structure/sign/poster/contraband/random/directional/east, /obj/effect/decal/cleanable/dirt, @@ -44585,12 +44550,6 @@ /obj/structure/cable, /turf/open/floor/iron/showroomfloor, /area/station/security/warden) -"mEI" = ( -/obj/structure/railing/corner/end{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/service/chapel) "mEJ" = ( /turf/closed/wall/r_wall, /area/station/science/genetics) @@ -44726,14 +44685,8 @@ /area/icemoon/surface/outdoors/nospawn) "mGg" = ( /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable/layer3, -/obj/machinery/firealarm/directional/south{ - pixel_x = -30 - }, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/turf/closed/wall, +/area/station/science/xenobiology) "mGs" = ( /obj/effect/mapping_helpers/airlock/access/all/medical/paramedic, /obj/structure/cable, @@ -44762,11 +44715,6 @@ /obj/structure/stairs/north, /turf/open/floor/iron/stairs/medium, /area/station/cargo/storage) -"mGJ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/mine/eva) "mGO" = ( /obj/effect/turf_decal/trimline/blue/filled/corner{ dir = 1 @@ -44800,6 +44748,13 @@ /obj/machinery/brm, /turf/open/floor/iron, /area/mine/production) +"mHn" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/station/command/gateway) "mHq" = ( /obj/structure/disposalpipe/segment{ dir = 9 @@ -44887,18 +44842,12 @@ /obj/machinery/power/apc/auto_name/directional/west, /turf/open/floor/iron, /area/station/maintenance/disposal/incinerator) -"mIH" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/effect/turf_decal/tile/brown, -/turf/open/floor/iron, -/area/station/commons/storage/mining) "mII" = ( /obj/machinery/door/airlock/maintenance{ name = "Research Delivery Access" }, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, @@ -45169,7 +45118,7 @@ }, /obj/effect/turf_decal/tile/green, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "mNP" = ( /obj/effect/turf_decal/tile/bar/opposingcorners, /turf/open/floor/iron, @@ -45209,6 +45158,17 @@ }, /turf/open/floor/iron, /area/station/cargo/office) +"mOF" = ( +/obj/structure/disposalpipe/sorting/mail/flip{ + dir = 8 + }, +/obj/structure/cable, +/obj/effect/mapping_helpers/mail_sorting/service/janitor_closet, +/obj/effect/turf_decal/tile/purple/half/contrasted, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/hallway/primary/central) "mOL" = ( /obj/machinery/airalarm/directional/south, /obj/structure/disposalpipe/segment{ @@ -45375,7 +45335,7 @@ /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "mRU" = ( /obj/effect/decal/cleanable/insectguts, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, @@ -45415,16 +45375,12 @@ /turf/open/floor/plating, /area/station/cargo/storage) "mSQ" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/ice, -/area/icemoon/surface/outdoors/nospawn) -"mSX" = ( -/obj/effect/landmark/start/hangover, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/warning/cold_temp/directional/north, -/turf/open/floor/iron/dark, -/area/station/medical/morgue) +/obj/structure/fence{ + dir = 2 + }, +/obj/structure/sign/warning/secure_area/directional/south, +/turf/open/misc/asteroid/snow/icemoon, +/area/icemoon/underground/explored) "mSY" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/structure/sign/warning/secure_area/directional/north, @@ -45461,18 +45417,6 @@ }, /turf/open/floor/iron/white, /area/station/medical/medbay/lobby) -"mUe" = ( -/obj/effect/turf_decal/trimline/blue/filled/line{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/blue/filled/corner{ - dir = 8 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white, -/area/station/medical/treatment_center) "mUh" = ( /obj/effect/spawner/random/structure/closet_private, /turf/open/floor/plating, @@ -45494,6 +45438,11 @@ /obj/effect/landmark/generic_maintenance_landmark, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) +"mUR" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/cargo/miningdock) "mVi" = ( /obj/structure/railing{ dir = 4 @@ -45508,7 +45457,7 @@ "mVp" = ( /obj/structure/cable, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "mVw" = ( /obj/machinery/requests_console/directional/west{ department = "Captain's Desk"; @@ -45530,7 +45479,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, @@ -45554,12 +45503,12 @@ }, /obj/structure/cable, /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) "mWf" = ( @@ -45600,8 +45549,14 @@ /obj/structure/sign/warning/secure_area/directional/east, /obj/effect/turf_decal/tile/blue, /obj/machinery/light/small/directional/east, +/obj/machinery/turretid{ + control_area = "/area/station/ai/satellite/hallway"; + name = "Chamber Hallway Turret Control"; + pixel_y = -24; + req_access = list("minisat") + }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "mWz" = ( /obj/machinery/light/small/directional/south, /turf/open/floor/plating, @@ -45653,6 +45608,10 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/central) +"mWW" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/white, +/area/station/medical/cryo) "mWY" = ( /obj/structure/chair/office, /obj/effect/turf_decal/tile/red/half/contrasted, @@ -45685,7 +45644,7 @@ /obj/structure/cable/layer3, /mob/living/simple_animal/bot/secbot/pingsky, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "mXl" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/camera/directional/east{ @@ -45721,7 +45680,7 @@ /area/station/hallway/secondary/entry) "mYh" = ( /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "mYi" = ( /obj/machinery/door/airlock/medical/glass{ name = "Infirmary" @@ -45780,15 +45739,14 @@ "mYA" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/item/kirbyplants/random, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark, /area/station/hallway/secondary/entry) "mYG" = ( /obj/effect/turf_decal/bot, /obj/structure/noticeboard/hop{ - pixel_y = 36 + pixel_y = 36; + dir = 1 }, /turf/open/floor/iron, /area/station/hallway/primary/central) @@ -45830,7 +45788,7 @@ dir = 4 }, /obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/machinery/light/built/directional/east, +/obj/machinery/light/empty/directional/east, /turf/open/floor/iron/white, /area/station/maintenance/port/fore) "mZG" = ( @@ -45864,12 +45822,6 @@ /obj/item/radio/intercom/directional/north, /turf/open/floor/iron, /area/mine/laborcamp) -"mZK" = ( -/obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/commons/fitness) "mZT" = ( /obj/structure/table/wood, /obj/item/cigarette/cigar{ @@ -45886,17 +45838,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) -"naq" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/obj/effect/turf_decal/tile/brown/half/contrasted{ - dir = 8 - }, -/turf/open/floor/iron/dark/side{ - dir = 8 - }, -/area/mine/eva) "nav" = ( /obj/machinery/firealarm/directional/north, /obj/structure/cable, @@ -45995,9 +45936,7 @@ "nbz" = ( /obj/structure/chair/wood, /obj/effect/mapping_helpers/no_atoms_ontop, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/underground/explored) "nbB" = ( @@ -46101,11 +46040,10 @@ /obj/effect/turf_decal/tile/neutral{ dir = 1 }, -/obj/structure/sign/poster/official/safety_internals/directional/north, /turf/open/floor/iron/dark/smooth_edge{ dir = 4 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "nci" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -46194,13 +46132,6 @@ /obj/machinery/firealarm/directional/south, /turf/open/floor/iron, /area/station/command/heads_quarters/qm) -"ndl" = ( -/obj/effect/turf_decal/tile/brown/half/contrasted{ - dir = 1 - }, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/maintenance/disposal) "ndv" = ( /obj/effect/turf_decal/tile/bar/opposingcorners, /obj/machinery/light/warm/directional/north, @@ -46498,6 +46429,14 @@ /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/iron/grimy, /area/station/maintenance/aft/greater) +"nhS" = ( +/obj/machinery/door/window/right/directional/north{ + name = "Bridge Delivery"; + req_access = list("command") + }, +/obj/effect/turf_decal/delivery, +/turf/open/floor/iron, +/area/station/maintenance/central/greater) "nhT" = ( /obj/machinery/door/airlock/external{ glass = 1; @@ -46678,6 +46617,18 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/vault, /area/station/security/prison/rec) +"nli" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/brown/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/dark/side{ + dir = 1 + }, +/area/mine/eva) "nlp" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -46787,6 +46738,13 @@ /obj/effect/spawner/random/contraband/cannabis, /turf/open/floor/grass, /area/station/security/prison/garden) +"nmw" = ( +/obj/structure/chair/pew/left{ + dir = 1 + }, +/obj/effect/landmark/start/hangover, +/turf/open/floor/iron/dark, +/area/station/service/chapel) "nmx" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -46841,6 +46799,13 @@ /obj/effect/landmark/navigate_destination/library, /turf/open/floor/wood, /area/station/service/library) +"nmX" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron/dark/smooth_large, +/area/station/science/breakroom) "nnj" = ( /obj/structure/table/wood, /obj/effect/turf_decal/siding/wood{ @@ -46947,11 +46912,6 @@ /obj/machinery/newscaster/directional/east, /turf/open/floor/iron, /area/station/engineering/storage_shared) -"noR" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/engineering/atmos/storage) "noT" = ( /obj/effect/spawner/random/trash/bin, /obj/effect/decal/cleanable/dirt, @@ -46960,13 +46920,6 @@ }, /turf/open/floor/plating, /area/station/commons/storage/mining) -"noW" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/effect/turf_decal/trimline/blue/filled/warning, -/turf/open/floor/iron/white, -/area/station/medical/medbay/aft) "noX" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/decal/cleanable/dirt, @@ -47035,7 +46988,7 @@ }, /obj/item/clothing/mask/breath, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "npx" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/decal/cleanable/dirt, @@ -47043,14 +46996,6 @@ /obj/effect/turf_decal/tile/yellow/opposingcorners, /turf/open/floor/iron/white, /area/station/maintenance/port/fore) -"npy" = ( -/obj/structure/chair/comfy/beige{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/carpet/blue, -/area/station/hallway/secondary/entry) "npB" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ dir = 4 @@ -47126,14 +47071,6 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/commons/storage/mining) -"nqD" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/tile/blue, -/turf/open/floor/iron/white/corner{ - dir = 4 - }, -/area/station/hallway/secondary/entry) "nqP" = ( /obj/machinery/camera/directional/north{ c_tag = "Research Division West"; @@ -47368,11 +47305,6 @@ /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) -"nup" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/security/prison/visit) "nuD" = ( /obj/effect/turf_decal/siding/wood/corner{ dir = 4 @@ -47389,9 +47321,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/obj/machinery/firealarm/directional/west{ - pixel_y = 30 - }, /obj/effect/turf_decal/tile/brown/anticorner/contrasted{ dir = 8 }, @@ -47414,12 +47343,6 @@ /obj/machinery/light/small/directional/north, /turf/open/floor/plating/snowed/icemoon, /area/icemoon/underground/explored) -"nvs" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/command/heads_quarters/hop) "nvx" = ( /obj/machinery/airalarm/directional/east, /obj/effect/landmark/event_spawn, @@ -47468,14 +47391,6 @@ }, /turf/open/floor/iron/cafeteria, /area/station/security/prison/work) -"nvI" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white/corner, -/area/station/hallway/secondary/entry) "nvU" = ( /obj/effect/mapping_helpers/airlock/access/all/command/eva, /obj/machinery/door/airlock/external{ @@ -47527,9 +47442,7 @@ /turf/open/floor/iron/dark, /area/station/service/hydroponics) "nwD" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/icemoon/surface/outdoors/less_spawns) "nwF" = ( @@ -47564,6 +47477,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/plating, /area/station/commons/storage/mining) "nxm" = ( @@ -47751,11 +47665,6 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/aft) -"nzs" = ( -/obj/machinery/computer/crew, -/obj/effect/turf_decal/tile/blue/full, -/turf/open/floor/iron/large, -/area/station/medical/treatment_center) "nzy" = ( /obj/machinery/computer/atmos_control/mix_tank{ dir = 8 @@ -47777,7 +47686,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "nzG" = ( /obj/structure/railing{ dir = 10 @@ -47847,7 +47756,8 @@ }, /obj/machinery/light/directional/north, /obj/structure/noticeboard/ce{ - pixel_y = 36 + pixel_y = 36; + dir = 1 }, /turf/open/floor/iron, /area/station/engineering/main) @@ -47934,7 +47844,7 @@ name = "Common Channel" }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "nBt" = ( /obj/effect/turf_decal/siding/white{ dir = 8 @@ -48246,7 +48156,7 @@ /obj/structure/cable/layer3, /obj/effect/landmark/event_spawn, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "nFn" = ( /obj/effect/turf_decal/tile/red{ dir = 1 @@ -48382,7 +48292,7 @@ }, /obj/effect/spawner/random/armory/barrier_grenades, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "nGU" = ( /obj/structure/closet/secure_closet/security/sec, /obj/machinery/airalarm/directional/north, @@ -48666,9 +48576,7 @@ /turf/open/openspace, /area/station/science/research) "nLB" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/icemoon/underground/explored) "nLD" = ( @@ -48755,11 +48663,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible, /turf/open/floor/engine, /area/station/engineering/supermatter/room) -"nMA" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/white, -/area/station/science/research) "nME" = ( /obj/item/clothing/head/utility/hardhat, /obj/effect/turf_decal/weather/snow/corner{ @@ -48798,7 +48701,8 @@ "nMT" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/sign/painting/library{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/wood, /area/station/service/library) @@ -48866,6 +48770,18 @@ /obj/structure/railing/corner, /turf/open/floor/iron, /area/station/cargo/storage) +"nNA" = ( +/obj/structure/cable, +/obj/structure/chair{ + dir = 1 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/plating, +/area/station/maintenance/aft/greater) "nNB" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 9 @@ -48876,7 +48792,7 @@ "nNM" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, @@ -48910,22 +48826,11 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/security/processing) -"nOh" = ( -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/effect/turf_decal/stripes/white/line, -/obj/effect/turf_decal/stripes/white/line{ - dir = 1 - }, -/obj/effect/turf_decal/tile/blue/fourcorners, -/turf/open/floor/iron/dark/textured, -/area/station/medical/cryo) "nOj" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/structure/noticeboard/staff{ - pixel_y = 36 + pixel_y = 36; + dir = 1 }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) @@ -49291,7 +49196,7 @@ /obj/machinery/status_display/evac/directional/south, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "nSH" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -49380,9 +49285,7 @@ /area/station/security/checkpoint/medical) "nTX" = ( /obj/structure/flora/grass/both/style_random, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/surface/outdoors/less_spawns) "nUg" = ( @@ -49408,7 +49311,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/smooth_half, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "nUJ" = ( /obj/machinery/flasher/directional/east{ id = "brigentry" @@ -49466,7 +49369,7 @@ dir = 4 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "nVC" = ( /obj/effect/landmark/event_spawn, /turf/open/floor/iron/white, @@ -49484,6 +49387,18 @@ /obj/structure/plasticflaps/kitchen, /turf/open/floor/plating, /area/station/service/kitchen/coldroom) +"nVM" = ( +/obj/structure/table/wood, +/obj/effect/spawner/random/entertainment/deck{ + pixel_x = -2; + pixel_y = 15 + }, +/obj/effect/spawner/random/food_or_drink/snack{ + pixel_x = 5; + pixel_y = 6 + }, +/turf/open/floor/carpet/blue, +/area/station/hallway/secondary/entry) "nVR" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/cafeteria{ @@ -49498,6 +49413,13 @@ /obj/item/plate, /turf/open/floor/iron/checker, /area/station/maintenance/port/fore) +"nWj" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/holopad, +/turf/open/floor/iron/dark/smooth_large, +/area/station/science/breakroom) "nWn" = ( /obj/structure/tank_holder/extinguisher, /obj/effect/mapping_helpers/burnt_floor, @@ -49532,14 +49454,6 @@ /obj/machinery/holopad, /turf/open/floor/iron/white, /area/station/science/xenobiology) -"nWM" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/machinery/mining_weather_monitor/directional/north, -/turf/open/floor/iron/dark/smooth_large, -/area/station/hallway/secondary/entry) "nXb" = ( /turf/closed/wall, /area/icemoon/surface/outdoors/nospawn) @@ -49658,6 +49572,12 @@ /obj/structure/sign/poster/official/random/directional/south, /turf/open/floor/iron, /area/station/hallway/primary/aft) +"nZw" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/station/hallway/secondary/entry) "nZC" = ( /obj/effect/turf_decal/stripes/corner{ dir = 4 @@ -49681,14 +49601,14 @@ }, /obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "nZU" = ( /obj/machinery/door/airlock/maintenance{ name = "Firefighting Equipment" }, /obj/effect/mapping_helpers/airlock/abandoned, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -49984,10 +49904,6 @@ /obj/structure/railing, /turf/open/openspace, /area/station/service/kitchen/coldroom) -"odN" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/maintenance/central/greater) "odR" = ( /turf/open/floor/iron/white/corner{ dir = 4 @@ -50156,12 +50072,12 @@ /obj/effect/mapping_helpers/airlock/access/all/command/eva, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ogF" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ogL" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -50249,9 +50165,10 @@ /turf/open/floor/iron, /area/mine/laborcamp) "oif" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall, -/area/icemoon/underground/explored) +/obj/effect/gibspawner/human/bodypartless, +/obj/structure/sign/warning/secure_area/directional/south, +/turf/open/misc/asteroid/snow/icemoon, +/area/icemoon/surface/outdoors/nospawn) "oih" = ( /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -50279,7 +50196,7 @@ /area/station/medical/treatment_center) "oiy" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "oiz" = ( /obj/structure/urinal/directional/north, /turf/open/floor/iron/freezer, @@ -50429,7 +50346,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "okb" = ( /obj/machinery/newscaster/directional/north, /turf/open/floor/iron, @@ -50499,6 +50416,11 @@ }, /turf/open/lava/plasma/ice_moon, /area/icemoon/underground/explored) +"okM" = ( +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/hallway/secondary/entry) "okU" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/broken_floor, @@ -50536,12 +50458,10 @@ /turf/open/floor/wood, /area/station/maintenance/aft/greater) "olQ" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/machinery/light/dim/directional/north, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "olR" = ( /obj/structure/rack, /obj/item/wrench, @@ -50593,11 +50513,6 @@ "omk" = ( /turf/open/floor/glass/reinforced, /area/station/security/office) -"omo" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white, -/area/station/medical/cryo) "omG" = ( /obj/structure/table, /obj/item/flashlight/lamp, @@ -50621,6 +50536,12 @@ /obj/effect/mapping_helpers/airlock/abandoned, /turf/open/floor/vault, /area/station/security/prison/rec) +"omL" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/department/cargo) "omP" = ( /obj/machinery/door/airlock{ name = "Cleaning Closet" @@ -50901,7 +50822,7 @@ /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "oqc" = ( /obj/effect/turf_decal/trimline/dark_green/arrow_ccw{ dir = 4 @@ -50922,7 +50843,7 @@ }, /obj/effect/turf_decal/tile/dark_green, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "oqC" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -51004,15 +50925,6 @@ }, /turf/open/floor/iron/dark/textured, /area/station/hallway/secondary/entry) -"orv" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) "orE" = ( /obj/structure/table/reinforced, /obj/item/reagent_containers/cup/beaker/large{ @@ -51026,9 +50938,6 @@ }, /area/station/medical/chem_storage) "orG" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/structure/table, /obj/item/assembly/igniter{ pixel_y = 4; @@ -51042,11 +50951,12 @@ /obj/effect/turf_decal/siding/dark_blue/corner{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark, /area/station/engineering/storage/tech) "orK" = ( /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "orS" = ( /obj/effect/turf_decal/stripes/asteroid/line{ dir = 10 @@ -51085,7 +50995,7 @@ "osm" = ( /obj/structure/extinguisher_cabinet/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "osn" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -51107,7 +51017,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/firealarm/directional/south, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "osI" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/purple/visible, @@ -51130,7 +51040,7 @@ }, /obj/structure/sign/warning/cold_temp/directional/south, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "otf" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -51250,7 +51160,7 @@ /obj/effect/mapping_helpers/airlock/access/all/security/armory, /obj/effect/mapping_helpers/airlock/abandoned, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -51371,12 +51281,6 @@ /obj/machinery/light/cold/directional/west, /turf/open/floor/iron/white, /area/station/medical/treatment_center) -"owv" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/mob/living/basic/lizard/wags_his_tail, -/turf/open/floor/iron, -/area/station/service/janitor) "owC" = ( /turf/closed/wall/r_wall, /area/station/science/server) @@ -51413,7 +51317,7 @@ /obj/effect/mapping_helpers/airlock/abandoned, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -51546,7 +51450,7 @@ /area/icemoon/underground/explored) "oyW" = ( /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "oyX" = ( /obj/machinery/atmospherics/pipe/bridge_pipe/green/visible, /obj/machinery/atmospherics/pipe/bridge_pipe/yellow/visible{ @@ -51569,7 +51473,7 @@ /obj/item/folder/white, /obj/machinery/airalarm/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ozk" = ( /obj/machinery/door/airlock{ name = "Unisex Showers" @@ -51760,7 +51664,7 @@ /obj/effect/turf_decal/tile/red/half/contrasted, /obj/machinery/light/small/directional/north, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "oBg" = ( /obj/structure/table/wood, /obj/item/book/bible, @@ -52035,11 +51939,6 @@ }, /turf/open/floor/iron/cafeteria, /area/station/commons/dorms/laundry) -"oEh" = ( -/obj/effect/turf_decal/trimline/blue/filled/corner, -/obj/structure/cable, -/turf/open/floor/iron/white, -/area/station/medical/treatment_center) "oEj" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -52059,7 +51958,7 @@ /obj/structure/cable/layer3, /obj/machinery/requests_console/auto_name/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "oEt" = ( /obj/machinery/airalarm/directional/south, /turf/open/floor/iron, @@ -52156,7 +52055,7 @@ /obj/machinery/airalarm/directional/south, /obj/machinery/holopad/secure, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "oFG" = ( /obj/machinery/door/airlock/mining/glass{ name = "Drone Bay" @@ -52524,7 +52423,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "oJT" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/window/reinforced/spawner/directional/south, @@ -52665,7 +52564,7 @@ /obj/effect/mapping_helpers/airlock/access/any/command/minisat, /obj/effect/mapping_helpers/airlock/access/any/command/ai_upload, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "oLK" = ( /obj/machinery/air_sensor/mix_tank, /turf/open/floor/engine/vacuum, @@ -52688,14 +52587,6 @@ }, /turf/open/floor/iron, /area/station/cargo/storage) -"oMq" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron/white/corner{ - dir = 1 - }, -/area/station/hallway/secondary/entry) "oMs" = ( /obj/effect/spawner/random/trash/mess, /turf/open/floor/iron/grimy, @@ -52720,7 +52611,7 @@ /obj/effect/turf_decal/delivery/red, /obj/machinery/suit_storage_unit/standard_unit, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "oMT" = ( /turf/open/floor/iron, /area/station/command/heads_quarters/rd) @@ -52831,14 +52722,27 @@ dir = 8 }, /area/station/hallway/secondary/entry) -"oOQ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ +"oOR" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/turf/open/floor/iron/white/side{ + dir = 6 + }, +/area/station/science/research) +"oPb" = ( +/obj/effect/turf_decal/stripes/asteroid/line{ dir = 1 }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/brown/half/contrasted, -/turf/open/floor/iron/dark/side, -/area/mine/eva) +/obj/structure/chair/office/light{ + dir = 1 + }, +/obj/effect/turf_decal/tile/dark/half/contrasted{ + dir = 1 + }, +/obj/structure/cable, +/turf/open/floor/iron/white/side, +/area/mine/living_quarters) "oPl" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -52860,6 +52764,12 @@ /obj/item/soap/nanotrasen, /turf/open/floor/iron/dark, /area/station/security/execution/education) +"oPr" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/brown/half/contrasted, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark/side, +/area/mine/eva) "oPt" = ( /obj/structure/stairs/east, /turf/open/floor/iron/stairs/medium{ @@ -52882,7 +52792,7 @@ /area/station/maintenance/starboard/lesser) "oPI" = ( /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "oPO" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -52940,6 +52850,14 @@ "oQY" = ( /turf/open/floor/iron/white, /area/station/medical/virology) +"oRf" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 1 + }, +/turf/open/floor/iron/white/corner{ + dir = 8 + }, +/area/station/hallway/secondary/entry) "oRk" = ( /obj/structure/disposalpipe/segment{ dir = 9 @@ -53005,7 +52923,7 @@ /obj/effect/turf_decal/tile/red/half/contrasted, /obj/item/radio/intercom/directional/north, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "oSa" = ( /obj/machinery/door/airlock/public/glass{ id_tag = "gulag3"; @@ -53080,16 +52998,6 @@ /obj/structure/flora/grass/green/style_random, /turf/open/misc/asteroid/snow/standard_air, /area/station/hallway/secondary/exit/departure_lounge) -"oTc" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/item/radio/intercom/directional/east, -/obj/machinery/light/directional/east, -/turf/open/floor/iron/white/corner, -/area/station/hallway/secondary/entry) "oTd" = ( /obj/machinery/camera/directional/south{ c_tag = "Research Division Testing Lab - Chamber"; @@ -53206,6 +53114,10 @@ /obj/machinery/light/small/directional/east, /turf/open/floor/iron/freezer, /area/station/commons/toilet) +"oUY" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/grimy, +/area/station/hallway/secondary/entry) "oVt" = ( /obj/machinery/power/apc/auto_name/directional/south, /obj/structure/cable, @@ -53237,7 +53149,7 @@ dir = 4 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "oVG" = ( /obj/machinery/door/airlock/public/glass{ name = "Art Storage" @@ -53345,7 +53257,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "oXm" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/burnt_floor, @@ -53452,14 +53364,9 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "oYD" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/general/visible, -/obj/machinery/button/door/directional/east{ - id = "xenobio11"; - name = "Xenobio Pen 11 Blast DOors"; - req_access = list("xenobiology") - }, /obj/structure/cable, /turf/open/floor/iron/white, /area/station/science/xenobiology) @@ -53608,7 +53515,7 @@ /area/station/engineering/atmos/hfr_room) "pbs" = ( /turf/closed/wall, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "pby" = ( /obj/effect/gibspawner/human, /turf/open/misc/asteroid/snow/icemoon, @@ -53720,14 +53627,6 @@ }, /turf/open/floor/iron/dark/textured, /area/station/commons/dorms) -"pcB" = ( -/obj/structure/chair/pew{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/landmark/start/assistant, -/turf/open/floor/iron/chapel, -/area/station/service/chapel) "pcI" = ( /obj/machinery/firealarm/directional/west, /obj/machinery/light/directional/south, @@ -53820,7 +53719,7 @@ "pdK" = ( /obj/effect/turf_decal/tile/red/anticorner/contrasted, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "pdO" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/general/visible, /turf/open/floor/engine, @@ -53995,17 +53894,6 @@ dir = 8 }, /area/station/hallway/secondary/entry) -"pgw" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/requests_console/directional/south{ - department = "Bridge"; - name = "Bridge Requests Console" - }, -/obj/effect/mapping_helpers/requests_console/announcement, -/obj/effect/mapping_helpers/requests_console/information, -/obj/effect/mapping_helpers/requests_console/assistance, -/turf/open/floor/wood, -/area/station/command/meeting_room) "pgE" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/decal/cleanable/dirt, @@ -54025,7 +53913,7 @@ dir = 8 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "pgN" = ( /obj/item/organ/tail/monkey, /obj/effect/decal/cleanable/blood/splatter, @@ -54061,6 +53949,14 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor/iron_smooth, /area/station/maintenance/port/aft) +"phn" = ( +/obj/structure/window/spawner/directional/south, +/obj/item/radio/intercom/directional/west, +/obj/effect/turf_decal/tile/brown/half/contrasted, +/obj/structure/railing/corner, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/maintenance/disposal) "phr" = ( /obj/machinery/door/airlock/hydroponics/glass{ name = "Hydroponics" @@ -54120,6 +54016,13 @@ }, /turf/open/floor/iron/dark, /area/station/engineering/supermatter/room) +"phM" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/airalarm/directional/south, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/security/courtroom) "phS" = ( /obj/structure/table/reinforced, /obj/item/hfr_box/body/fuel_input, @@ -54138,14 +54041,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) -"pig" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron, -/area/station/commons/locker) +/area/station/command/vault) "pii" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 @@ -54204,11 +54100,6 @@ dir = 1 }, /area/station/security/brig) -"piP" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/grimy, -/area/station/hallway/secondary/entry) "piT" = ( /obj/machinery/status_display/ai/directional/east, /obj/structure/chair/sofa/left/brown, @@ -54550,7 +54441,7 @@ /area/station/science/explab) "pnR" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "pnU" = ( /obj/machinery/portable_atmospherics/canister/nitrous_oxide, /turf/open/floor/plating, @@ -54581,7 +54472,7 @@ }, /obj/structure/extinguisher_cabinet/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "pou" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible, @@ -54648,19 +54539,6 @@ dir = 4 }, /area/station/security/brig/entrance) -"ppo" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/tile/brown/half/contrasted{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/cargo/storage) -"ppp" = ( -/obj/structure/railing, -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) "ppq" = ( /obj/structure/closet/wardrobe/grey{ anchored = 1 @@ -54675,7 +54553,7 @@ /turf/open/floor/iron, /area/station/cargo/drone_bay) "ppz" = ( -/obj/machinery/computer/rdconsole{ +/obj/machinery/computer/rdconsole/unlocked{ dir = 1 }, /turf/open/floor/iron/white/corner{ @@ -54768,15 +54646,6 @@ "prg" = ( /turf/open/floor/wood, /area/station/service/library) -"prh" = ( -/obj/structure/disposalpipe/sorting/mail/flip{ - dir = 8 - }, -/obj/structure/cable, -/obj/effect/mapping_helpers/mail_sorting/service/janitor_closet, -/obj/effect/turf_decal/tile/purple/half/contrasted, -/turf/open/floor/iron, -/area/station/hallway/primary/central) "prs" = ( /obj/docking_port/stationary{ dir = 8; @@ -54932,13 +54801,14 @@ /area/station/maintenance/aft/greater) "ptS" = ( /obj/structure/sign/painting/library{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/wood, /area/station/service/library) "ptY" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "pua" = ( /obj/machinery/light/directional/south, /turf/open/floor/iron, @@ -55021,6 +54891,13 @@ }, /turf/open/floor/iron, /area/station/commons/dorms) +"puQ" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark/smooth_large, +/area/station/science/breakroom) "puX" = ( /obj/structure/table, /obj/item/stock_parts/scanning_module{ @@ -55120,11 +54997,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/security/courtroom) -"pvB" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/stripes/corner, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) "pvE" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk{ @@ -55304,7 +55176,7 @@ pixel_y = -13 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "pyn" = ( /obj/item/storage/photo_album/chapel, /obj/structure/noticeboard/directional/west, @@ -55355,7 +55227,7 @@ }, /obj/effect/spawner/random/armory/e_gun, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "pyI" = ( /obj/machinery/door/airlock/engineering{ name = "Port Quarter Solar Access" @@ -55395,7 +55267,7 @@ "pza" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "pzb" = ( /obj/machinery/firealarm/directional/north, /turf/open/floor/iron, @@ -55510,14 +55382,6 @@ /obj/machinery/light/small/dim/directional/east, /turf/open/floor/iron/dark/textured_large, /area/station/maintenance/department/medical/central) -"pAT" = ( -/obj/machinery/airalarm/directional/north, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark/side{ - dir = 4 - }, -/area/mine/production) "pAX" = ( /obj/structure/chair/plastic{ dir = 8 @@ -55603,7 +55467,15 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/button/flasher{ id = "visitorflash"; - pixel_y = -26 + pixel_y = -26; + pixel_x = -7 + }, +/obj/machinery/button/door/directional/south{ + pixel_x = 7; + pixel_y = -26; + name = "Visitation Shutters Control"; + id = "visitation"; + req_access = list("brig") }, /turf/open/floor/iron, /area/station/security/prison/visit) @@ -55953,13 +55825,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/mine/living_quarters) -"pHR" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/maintenance/aft/greater) "pHW" = ( /obj/machinery/atmospherics/components/tank, /obj/effect/turf_decal/stripes/line{ @@ -56058,6 +55923,13 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) +"pJE" = ( +/obj/structure/cable, +/obj/machinery/holopad, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/white, +/area/station/science/xenobiology) "pJQ" = ( /obj/effect/spawner/structure/window, /obj/machinery/door/poddoor/preopen{ @@ -56190,13 +56062,6 @@ dir = 8 }, /area/station/hallway/secondary/entry) -"pLr" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/iron/dark/smooth_large, -/area/station/science/breakroom) "pLt" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -56357,6 +56222,14 @@ }, /turf/open/floor/iron/large, /area/station/commons/storage/tools) +"pNN" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/white, +/area/station/science/xenobiology) "pNO" = ( /obj/machinery/duct, /obj/structure/disposalpipe/segment, @@ -56373,7 +56246,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, @@ -56429,32 +56302,12 @@ dir = 4 }, /area/station/service/hydroponics) -"pPh" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/hallway/primary/aft) -"pPl" = ( -/obj/item/stack/ore/silver, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/tile/brown/anticorner/contrasted{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/cargo/miningdock) "pPy" = ( /obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ dir = 4 }, /turf/open/floor/plating/snowed/icemoon, /area/icemoon/surface/outdoors/less_spawns) -"pPA" = ( -/obj/effect/turf_decal/trimline/blue/filled/line, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white, -/area/station/medical/treatment_center) "pPB" = ( /obj/machinery/seed_extractor, /obj/effect/turf_decal/trimline/green/filled/line{ @@ -56473,7 +56326,7 @@ "pPK" = ( /obj/structure/stairs/east, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "pPN" = ( /obj/machinery/porta_turret/ai{ dir = 8 @@ -56482,7 +56335,7 @@ dir = 10 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "pPO" = ( /obj/effect/turf_decal/trimline/blue/filled/warning, /obj/effect/turf_decal/trimline/blue/filled/line{ @@ -56499,6 +56352,7 @@ /obj/effect/turf_decal/tile/yellow{ dir = 8 }, +/obj/structure/sign/warning/secure_area/directional/west, /turf/open/floor/iron, /area/station/tcommsat/computer) "pPT" = ( @@ -56649,7 +56503,7 @@ /turf/open/floor/iron/dark/smooth_half{ dir = 1 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "pSy" = ( /obj/machinery/modular_computer/preset/curator{ dir = 8 @@ -56673,6 +56527,10 @@ /obj/machinery/newscaster/directional/north, /turf/open/floor/iron, /area/station/security/prison/garden) +"pSE" = ( +/obj/machinery/holopad, +/turf/open/floor/iron, +/area/station/security/prison/visit) "pSF" = ( /obj/effect/turf_decal/stripes/line{ dir = 10 @@ -56843,7 +56701,7 @@ /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/abandoned, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -56856,6 +56714,12 @@ /obj/effect/turf_decal/tile/blue/half/contrasted, /turf/open/floor/iron, /area/station/command/bridge) +"pVr" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/turf/open/floor/iron/large, +/area/station/hallway/secondary/entry) "pVv" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -57041,10 +56905,6 @@ /obj/machinery/atmospherics/pipe/heat_exchanging/simple, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/icemoon/surface/outdoors/less_spawns) -"pXZ" = ( -/obj/structure/chair/stool/directional/north, -/turf/open/floor/iron, -/area/station/security/prison/visit) "pYa" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -57075,16 +56935,6 @@ dir = 4 }, /area/station/service/chapel) -"pYB" = ( -/obj/machinery/door/airlock/maintenance, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/turf/open/floor/plating, -/area/station/maintenance/central/greater) "pYK" = ( /obj/machinery/door/airlock/external{ glass = 1; @@ -57155,14 +57005,12 @@ /obj/structure/extinguisher_cabinet/directional/west, /turf/open/floor/iron, /area/station/engineering/storage) -"pZN" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 +"pZM" = ( +/obj/effect/turf_decal/tile/red/half{ + dir = 1 }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/carpet/royalblue, -/area/station/command/heads_quarters/captain) +/turf/open/floor/iron/smooth_half, +/area/station/security/brig/upper) "pZS" = ( /obj/structure/railing{ dir = 4 @@ -57396,6 +57244,12 @@ "qck" = ( /turf/open/floor/plating, /area/station/maintenance/department/medical/morgue) +"qct" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/light_switch/directional/west, +/turf/open/floor/iron, +/area/station/cargo/miningdock) "qcu" = ( /obj/effect/turf_decal/tile/red, /turf/open/floor/iron, @@ -57468,7 +57322,7 @@ c_tag = "EVA Secure Storage" }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "qdF" = ( /obj/machinery/vending/wardrobe/sec_wardrobe, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -57552,6 +57406,15 @@ dir = 4 }, /area/station/hallway/secondary/entry) +"qeK" = ( +/obj/machinery/door/airlock/maintenance, +/obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed{ + dir = 4 + }, +/turf/open/floor/plating, +/area/station/maintenance/central/greater) "qeL" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -57574,16 +57437,6 @@ }, /turf/open/openspace, /area/station/science/xenobiology) -"qeR" = ( -/obj/structure/chair/pew{ - dir = 1 - }, -/obj/structure/cable, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron/chapel{ - dir = 8 - }, -/area/station/service/chapel) "qeW" = ( /obj/effect/turf_decal/tile/brown/half/contrasted{ dir = 8 @@ -57736,17 +57589,18 @@ }, /mob/living/basic/bot/cleanbot, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "qhi" = ( /obj/machinery/light/small/directional/east, /obj/effect/spawner/random/trash/mopbucket, /turf/open/floor/plating, /area/station/maintenance/starboard/lesser) -"qhL" = ( +"qhy" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/white, -/area/station/science/xenobiology) +/area/station/science/research) "qhN" = ( /turf/open/floor/iron/white, /area/station/medical/medbay/aft) @@ -57959,12 +57813,6 @@ }, /turf/open/floor/iron/dark, /area/station/medical/virology) -"qkH" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white/side{ - dir = 8 - }, -/area/station/science/explab) "qkI" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/railing/corner/end{ @@ -58106,13 +57954,6 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/department/medical/morgue) -"qmN" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, -/obj/structure/flora/grass/both/style_random, -/turf/open/misc/asteroid/snow/icemoon, -/area/icemoon/surface/outdoors/less_spawns) "qmU" = ( /obj/machinery/duct, /obj/structure/cable, @@ -58180,7 +58021,7 @@ dir = 8 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "qnV" = ( /obj/structure/table/reinforced, /obj/item/storage/toolbox/emergency{ @@ -58351,12 +58192,10 @@ /turf/open/floor/wood, /area/station/command/meeting_room) "qpU" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/effect/turf_decal/tile/brown/half/contrasted{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron, /area/station/commons/storage/mining) "qpZ" = ( @@ -58509,13 +58348,6 @@ /obj/effect/turf_decal/tile/blue/full, /turf/open/floor/iron/large, /area/station/medical/treatment_center) -"qtd" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 - }, -/obj/structure/railing, -/turf/open/floor/iron/dark, -/area/station/service/chapel) "qtj" = ( /turf/closed/wall, /area/station/engineering/storage) @@ -58539,6 +58371,10 @@ /obj/machinery/door/firedoor, /turf/open/floor/iron/dark, /area/station/security/prison/garden) +"qtx" = ( +/mob/living/basic/sloth/paperwork, +/turf/open/floor/iron, +/area/station/cargo/storage) "qtD" = ( /obj/structure/sign/warning/directional/south, /turf/open/misc/asteroid/snow/icemoon, @@ -58670,6 +58506,11 @@ /obj/structure/closet/secure_closet/atmospherics, /turf/open/floor/iron/dark, /area/station/engineering/atmos) +"qvS" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/sign/poster/official/random/directional/north, +/turf/open/floor/iron/dark, +/area/mine/eva) "qvW" = ( /obj/structure/table, /obj/item/storage/belt/utility, @@ -58725,7 +58566,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "qwo" = ( /obj/structure/table, /obj/item/stack/sheet/glass/fifty, @@ -59016,6 +58857,19 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"qCb" = ( +/obj/effect/turf_decal/stripes/asteroid/line{ + dir = 8 + }, +/obj/structure/cable, +/obj/item/kirbyplants/random, +/obj/effect/turf_decal/tile/dark/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/white/side{ + dir = 4 + }, +/area/mine/living_quarters) "qCl" = ( /obj/effect/spawner/random/trash/mess, /obj/structure/disposalpipe/segment{ @@ -59067,11 +58921,11 @@ dir = 5 }, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "qCU" = ( /obj/machinery/airalarm/directional/east, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "qDm" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -59141,7 +58995,7 @@ "qEa" = ( /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "qEj" = ( /obj/structure/table/glass, /obj/item/assembly/igniter, @@ -59257,7 +59111,7 @@ }, /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/science/general, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/iron/white, /area/station/science/research) "qFn" = ( @@ -59325,23 +59179,12 @@ /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/abandoned, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) -"qFX" = ( -/obj/machinery/door/airlock{ - name = "Custodial Closet" - }, -/obj/structure/disposalpipe/segment, -/obj/effect/landmark/event_spawn, -/obj/effect/landmark/navigate_destination, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/service/janitor, -/turf/open/floor/iron, -/area/station/service/janitor) "qGg" = ( /obj/structure/rack, /obj/item/pickaxe, @@ -59351,12 +59194,6 @@ /obj/item/gps/mining, /turf/open/floor/iron/smooth, /area/mine/eva) -"qGt" = ( -/obj/structure/sign/warning{ - pixel_y = 32 - }, -/turf/open/floor/plating/snowed/smoothed/icemoon, -/area/icemoon/underground/explored) "qGC" = ( /obj/machinery/atmospherics/components/unary/thermomachine/heater/on, /obj/machinery/airalarm/directional/east, @@ -59423,19 +59260,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/department/medical/morgue) -"qHn" = ( -/obj/machinery/camera/directional/south{ - c_tag = "Research Division Break Room"; - network = list("ss13","rd") - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/spawner/random/entertainment/arcade{ - dir = 1 - }, -/obj/machinery/light/small/directional/south, -/turf/open/floor/iron/dark, -/area/station/science/breakroom) "qHt" = ( /obj/structure/chair{ dir = 1 @@ -59531,7 +59355,7 @@ dir = 1 }, /turf/open/floor/iron/textured_half, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "qIC" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/smart/manifold/cyan/visible{ @@ -59609,21 +59433,6 @@ /turf/open/floor/plating/snowed/icemoon, /area/icemoon/underground/explored) "qJV" = ( -/obj/structure/sign/directions/security{ - dir = 1; - pixel_x = 32; - pixel_y = 40 - }, -/obj/structure/sign/directions/medical{ - dir = 4; - pixel_x = 32; - pixel_y = 32 - }, -/obj/structure/sign/directions/evac{ - dir = 4; - pixel_x = 32; - pixel_y = 24 - }, /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/tile/blue{ dir = 4 @@ -59640,6 +59449,15 @@ /obj/effect/mapping_helpers/airlock/access/all/security/brig, /turf/open/floor/plating, /area/station/security/prison/safe) +"qKa" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/brown/half/contrasted{ + dir = 4 + }, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/maintenance/disposal) "qKn" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 @@ -59669,9 +59487,7 @@ /turf/open/floor/plating, /area/station/hallway/secondary/exit/departure_lounge) "qKs" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/openspace/icemoon/keep_below, /area/icemoon/underground/explored) "qKt" = ( @@ -59821,7 +59637,7 @@ "qMH" = ( /obj/structure/reagent_dispensers/fueltank, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "qML" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/siding/brown, @@ -59983,7 +59799,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "qOD" = ( /obj/effect/turf_decal/caution/stand_clear, /obj/effect/turf_decal/siding/dark_blue, @@ -59995,7 +59811,7 @@ name = "EVA Shutters" }, /turf/open/floor/iron/textured_half, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "qOG" = ( /obj/structure/table/wood, /obj/item/plate, @@ -60007,6 +59823,12 @@ /obj/structure/lattice/catwalk, /turf/open/openspace/icemoon, /area/station/science/server) +"qOM" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/power/apc/auto_name/directional/north, +/turf/open/floor/iron/dark, +/area/station/science/server) "qOP" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -60114,11 +59936,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/command/heads_quarters/cmo) -"qPJ" = ( -/obj/structure/cable, -/mob/living/basic/sloth/paperwork, -/turf/open/floor/iron, -/area/station/cargo/storage) "qPL" = ( /turf/closed/wall/r_wall, /area/station/hallway/secondary/exit/departure_lounge) @@ -60222,16 +60039,16 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) -"qRs" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/wood, -/area/station/command/meeting_room) "qRv" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 +/obj/structure/sign/directions/evac{ + dir = 4; + pixel_y = 10 }, -/turf/open/misc/asteroid/snow/icemoon, -/area/icemoon/surface/outdoors/less_spawns) +/obj/structure/sign/directions/security{ + dir = 1 + }, +/turf/closed/wall, +/area/station/hallway/primary/starboard) "qRE" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/public/glass{ @@ -60528,7 +60345,7 @@ }, /obj/item/hand_labeler, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "qVD" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 @@ -60591,6 +60408,20 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/science/breakroom) +"qWv" = ( +/obj/machinery/door/firedoor{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/white/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/white/line{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark/textured, +/area/station/medical/cryo) "qWy" = ( /obj/machinery/shower/directional/west, /obj/effect/turf_decal/stripes/red/end{ @@ -60673,12 +60504,6 @@ /obj/structure/flora/bush/jungle/c/style_random, /turf/open/floor/grass, /area/station/medical/virology) -"qXU" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/tile/purple, -/turf/open/floor/iron, -/area/station/service/janitor) "qYb" = ( /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/stripes/line{ @@ -60717,7 +60542,8 @@ pixel_y = -14 }, /obj/structure/noticeboard/cmo{ - pixel_y = 36 + pixel_y = 36; + dir = 1 }, /turf/open/floor/iron/white/textured, /area/station/medical/medbay/central) @@ -61107,12 +60933,9 @@ /turf/open/floor/iron/dark, /area/station/command/heads_quarters/captain) "rdg" = ( -/obj/structure/fence/corner{ - dir = 5 - }, -/obj/structure/sign/warning/secure_area, -/turf/open/floor/plating/snowed/smoothed/icemoon, -/area/icemoon/underground/explored) +/obj/structure/sign/warning/secure_area/directional/south, +/turf/open/misc/asteroid/snow/icemoon, +/area/icemoon/surface/outdoors/less_spawns) "rdn" = ( /obj/item/radio/intercom/directional/north, /turf/open/floor/iron, @@ -61263,7 +61086,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "rfo" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -61367,6 +61190,12 @@ }, /turf/open/floor/plating, /area/station/command/heads_quarters/hos) +"rhg" = ( +/obj/effect/turf_decal/trimline/blue/filled/warning{ + dir = 1 + }, +/turf/open/floor/iron/white, +/area/station/medical/treatment_center) "rhv" = ( /obj/effect/spawner/structure/window/reinforced/tinted, /turf/open/floor/plating, @@ -61515,6 +61344,11 @@ /obj/structure/sign/poster/official/random/directional/north, /turf/open/floor/iron, /area/station/hallway/primary/starboard) +"rjV" = ( +/obj/structure/table, +/obj/effect/spawner/random/maintenance, +/turf/open/floor/plating, +/area/station/maintenance/aft/lesser) "rkc" = ( /obj/effect/turf_decal/siding/yellow, /obj/effect/turf_decal/siding/yellow{ @@ -61545,9 +61379,7 @@ /obj/machinery/camera/directional/north{ c_tag = "Arrivals Emergency EVA" }, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark/textured, /area/station/hallway/secondary/entry) "rkl" = ( @@ -61640,13 +61472,6 @@ /obj/structure/railing, /turf/open/openspace/icemoon, /area/icemoon/underground/explored) -"rlt" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, -/obj/structure/railing, -/turf/open/floor/iron/dark, -/area/station/service/chapel) "rlu" = ( /obj/effect/spawner/random/vending/snackvend, /turf/open/floor/iron/dark, @@ -61677,7 +61502,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "rlV" = ( /obj/structure/table/wood, /turf/open/floor/wood, @@ -61730,7 +61555,7 @@ name = "Observatory Access" }, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, @@ -61905,13 +61730,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark/textured, /area/station/engineering/engine_smes) -"rpK" = ( -/obj/structure/chair/pew/left{ - dir = 1 - }, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/service/chapel) "rpM" = ( /obj/effect/turf_decal/trimline/blue/filled/line, /turf/open/floor/iron/white, @@ -62153,15 +61971,13 @@ pixel_x = -11; pixel_y = -2 }, -/obj/structure/sign/warning/secure_area{ - pixel_y = 32 - }, +/obj/structure/sign/warning/secure_area/directional/north, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/underground/explored) "rsL" = ( /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "rsM" = ( /obj/structure/bed/maint, /obj/item/toy/plush/rouny{ @@ -62313,6 +62129,15 @@ }, /turf/open/floor/iron, /area/station/engineering/atmos) +"ruK" = ( +/obj/structure/cable, +/obj/effect/turf_decal/tile/blue, +/obj/structure/railing/corner/end/flip, +/obj/effect/turf_decal/siding/thinplating/corner, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/commons/locker) "ruO" = ( /obj/machinery/firealarm/directional/west, /obj/structure/disposalpipe/segment{ @@ -62327,11 +62152,16 @@ }, /turf/open/floor/iron, /area/station/engineering/main) +"ruP" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/wall_healer/directional/east, +/turf/open/floor/iron/white/textured, +/area/station/security/medical) "ruZ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "rvj" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/eighties/red, @@ -62480,7 +62310,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ryh" = ( /obj/item/clothing/glasses/meson, /obj/item/storage/bag/ore, @@ -62596,14 +62426,6 @@ }, /turf/open/floor/plating/snowed/icemoon, /area/icemoon/surface/outdoors/nospawn) -"rzL" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/spawner/random/structure/steam_vent, -/turf/open/floor/plating, -/area/station/maintenance/aft/greater) "rzO" = ( /obj/effect/turf_decal/weather/snow/corner{ dir = 10 @@ -62677,7 +62499,7 @@ "rAZ" = ( /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "rBo" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/smart/simple/dark/visible/layer1{ @@ -62731,6 +62553,17 @@ }, /turf/open/floor/iron, /area/station/engineering/atmos) +"rBU" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/machinery/power/apc/auto_name/directional/north, +/obj/structure/cable, +/obj/effect/turf_decal/tile/purple{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/service/janitor) "rBV" = ( /turf/closed/wall, /area/station/tcommsat/computer) @@ -62744,12 +62577,6 @@ "rCf" = ( /turf/open/floor/iron, /area/station/maintenance/starboard/fore) -"rCj" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron, -/area/station/commons/locker) "rCs" = ( /obj/structure/table, /obj/item/food/deadmouse{ @@ -63069,7 +62896,7 @@ dir = 1 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "rGl" = ( /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/tile/brown{ @@ -63177,11 +63004,6 @@ /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating, /area/station/maintenance/department/chapel) -"rIc" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron/white, -/area/station/medical/cryo) "rIz" = ( /obj/effect/spawner/random/structure/crate, /obj/effect/mapping_helpers/burnt_floor, @@ -63288,16 +63110,14 @@ /obj/effect/turf_decal/tile/blue, /mob/living/basic/bot/repairbot, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "rLc" = ( /obj/effect/spawner/random/trash/cigbutt, /obj/effect/spawner/random/trash/cigbutt, /turf/open/floor/plating, /area/station/maintenance/port/aft) "rLl" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/station/hallway/primary/central) "rLo" = ( @@ -63315,6 +63135,13 @@ /obj/effect/turf_decal/bot, /turf/open/floor/iron, /area/station/cargo/office) +"rLC" = ( +/obj/structure/railing/corner/end/flip{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/service/chapel) "rLL" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -63435,9 +63262,7 @@ /area/mine/living_quarters) "rNn" = ( /obj/structure/flora/grass/brown/style_random, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/surface/outdoors/nospawn) "rNz" = ( @@ -63555,7 +63380,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "rOF" = ( /obj/structure/rack, /obj/item/storage/toolbox/mechanical, @@ -63661,7 +63486,7 @@ }, /obj/effect/mapping_helpers/requests_console/ore_update, /obj/effect/mapping_helpers/requests_console/supplies, -/obj/machinery/computer/rdconsole{ +/obj/machinery/computer/rdconsole/unlocked{ dir = 4 }, /turf/open/floor/iron/checker, @@ -63701,7 +63526,7 @@ /obj/structure/rack, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "rRk" = ( /obj/structure/table, /obj/item/storage/belt/utility, @@ -63815,7 +63640,7 @@ dir = 5 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "rSP" = ( /obj/structure/closet/secure_closet/engineering_chief, /obj/machinery/power/apc/auto_name/directional/east, @@ -63827,14 +63652,6 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron, /area/station/maintenance/disposal/incinerator) -"rTt" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/tile/brown/half/contrasted{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/cargo/office) "rTz" = ( /turf/open/floor/plating/icemoon, /area/station/science/ordnance/bomb/planet) @@ -63853,6 +63670,7 @@ /area/station/commons/vacant_room/commissary) "rTV" = ( /obj/structure/gulag_beacon, +/obj/structure/sign/warning/directional/north, /turf/open/floor/iron, /area/mine/laborcamp) "rTX" = ( @@ -63898,7 +63716,7 @@ dir = 1 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "rUo" = ( /obj/structure/cable, /obj/effect/turf_decal/tile/green{ @@ -63976,19 +63794,6 @@ }, /turf/open/floor/iron/white, /area/station/medical/chemistry) -"rVe" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ - cycle_id = "miner-passthrough" - }, -/obj/machinery/door/airlock/mining/glass{ - name = "Mining Dock" - }, -/obj/effect/mapping_helpers/airlock/access/all/supply/mining, -/turf/open/floor/iron, -/area/station/cargo/miningdock) "rVi" = ( /obj/effect/spawner/random/structure/steam_vent, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -64003,16 +63808,6 @@ }, /turf/open/floor/iron/white, /area/station/medical/treatment_center) -"rVA" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/door/firedoor/heavy, -/obj/machinery/door/airlock/research{ - name = "Ordnance Lab" - }, -/obj/effect/mapping_helpers/airlock/access/all/science/ordnance, -/turf/open/floor/iron/white, -/area/station/science/ordnance/office) "rVB" = ( /obj/effect/spawner/structure/window/hollow/reinforced/middle{ dir = 4 @@ -64220,7 +64015,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -64241,19 +64036,12 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/security/processing) -"rXY" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/tile/brown{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/commons/storage/mining) "rYq" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "rYt" = ( /obj/structure/chair/comfy/black{ dir = 8 @@ -64319,6 +64107,14 @@ /obj/structure/table, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) +"rZg" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable, +/obj/machinery/duct, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/commons/fitness) "rZm" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -64403,7 +64199,8 @@ /obj/machinery/button/flasher{ id = "executionflash"; pixel_x = -24; - pixel_y = 5 + pixel_y = 5; + dir = 8 }, /turf/open/floor/plating/icemoon, /area/station/security/execution/education) @@ -64441,17 +64238,9 @@ /turf/open/floor/iron, /area/station/command/heads_quarters/hop) "sby" = ( -/obj/effect/turf_decal/trimline/red/filled/line{ - dir = 1 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/sign/poster/random/directional/north, -/turf/open/floor/iron/dark/side{ - dir = 1 - }, -/area/station/security/prison) +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/misc/asteroid/snow/icemoon, +/area/icemoon/surface/outdoors/less_spawns) "sbD" = ( /obj/structure/grille, /turf/open/floor/plating, @@ -64466,13 +64255,6 @@ }, /turf/open/floor/iron/large, /area/station/engineering/storage_shared) -"sbN" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/tile/red/half{ - dir = 1 - }, -/turf/open/floor/iron/smooth_half, -/area/station/security/brig/upper) "sbP" = ( /obj/effect/spawner/random/medical/two_percent_xeno_egg_spawner, /turf/open/floor/engine/xenobio, @@ -64507,6 +64289,13 @@ /obj/machinery/light/small/directional/south, /turf/open/floor/iron/showroomfloor, /area/station/security/prison/toilet) +"scj" = ( +/obj/structure/cable, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/command/gateway) "scl" = ( /obj/structure/bookcase/random, /turf/open/floor/carpet/red, @@ -64534,6 +64323,13 @@ /obj/item/radio/intercom/directional/west, /turf/open/floor/iron, /area/station/service/hydroponics/garden) +"sct" = ( +/obj/structure/disposalpipe/segment, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/service/janitor) "scu" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 @@ -64658,7 +64454,7 @@ /obj/structure/table/reinforced, /obj/effect/turf_decal/tile/neutral/half/contrasted, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "sen" = ( /obj/structure/cable, /turf/open/floor/iron, @@ -64693,11 +64489,9 @@ /obj/effect/turf_decal/tile/neutral/half/contrasted{ dir = 1 }, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark/smooth_edge, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "seR" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 @@ -64989,7 +64783,8 @@ /obj/effect/spawner/random/trash/cigbutt, /obj/effect/decal/cleanable/dirt, /obj/structure/sign/plaques/kiddie/perfect_drone{ - pixel_x = 32 + pixel_x = 32; + dir = 4 }, /turf/open/floor/iron/checker, /area/station/maintenance/port/fore) @@ -65065,7 +64860,7 @@ "skW" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, @@ -65081,7 +64876,7 @@ /obj/effect/turf_decal/stripes/line, /obj/item/radio/intercom/directional/east, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "skZ" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -65146,6 +64941,12 @@ /obj/effect/turf_decal/tile/yellow/opposingcorners, /turf/open/floor/iron/dark, /area/station/engineering/atmos/project) +"slR" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/hallway/secondary/entry) "sma" = ( /obj/effect/spawner/random/trash/mopbucket, /obj/effect/decal/cleanable/dirt/dust, @@ -65234,27 +65035,38 @@ }, /turf/open/floor/iron/dark, /area/station/commons/storage/primary) -"sni" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/hallway/primary/central) "snj" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/upper) -"snt" = ( +"snk" = ( +/obj/effect/turf_decal/trimline/neutral/mid_joiner{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/decal/cleanable/dirt, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/department/cargo) +/obj/effect/turf_decal/trimline/neutral/warning{ + dir = 5 + }, +/obj/effect/turf_decal/trimline/neutral/mid_joiner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/neutral/mid_joiner{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/turf/open/floor/iron/dark/smooth_corner{ + dir = 8 + }, +/area/station/command/eva) "snw" = ( /obj/structure/table, /obj/machinery/microwave, @@ -65278,12 +65090,12 @@ /turf/open/floor/iron, /area/station/hallway/primary/starboard) "snJ" = ( -/obj/structure/fence/corner{ +/obj/structure/fence{ dir = 2 }, -/obj/structure/sign/warning/secure_area, -/turf/open/floor/plating/snowed/smoothed/icemoon, -/area/icemoon/underground/unexplored/rivers/deep/shoreline) +/obj/structure/sign/warning/secure_area/directional/north, +/turf/open/misc/asteroid/snow/icemoon, +/area/icemoon/underground/explored) "snL" = ( /obj/item/pickaxe{ desc = "Someone left their pickaxe out here, must not have known about the boulder processing machines inside."; @@ -65433,7 +65245,7 @@ /obj/structure/sign/warning/secure_area/directional/north, /obj/structure/extinguisher_cabinet/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "soR" = ( /obj/machinery/icecream_vat, /obj/structure/sign/clock/directional/north, @@ -65680,7 +65492,7 @@ /turf/open/floor/iron/dark/smooth_half{ dir = 1 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ssH" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -65857,6 +65669,13 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"suV" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/girder, +/obj/effect/spawner/structure/electrified_grille, +/turf/open/floor/plating, +/area/station/maintenance/port/aft) "sve" = ( /obj/effect/landmark/event_spawn, /obj/effect/turf_decal/bot, @@ -65981,15 +65800,7 @@ /area/station/maintenance/disposal/incinerator) "swF" = ( /turf/closed/wall, -/area/station/ai_monitored/turret_protected/aisat_interior) -"swK" = ( -/obj/effect/turf_decal/tile/blue, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/white/corner{ - dir = 4 - }, -/area/station/hallway/secondary/entry) +/area/station/ai/satellite/interior) "swO" = ( /obj/effect/spawner/random/maintenance/four, /obj/structure/closet/crate, @@ -66044,6 +65855,14 @@ /obj/structure/sign/warning/electric_shock/directional/west, /turf/open/floor/plating, /area/station/maintenance/solars/port/fore) +"sxL" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/brown/half/contrasted, +/turf/open/floor/iron/dark/side, +/area/mine/eva) "sxO" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/closet/secure_closet/personal{ @@ -66155,15 +65974,6 @@ }, /turf/open/floor/iron/white/smooth_large, /area/station/service/kitchen) -"syL" = ( -/obj/effect/turf_decal/tile/blue{ - dir = 1 - }, -/obj/structure/cable, -/turf/open/floor/iron/white/corner{ - dir = 8 - }, -/area/station/hallway/secondary/entry) "syN" = ( /obj/item/storage/medkit/regular{ pixel_x = 3; @@ -66307,7 +66117,7 @@ dir = 1 }, /turf/open/floor/iron/dark/smooth_edge, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "sBw" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -66485,7 +66295,7 @@ /area/station/maintenance/department/medical/central) "sDV" = ( /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/ai_upload"; + control_area = "/area/station/ai/upload/chamber"; name = "AI Upload Turret Control"; pixel_y = -25 }, @@ -66670,7 +66480,7 @@ /turf/open/floor/iron/dark/smooth_edge{ dir = 1 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "sFY" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/landmark/mining_center, @@ -66791,7 +66601,7 @@ name = "Utilities Room" }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/station/maintenance/starboard/lesser) @@ -67067,7 +66877,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "sMy" = ( /obj/structure/flora/tree/pine/style_random, /obj/structure/flora/grass/both/style_random, @@ -67077,7 +66887,7 @@ /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "sMY" = ( /obj/structure/table, /obj/item/radio/off, @@ -67140,10 +66950,8 @@ /turf/open/floor/iron, /area/station/engineering/atmos) "sNA" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/structure/marker_beacon/burgundy, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/plating/snowed/icemoon, /area/icemoon/surface/outdoors/less_spawns) "sNF" = ( @@ -67195,7 +67003,7 @@ /obj/effect/turf_decal/bot_white, /obj/effect/turf_decal/tile/neutral/half/contrasted, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "sOE" = ( /turf/open/floor/iron, /area/station/command/heads_quarters/ce) @@ -67205,16 +67013,6 @@ /obj/structure/sign/poster/random/directional/north, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"sOJ" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/turf_decal/tile/brown/half/contrasted{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/cargo/office) "sOO" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, @@ -67323,21 +67121,9 @@ dir = 1 }, /area/station/engineering/atmos/hfr_room) -"sQa" = ( -/obj/machinery/door/airlock/mining/glass{ - id_tag = "innercargo"; - name = "Cargo Bay" - }, -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/access/all/supply/general, -/turf/open/floor/iron, -/area/station/cargo/storage) "sQc" = ( /obj/structure/table, -/obj/item/food/sandwich/cheese/grilled{ +/obj/item/food/sandwich/grilled_cheese{ name = "idiot sandwich"; pixel_y = 8 }, @@ -67565,7 +67351,7 @@ "sTx" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "sTA" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk, @@ -67757,11 +67543,9 @@ /turf/open/floor/iron/textured_half, /area/mine/production) "sWD" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/structure/marker_beacon/jade, /obj/effect/mapping_helpers/no_atoms_ontop, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/icemoon/underground/explored) "sWN" = ( @@ -67790,7 +67574,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/structure/disposalpipe/segment{ @@ -67865,19 +67649,15 @@ }, /turf/open/floor/engine/cult, /area/station/service/library) -"sYz" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, -/obj/item/radio/intercom/directional/south, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/brown/half/contrasted, -/obj/machinery/camera/directional/south{ - c_tag = "Mining B-1 Hallway North"; - network = list("ss13", "mine") +"sYm" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment{ + dir = 4 }, -/turf/open/floor/iron/dark/side, -/area/mine/eva) +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/station/maintenance/aft/greater) "sYA" = ( /obj/structure/fluff/tram_rail{ pixel_y = 17 @@ -68077,7 +67857,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -68099,12 +67879,10 @@ pixel_y = 1; pixel_x = 3 }, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/effect/turf_decal/siding/dark_blue/corner{ dir = 1 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark, /area/station/engineering/storage/tech) "tcD" = ( @@ -68250,7 +68028,7 @@ }, /obj/effect/spawner/random/armory/dragnet, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "teE" = ( /obj/effect/spawner/structure/window, /obj/machinery/door/poddoor/shutters{ @@ -68267,6 +68045,12 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"teH" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/floor/iron/white/side{ + dir = 8 + }, +/area/station/science/explab) "teM" = ( /obj/structure/ore_box, /obj/effect/decal/cleanable/dirt, @@ -68379,7 +68163,7 @@ /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "tgq" = ( /obj/structure/reagent_dispensers/watertank, /turf/open/floor/plating, @@ -68516,7 +68300,7 @@ /obj/structure/window/reinforced/fulltile, /obj/structure/transit_tube/horizontal, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "tix" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, @@ -68585,6 +68369,11 @@ }, /turf/open/floor/iron, /area/station/engineering/storage_shared) +"tjn" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/effect/landmark/event_spawn, +/turf/open/floor/iron, +/area/station/security/prison/work) "tjo" = ( /turf/open/genturf, /area/icemoon/underground/unexplored/rivers) @@ -68749,12 +68538,6 @@ /obj/machinery/portable_atmospherics/canister/oxygen, /turf/open/floor/engine/o2, /area/station/engineering/atmos) -"tlo" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 - }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/command/storage/eva) "tlt" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -68966,12 +68749,6 @@ /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/wood, /area/station/maintenance/fore) -"tnY" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, -/turf/open/misc/asteroid/snow/icemoon, -/area/icemoon/underground/explored) "toi" = ( /obj/machinery/computer/security/telescreen/entertainment/directional/east, /obj/machinery/status_display/evac/directional/south, @@ -69012,6 +68789,10 @@ }, /turf/open/floor/stone, /area/station/service/bar/atrium) +"toU" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/iron, +/area/station/security/prison/visit) "toW" = ( /obj/effect/landmark/event_spawn, /obj/structure/cable, @@ -69059,9 +68840,6 @@ /turf/closed/wall, /area/station/security/execution/education) "tpN" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/effect/turf_decal/siding/wood{ dir = 8 }, @@ -69072,6 +68850,7 @@ /obj/item/camera{ pixel_x = -4 }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron/dark, /area/station/command/heads_quarters/captain) "tpO" = ( @@ -69223,7 +69002,7 @@ /turf/open/floor/iron/dark/smooth_corner{ dir = 4 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "tsH" = ( /obj/machinery/door/airlock/security/glass{ name = "Interrogation" @@ -69273,19 +69052,9 @@ /obj/effect/turf_decal/siding/wood, /turf/open/floor/wood, /area/station/commons/dorms) -"ttT" = ( -/obj/machinery/door/airlock/mining/glass{ - id_tag = "innercargo"; - name = "Cargo Bay" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/access/all/supply/general, -/turf/open/floor/iron, -/area/station/cargo/storage) "tuc" = ( /turf/closed/wall, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "tue" = ( /turf/closed/wall, /area/station/security/checkpoint/supply) @@ -69332,23 +69101,6 @@ }, /turf/open/floor/iron/dark, /area/station/science/explab) -"tuz" = ( -/obj/structure/cable, -/obj/structure/table, -/obj/item/trapdoor_remote/preloaded{ - pixel_x = -5; - pixel_y = 2 - }, -/obj/machinery/recharger{ - pixel_x = 5; - pixel_y = 2 - }, -/obj/item/storage/wallet/random{ - pixel_x = 6; - pixel_y = -24 - }, -/turf/open/floor/carpet, -/area/station/command/heads_quarters/hop) "tuD" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/turf_decal/stripes/white/line{ @@ -69393,6 +69145,20 @@ }, /turf/open/floor/iron/dark/corner, /area/station/engineering/atmos) +"tvf" = ( +/obj/machinery/door/airlock/mining/glass{ + id_tag = "innercargo"; + name = "Cargo Bay" + }, +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/mapping_helpers/airlock/access/all/supply/general, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/cargo/storage) "tvk" = ( /obj/structure/sign/warning/docking/directional/north, /turf/open/lava/plasma/ice_moon, @@ -69506,7 +69272,7 @@ dir = 9 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "twU" = ( /obj/effect/landmark/start/hangover, /turf/open/floor/iron/freezer, @@ -69789,8 +69555,10 @@ /turf/open/floor/iron/dark, /area/station/engineering/engine_smes) "tCj" = ( -/obj/structure/sign/warning, -/turf/closed/wall/r_wall, +/obj/structure/marker_beacon/burgundy, +/obj/effect/mapping_helpers/no_atoms_ontop, +/obj/structure/sign/warning/directional/east, +/turf/open/floor/plating/snowed/smoothed/icemoon, /area/icemoon/surface/outdoors/nospawn) "tCk" = ( /obj/structure/disposalpipe/segment{ @@ -69819,6 +69587,17 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/science/xenobiology) +"tCz" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/obj/machinery/light/directional/north, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/brown/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/maintenance/disposal) "tCB" = ( /obj/machinery/light/small/directional/south, /turf/open/floor/engine/air, @@ -69910,7 +69689,7 @@ dir = 8 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "tDN" = ( /obj/structure/chair{ name = "Defense" @@ -69933,13 +69712,6 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/security/prison/visit) -"tEc" = ( -/obj/structure/cable, -/obj/effect/turf_decal/tile/blue{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/hallway/secondary/entry) "tEe" = ( /obj/effect/spawner/random/structure/closet_maintenance, /turf/open/floor/plating, @@ -70000,7 +69772,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "tFe" = ( /obj/effect/turf_decal/tile/neutral/diagonal_edge, /obj/effect/landmark/start/cook, @@ -70040,7 +69812,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/mapping_helpers/airlock/access/any/security/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/machinery/duct, @@ -70092,13 +69864,6 @@ "tGr" = ( /turf/closed/mineral/random/snow, /area/icemoon/surface/outdoors/nospawn) -"tGs" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/obj/effect/landmark/event_spawn, -/turf/open/floor/iron, -/area/station/security/prison/work) "tGx" = ( /obj/machinery/camera/directional/east{ c_tag = "Departure Lounge East" @@ -70183,17 +69948,12 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/mine/laborcamp) -"tHa" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/wall_healer/directional/east, -/turf/open/floor/iron/white/textured, -/area/station/security/medical) "tHb" = ( /obj/effect/spawner/random/structure/musician/piano/random_piano, /obj/machinery/button/curtain{ id = "cantena_curtains"; - pixel_x = -32 + pixel_x = -32; + dir = 8 }, /turf/open/floor/wood, /area/station/commons/lounge) @@ -70452,7 +70212,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/catwalk_floor/iron_smooth, /area/station/commons/storage/mining) @@ -70630,11 +70390,18 @@ /turf/open/floor/engine, /area/station/engineering/supermatter) "tMa" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 +/obj/structure/sign/directions/engineering{ + pixel_y = 10 }, -/turf/open/misc/asteroid/snow/icemoon, -/area/icemoon/surface/outdoors/nospawn) +/obj/structure/sign/directions/science{ + dir = 4; + pixel_y = -10 + }, +/obj/structure/sign/directions/medical{ + dir = 4 + }, +/turf/closed/wall, +/area/station/medical/pharmacy) "tMc" = ( /obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/plating/snowed/smoothed/icemoon, @@ -70712,14 +70479,6 @@ /obj/effect/turf_decal/tile/dark/half/contrasted, /turf/open/floor/iron/white, /area/station/medical/virology) -"tNw" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/medical/morgue) "tNx" = ( /obj/structure/cable, /obj/machinery/light/floor, @@ -70804,12 +70563,6 @@ /obj/item/trash/energybar, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) -"tPz" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white/side{ - dir = 6 - }, -/area/station/science/research) "tPC" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -70883,11 +70636,26 @@ /obj/effect/turf_decal/box/white, /turf/open/floor/iron/dark/smooth_large, /area/station/engineering/storage/tech) +"tQx" = ( +/obj/effect/turf_decal/trimline/neutral/warning{ + dir = 10 + }, +/obj/effect/turf_decal/trimline/neutral/mid_joiner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/neutral/mid_joiner, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/turf/open/floor/iron/dark/smooth_corner{ + dir = 4 + }, +/area/station/command/eva) "tQM" = ( /obj/structure/cable, /obj/machinery/power/apc/auto_name/directional/east, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "tQS" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/landmark/start/assistant, @@ -70953,6 +70721,21 @@ /obj/effect/mapping_helpers/airlock/access/all/service/hydroponics, /turf/open/floor/plating, /area/station/service/hydroponics) +"tRW" = ( +/obj/effect/turf_decal/trimline/neutral/mid_joiner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/neutral/mid_joiner{ + dir = 1 + }, +/obj/effect/turf_decal/trimline/neutral/warning{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/neutral, +/turf/open/floor/iron/dark/smooth_corner, +/area/station/command/eva) "tRX" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible{ dir = 8 @@ -70987,10 +70770,6 @@ }, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/underground/explored) -"tSx" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/security/prison/workout) "tSF" = ( /obj/machinery/door/window/left/directional/west{ name = "Deliveries"; @@ -71092,7 +70871,8 @@ /obj/machinery/photobooth/security, /obj/machinery/button/flasher{ id = "transferflash"; - pixel_y = 34 + pixel_y = 34; + dir = 1 }, /turf/open/floor/iron/smooth, /area/station/security/execution/transfer) @@ -71140,13 +70920,13 @@ "tVf" = ( /turf/closed/wall, /area/station/security/prison) -"tVn" = ( -/obj/structure/cable, +"tVk" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/power/apc/auto_name/directional/north, -/turf/open/floor/iron/dark, -/area/station/science/server) +/turf/open/floor/iron/white/corner{ + dir = 1 + }, +/area/station/hallway/secondary/entry) "tVu" = ( /obj/machinery/door/airlock/security/glass{ id_tag = "innerbrig"; @@ -71222,7 +71002,7 @@ }, /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "tWy" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 @@ -71234,7 +71014,7 @@ /obj/effect/mapping_helpers/airlock/access/any/command/minisat, /obj/effect/mapping_helpers/airlock/access/any/command/ai_upload, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "tWz" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -71262,6 +71042,11 @@ /obj/machinery/firealarm/directional/south, /turf/open/floor/iron, /area/station/security/prison/work) +"tWT" = ( +/obj/machinery/light/small/directional/east, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/medical/morgue) "tXb" = ( /obj/structure/table, /obj/effect/spawner/random/maintenance, @@ -71379,7 +71164,7 @@ /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -71443,6 +71228,11 @@ /obj/machinery/firealarm/directional/west, /turf/open/floor/iron/dark, /area/station/science/ordnance/office) +"tZG" = ( +/turf/open/floor/iron/white/corner{ + dir = 1 + }, +/area/station/hallway/secondary/entry) "tZM" = ( /obj/effect/spawner/random/trash/bin, /turf/open/floor/plating, @@ -71465,7 +71255,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "uag" = ( /obj/structure/cable, /obj/machinery/door/firedoor, @@ -71478,15 +71268,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark/textured, /area/station/hallway/primary/central) -"uah" = ( -/obj/machinery/light_switch/directional/west, -/obj/structure/cable, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/tile/brown/half/contrasted{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/maintenance/disposal) "uan" = ( /obj/structure/disposalpipe/trunk/multiz, /obj/effect/turf_decal/stripes/line, @@ -71516,6 +71297,7 @@ /turf/open/floor/plating, /area/station/maintenance/starboard/fore) "uau" = ( +/obj/item/radio/intercom/directional/south, /turf/open/openspace, /area/station/medical/medbay/lobby) "uaz" = ( @@ -71561,16 +71343,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/white, /area/station/medical/storage) -"ubx" = ( -/obj/effect/turf_decal/tile/blue, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/light/directional/east, -/obj/item/radio/intercom/directional/east, -/turf/open/floor/iron/white/corner{ - dir = 4 - }, -/area/station/hallway/secondary/entry) "ubE" = ( /obj/machinery/atmospherics/pipe/multiz/scrubbers/visible/layer2{ dir = 1 @@ -71590,18 +71362,6 @@ }, /turf/open/floor/iron/stairs/medium, /area/mine/eva/lower) -"ubH" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/commons/locker) -"ubY" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/chair/stool/directional/south, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron/dark, -/area/station/science/breakroom) "ucl" = ( /obj/machinery/door/window/right/directional/west{ name = "Containment Pen 4"; @@ -71644,14 +71404,6 @@ /obj/structure/sign/warning/electric_shock, /turf/closed/wall/r_wall, /area/station/engineering/supermatter) -"udj" = ( -/obj/effect/turf_decal/stripes/asteroid/line, -/obj/structure/cable, -/obj/effect/turf_decal/tile/dark/half/contrasted, -/turf/open/floor/iron/white/side{ - dir = 1 - }, -/area/mine/living_quarters) "udo" = ( /obj/structure/closet{ name = "evidence closet 4" @@ -71701,13 +71453,9 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/door/airlock/maintenance/glass, -/obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical/central) -"uee" = ( -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/hallway/secondary/entry) "uei" = ( /obj/machinery/power/solar{ id = "auxsolareast"; @@ -71779,7 +71527,7 @@ /turf/open/floor/iron/dark/smooth_edge{ dir = 8 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ueV" = ( /obj/effect/turf_decal/stripes/line{ dir = 6 @@ -71970,7 +71718,7 @@ name = "Chemistry Lab Utilities" }, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, @@ -72049,7 +71797,7 @@ "ujs" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ujB" = ( /obj/structure/chair{ dir = 8 @@ -72080,14 +71828,6 @@ /obj/effect/decal/cleanable/plastic, /turf/open/floor/plating, /area/station/maintenance/port/lesser) -"uko" = ( -/obj/structure/chair/pew/left{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron/dark, -/area/station/service/chapel) "ukz" = ( /obj/machinery/duct, /obj/structure/disposalpipe/segment{ @@ -72131,11 +71871,8 @@ /obj/effect/turf_decal/tile/neutral/half/contrasted{ dir = 1 }, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /turf/open/floor/iron/dark/smooth_edge, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ukN" = ( /obj/structure/table, /obj/machinery/door/poddoor/shutters{ @@ -72334,6 +72071,13 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/carpet/blue, /area/station/security/prison/work) +"unh" = ( +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/white, +/area/station/medical/treatment_center) "uno" = ( /obj/structure/closet/secure_closet/freezer/gulag_fridge, /obj/effect/turf_decal/tile/red/half/contrasted{ @@ -72486,6 +72230,21 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/engineering/atmos) +"uoJ" = ( +/obj/machinery/door/firedoor{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/white/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/white/line{ + dir = 4 + }, +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/iron/dark/textured, +/area/station/medical/cryo) "uoV" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -72677,20 +72436,10 @@ }, /turf/open/floor/glass/reinforced, /area/station/hallway/primary/starboard) -"urx" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/turf/open/floor/iron, -/area/station/hallway/secondary/exit/departure_lounge) "urG" = ( /obj/effect/turf_decal/weather/snow/corner, /turf/open/floor/plating/snowed/icemoon, /area/icemoon/underground/explored) -"urJ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/effect/landmark/event_spawn, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) "urK" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -72712,6 +72461,11 @@ /obj/item/hand_labeler, /turf/open/floor/iron, /area/station/service/hydroponics) +"urS" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/machinery/firealarm/directional/south, +/turf/open/floor/circuit, +/area/station/ai/satellite/hallway) "usm" = ( /obj/machinery/airalarm/directional/east, /turf/open/floor/plating, @@ -72863,14 +72617,6 @@ "uvt" = ( /turf/closed/wall, /area/station/science/robotics/mechbay) -"uvu" = ( -/obj/machinery/portable_atmospherics/scrubber, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/obj/structure/sign/warning/secure_area/directional/north, -/turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) "uvv" = ( /obj/effect/turf_decal/stripes/corner, /obj/effect/turf_decal/stripes/corner{ @@ -72910,7 +72656,7 @@ /obj/machinery/power/apc/auto_name/directional/east, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "uwd" = ( /obj/item/chair/wood, /turf/open/floor/wood, @@ -72954,15 +72700,6 @@ }, /turf/open/floor/iron/dark, /area/mine/mechbay) -"uwO" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Custodial Maintenance" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/access/all/service/janitor, -/turf/open/floor/plating, -/area/station/maintenance/department/medical/central) "uwR" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 @@ -73026,16 +72763,17 @@ /area/station/science/research) "uxG" = ( /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/aisat/service"; + control_area = "/area/station/ai/satellite/service"; name = "Service Bay Turret Control"; pixel_x = 27; - req_access = list("minisat") + req_access = list("minisat"); + dir = 4 }, /obj/effect/turf_decal/tile/blue{ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "uxK" = ( /obj/machinery/light/small/directional/east, /turf/open/floor/engine/vacuum, @@ -73106,17 +72844,18 @@ start_active = 1 }, /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/aisat/atmos"; + control_area = "/area/station/ai/satellite/atmos"; name = "Atmospherics Turret Control"; pixel_x = -27; - req_access = list("minisat") + req_access = list("minisat"); + dir = 8 }, /obj/effect/turf_decal/tile/blue{ dir = 1 }, /obj/machinery/light/small/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "uzd" = ( /obj/structure/rack, /obj/item/mecha_parts/mecha_equipment/hydraulic_clamp{ @@ -73264,7 +73003,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "uBy" = ( /obj/structure/flora/grass/brown/style_random, /obj/structure/railing{ @@ -73278,6 +73017,11 @@ "uBA" = ( /turf/closed/wall, /area/station/engineering/atmos/project) +"uBJ" = ( +/turf/open/floor/iron/white/corner{ + dir = 8 + }, +/area/station/hallway/secondary/entry) "uBP" = ( /obj/effect/decal/cleanable/glass, /turf/open/floor/plating, @@ -73320,7 +73064,7 @@ /obj/machinery/firealarm/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "uCk" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 @@ -73353,7 +73097,14 @@ dir = 4 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) +"uCC" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/cafeteria, +/area/station/hallway/secondary/exit/departure_lounge) "uCJ" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 @@ -73865,6 +73616,11 @@ initial_gas_mix = "ICEMOON_ATMOS" }, /area/icemoon/underground/explored/graveyard) +"uKf" = ( +/obj/structure/chair, +/obj/effect/landmark/start/shaft_miner, +/turf/open/floor/iron, +/area/station/cargo/storage) "uKj" = ( /obj/machinery/portable_atmospherics/canister/anesthetic_mix, /obj/machinery/atmospherics/components/unary/portables_connector/visible{ @@ -74002,16 +73758,6 @@ dir = 4 }, /area/station/command/heads_quarters/rd) -"uMM" = ( -/obj/structure/cable, -/obj/machinery/camera/directional/south{ - c_tag = "Labor Camp Security Office"; - network = list("labor") - }, -/obj/effect/turf_decal/tile/red/half/contrasted, -/obj/machinery/light/directional/south, -/turf/open/floor/iron, -/area/mine/laborcamp/security) "uMN" = ( /turf/open/openspace, /area/station/commons/storage/mining) @@ -74032,7 +73778,7 @@ /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "uNN" = ( /obj/effect/spawner/random/trash/bin, /obj/effect/spawner/random/maintenance, @@ -74199,7 +73945,7 @@ /turf/open/floor/iron/dark/smooth_edge{ dir = 8 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "uPS" = ( /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating, @@ -74410,7 +74156,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -74432,7 +74178,7 @@ /area/station/hallway/secondary/entry) "uTK" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, @@ -74497,15 +74243,18 @@ }, /obj/effect/mapping_helpers/airalarm/tlv_no_checks, /obj/machinery/airlock_controller/incinerator_ordmix{ - pixel_y = 27 + pixel_y = 27; + dir = 1 }, /obj/machinery/button/ignition/incinerator/ordmix{ pixel_x = -6; - pixel_y = 39 + pixel_y = 39; + dir = 1 }, /obj/machinery/button/door/incinerator_vent_ordmix{ pixel_x = 5; - pixel_y = 39 + pixel_y = 39; + dir = 1 }, /turf/open/floor/iron/dark, /area/station/science/ordnance) @@ -74523,7 +74272,7 @@ /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "uVr" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -74719,7 +74468,7 @@ /obj/machinery/recharge_station, /obj/machinery/airalarm/directional/north, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "uZT" = ( /obj/effect/turf_decal/tile/blue{ dir = 4 @@ -74735,15 +74484,10 @@ dir = 1 }, /area/station/hallway/secondary/entry) -"vaa" = ( -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, +"uZW" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/white, -/area/station/science/ordnance/office) +/turf/open/floor/iron/white/textured, +/area/station/security/medical) "vad" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -74762,14 +74506,20 @@ /obj/structure/barricade/wooden, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) +"vaj" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/sign/warning/docking/directional/north, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/aft/lesser) "vap" = ( /obj/structure/fence{ dir = 8 @@ -74816,11 +74566,6 @@ }, /turf/open/floor/iron/white/smooth_large, /area/station/service/kitchen) -"vaM" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/tile/brown/half/contrasted, -/turf/open/floor/iron/dark/side, -/area/mine/eva) "vaW" = ( /obj/effect/mapping_helpers/broken_floor, /obj/machinery/portable_atmospherics/canister, @@ -75003,12 +74748,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron, /area/station/security/brig/upper) -"vdi" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 - }, -/turf/open/floor/carpet, -/area/station/command/meeting_room) "vdr" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk{ @@ -75032,7 +74771,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "vdW" = ( /obj/structure/window/reinforced/spawner/directional/east, /obj/effect/decal/cleanable/dirt, @@ -75041,6 +74780,15 @@ }, /turf/open/floor/iron/grimy, /area/station/security/prison/work) +"veh" = ( +/obj/structure/chair{ + dir = 4 + }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/station/security/courtroom) "vei" = ( /obj/machinery/portable_atmospherics/scrubber, /obj/effect/turf_decal/stripes/line{ @@ -75287,9 +75035,7 @@ /obj/effect/turf_decal/tile/red/anticorner/contrasted{ dir = 8 }, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/station/command/bridge) "viH" = ( @@ -75405,13 +75151,6 @@ /obj/effect/landmark/generic_maintenance_landmark, /turf/open/floor/iron/smooth, /area/station/maintenance/fore/lesser) -"vkD" = ( -/obj/effect/turf_decal/trimline/blue/filled/warning{ - dir = 1 - }, -/obj/structure/cable, -/turf/open/floor/iron/white, -/area/station/medical/treatment_center) "vkF" = ( /obj/effect/turf_decal/tile/brown{ dir = 8 @@ -75453,13 +75192,6 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/central) -"vlE" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/tile/neutral/half/contrasted, -/obj/effect/landmark/start/hangover, -/turf/open/floor/iron, -/area/station/commons/fitness) "vlF" = ( /obj/structure/railing{ dir = 4 @@ -75477,10 +75209,6 @@ /obj/machinery/computer/cargo/request, /turf/open/floor/iron, /area/station/cargo/lobby) -"vlN" = ( -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/cargo/storage) "vlS" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/door/airlock/external{ @@ -75550,7 +75278,7 @@ "vmx" = ( /obj/machinery/door/airlock/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -75565,16 +75293,12 @@ /obj/structure/fluff/tram_rail, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/underground/explored) -"vmC" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ +"vmJ" = ( +/obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/machinery/camera/directional/west{ - c_tag = "Arrivals Hallway North" - }, -/obj/structure/cable, -/turf/open/floor/iron/large, -/area/station/hallway/secondary/entry) +/turf/open/floor/iron/white, +/area/station/science/xenobiology) "vmK" = ( /obj/machinery/atmospherics/components/binary/pump{ dir = 4 @@ -75678,15 +75402,13 @@ /obj/machinery/door/firedoor, /turf/open/floor/iron/white/textured_half, /area/station/service/kitchen) -"vnN" = ( +"vnE" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/holopad, -/obj/effect/turf_decal/box/white{ - color = "#52B4E9" +/turf/open/floor/iron/white/side{ + dir = 8 }, -/turf/open/floor/iron/dark/smooth_large, -/area/station/medical/paramedic) +/area/station/science/explab) "vnW" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/effect/turf_decal/tile/neutral/anticorner/contrasted{ @@ -75736,6 +75458,16 @@ "voK" = ( /turf/closed/wall/r_wall, /area/station/tcommsat/computer) +"voL" = ( +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/turf/open/floor/iron, +/area/mine/laborcamp/security) +"voO" = ( +/obj/machinery/light/small/directional/east, +/turf/open/floor/iron/dark, +/area/station/hallway/secondary/entry) "voW" = ( /obj/structure/disposalpipe/junction{ dir = 2 @@ -75752,7 +75484,7 @@ dir = 8 }, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "vpc" = ( /obj/structure/closet, /obj/machinery/light/small/directional/south, @@ -75888,7 +75620,7 @@ }, /obj/effect/landmark/firealarm_sanity, /turf/open/openspace, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "vrc" = ( /obj/item/kirbyplants/random, /turf/open/floor/iron, @@ -76081,6 +75813,13 @@ /obj/structure/detectiveboard/directional/west, /turf/open/floor/carpet, /area/station/security/detectives_office) +"vtT" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/structure/cable, +/turf/open/floor/iron/white, +/area/station/medical/cryo) "vuf" = ( /obj/machinery/shower/directional/west, /obj/effect/turf_decal/stripes/red/line{ @@ -76165,7 +75904,7 @@ /turf/open/floor/iron/dark/smooth_edge{ dir = 1 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "vvE" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -76322,7 +76061,7 @@ /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/abandoned, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -76449,7 +76188,7 @@ /area/station/medical/virology) "vyt" = ( /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "vyw" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -76563,7 +76302,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "vzU" = ( /obj/structure/disposalpipe/segment, /turf/open/floor/iron, @@ -76584,7 +76323,7 @@ /obj/structure/table, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "vAq" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark, @@ -76619,7 +76358,7 @@ /obj/effect/mapping_helpers/airlock/access/any/command/minisat, /obj/effect/mapping_helpers/airlock/access/any/command/ai_upload, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "vAH" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/broken_floor, @@ -76657,7 +76396,7 @@ dir = 8 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "vAY" = ( /obj/effect/turf_decal/stripes/corner{ dir = 1 @@ -76787,26 +76526,12 @@ }, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/icemoon/surface/outdoors/less_spawns) -"vDu" = ( -/obj/structure/table/glass, -/obj/item/biopsy_tool{ - pixel_x = -10; - pixel_y = 3 - }, -/obj/structure/microscope{ - pixel_x = -1; - pixel_y = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/window/reinforced/spawner/directional/north, -/turf/open/floor/iron, -/area/station/science/xenobiology) "vDx" = ( /obj/structure/rack, /obj/effect/turf_decal/tile/red/half/contrasted, /obj/effect/spawner/random/armory/disablers, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "vDy" = ( /obj/structure/sign/poster/official/safety_report/directional/west, /obj/effect/decal/cleanable/dirt, @@ -76916,7 +76641,7 @@ /obj/machinery/door/airlock/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -76940,7 +76665,7 @@ /obj/structure/transit_tube/station/reverse, /obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "vGy" = ( /obj/machinery/camera/directional/east{ c_tag = "Xenobiology Pens Observation - Starboard Aft"; @@ -76960,7 +76685,7 @@ /obj/effect/mapping_helpers/airlock/access/all/supply/vault, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "vGJ" = ( /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating, @@ -76981,6 +76706,21 @@ /obj/effect/landmark/start/depsec/medical, /turf/open/floor/iron/dark/smooth_large, /area/station/security/checkpoint/medical) +"vHi" = ( +/obj/effect/turf_decal/trimline/neutral/warning{ + dir = 6 + }, +/obj/effect/turf_decal/trimline/neutral/mid_joiner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/neutral/mid_joiner, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/iron/dark/smooth_corner{ + dir = 1 + }, +/area/station/command/eva) "vHm" = ( /obj/structure/rack, /turf/open/floor/plating, @@ -77091,6 +76831,11 @@ }, /turf/open/floor/iron/dark, /area/station/science/ordnance/office) +"vIl" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/hallway/secondary/exit/departure_lounge) "vIm" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 @@ -77237,6 +76982,12 @@ }, /turf/open/floor/iron/cafeteria, /area/station/hallway/secondary/entry) +"vKO" = ( +/obj/effect/turf_decal/tile/brown/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/cargo/office) "vKR" = ( /obj/structure/railing{ dir = 4 @@ -77265,6 +77016,16 @@ }, /turf/open/floor/iron/dark/textured, /area/station/hallway/primary/central) +"vLd" = ( +/obj/machinery/computer/security{ + dir = 4 + }, +/obj/machinery/computer/security/telescreen/prison/directional/north, +/turf/open/floor/iron/showroomfloor, +/area/station/security/warden) +"vLe" = ( +/turf/open/floor/circuit, +/area/station/science/robotics/mechbay) "vLj" = ( /obj/machinery/suit_storage_unit/rd, /obj/effect/turf_decal/stripes/line{ @@ -77273,6 +77034,14 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron/smooth_half, /area/station/command/heads_quarters/rd) +"vLl" = ( +/obj/machinery/door/airlock/public/glass{ + name = "Public Mining Storage" + }, +/obj/effect/landmark/navigate_destination, +/obj/machinery/door/firedoor, +/turf/open/floor/iron/textured, +/area/station/commons/storage/mining) "vLY" = ( /obj/structure/railing{ dir = 8 @@ -77286,6 +77055,10 @@ /obj/machinery/airalarm/directional/south, /turf/open/floor/plating, /area/station/maintenance/department/cargo) +"vMk" = ( +/obj/structure/cable, +/turf/open/floor/iron/white, +/area/station/medical/cryo) "vMl" = ( /obj/effect/turf_decal/stripes/corner{ dir = 4 @@ -77303,7 +77076,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "vMY" = ( /obj/structure/disposalpipe/segment{ dir = 6 @@ -77314,17 +77087,6 @@ /obj/effect/landmark/generic_maintenance_landmark, /turf/open/floor/plating, /area/station/maintenance/port/lesser) -"vNe" = ( -/obj/effect/turf_decal/tile/neutral/fourcorners, -/obj/machinery/door/firedoor, -/obj/effect/turf_decal/stripes/white/line, -/obj/effect/turf_decal/stripes/white/line{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark/textured, -/area/station/hallway/secondary/entry) "vNs" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -77345,6 +77107,16 @@ /obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible, /turf/closed/wall/r_wall, /area/station/engineering/atmos/mix) +"vNP" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/mining_weather_monitor/directional/north, +/turf/open/floor/iron/large, +/area/station/hallway/secondary/entry) "vNU" = ( /obj/structure/table/wood, /obj/effect/turf_decal/tile/bar/opposingcorners, @@ -77368,7 +77140,7 @@ }, /obj/effect/turf_decal/tile/green, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "vOG" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -77378,6 +77150,10 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"vOL" = ( +/obj/effect/turf_decal/stripes/corner, +/turf/open/floor/iron/white, +/area/station/science/xenobiology) "vPc" = ( /obj/machinery/camera/directional/east{ c_tag = "Security Post - Engineering" @@ -77438,11 +77214,6 @@ /obj/structure/cable, /turf/open/floor/wood, /area/station/command/heads_quarters/captain) -"vPM" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/stripes/corner, -/turf/open/floor/iron, -/area/station/command/gateway) "vQj" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -77464,7 +77235,7 @@ /area/mine/production) "vQz" = ( /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/aisat_interior"; + control_area = "/area/station/ai/satellite/interior"; name = "Antechamber Turret Control"; pixel_y = -24; req_access = list("minisat") @@ -77475,7 +77246,7 @@ network = list("minisat") }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "vQO" = ( /obj/machinery/camera/directional/east{ c_tag = "Locker Room Toilets" @@ -77494,6 +77265,19 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/iron, /area/station/cargo/lobby) +"vQW" = ( +/turf/open/floor/iron, +/area/mine/eva) +"vQY" = ( +/obj/machinery/requests_console/directional/south{ + department = "Bridge"; + name = "Bridge Requests Console" + }, +/obj/effect/mapping_helpers/requests_console/announcement, +/obj/effect/mapping_helpers/requests_console/information, +/obj/effect/mapping_helpers/requests_console/assistance, +/turf/open/floor/wood, +/area/station/command/meeting_room) "vRn" = ( /turf/open/floor/iron/stairs/medium, /area/station/cargo/storage) @@ -77731,6 +77515,13 @@ /obj/machinery/airalarm/directional/north, /turf/open/floor/sepia, /area/station/security/prison/rec) +"vUy" = ( +/obj/structure/chair/pew/right{ + dir = 1 + }, +/obj/effect/landmark/start/hangover, +/turf/open/floor/iron/dark, +/area/station/service/chapel) "vUI" = ( /obj/structure/table/wood, /obj/item/flashlight/lamp/green{ @@ -77738,6 +77529,19 @@ }, /turf/open/floor/iron/grimy, /area/station/hallway/secondary/entry) +"vUS" = ( +/obj/structure/cable, +/obj/structure/chair{ + dir = 1 + }, +/obj/item/storage/fancy/cigarettes, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/plating, +/area/station/maintenance/aft/greater) "vUW" = ( /obj/item/stack/cable_coil{ amount = 7; @@ -77752,6 +77556,12 @@ }, /turf/open/floor/iron, /area/station/science/ordnance) +"vVf" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/hallway/secondary/entry) "vVj" = ( /obj/effect/turf_decal/bot_white/left, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -77805,10 +77615,10 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical/central) "vWm" = ( @@ -77877,7 +77687,7 @@ name = "Firefighting Equipment" }, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) @@ -77919,12 +77729,6 @@ "vXy" = ( /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) -"vXC" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/iron/white, -/area/mine/living_quarters) "vXH" = ( /obj/structure/cable, /turf/open/floor/iron/white, @@ -77950,6 +77754,11 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark/textured, /area/station/commons/storage/primary) +"vYd" = ( +/obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/carpet, +/area/station/command/meeting_room) "vYg" = ( /obj/machinery/camera/directional/west{ c_tag = "Chapel West" @@ -77995,6 +77804,7 @@ "vYw" = ( /obj/machinery/light/small/directional/south, /obj/structure/sign/warning/cold_temp/directional/north, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/plating, /area/station/hallway/secondary/exit/departure_lounge) "vYz" = ( @@ -78084,12 +77894,6 @@ }, /turf/open/floor/iron/dark, /area/station/science/genetics) -"wab" = ( -/obj/structure/cable, -/obj/machinery/holopad, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) "wam" = ( /turf/open/openspace, /area/station/cargo/storage) @@ -78276,22 +78080,6 @@ /obj/machinery/status_display/evac/directional/south, /turf/open/floor/iron, /area/station/commons/dorms/laundry) -"wdI" = ( -/obj/effect/turf_decal/trimline/neutral/warning{ - dir = 6 - }, -/obj/effect/turf_decal/trimline/neutral/mid_joiner{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/neutral/mid_joiner, -/obj/structure/cable, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/turf/open/floor/iron/dark/smooth_corner{ - dir = 1 - }, -/area/station/ai_monitored/command/storage/eva) "wdL" = ( /obj/machinery/meter, /obj/machinery/atmospherics/pipe/smart/manifold4w/orange/visible, @@ -78376,7 +78164,7 @@ "wfc" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "wfm" = ( /obj/machinery/atmospherics/pipe/smart/simple/dark/visible/layer1{ dir = 10 @@ -78414,15 +78202,6 @@ }, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) -"wfF" = ( -/obj/effect/turf_decal/tile/blue, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/light/directional/east, -/turf/open/floor/iron/white/corner{ - dir = 4 - }, -/area/station/hallway/secondary/entry) "wfK" = ( /obj/item/folder/blue, /obj/structure/table/wood, @@ -78601,7 +78380,7 @@ /obj/item/stack/sheet/iron/fifty, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "whU" = ( /obj/machinery/door/window/left/directional/north{ name = "Pharmacy Desk"; @@ -78717,7 +78496,7 @@ }, /obj/effect/spawner/random/armory/shotgun, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "wkl" = ( /obj/machinery/camera/directional/west{ c_tag = "Telecomms Server Room"; @@ -78733,11 +78512,17 @@ /turf/open/floor/plating, /area/station/engineering/engine_smes) "wkB" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/underground/explored) +"wkJ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment, +/obj/effect/landmark/event_spawn, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/cargo/storage) "wkO" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment{ @@ -78821,13 +78606,6 @@ /obj/effect/mapping_helpers/burnt_floor, /turf/open/floor/plating/icemoon, /area/icemoon/underground/explored) -"wml" = ( -/obj/structure/cable, -/obj/effect/turf_decal/tile/blue, -/obj/structure/railing/corner/end/flip, -/obj/effect/turf_decal/siding/thinplating/corner, -/turf/open/floor/iron, -/area/station/commons/locker) "wmG" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -79039,7 +78817,7 @@ /obj/effect/mapping_helpers/airlock/abandoned, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -79292,6 +79070,13 @@ /obj/effect/turf_decal/tile/blue/half/contrasted, /turf/open/floor/iron/white, /area/station/medical/surgery/fore) +"wux" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 1 + }, +/obj/structure/cable, +/turf/open/floor/iron/dark/smooth_large, +/area/station/command/eva) "wuA" = ( /obj/structure/disposalpipe/segment{ dir = 6 @@ -79312,10 +79097,6 @@ }, /turf/open/floor/iron/dark/textured, /area/station/security/prison) -"wve" = ( -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) "wvk" = ( /obj/structure/chair/stool/directional/south, /obj/effect/decal/cleanable/blood/oil/slippery, @@ -79334,7 +79115,7 @@ /obj/machinery/door/airlock/research{ name = "Ordnance Launch Room" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, @@ -79346,6 +79127,15 @@ }, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/icemoon/surface/outdoors/nospawn) +"wvx" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/iron/white/corner, +/area/station/hallway/secondary/entry) "wvz" = ( /obj/structure/table, /obj/item/assembly/timer{ @@ -79537,15 +79327,6 @@ /obj/effect/turf_decal/trimline/blue/filled/line, /turf/open/floor/iron/white, /area/station/medical/medbay/aft) -"wyo" = ( -/obj/machinery/door/airlock/security/glass{ - name = "Holding Area" - }, -/obj/machinery/door/firedoor, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/security/general, -/turf/open/floor/iron, -/area/station/hallway/secondary/exit/departure_lounge) "wyr" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -79732,7 +79513,7 @@ "wAZ" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/security/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -79752,7 +79533,7 @@ /obj/item/clothing/gloves/color/grey/protects_cold, /obj/item/clothing/mask/gas, /turf/open/floor/iron/textured, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "wBb" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -79811,6 +79592,26 @@ }, /turf/open/floor/iron/dark, /area/station/service/chapel) +"wBD" = ( +/obj/structure/table/glass, +/obj/item/biopsy_tool{ + pixel_x = -10; + pixel_y = 3 + }, +/obj/structure/microscope{ + pixel_x = -1; + pixel_y = 4 + }, +/obj/structure/window/reinforced/spawner/directional/north, +/turf/open/floor/iron, +/area/station/science/xenobiology) +"wBE" = ( +/obj/effect/spawner/random/trash, +/obj/machinery/light/directional/south, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/security/prison/work) "wCo" = ( /obj/effect/spawner/structure/window/hollow/reinforced/middle{ dir = 1 @@ -79838,13 +79639,6 @@ /obj/structure/sign/poster/official/wtf_is_co2/directional/north, /turf/open/floor/iron, /area/station/engineering/atmos/storage) -"wCV" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/white/side{ - dir = 8 - }, -/area/station/science/explab) "wDb" = ( /obj/machinery/requests_console/auto_name/directional/east, /obj/machinery/duct, @@ -79862,7 +79656,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -79928,6 +79722,15 @@ /obj/structure/sign/warning/directional/south, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/underground/explored) +"wEC" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/medical/morgue) "wEG" = ( /obj/structure/extinguisher_cabinet/directional/south{ pixel_x = 4 @@ -79986,7 +79789,7 @@ /obj/machinery/door/airlock/maintenance, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, @@ -80061,7 +79864,7 @@ /turf/open/floor/plating, /area/station/science/robotics/lab) "wGG" = ( -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -80121,7 +79924,7 @@ "wHe" = ( /obj/structure/cable, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "wHg" = ( /obj/effect/turf_decal/stripes/line, /obj/effect/turf_decal/trimline/yellow/warning{ @@ -80141,13 +79944,15 @@ }, /turf/open/floor/iron, /area/station/engineering/lobby) -"wHH" = ( -/obj/structure/cable, -/obj/effect/turf_decal/tile/red{ - dir = 8 +"wHT" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 }, -/turf/open/floor/iron, -/area/mine/laborcamp/security) +/obj/machinery/camera/directional/west{ + c_tag = "Arrivals Hallway North" + }, +/turf/open/floor/iron/large, +/area/station/hallway/secondary/entry) "wHX" = ( /obj/effect/turf_decal/tile/yellow{ dir = 8 @@ -80216,11 +80021,6 @@ /obj/effect/mapping_helpers/no_atoms_ontop, /turf/open/misc/asteroid/snow/icemoon, /area/icemoon/underground/explored) -"wJG" = ( -/obj/machinery/holopad, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/security/prison/visit) "wJM" = ( /obj/structure/rack, /obj/effect/spawner/random/maintenance/two, @@ -80408,15 +80208,6 @@ "wMj" = ( /turf/open/floor/plating, /area/station/maintenance/department/chapel) -"wMm" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/turf/open/floor/iron/white/side{ - dir = 9 - }, -/area/station/science/research) "wMt" = ( /turf/closed/wall, /area/station/hallway/primary/central/fore) @@ -80561,13 +80352,6 @@ /obj/structure/rack, /turf/open/floor/plating, /area/station/maintenance/aft/lesser) -"wOO" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 5 - }, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) "wOR" = ( /obj/item/stack/rods/ten, /turf/open/misc/asteroid/snow/icemoon, @@ -80674,6 +80458,15 @@ /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/iron/white, /area/station/medical/storage) +"wQd" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/blue/opposingcorners{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/cafeteria, +/area/station/commons/dorms/laundry) "wQh" = ( /obj/structure/railing{ dir = 4 @@ -80768,13 +80561,6 @@ /obj/machinery/light/small/directional/south, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"wRx" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/cargo/office) "wRG" = ( /obj/machinery/computer/operating, /obj/effect/turf_decal/tile/blue/full, @@ -80785,11 +80571,11 @@ "wRI" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "wRJ" = ( /obj/machinery/recharge_station, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "wRK" = ( /obj/machinery/conveyor{ dir = 8; @@ -80866,7 +80652,7 @@ /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "wSz" = ( /obj/structure/chair/stool/directional/west, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -80927,22 +80713,6 @@ "wTg" = ( /turf/closed/wall, /area/station/engineering/main) -"wTw" = ( -/obj/effect/turf_decal/trimline/neutral/warning{ - dir = 10 - }, -/obj/effect/turf_decal/trimline/neutral/mid_joiner{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/neutral/mid_joiner, -/obj/structure/cable, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/iron/dark/smooth_corner{ - dir = 4 - }, -/area/station/ai_monitored/command/storage/eva) "wTA" = ( /obj/machinery/telecomms/bus/preset_one, /turf/open/floor/iron/dark/telecomms, @@ -80998,8 +80768,8 @@ /obj/effect/turf_decal/tile/blue{ dir = 1 }, -/obj/item/kirbyplants/random, /obj/structure/sign/poster/official/random/directional/north, +/obj/item/kirbyplants/random, /turf/open/floor/iron/cafeteria{ dir = 8 }, @@ -81114,16 +80884,6 @@ /obj/effect/turf_decal/bot, /turf/open/floor/engine, /area/station/engineering/atmos/hfr_room) -"wUX" = ( -/obj/machinery/navbeacon{ - codes_txt = "delivery;dir=1"; - location = "Bridge" - }, -/obj/structure/plasticflaps/opaque, -/obj/effect/turf_decal/bot, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/maintenance/central/greater) "wVd" = ( /obj/item/radio/intercom/directional/south, /obj/effect/turf_decal/siding/thinplating/dark{ @@ -81197,6 +80957,19 @@ /obj/machinery/light/directional/west, /turf/open/floor/engine, /area/station/engineering/supermatter/room) +"wWf" = ( +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/door/firedoor/border_only{ + dir = 8 + }, +/turf/open/floor/iron/white, +/area/station/science/ordnance/office) "wWo" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment, @@ -81222,13 +80995,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/engineering/storage_shared) -"wWS" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/hallway/secondary/entry) "wWU" = ( /obj/structure/cable, /turf/open/floor/iron/showroomfloor, @@ -81267,6 +81033,16 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/iron, /area/station/science/xenobiology) +"wYb" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/mining_weather_monitor/directional/north, +/turf/open/floor/iron/dark/smooth_large, +/area/station/hallway/secondary/entry) "wYq" = ( /obj/machinery/door/airlock{ name = "Perma Overlook Closet" @@ -81279,6 +81055,11 @@ }, /turf/open/floor/vault, /area/station/security/prison/rec) +"wYt" = ( +/obj/structure/cable, +/obj/effect/landmark/start/prisoner, +/turf/open/floor/iron, +/area/station/security/prison/work) "wYw" = ( /obj/effect/turf_decal/stripes/asteroid/line{ dir = 8 @@ -81367,6 +81148,18 @@ /obj/structure/cable, /turf/open/floor/iron/showroomfloor, /area/station/security/warden) +"wZT" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "miner-passthrough" + }, +/obj/machinery/door/airlock/mining/glass{ + name = "Mining Dock" + }, +/obj/effect/mapping_helpers/airlock/access/all/supply/mining, +/turf/open/floor/iron, +/area/station/cargo/miningdock) "wZV" = ( /obj/structure/window/reinforced/spawner/directional/east, /obj/machinery/portable_atmospherics/canister/oxygen, @@ -81404,14 +81197,6 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/security/range) -"xaf" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/light/small/directional/west, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/hallway/secondary/entry) "xal" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -81493,7 +81278,7 @@ /obj/structure/cable, /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "xaI" = ( /turf/open/floor/iron/dark/telecomms, /area/station/tcommsat/server) @@ -81665,7 +81450,7 @@ /obj/effect/mapping_helpers/airlock/access/any/command/minisat, /obj/effect/mapping_helpers/airlock/access/any/command/ai_upload, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "xdb" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 @@ -81721,6 +81506,13 @@ }, /turf/open/floor/iron/dark/textured, /area/station/security/prison/rec) +"xee" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/obj/effect/turf_decal/tile/brown, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/commons/storage/mining) "xeg" = ( /obj/effect/turf_decal/weather/snow/corner, /turf/open/misc/asteroid/snow/icemoon, @@ -81824,7 +81616,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/science/general, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/iron/white, /area/station/science/research) "xfg" = ( @@ -81840,7 +81632,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "xfn" = ( /obj/machinery/atmospherics/components/binary/pump{ dir = 8; @@ -81870,10 +81662,6 @@ dir = 4 }, /area/station/science/explab) -"xft" = ( -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/hallway/secondary/entry) "xfv" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/trimline/yellow/filled/corner, @@ -81915,7 +81703,7 @@ "xgc" = ( /obj/effect/landmark/event_spawn, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/security/armory/upper) +/area/station/security/armory/upper) "xgg" = ( /obj/structure/rack, /obj/item/clothing/suit/hooded/wintercoat/eva{ @@ -81930,7 +81718,7 @@ /obj/item/clothing/mask/gas, /obj/item/radio/intercom/directional/west, /turf/open/floor/iron/textured, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "xgi" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -81938,22 +81726,9 @@ /turf/open/floor/engine, /area/station/engineering/atmos/hfr_room) "xgm" = ( -/obj/structure/sign/directions/evac{ - dir = 4; - pixel_x = -31; - pixel_y = -32 - }, -/obj/structure/sign/directions/engineering{ - pixel_x = -31; - pixel_y = -40 - }, -/obj/structure/sign/directions/security{ - dir = 4; - pixel_x = -31; - pixel_y = -24 - }, -/turf/open/floor/iron, -/area/station/hallway/primary/central) +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/misc/asteroid/snow/icemoon, +/area/icemoon/surface/outdoors/nospawn) "xgy" = ( /turf/open/openspace, /area/station/service/hydroponics) @@ -82003,13 +81778,6 @@ }, /turf/open/floor/iron/white, /area/station/medical/medbay/lobby) -"xgI" = ( -/obj/item/radio/intercom/directional/east, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/white/side{ - dir = 10 - }, -/area/station/science/research) "xgK" = ( /obj/structure/table, /obj/item/transfer_valve{ @@ -82050,19 +81818,6 @@ }, /turf/open/floor/iron/smooth_large, /area/station/cargo/drone_bay) -"xgX" = ( -/obj/structure/table/wood, -/obj/effect/spawner/random/entertainment/deck{ - pixel_x = -2; - pixel_y = 15 - }, -/obj/effect/spawner/random/food_or_drink/snack{ - pixel_x = 5; - pixel_y = 6 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet/blue, -/area/station/hallway/secondary/entry) "xhk" = ( /turf/open/floor/iron/dark, /area/station/commons/storage/primary) @@ -82108,15 +81863,6 @@ }, /turf/open/floor/plating/snowed/icemoon, /area/icemoon/surface/outdoors/less_spawns) -"xhD" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/obj/structure/statue/goliath{ - dir = 8 - }, -/turf/open/floor/iron/white, -/area/mine/living_quarters) "xhK" = ( /turf/closed/wall/r_wall, /area/station/security/prison/safe) @@ -82164,6 +81910,16 @@ /obj/effect/spawner/random/food_or_drink/snack, /turf/open/floor/iron/dark, /area/station/science/breakroom) +"xiF" = ( +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/stripes/white/line, +/obj/effect/turf_decal/stripes/white/line{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark/textured, +/area/station/hallway/secondary/entry) "xiI" = ( /obj/docking_port/stationary/random/icemoon{ name = "lavaland"; @@ -82189,7 +81945,7 @@ "xiU" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "xiW" = ( /turf/open/floor/iron, /area/station/maintenance/port/fore) @@ -82198,16 +81954,14 @@ id_tag = "MedbayFoyer"; name = "Medbay" }, -/obj/effect/mapping_helpers/airlock/unres, /obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/effect/turf_decal/tile/blue/full, /obj/machinery/door/firedoor, +/obj/effect/mapping_helpers/airlock/unres, /turf/open/floor/iron/large, /area/station/medical/medbay/lobby) "xjB" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/plating/snowed/smoothed/icemoon, /area/icemoon/underground/explored) "xjC" = ( @@ -82268,6 +82022,14 @@ }, /turf/open/floor/iron/smooth, /area/station/commons/storage/mining) +"xkw" = ( +/obj/structure/sign/poster/official/twelve_gauge/directional/north, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/obj/structure/cable, +/turf/open/floor/iron, +/area/mine/laborcamp/security) "xkA" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 8 @@ -82303,7 +82065,7 @@ /obj/machinery/teleport/station, /obj/machinery/light/small/directional/east, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "xlh" = ( /obj/machinery/door/window/left/directional/north{ name = "Medbay Delivery"; @@ -82517,12 +82279,6 @@ /obj/structure/sign/warning/gas_mask/directional/north, /turf/open/floor/plating, /area/station/maintenance/department/medical/morgue) -"xnM" = ( -/obj/structure/cable, -/turf/open/floor/iron/white/side{ - dir = 9 - }, -/area/station/science/research) "xnS" = ( /obj/structure/table/wood, /obj/effect/decal/cleanable/dirt, @@ -82549,7 +82305,7 @@ /obj/machinery/firealarm/directional/west, /obj/effect/turf_decal/stripes/corner, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "xpc" = ( /obj/effect/turf_decal/siding/yellow/corner, /obj/machinery/status_display/evac/directional/south, @@ -82563,6 +82319,13 @@ }, /turf/open/floor/iron, /area/station/engineering/lobby) +"xpm" = ( +/obj/structure/chair/comfy/beige{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/carpet/blue, +/area/station/hallway/secondary/entry) "xpw" = ( /obj/machinery/power/apc/auto_name/directional/south, /obj/structure/cable, @@ -82613,7 +82376,7 @@ "xpP" = ( /obj/effect/turf_decal/stripes/line, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "xpT" = ( /obj/effect/spawner/random/trash/mess, /turf/open/floor/plating, @@ -82713,10 +82476,6 @@ /obj/structure/closet/firecloset, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"xqY" = ( -/obj/machinery/firealarm/directional/east, -/turf/open/floor/iron/dark, -/area/station/medical/chemistry) "xrb" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 1 @@ -82886,7 +82645,7 @@ "xuA" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "xuB" = ( /obj/effect/turf_decal/stripes/asteroid/line, /obj/effect/turf_decal/tile/dark/half/contrasted, @@ -83072,13 +82831,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) -"xwp" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment, -/turf/open/floor/iron, -/area/station/cargo/storage) +/area/station/ai/upload/chamber) "xwr" = ( /obj/structure/rack, /obj/item/clothing/suit/hooded/wintercoat/eva{ @@ -83093,7 +82846,7 @@ /obj/item/clothing/mask/gas, /obj/machinery/light/directional/west, /turf/open/floor/iron/textured, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "xws" = ( /obj/structure/table, /obj/machinery/light/small/directional/north, @@ -83107,7 +82860,7 @@ /obj/item/pen, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "xwx" = ( /obj/structure/closet/emcloset, /turf/open/floor/plating, @@ -83175,11 +82928,6 @@ }, /turf/open/floor/iron/white, /area/station/maintenance/starboard/aft) -"xxz" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/hallway/primary/aft) "xxB" = ( /obj/machinery/power/solar{ id = "portsolar"; @@ -83236,6 +82984,11 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/general/visible, /obj/structure/cable, +/obj/machinery/button/door/directional/east{ + id = "xenobio11"; + name = "Xenobio Pen 11 Blast DOors"; + req_access = list("xenobiology") + }, /turf/open/floor/iron, /area/station/science/xenobiology) "xyr" = ( @@ -83390,14 +83143,7 @@ dir = 6 }, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) -"xAk" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/turf/open/floor/iron/large, -/area/station/hallway/secondary/entry) +/area/station/ai/upload/chamber) "xAn" = ( /turf/open/floor/iron/dark, /area/station/engineering/lobby) @@ -83411,6 +83157,12 @@ }, /turf/open/floor/iron, /area/station/commons/vacant_room/commissary) +"xAO" = ( +/obj/machinery/shower/directional/east, +/obj/structure/fluff/shower_drain, +/obj/effect/spawner/random/trash/soap, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet) "xAQ" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -83522,7 +83274,7 @@ }, /obj/machinery/firealarm/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "xCl" = ( /turf/open/floor/iron, /area/station/science/robotics/lab) @@ -83590,6 +83342,18 @@ /obj/item/storage/pill_bottle/mannitol, /turf/open/floor/iron/white, /area/station/medical/cryo) +"xCW" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 8 + }, +/obj/structure/railing/corner{ + dir = 8 + }, +/obj/machinery/power/apc/auto_name/directional/south, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/white, +/area/station/science/xenobiology) "xDa" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/general/visible, /obj/structure/sign/warning/secure_area/directional/north, @@ -83606,14 +83370,6 @@ /obj/effect/landmark/generic_maintenance_landmark, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"xDh" = ( -/obj/machinery/camera/directional/south{ - c_tag = "Locker Room West" - }, -/obj/structure/cable, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron, -/area/station/commons/locker) "xDj" = ( /obj/effect/turf_decal/trimline/yellow/end{ dir = 1 @@ -83940,6 +83696,22 @@ /obj/machinery/recharge_station, /turf/open/floor/plating, /area/mine/eva/lower) +"xHF" = ( +/obj/structure/table, +/obj/item/trapdoor_remote/preloaded{ + pixel_x = -5; + pixel_y = 2 + }, +/obj/machinery/recharger{ + pixel_x = 5; + pixel_y = 2 + }, +/obj/item/storage/wallet/random{ + pixel_x = 6; + pixel_y = -24 + }, +/turf/open/floor/carpet, +/area/station/command/heads_quarters/hop) "xHO" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/chair/plastic{ @@ -83960,7 +83732,7 @@ /obj/item/clothing/gloves/color/grey/protects_cold, /obj/item/clothing/mask/gas, /turf/open/floor/iron/textured, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "xIk" = ( /obj/structure/chair/comfy{ dir = 4 @@ -83976,29 +83748,6 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron/showroomfloor, /area/station/security/processing) -"xIz" = ( -/obj/effect/turf_decal/trimline/neutral/mid_joiner{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/effect/turf_decal/trimline/neutral/warning{ - dir = 5 - }, -/obj/effect/turf_decal/trimline/neutral/mid_joiner{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/neutral/mid_joiner{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/iron/dark/smooth_corner{ - dir = 8 - }, -/area/station/ai_monitored/command/storage/eva) "xIF" = ( /obj/machinery/firealarm/directional/south, /turf/open/floor/iron/dark, @@ -84126,7 +83875,8 @@ /area/station/cargo/storage) "xKk" = ( /obj/structure/sign/plaques/kiddie/gameoflife{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron, /area/station/command/heads_quarters/rd) @@ -84194,6 +83944,14 @@ /obj/effect/turf_decal/tile/red/half/contrasted, /turf/open/floor/iron/dark/textured_half, /area/station/security/office) +"xLa" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/tile/brown/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/cargo/miningdock) "xLq" = ( /turf/open/floor/glass/reinforced, /area/station/science/ordnance/office) @@ -84259,6 +84017,8 @@ /obj/item/mod/module/thermal_regulator, /obj/effect/turf_decal/tile/blue/full, /obj/item/mod/module/signlang_radio, +/obj/item/gun/syringe, +/obj/item/gun/syringe, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/storage) "xMh" = ( @@ -84307,7 +84067,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/iron/dark/smooth_half, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "xNh" = ( /obj/effect/turf_decal/delivery, /obj/effect/turf_decal/stripes/line{ @@ -84361,6 +84121,11 @@ /obj/structure/cable, /turf/open/floor/iron/smooth_large, /area/station/science/cytology) +"xNY" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/security/prison/workout) "xOb" = ( /obj/effect/turf_decal/siding/white{ dir = 4 @@ -84403,13 +84168,6 @@ }, /turf/open/floor/iron/white, /area/station/medical/medbay/aft) -"xPF" = ( -/obj/structure/fence{ - dir = 4 - }, -/obj/structure/sign/nanotrasen, -/turf/open/floor/plating/snowed/icemoon, -/area/icemoon/surface/outdoors/nospawn) "xPI" = ( /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -84540,30 +84298,18 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/station/maintenance/starboard/fore) -"xRo" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/power/apc/auto_name/directional/north, -/obj/structure/cable, -/obj/effect/turf_decal/tile/purple{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/service/janitor) -"xRv" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 +"xQX" = ( +/obj/machinery/camera/directional/west{ + c_tag = "Arrivals Hallway South" }, -/obj/effect/turf_decal/stripes/line{ +/obj/machinery/newscaster/directional/west, +/obj/effect/turf_decal/tile/blue{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/door/firedoor/border_only{ - dir = 8 +/turf/open/floor/iron/white/corner{ + dir = 1 }, -/turf/open/floor/iron/white, -/area/station/science/ordnance/office) +/area/station/hallway/secondary/entry) "xRw" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -84572,12 +84318,6 @@ }, /turf/open/floor/iron, /area/station/command/bridge) -"xRI" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/light/small/directional/east, -/turf/open/floor/iron/dark, -/area/station/hallway/secondary/entry) "xRP" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -84652,6 +84392,11 @@ /obj/machinery/hydroponics/soil/rich, /turf/open/floor/grass, /area/station/service/hydroponics/garden) +"xTi" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/turf/open/floor/iron/white, +/area/mine/living_quarters) "xTp" = ( /obj/machinery/camera/directional/south{ c_tag = "Solar Maintenance - North East" @@ -84673,6 +84418,16 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/starboard/upper) +"xTL" = ( +/obj/effect/turf_decal/tile/blue, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/light/directional/east, +/obj/structure/cable, +/turf/open/floor/iron/white/corner{ + dir = 4 + }, +/area/station/hallway/secondary/entry) "xTN" = ( /obj/effect/turf_decal/siding/thinplating/dark/corner{ dir = 4 @@ -84694,6 +84449,15 @@ /obj/structure/sign/poster/contraband/lizard/directional/south, /turf/open/floor/iron/dark, /area/station/service/hydroponics) +"xTO" = ( +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/stripes/white/line, +/obj/effect/turf_decal/stripes/white/line{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue/fourcorners, +/turf/open/floor/iron/dark/textured, +/area/station/medical/cryo) "xTQ" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -84819,6 +84583,11 @@ }, /turf/open/floor/wood, /area/station/maintenance/aft/greater) +"xUX" = ( +/obj/structure/chair, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/cafeteria, +/area/station/hallway/secondary/exit/departure_lounge) "xVc" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -84827,10 +84596,6 @@ /obj/machinery/newscaster/directional/south, /turf/open/floor/iron, /area/station/command/bridge) -"xVf" = ( -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/maintenance/department/cargo) "xVo" = ( /obj/structure/table, /obj/item/reagent_containers/cup/bowl{ @@ -84957,7 +84722,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "xWO" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, @@ -85014,6 +84779,13 @@ }, /turf/open/floor/iron, /area/station/engineering/atmos) +"xXH" = ( +/obj/structure/cable, +/obj/effect/turf_decal/tile/brown, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/commons/storage/mining) "xXK" = ( /obj/machinery/atmospherics/components/binary/pressure_valve/on{ name = "Waste Release" @@ -85045,6 +84817,12 @@ /obj/structure/flora/bush/leavy/style_random, /turf/open/floor/grass, /area/station/maintenance/starboard/aft) +"xYy" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/chair/stool/directional/south, +/obj/effect/landmark/start/hangover, +/turf/open/floor/iron/dark, +/area/station/science/breakroom) "xYA" = ( /obj/machinery/holopad, /obj/effect/decal/cleanable/dirt, @@ -85070,9 +84848,6 @@ /obj/machinery/door/firedoor/border_only{ dir = 8 }, -/obj/item/radio/intercom/directional/south{ - pixel_x = -28 - }, /obj/effect/turf_decal/tile/dark/half/contrasted{ dir = 8 }, @@ -85139,7 +84914,7 @@ name = "Dormitories Maintenance" }, /obj/effect/mapping_helpers/airlock/access/any/security/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -85199,7 +84974,7 @@ "yaE" = ( /obj/structure/cable, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "yaF" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/public/glass{ @@ -85221,6 +84996,12 @@ "yaL" = ( /turf/closed/wall/r_wall, /area/station/engineering/engine_smes) +"yaN" = ( +/obj/effect/decal/cleanable/dirt, +/obj/machinery/newscaster/directional/west, +/obj/structure/cable, +/turf/open/floor/plating, +/area/station/maintenance/disposal) "yaT" = ( /obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/oxygen_output{ dir = 1 @@ -85269,7 +85050,7 @@ /area/station/maintenance/port/aft) "ybv" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "yby" = ( /obj/structure/bed/dogbed, /obj/effect/decal/cleanable/insectguts, @@ -85297,6 +85078,16 @@ }, /turf/open/floor/iron, /area/station/commons/dorms) +"ybF" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/decal/cleanable/dirt, +/obj/structure/table, +/obj/item/cigarette{ + pixel_x = 6; + pixel_y = 12 + }, +/turf/open/floor/iron, +/area/mine/eva) "ybI" = ( /obj/structure/bed/dogbed/ian, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -85325,24 +85116,13 @@ /area/station/maintenance/department/medical/central) "ybQ" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "ybY" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/trash/cigbutt, /obj/structure/sign/poster/contraband/random/directional/north, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"yca" = ( -/obj/machinery/door/airlock/maintenance{ - name = "Mining Station Maintenance" - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/supply/mining_station, -/turf/open/floor/iron/dark/textured_half{ - dir = 1 - }, -/area/station/maintenance/department/cargo) "ych" = ( /obj/item/chair/wood/wings, /obj/effect/turf_decal/bot_red, @@ -85370,7 +85150,7 @@ "ycO" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -85423,15 +85203,9 @@ "ydk" = ( /obj/machinery/computer/security/mining, /obj/effect/turf_decal/tile/brown/anticorner/contrasted, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/station/command/bridge) -"ydt" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/security/prison/mess) "ydu" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/effect/decal/cleanable/dirt, @@ -85516,11 +85290,6 @@ "yfa" = ( /obj/structure/sink/directional/west, /obj/structure/cable, -/obj/machinery/button/door/directional/east{ - id = "xenobio10"; - name = "Xenobio Pen 10 Blast DOors"; - req_access = list("xenobiology") - }, /turf/open/floor/iron/white, /area/station/science/xenobiology) "yfg" = ( @@ -85570,7 +85339,8 @@ name = "Forbidden Knowledge" }, /obj/structure/sign/painting/library_private{ - pixel_x = -32 + pixel_x = -32; + dir = 8 }, /turf/open/floor/engine/cult, /area/station/service/library) @@ -85657,7 +85427,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "yhU" = ( /obj/structure/chair/stool/directional/north, /turf/open/floor/iron, @@ -85704,7 +85474,7 @@ /area/station/medical/chem_storage) "yiL" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "yiR" = ( /obj/structure/sign/warning/cold_temp/directional/west, /turf/open/floor/plating, @@ -85794,7 +85564,7 @@ dir = 1 }, /turf/open/floor/iron/dark/smooth_edge, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ylA" = ( /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/iron/dark/textured, @@ -113684,7 +113454,7 @@ nXj xRP nId myQ -sby +fQG fHg aEY oad @@ -114468,7 +114238,7 @@ xUG mpn bfg bfg -ydt +vrG sOT vkJ ots @@ -114725,7 +114495,7 @@ mXK ueP bZK gOS -iJr +fhF vSK kse dbH @@ -115229,7 +114999,7 @@ cfh wBp knq cBG -tSx +loP nAD cYv cmD @@ -115485,7 +115255,7 @@ nks cfh nLW hhr -giN +iZo ajG gSy rLX @@ -115742,7 +115512,7 @@ cPQ cfh wBp gvj -gNH +xNY xtG xtG vyw @@ -117031,7 +116801,7 @@ thA thA uPk gHF -uAE +eki jlX xad scw @@ -120090,10 +119860,10 @@ usx qUw qUw vjh -aCj +xkw cqz tmB -uMM +dlq nTO lRE tmB @@ -120350,7 +120120,7 @@ vjh fEX cqz ccx -wHH +voL fcY pdc lMC @@ -163370,7 +163140,7 @@ iDt bOz gpU oaG -hVq +ivN xuB igm scw @@ -163626,9 +163396,9 @@ scw scw bOz rja -iQx -vXH -udj +oPb +veK +xuB sJH riL riL @@ -163883,11 +163653,11 @@ gjq gjq bOz xar -chQ -veK +mAh +vXH vHS rNc -icu +qCb rOB dKk ksi @@ -164144,7 +163914,7 @@ gps veK tUC fjQ -vXC +xTi xuB jkn jkn @@ -164401,7 +164171,7 @@ gwJ tHQ bwT veK -xhD +eia xuB jKA jkn @@ -165696,8 +165466,8 @@ eJf eJf eJf eJf -oif -ebd +gFX +aZw iDt iDt thA @@ -166174,7 +165944,7 @@ thA thA thA thA -lGf +thA thA thA gjq @@ -169239,9 +169009,9 @@ thA ivF ivF xUF -uah +lLZ icU -jgx +dTh iLh bPs bPs @@ -169494,12 +169264,12 @@ iDt iDt iDt snd -kkA +yaN erw -abQ -cGS +qKa +jhL uhb -aSC +phn cQi boS ivF @@ -169751,11 +169521,11 @@ iDt iDt scw snd -ndl -lFA +hJp +eaO ivF ivF -dER +tCz fFD bYz trc @@ -170302,8 +170072,8 @@ jzy pve xjZ bGP -hqv -sYz +ybF +jld vSi kZu uOf @@ -170535,7 +170305,7 @@ wYz jIr lZe xXd -ltW +wQd nlO wEM nlO @@ -170559,8 +170329,8 @@ ilz pve hEm ksn -bgt -vaM +gXD +oPr tQW uQx uQl @@ -171078,7 +170848,7 @@ nyR pve vSi kZu -pAT +eJO lYd jCV kZu @@ -171335,7 +171105,7 @@ kUD kUD kUD nWH -dQd +aIW nWH nWH nWH @@ -171592,7 +171362,7 @@ kUD kUD kUD nWH -myR +omL cZO vMa nWH @@ -171850,8 +171620,8 @@ itf nWH nWH oha -xVf -snt +xjC +rUz rUz uTr bAX @@ -172108,7 +171878,7 @@ nWH ruD cZO nWH -yca +eEs nWH nWH nWH @@ -172365,7 +172135,7 @@ nWH nWH nWH nWH -eSA +qvS jRd sbU nWH @@ -172536,7 +172306,7 @@ iDt oqL wmP vTq -jsp +jWn wSz nFU jNf @@ -172622,7 +172392,7 @@ wpx gLF gee kVN -naq +gGN mzu gLF gLF @@ -172794,8 +172564,8 @@ oqL iFe iFe cQf -mdo -exN +wYt +wBE jNf qIo tau @@ -173051,7 +172821,7 @@ ktt tmy lvU fAV -tGs +tjn obv jNf tYE @@ -173128,9 +172898,9 @@ cUs ljz tlA kNW -ksn -mGJ -jum +hJA +vQW +dRx kDI mDq lzq @@ -173385,9 +173155,9 @@ rRn clz mml kNW -lxT -bgt -oOQ +nli +iOw +sxL vSi vSi pCM @@ -175095,8 +174865,8 @@ thA thA iDt iDt -kSw -iDt +fIt +nbB iDt iDt oqL @@ -175374,8 +175144,8 @@ eIg rIH ukN nCs -bZk -gRZ +lWb +hmA dAZ vOw eGW @@ -175630,7 +175400,7 @@ vVH ivw nKL hpF -pXZ +uHv bZk gAu sUb @@ -175888,7 +175658,7 @@ vlH lWb eDq tDY -wJG +pSE izY eND qpB @@ -175906,7 +175676,7 @@ qzV gKQ gVS bqF -bbQ +veh otw pvz oKJ @@ -176123,8 +175893,8 @@ thA thA iDt iDt -kSw -iDt +fIt +nbB iDt iDt oqL @@ -176144,8 +175914,8 @@ nXV icQ brJ ukN -pXZ -bZk +uHv +lWb kEn dAZ dKy @@ -176164,7 +175934,7 @@ gKQ awM cBT dyf -iOs +phM gKQ xAY qQN @@ -176402,7 +176172,7 @@ dSJ nKL hpF uHv -nup +toU pCp dAZ eRp @@ -179539,7 +179309,7 @@ gjq jqT scw jqT -gjq +dky gjq gjq gjq @@ -179797,7 +179567,7 @@ jqT kBb jqT jqT -qKs +gjq gjq gjq gjq @@ -180583,7 +180353,7 @@ iDt ppY aQm iDt -tnY +iDt iDt iDt iDt @@ -183376,7 +183146,7 @@ thA thA iDt kLd -qGt +mrk scw bqq uvA @@ -186995,11 +186765,11 @@ iDt ioK jDz bja -czj -jvw -gIJ -kRH -xqY +lst +gjt +tWT +cQy +iQN nzK sLD klo @@ -187252,7 +187022,7 @@ scw btU btU btU -aoP +iPr ako hjM hjM @@ -187509,7 +187279,7 @@ btU btU vfZ btU -mSX +aTA dYr nxM dTm @@ -187766,7 +187536,7 @@ btU gCV gcU svx -tNw +wEC mdy nxM nxM @@ -193655,11 +193425,11 @@ iDt scw iDt iDt -rdg -pJm -nvB -pJm +tfX snJ +nvB +mSQ +yba thA thA thA @@ -194989,19 +194759,19 @@ xti qLY hEW jAF -fma +mGg vdr roA -fma +mGg vdr iDG -fma +mGg maO xhv -fma +mGg maO rJe -fma +mGg ffe nPI ipw @@ -195504,16 +195274,16 @@ bKI cyh wXX bKI -cyh +mGg dQZ bKI -cyh +mGg izA bKI -cyh +mGg lBZ bKI -cyh +mGg odd iER ffe @@ -196032,7 +195802,7 @@ abe lfs pjr nPI -nPI +tRd alM thA thA @@ -196288,8 +196058,8 @@ eea abe abe pjr -iTC -iWM +vaj +oxO alM thA thA @@ -196545,8 +196315,8 @@ abe abe wnB pjr -tRd -iWM +kRp +oxO alM thA thA @@ -196802,8 +196572,8 @@ ffe ffe ffe ffe -tRd -iWM +kRp +oxO alM thA thA @@ -196999,8 +196769,8 @@ qEJ qEJ kyf wBA -oTA -rpK +bWZ +epB oTA epB uFt @@ -197059,8 +196829,8 @@ oxO oxO dcd oxO -tRd -dmU +kRp +rjV alM thA thA @@ -197257,7 +197027,7 @@ mPJ puF exn hDf -qeR +fvJ bAF nJy rkz @@ -197317,7 +197087,7 @@ nPI nPI nPI nPI -geW +gfu alM thA thA @@ -197516,8 +197286,8 @@ oTA sab qYh sab -pcB -qtd +eQt +eee uJt uJt efy @@ -197773,8 +197543,8 @@ oTA oTA syh oTA -lqj -erV +vUy +rLC uJt uJt iJV @@ -198030,8 +197800,8 @@ iLt uJt uJt uJt -sHh uJt +sHh uJt uJt uJt @@ -198544,8 +198314,8 @@ iLt uJt uJt uJt -wvl uJt +wvl uJt uJt uJt @@ -198801,8 +198571,8 @@ oTA oTA epB oTA -uko -mEI +nmw +bMV uJt uJt tWJ @@ -199058,8 +198828,8 @@ oTA bAF irQ bAF -bYm -rlt +nJy +kTy uJt uJt bap @@ -225801,7 +225571,7 @@ uhx uhx uhx uhx -tMa +xgm lSu bln bln @@ -226541,8 +226311,8 @@ utC vJV fUR eYK -xAk -xaf +dxF +lfd fUR uRx jdY @@ -226798,8 +226568,8 @@ utC vJV mVE ryM -uee -dJY +cJu +kMX qlP nDJ sfr @@ -227055,8 +226825,8 @@ utC vJV fUR fUR -kVA -wWS +vNP +vVf mVE nDJ fYW @@ -227569,8 +227339,8 @@ utC vJV ydI ydI -nWM -kHl +wYb +nZw mVE nDJ wOy @@ -227826,8 +227596,8 @@ iOh kDs mVE azN -xft -lRg +iaC +slR iaU nDJ hAG @@ -228083,8 +227853,8 @@ hEI biY biY rkk -bLs -xRI +lbj +voO ydI ior wOy @@ -228114,7 +227884,7 @@ uhx uhx uhx uhx -tMa +xgm lSu lSu lSu @@ -229370,13 +229140,13 @@ lJO fjF qhO lJO -iVv +cZG qpt -fBQ -syL -vmC -syL -dwb +uBJ +oRf +wHT +oRf +jXm fsv cuc hgr @@ -229384,17 +229154,17 @@ fbF hgr xFs fsv -cmV -bXx -aui -bXx -btW -jJd -eyj -lGL -bXx -oMq -tEc +jdY +iGd +pVr +iGd +tZG +mjA +iGd +xQX +iGd +tVk +jdY iGd mKJ vKD @@ -229628,11 +229398,11 @@ hjI xmo vmx eTe -nvI -nvI -oTc -nvI -nvI +wvx +wvx +aLf +wvx +wvx fwM fsv cuc @@ -229642,15 +229412,15 @@ hgr xFs fsv dpU -swK -swK -ubx -swK -swK -swK -wfF -swK -nqD +thX +thX +kSR +thX +thX +thX +xTL +thX +ehB thX peM ddd @@ -229903,7 +229673,7 @@ fUR fUR fUR ort -ort +ksP fUR fUR fUR @@ -230160,7 +229930,7 @@ buF fUR xxI juu -juu +oUY lnp gel fUR @@ -230174,7 +229944,7 @@ tKI bCQ tKI tKI -qRv +sby tkU utC utC @@ -230674,7 +230444,7 @@ qHO fUR nyT kBU -xgX +nVM juu gNL fUR @@ -230927,11 +230697,11 @@ nAH mVE xFs jLM -fnC -vNe -piP -npy -npy +okM +xiF +dkt +xpm +xpm rFb hrh fUR @@ -230981,11 +230751,11 @@ tkU fri utC bvb -tMa +xgm bln bln bvb -qRv +sby fri tkU tkU @@ -231459,7 +231229,7 @@ tKI bCQ tKI tKI -qRv +sby vfr wNO utC @@ -231909,7 +231679,7 @@ utC fri utC bvb -tMa +xgm uei tmR uei @@ -233191,7 +232961,7 @@ txl utC tkU yfW -tMa +xgm cnx tmR tmR @@ -233288,7 +233058,7 @@ vOy utC utC bvb -tMa +xgm tmR tmR tmR @@ -233304,7 +233074,7 @@ tmR tmR bln bvb -qRv +sby utC txl txl @@ -234269,8 +234039,8 @@ qnj hul ykG gwp -hCa -pig +wpC +ffd wpc xBn jjO @@ -234479,7 +234249,7 @@ tkU tkU utC yfW -tMa +xgm uei tmR uei @@ -234526,8 +234296,8 @@ qnj aOx ykG ykG -rCj -xDh +ykG +coZ tOw tOw tOw @@ -234783,8 +234553,8 @@ qnj mxu awx koH -ubH -wml +awx +ruK bvg bJa btG @@ -235041,7 +234811,7 @@ vKq vKq vKq eTC -neq +kEa muy muy gRp @@ -237126,7 +236896,7 @@ maT qjQ eGw ewI -pPl +cqY xCL qjQ utC @@ -237365,9 +237135,9 @@ tKI tKI tKI leW -vlN -qPJ -vlN +ajw +qtx +ajw ajw wiz ajw @@ -237383,7 +237153,7 @@ bln qjQ qyT qcE -aFz +kVY hoD qjQ utC @@ -237624,7 +237394,7 @@ ikO bji ajw ajw -vlN +ajw ajw wiz ajw @@ -237879,8 +237649,8 @@ xal wLO lfG oSS -erN -xwp +wkJ +kVD baf wiz tnK @@ -237897,7 +237667,7 @@ uYc pBE pBE ojk -bVJ +jEW dSO qjQ utC @@ -238137,8 +237907,8 @@ lbg ikO ikd jhy -ppo -lxb +ajw +kzh eWV kXr xaF @@ -238154,13 +237924,13 @@ szU eVn pBE ePB -hxE +mUR xtr qjQ utC utC pRj -csE +mzZ kSD csE uwd @@ -238394,8 +238164,8 @@ ndk rbC kXr qDn -ttT -sQa +guM +tvf qDn kXr kXr @@ -238411,7 +238181,7 @@ jFJ lLE pBE qjQ -rVe +wZT qjQ qjQ utC @@ -238651,8 +238421,8 @@ tKI tKI kaw vkF -rTt -sOJ +vKO +gro cnB bvr mAN @@ -238668,7 +238438,7 @@ byn wBy pBE qdC -jBf +xLa dhY qjQ xXk @@ -238908,8 +238678,8 @@ pdf tKI iUM ssc -cXl -wRx +mrW +fqd sdW kXA kXA @@ -238917,7 +238687,7 @@ oDt kRU lMd kXr -hLY +uKf ceo pBE fNc @@ -238925,7 +238695,7 @@ gSf cYK pBE cZa -hxE +mUR xUS unP utC @@ -239182,7 +238952,7 @@ uYc pBE pBE iVA -hxE +mUR aCh unP utC @@ -239437,9 +239207,9 @@ yeh hxE hxE vQj -fvx -hxE -hxE +qct +mUR +mUR xFb unP utC @@ -239913,7 +239683,7 @@ mQh xKb djF xMW -apI +scj tOi kkO fNK @@ -240170,8 +239940,8 @@ vVj dRD jFf uOj -bgF -vPM +mHn +mwP esI cVz ons @@ -240389,8 +240159,8 @@ bln bln bln bln -nMR -mSQ +oif +umh tGr tGr lSu @@ -240428,7 +240198,7 @@ vwQ wMc ygv toW -kyi +bXa aNq jsF ons @@ -240904,8 +240674,8 @@ bln ntK bln bln -xPF -bln +jSf +xgm bln bln lSu @@ -241204,7 +240974,7 @@ biY ede iKj bPp -bXm +jvJ lnc lnc lnc @@ -241418,15 +241188,15 @@ tGr tGr tGr tGr -mSQ -bln +umh +kSw bln bln rwt lBD ntK -bln -tCj +cJi +xAs xAs xAs xAs @@ -241460,7 +241230,7 @@ vBi lJO dnq iuv -xgm +dnq dnq dnq dnq @@ -241991,7 +241761,7 @@ srw jOy ljp gHe -sni +bmv bep qrJ uLC @@ -242062,7 +241832,7 @@ utC tkU utC liV -jHb +xEn vOy utC utC @@ -242197,7 +241967,7 @@ ooL tDg tDg oFI -oEB +tCj sgW akQ lSu @@ -242248,7 +242018,7 @@ dxK gfb gfb gfb -pYB +qeK gfb gfb vtg @@ -242454,7 +242224,7 @@ feJ feJ kyy kyy -cJi +iDq abb oFI oEB @@ -242501,11 +242271,11 @@ xax oyp phf sEl -qRs -jST -wUX -odN -iZq +wzk +nhS +amD +aax +hll dpH gfb mYG @@ -242735,13 +242505,13 @@ skZ bWn nch xMX -xIz +snk bIc bIc bIc -wdI -yaE -yaE +vHi +llm +llm mvw aTH eJe @@ -242758,7 +242528,7 @@ wzk wzk wzk wzk -pgw +vQY iYb iYb msb @@ -242777,7 +242547,7 @@ cRF dnq pRj pRj -dOa +suV pRj pRj pRj @@ -242991,14 +242761,14 @@ krQ gYp bWn iUO -egL +lon ssF pSu fgQ pSu pSu -tlo -kZC +wux +eZF tgn igQ euZ @@ -243015,7 +242785,7 @@ xVq lnk pNs pNs -oyb +ktU mqD iYb dkb @@ -243090,7 +242860,7 @@ utC fri tkU liV -qRv +sby tkU utC utC @@ -243249,11 +243019,11 @@ thI bWn tsz xMX -hSl +tRW ueS ueS ueS -wTw +tQx yaE rAZ qOD @@ -243272,7 +243042,7 @@ fbw hue hBZ eYT -vdi +lLr oMP iYb txI @@ -243281,7 +243051,7 @@ iYb sbi jWP ool -jRC +iTR cgC jaq vvT @@ -243502,7 +243272,7 @@ bZx bZx gYm krQ -dky +gYp bWn ylz xMX @@ -243529,7 +243299,7 @@ cct hue xit wfK -fHK +vYd qpS iYb iYb @@ -243538,8 +243308,8 @@ iYb kFW ybI nnR -tuz -eRZ +xHF +loQ qpZ rAA cpm @@ -243786,7 +243556,7 @@ dhj kiL tOF tOF -ktU +oyb wzk wzk sKz @@ -243795,8 +243565,8 @@ jfc vYm qBt xMQ -jRC -nvs +iTR +kJd hPz shc cpm @@ -243825,7 +243595,7 @@ rHQ wFX rBV kJV -cOa +rBV omG tvW scx @@ -244119,7 +243889,7 @@ gka gka aao liV -qRv +sby utC utC txl @@ -244254,7 +244024,7 @@ feJ uGr uGr iDq -jBr +vLd lAL ejc iDq @@ -244577,9 +244347,9 @@ dnq nlv uMN uMN -msP -hPQ -cEr +cnQ +fly +cFp aQO fFv kta @@ -244834,9 +244604,9 @@ nBl kta aHR cPi -gCl +kth jpH -mkn +xXH qnw sEn kta @@ -245091,9 +244861,9 @@ dnq kta ihh ryh -rXY +cnQ wzY -mIH +xee bqi aQO kta @@ -245147,7 +244917,7 @@ rQf gka tkU liV -jHb +xEn utC utC txl @@ -245310,7 +245080,7 @@ wEb sIZ pfe pfe -jII +krv mxM qLt uom @@ -245345,12 +245115,12 @@ hcL isx iuv dnq +dKW kta kta -kta -kYS +vLl nlv -kmC +jJa kta kta kta @@ -245601,13 +245371,13 @@ fwf hcL isx nlT -krv +dnq hyc fdy fdy -pPh cLN -xxz +cLN +eny fdy pvg nQW @@ -245800,8 +245570,8 @@ fwh ijU bqG lbk -fqH -sbN +aFy +pZM lbk oAh oAh @@ -246338,7 +246108,7 @@ skl skl skl skl -skl +lDo pDt tsk wLX @@ -247079,7 +246849,7 @@ xmO ubE bUx iQj -aOS +uZW rud cAC mWM @@ -247336,7 +247106,7 @@ xmO deY bUx kdT -tHa +ruP syN cAC mWM @@ -247657,9 +247427,9 @@ fZg mhQ pzb iuv -prh -qFX -lke +mOF +aBE +sct laM lIQ cvS @@ -247717,7 +247487,7 @@ gka gka aao liV -qRv +sby utC utC txl @@ -247916,10 +247686,10 @@ dnq iuv iFm xVK -xRo -owv -qXU -uwO +rBU +byT +avw +efQ rSx kRP kRP @@ -248154,7 +247924,7 @@ lpM ejT iEV iEV -cPV +ewP hCV jeC jeC @@ -248411,7 +248181,7 @@ lpM djh sgZ sgZ -pZN +fdK kwu uKS uPB @@ -248744,7 +248514,7 @@ gMp gMp yhY liV -qmN +nTX utC utC utC @@ -249764,7 +249534,7 @@ tkU utC enX liV -jHb +xEn utC utC tkU @@ -250188,7 +249958,7 @@ lvY mmA whk uja -aJi +xAO aJi eCT uja @@ -250208,9 +249978,9 @@ oTu oTu srw kfr -dKW +bep ylU -lDo +dnq dnq iuu dnq @@ -250286,7 +250056,7 @@ fri utC utC liV -qRv +sby utC utC utC @@ -250464,11 +250234,11 @@ exw hmb hmb exw -tLF +qRv lFb qRE lFb -azw +tMa azw mao azw @@ -250956,8 +250726,8 @@ xqh bdp nmH tiI -hLW -bVI +rZg +ekM uja uja uja @@ -250989,7 +250759,7 @@ blU azw bbO hhT -vnN +hZk rMd wpZ cvS @@ -251212,10 +250982,10 @@ eFG ffZ vfW vfW -mZK -lvk -gzI -gIN +eBL +vfW +mDS +jQv kKL mBr kKL @@ -251471,8 +251241,8 @@ qFE cGB cGB gsI -tLL -vlE +fEi +ehn kKL kKL kKL @@ -251571,7 +251341,7 @@ utC utC utC liV -jHb +xEn tkU utC utC @@ -252077,7 +251847,7 @@ nFO utC enX liV -jHb +xEn utC utC utC @@ -252582,7 +252352,7 @@ tkU utC utC reh -jHb +xEn tkU utC fri @@ -253113,7 +252883,7 @@ uAL uAL hHG liV -qRv +sby sMy tkU utC @@ -253309,7 +253079,7 @@ kmG cyo juw nji -aCA +tHv jDn nbC qZv @@ -253566,7 +253336,7 @@ efK juw nji tkf -pPA +rpM cWn tHr pBA @@ -253610,7 +253380,7 @@ utC tkU utC reh -jHb +xEn utC tkU utC @@ -253818,12 +253588,12 @@ hgh kBL xPT cxA -bij -vkD -oEh -gCh -eHZ -mUe +hPx +rhg +cey +lux +unh +ijW fUL rbB evp @@ -254080,7 +253850,7 @@ nMu wDe hxs uEr -nzs +jQf iuD qAf gHq @@ -254152,7 +253922,7 @@ ghY ccw cQL pbs -uvu +iYt bPc ptY ptY @@ -255134,8 +254904,8 @@ npD npD npD npD -gGj -mue +hYH +jzI sGH bPt fij @@ -255188,7 +254958,7 @@ pza sML sML sML -pza +urS iHp lNc euc @@ -255392,7 +255162,7 @@ vng lme tiZ uuI -noR +wDg wDg rqD wDg @@ -255435,7 +255205,7 @@ frq rlS cfe mXi -mzZ +rlS mRI bLz bLz @@ -255445,7 +255215,7 @@ mEg bLz jUW bLz -mGg +bLz mCw ryf ryf @@ -256395,8 +256165,8 @@ sZD lnC klc lDM -dVS -bAj +qWv +uoJ lDM klc rWR @@ -256652,8 +256422,8 @@ sZD vgx lDM dxO -omo -jdm +mWW +vtT xWT klc uiF @@ -256837,7 +256607,7 @@ txl txl txl sAd -tMa +xgm uei tmR uei @@ -256906,11 +256676,11 @@ aKa wor qxG vFW -noW -nOh -bNH -bNH -rIc +amS +xTO +oXq +mWW +vMk gpR klc ooy @@ -258999,8 +258769,8 @@ jgL sKf sKf jgL -wRr -wEV +sYm +sKf sZF tkU utC @@ -259256,8 +259026,8 @@ npD npD sZF sZF -pHR -wEV +oLn +sKf vjZ utC utC @@ -259407,7 +259177,7 @@ txl txl utC sAd -tMa +xgm uei tmR uei @@ -259465,9 +259235,9 @@ cYE hZT idi cZU -kBl -kBl -hOY +bGl +bGl +cuu dbx uvt awK @@ -259513,8 +259283,8 @@ ily lqU bln vjZ -pHR -wEV +cbf +sKf vjZ utC tkU @@ -259721,10 +259491,10 @@ hUx rNQ hZT idi -aID +iEt gky vvP -mxD +imo cgZ uvt jeB @@ -259770,8 +259540,8 @@ ily lqU tmR vjZ -pHR -wEV +oLn +sKf vjZ utC utC @@ -259978,9 +259748,9 @@ ebb cYE hZT idi -aID -ddk -ddk +iEt +vLe +vLe dry edq uvt @@ -260027,8 +259797,8 @@ tgx qLY xSE sZF -rzL -gea +jCW +fWF sZF tkU utC @@ -260248,7 +260018,7 @@ mtI uRL xmf owC -tVn +qOM tYe xIF wHc @@ -260284,8 +260054,8 @@ jCE adY tmR sZF -pHR -wEV +oLn +sKf sZF tkU fri @@ -260505,7 +260275,7 @@ mtI nqP vzo rzz -gEn +abC pBV dsl wHc @@ -260541,8 +260311,8 @@ vTJ apT sEB vjZ -laf -wEV +vUS +sKf vjZ tkU utC @@ -260775,31 +260545,31 @@ jbU jbU bkQ drr -qhL -qhL -qhL -qhL +drr +vHq +hvm +hvm tCx -wPd -wPd -wPd -wPd -wPd -fTq -wab -wOO -wPd -wPd -wPd -wPd +chZ +chZ +chZ +chZ +chZ +pNN +pJE +kBy +chZ +chZ +chZ +chZ wPd ega bcE qLY sEB vjZ -dAP -wEV +nNA +sKf vjZ utC utC @@ -261031,32 +260801,32 @@ mde gSN jbU wnX -drr -hvm -pvB -ehd -ehd -ehd -ehd -bbB -bbB -bbB -vDu -lva -lva -iXu -drr -pvB -ehd -orv +pMF +pMF +kvc +aCb +aCb +aCb +aCb +aCb +aCb +aCb +wBD +xJj +xJj +vmJ +pMF +vOL +aCb +kea aCb aCb vfq apT sEB vjZ -pHR -wEV +cbf +sKf vjZ utC fri @@ -261289,8 +261059,8 @@ vpW jbU lec fmU -qhL -wve +pMF +iNL hfc hfc hfc @@ -261312,8 +261082,8 @@ hfc adY eAw sZF -pHR -wEV +oLn +sKf sZF utC tkU @@ -261546,8 +261316,8 @@ qlO jbU hzb hdH -qhL -dkK +pMF +euO vVP vVP vVP @@ -261569,8 +261339,8 @@ vVP qLY xSE sZF -pHR -wEV +cbf +sKf sZF tkU tkU @@ -261803,8 +261573,8 @@ xGK jbU lhu hdH -urJ -ppp +lOp +gkk ily ily ily @@ -261827,7 +261597,7 @@ jBh tmR vjZ wRr -wEV +sKf vjZ utC fri @@ -262060,8 +261830,8 @@ wlW jbU kHN kra -qhL -ppp +pMF +gkk ily ily ily @@ -262317,8 +262087,8 @@ ppz jbU uQR iZQ -llw -aus +niy +xCW lKq lKq lKq @@ -262834,8 +262604,8 @@ eLr hAm via via -tPz -iRN +via +oOR odR leo qFt @@ -263081,24 +262851,24 @@ urK urK urK iRx +hot +hot +qhy +qhy +qhy +qhy pJV pJV -nMA -nMA -nMA -nMA -pJV pJV pJV pJV pJV -aYJ cTR leo wOX efk -jTr -kex +bKz +bKz aIr elk mdE @@ -263337,25 +263107,25 @@ dFj dFj dFj dFj -xnM -xnM -xnM -fLl -wMm -xnM +dFj +dFj +dFj +jwC +bkI +dFj qDQ dFj dFj dFj dFj -xgI -jmh +aGl +mpx avC leo qFt bYu -qkH -wCV +vnE +teH rqa bgx bgx @@ -263611,8 +263381,8 @@ nsZ nsZ hjE xSg -fOl -cyL +lrO +yeC jAI bgx hWI @@ -265648,8 +265418,8 @@ mEJ kCz vJS bUa -ubY -qHn +xYy +dcz nsZ awa awa @@ -265905,7 +265675,7 @@ sca xiC ciS bUa -jPx +puQ jxb dqI oEE @@ -265914,11 +265684,11 @@ mXe bEJ qbb miK -xRv -xRv -xRv -xRv -goy +bxp +hWD +hWD +hWD +wWf hWD oiI nsZ @@ -266161,8 +265931,8 @@ bsN sca gpj oQn -iBl -pLr +nWj +nmX mKO sPq xLq @@ -266175,7 +265945,7 @@ cRq qVZ ybf ybf -vaa +aQS xLq xLq nsZ @@ -266432,7 +266202,7 @@ iHc qVZ nQj auK -vaa +aQS xLq xLq nsZ @@ -266689,7 +266459,7 @@ xTV rGY nzA auK -vaa +aQS xLq xLq nsZ @@ -266946,7 +266716,7 @@ bgx bgx bgx bgx -rVA +ixK bgx bgx bgx @@ -266990,7 +266760,7 @@ tmR cnx bln sFJ -qRv +sby utC txl txl @@ -267162,11 +266932,11 @@ tpd mbn qLF vCD -wyo -myJ -myJ -gEV -gjW +hsG +qRr +qRr +uCC +xUX bAY mhT jdK @@ -267421,11 +267191,11 @@ tPY ljo tpd vXy -vXy -urx -cuP -eFn -ldV +gJa +vIl +iTb +eiR +jDf uFH hpr vXy @@ -268529,7 +268299,7 @@ tmR sUN bln sFJ -qRv +sby utC utC utC @@ -268707,7 +268477,7 @@ tsP jZM vYw dFt -qRv +utC utC utC dFt @@ -268715,7 +268485,7 @@ tsP jZM vYw dFt -qRv +utC utC utC utC @@ -275161,13 +274931,13 @@ utC utC utC utC -utC -aZw +rdg +rkW jxw erR jxw -aZw -utC +rkW +xEn utC txl txl @@ -276703,13 +276473,13 @@ txl txl txl utC -utC -aZw +rdg +rkW jxw lZt jxw -aZw -utC +rkW +xEn utC txl txl diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index 5dcc9cc1d21b3e..567b6badb80694 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -5,6 +5,15 @@ "aag" = ( /turf/closed/wall, /area/station/commons/fitness) +"aah" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/machinery/camera/directional/east{ + c_tag = "Science Maintenance Corridor"; + network = list("ss13","rd") + }, +/obj/structure/sign/warning/secure_area/directional/east, +/turf/open/floor/iron/white, +/area/station/science/research) "aal" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -82,7 +91,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "abX" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -210,7 +219,7 @@ /area/station/engineering/atmos/pumproom) "aeq" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "aer" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt, @@ -293,7 +302,7 @@ /obj/effect/turf_decal/bot, /mob/living/simple_animal/bot/secbot/beepsky/armsky, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "agi" = ( /obj/effect/spawner/random/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -450,20 +459,6 @@ /obj/structure/window/spawner/directional/east, /turf/open/floor/iron/dark, /area/station/commons/fitness/recreation) -"aiy" = ( -/obj/effect/turf_decal/tile/red/anticorner/contrasted{ - dir = 8 - }, -/obj/machinery/computer/records/security{ - dir = 1 - }, -/obj/machinery/light/small/directional/west, -/obj/machinery/firealarm/directional/west, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/power/apc/auto_name/directional/south, -/obj/structure/cable, -/turf/open/floor/iron/dark, -/area/station/security/checkpoint/supply) "aja" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -583,7 +578,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "akF" = ( /obj/machinery/flasher/directional/north{ id = "AI" @@ -596,7 +591,7 @@ }, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "akZ" = ( /obj/machinery/atmospherics/pipe/smart/simple/dark/visible{ dir = 4 @@ -671,7 +666,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "alX" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -757,7 +752,7 @@ /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "anv" = ( /obj/machinery/computer/security/telescreen/entertainment/directional/east, /obj/machinery/skill_station, @@ -850,12 +845,12 @@ "apJ" = ( /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "apM" = ( /obj/structure/cable, /obj/machinery/power/apc/auto_name/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "apO" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/blue{ @@ -913,6 +908,23 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/station/commons/locker) +"aqv" = ( +/obj/item/folder/red, +/obj/item/pen, +/obj/structure/table/glass, +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 10 + }, +/obj/item/folder/white{ + pixel_x = -4; + pixel_y = 2 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron/white, +/area/station/security/execution/transfer) "aqS" = ( /obj/effect/turf_decal/siding/purple/corner{ dir = 4 @@ -974,7 +986,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/power/apc/auto_name/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "asB" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -1273,7 +1285,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "azz" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -1520,12 +1532,16 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/security/prison) -"aCW" = ( +"aCZ" = ( +/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ + dir = 4 + }, /obj/effect/turf_decal/stripes/line{ - dir = 8 + dir = 1 }, -/turf/open/floor/plating, -/area/station/maintenance/port/aft) +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron/dark, +/area/station/medical/cryo) "aDa" = ( /turf/open/floor/plating, /area/station/construction/mining/aux_base) @@ -1691,7 +1707,7 @@ /obj/effect/mapping_helpers/airlock/abandoned, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -1772,7 +1788,7 @@ }, /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "aHH" = ( /obj/machinery/atmospherics/pipe/smart/simple/dark/visible, /obj/effect/turf_decal/siding/purple{ @@ -1809,14 +1825,6 @@ /obj/structure/sign/warning/biohazard, /turf/closed/wall/r_wall, /area/station/science/research) -"aIl" = ( -/obj/structure/cable, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/stripes/line, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/maintenance/aft/greater) "aIm" = ( /obj/machinery/navbeacon{ codes_txt = "patrol;next_patrol=7.5-Starboard-Aft-Corner"; @@ -1942,7 +1950,7 @@ /area/station/science/xenobiology) "aJS" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aJX" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -2001,7 +2009,7 @@ name = "Service Hall" }, /obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/duct, @@ -2192,11 +2200,11 @@ /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aOc" = ( /obj/machinery/holopad/secure, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aOf" = ( /obj/effect/turf_decal/stripes/corner{ dir = 8 @@ -2224,6 +2232,11 @@ /obj/effect/turf_decal/trimline/brown/warning, /turf/open/floor/iron/white, /area/station/science/lobby) +"aOs" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/structure/sign/nanotrasen/directional/west, +/turf/open/floor/plating, +/area/station/maintenance/port) "aOu" = ( /obj/structure/table, /obj/item/paper/fluff/holodeck/disclaimer, @@ -2291,14 +2304,14 @@ "aPv" = ( /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aPw" = ( /obj/machinery/ai_slipper{ uses = 8 }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aPx" = ( /obj/effect/turf_decal/bot, /obj/effect/spawner/random/structure/closet_empty/crate, @@ -2338,7 +2351,7 @@ }, /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "aQR" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, @@ -2492,7 +2505,7 @@ /area/station/construction/storage_wing) "aTV" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "aUm" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron, @@ -2510,14 +2523,14 @@ /area/station/medical/medbay/central) "aUx" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "aUK" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 }, /obj/structure/cable, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aUP" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/junction, /obj/effect/spawner/structure/window/reinforced/plasma, @@ -2541,7 +2554,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "aVn" = ( /obj/structure/showcase/cyborg/old{ pixel_y = 20 @@ -2551,13 +2564,13 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "aVr" = ( /obj/machinery/porta_turret/ai{ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "aVv" = ( /obj/machinery/suit_storage_unit/atmos, /obj/effect/turf_decal/stripes/line{ @@ -2648,13 +2661,13 @@ /area/space/nearstation) "aWN" = ( /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "aWO" = ( /obj/machinery/ai_slipper{ uses = 10 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "aWS" = ( /obj/structure/table/reinforced, /obj/item/book/manual/wiki/engineering_hacking{ @@ -2786,12 +2799,9 @@ name = "AI Core Shutters" }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "aYJ" = ( /obj/machinery/disposal/bin, -/obj/machinery/firealarm/directional/south{ - pixel_x = 26 - }, /obj/structure/disposalpipe/trunk{ dir = 8 }, @@ -2939,7 +2949,8 @@ dir = 4 }, /obj/structure/sign/map/meta/left{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) @@ -2985,10 +2996,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/station/command/teleporter) -"bcb" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, -/area/station/science/research) "bcf" = ( /obj/machinery/portable_atmospherics/canister, /obj/machinery/atmospherics/components/unary/portables_connector/visible{ @@ -3071,7 +3078,7 @@ /obj/structure/cable, /obj/structure/disposalpipe/segment, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/broken_floor, @@ -3088,10 +3095,6 @@ /obj/machinery/air_sensor/oxygen_tank, /turf/open/floor/engine/o2, /area/station/engineering/atmos) -"beq" = ( -/obj/structure/sign/warning/vacuum/external, -/turf/closed/wall/r_wall, -/area/space/nearstation) "beO" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/green{ @@ -3124,7 +3127,7 @@ /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "beZ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -3267,13 +3270,13 @@ /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bhf" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "bhl" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/maintenance/three, @@ -3329,7 +3332,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "biq" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -3345,11 +3348,6 @@ /obj/machinery/component_printer, /turf/open/floor/iron/white, /area/station/science/explab) -"biA" = ( -/obj/machinery/holopad, -/obj/effect/turf_decal/delivery, -/turf/open/floor/iron, -/area/station/hallway/secondary/exit/departure_lounge) "biF" = ( /obj/structure/window/spawner/directional/north, /turf/open/floor/iron/dark, @@ -3456,10 +3454,10 @@ /area/station/science/research) "bjP" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "bjQ" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bkl" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -3540,8 +3538,9 @@ /obj/effect/turf_decal/tile/blue{ dir = 1 }, +/obj/machinery/flasher/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "blG" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -3608,13 +3607,14 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "bny" = ( /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/aisat_interior"; + control_area = "/area/station/ai/satellite/interior"; name = "Antechamber Turret Control"; pixel_x = 30; - req_access = list("minisat") + req_access = list("minisat"); + dir = 4 }, /obj/machinery/ai_slipper{ uses = 10 @@ -3623,7 +3623,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "bnA" = ( /obj/structure/plasticflaps, /obj/machinery/conveyor{ @@ -3639,14 +3639,14 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bnD" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/effect/turf_decal/tile/blue{ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bnE" = ( /obj/structure/closet/crate/hydroponics, /obj/item/shovel/spade, @@ -3672,7 +3672,7 @@ name = "Private Channel" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "bnM" = ( /obj/machinery/door/firedoor, /obj/effect/decal/cleanable/dirt, @@ -3769,7 +3769,7 @@ /obj/machinery/airalarm/directional/north, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "bpA" = ( /obj/machinery/rnd/production/circuit_imprinter/department/science, /turf/open/floor/iron/dark, @@ -3891,17 +3891,17 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "bsb" = ( /obj/effect/turf_decal/tile/blue{ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bsd" = ( /obj/effect/turf_decal/tile/blue, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bse" = ( /obj/effect/turf_decal/siding/purple{ dir = 4 @@ -3957,6 +3957,25 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/station/maintenance/aft/greater) +"bto" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 4 + }, +/obj/structure/table/reinforced, +/obj/machinery/cell_charger, +/obj/item/stock_parts/power_store/cell/high, +/obj/machinery/firealarm/directional/west, +/obj/machinery/camera/directional/north{ + c_tag = "Science Mechbay"; + network = list("ss13","rd") + }, +/obj/machinery/button/door/directional/north{ + id = "mechbay"; + name = "Mech Bay Shutters Control"; + req_access = list("robotics") + }, +/turf/open/floor/iron, +/area/station/science/robotics/mechbay) "btx" = ( /obj/effect/turf_decal/stripes/line{ dir = 10 @@ -4194,7 +4213,7 @@ "bwN" = ( /obj/effect/landmark/event_spawn, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "bxf" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -4358,22 +4377,6 @@ }, /turf/open/floor/iron/grimy, /area/station/service/chapel/office) -"bzV" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security/glass{ - id_tag = "innerbrig"; - name = "Brig" - }, -/obj/structure/cable, -/obj/effect/turf_decal/trimline/red/filled/corner{ - dir = 1 - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ - cycle_id = "brig-entrance" - }, -/obj/effect/mapping_helpers/airlock/access/all/security/entrance, -/turf/open/floor/iron, -/area/station/security/brig) "bAp" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -4532,7 +4535,7 @@ "bCZ" = ( /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "bDm" = ( /obj/machinery/disposal/bin, /obj/effect/turf_decal/siding{ @@ -4797,6 +4800,18 @@ }, /turf/open/floor/iron/white, /area/station/medical/medbay/central) +"bHU" = ( +/obj/machinery/door/poddoor/preopen{ + id = "Prison Gate"; + name = "Security Blast Door" + }, +/obj/effect/turf_decal/delivery, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden, +/obj/structure/sign/warning/secure_area/directional/east, +/turf/open/floor/iron, +/area/station/security/brig) "bIi" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -4937,6 +4952,12 @@ }, /turf/open/floor/iron, /area/station/cargo/storage) +"bKl" = ( +/obj/structure/table/glass, +/obj/machinery/firealarm/directional/west, +/obj/effect/turf_decal/tile/blue/fourcorners, +/turf/open/floor/iron/white, +/area/station/medical/treatment_center) "bKv" = ( /obj/item/pen, /obj/structure/table/reinforced, @@ -5017,6 +5038,14 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/carpet/green, /area/station/maintenance/port/aft) +"bLq" = ( +/obj/item/radio/intercom/directional/north, +/obj/machinery/firealarm/directional/west, +/obj/machinery/light/small/directional/north, +/obj/structure/rack, +/obj/item/storage/toolbox/electrical, +/turf/open/floor/iron/white, +/area/station/science/explab) "bLQ" = ( /turf/closed/wall, /area/station/medical/coldroom) @@ -5282,6 +5311,14 @@ /obj/effect/landmark/start/scientist, /turf/open/floor/engine, /area/station/science/explab) +"bRn" = ( +/obj/machinery/firealarm/directional/west, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/engineering/main) "bRp" = ( /obj/effect/spawner/random/decoration/microwave{ dir = 1; @@ -5420,7 +5457,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/power/apc/auto_name/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "bTv" = ( /obj/structure/closet/lasertag/blue, /obj/effect/landmark/start/hangover, @@ -5587,7 +5624,7 @@ }, /obj/structure/window/reinforced/spawner/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "bWV" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -5713,10 +5750,47 @@ /obj/machinery/airalarm/directional/east, /obj/machinery/firealarm/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "bYz" = ( /turf/open/floor/circuit, /area/station/maintenance/port/aft) +"bYQ" = ( +/obj/structure/table/reinforced, +/obj/effect/turf_decal/bot, +/obj/item/bodypart/arm/right/robot{ + pixel_x = 3 + }, +/obj/item/bodypart/arm/left/robot{ + pixel_x = -3 + }, +/obj/structure/extinguisher_cabinet/directional/north, +/obj/machinery/firealarm/directional/west, +/obj/item/assembly/flash/handheld{ + pixel_x = 6; + pixel_y = 13 + }, +/obj/item/assembly/flash/handheld{ + pixel_x = 6; + pixel_y = 13 + }, +/obj/item/assembly/flash/handheld{ + pixel_x = 6; + pixel_y = 13 + }, +/obj/item/assembly/flash/handheld{ + pixel_x = 6; + pixel_y = 13 + }, +/obj/item/assembly/flash/handheld{ + pixel_x = 6; + pixel_y = 13 + }, +/obj/machinery/ecto_sniffer{ + pixel_x = -6; + pixel_y = 6 + }, +/turf/open/floor/iron, +/area/station/science/robotics/lab) "bZb" = ( /obj/structure/table, /obj/machinery/button/door{ @@ -6139,11 +6213,11 @@ "cjb" = ( /obj/machinery/door/firedoor, /obj/effect/turf_decal/tile/blue/fourcorners, -/obj/effect/mapping_helpers/airlock/unres, /obj/machinery/door/airlock/medical/glass{ name = "Medbay Staff Entrance" }, /obj/effect/mapping_helpers/airlock/access/all/medical/general, +/obj/effect/mapping_helpers/airlock/unres, /turf/open/floor/iron/dark, /area/station/medical/medbay/central) "cji" = ( @@ -6238,7 +6312,7 @@ }, /obj/machinery/firealarm/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "ckW" = ( /obj/effect/turf_decal/tile/neutral/anticorner/contrasted{ dir = 8 @@ -6382,13 +6456,6 @@ "cnK" = ( /turf/closed/wall, /area/station/engineering/main) -"coc" = ( -/obj/structure/chair, -/obj/effect/turf_decal/stripes/line{ - dir = 5 - }, -/turf/open/floor/plating/airless, -/area/station/science/ordnance/bomb) "coe" = ( /obj/effect/turf_decal/stripes/white/line{ dir = 1 @@ -6405,7 +6472,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "com" = ( /obj/structure/cable, /obj/machinery/netpod, @@ -6428,7 +6495,7 @@ /turf/open/floor/circuit/green{ luminosity = 2 }, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "cpj" = ( /obj/machinery/button/door/directional/east{ id = "bridge blast"; @@ -6498,28 +6565,6 @@ }, /turf/open/floor/iron/white, /area/station/science/research) -"cqd" = ( -/obj/structure/rack, -/obj/item/clothing/under/rank/prisoner, -/obj/item/clothing/under/rank/prisoner, -/obj/item/clothing/under/rank/prisoner, -/obj/item/clothing/under/rank/prisoner, -/obj/item/clothing/under/rank/prisoner, -/obj/item/clothing/shoes/sneakers/orange, -/obj/item/clothing/shoes/sneakers/orange, -/obj/item/clothing/shoes/sneakers/orange, -/obj/item/clothing/shoes/sneakers/orange, -/obj/item/clothing/shoes/sneakers/orange, -/obj/item/restraints/handcuffs, -/obj/item/restraints/handcuffs, -/obj/item/restraints/handcuffs, -/obj/item/restraints/handcuffs, -/obj/item/restraints/handcuffs, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/directional/south, -/turf/open/floor/iron, -/area/station/security/holding_cell) "cqk" = ( /obj/structure/cable, /turf/open/floor/plating/airless, @@ -6738,23 +6783,6 @@ /obj/structure/disposalpipe/segment, /turf/closed/wall, /area/station/maintenance/port/fore) -"cui" = ( -/obj/item/folder/red, -/obj/item/pen, -/obj/structure/table/glass, -/obj/effect/turf_decal/trimline/blue/filled/line{ - dir = 10 - }, -/obj/item/folder/white{ - pixel_x = -4; - pixel_y = 2 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/iron/white, -/area/station/security/execution/transfer) "cuk" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 @@ -6805,7 +6833,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 }, -/obj/structure/cable, /obj/machinery/light/directional/west, /turf/open/floor/iron/dark, /area/station/security/lockers) @@ -7091,11 +7118,6 @@ "cxz" = ( /turf/closed/wall, /area/station/science/ordnance/bomb) -"cxC" = ( -/obj/machinery/firealarm/directional/west, -/obj/effect/decal/cleanable/cobweb, -/turf/open/floor/wood, -/area/station/service/library) "cxU" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -7135,11 +7157,6 @@ dir = 4 }, /area/station/science/lobby) -"cyM" = ( -/obj/machinery/firealarm/directional/west, -/obj/effect/turf_decal/tile/green/fourcorners, -/turf/open/floor/iron, -/area/station/hallway/primary/central) "cyS" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -7185,7 +7202,7 @@ /obj/effect/turf_decal/tile/neutral/half/contrasted, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "czG" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -7249,6 +7266,16 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible, /turf/closed/wall/r_wall, /area/station/engineering/supermatter) +"cAr" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/light/no_nightlight/directional/north, +/obj/structure/sign/warning/radiation/directional/north, +/turf/open/floor/iron, +/area/station/engineering/atmos) "cAG" = ( /obj/effect/turf_decal/tile/green/opposingcorners{ dir = 1 @@ -7287,18 +7314,6 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/commons/locker) -"cBH" = ( -/obj/structure/table/reinforced, -/obj/item/defibrillator/loaded{ - pixel_y = 6 - }, -/obj/item/defibrillator/loaded{ - pixel_y = 3 - }, -/obj/item/defibrillator/loaded, -/obj/structure/window/spawner/directional/west, -/turf/open/floor/iron/dark, -/area/station/medical/storage) "cBV" = ( /obj/machinery/mech_bay_recharge_port{ dir = 8 @@ -7346,7 +7361,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "cCR" = ( /obj/item/radio/intercom/directional/east, /obj/structure/kitchenspike, @@ -7490,11 +7505,7 @@ }, /obj/effect/spawner/round_default_module, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) -"cFu" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, -/area/station/engineering/supermatter/room) +/area/station/ai/upload/chamber) "cGj" = ( /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -7516,6 +7527,7 @@ "cGv" = ( /obj/machinery/light/small/directional/west, /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden/layer4, +/obj/structure/sign/warning/vacuum/external/directional/west, /turf/open/floor/iron, /area/station/cargo/miningoffice) "cGG" = ( @@ -7553,7 +7565,7 @@ "cHf" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, @@ -7978,14 +7990,6 @@ /obj/item/pai_card, /turf/open/floor/iron, /area/station/commons/locker) -"cOP" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/machinery/light/directional/west, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/iron, -/area/station/hallway/primary/central) "cOQ" = ( /turf/open/floor/iron/white, /area/station/science/research) @@ -8065,7 +8069,7 @@ /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "cRq" = ( /obj/effect/turf_decal/stripes/line{ dir = 6 @@ -8073,15 +8077,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, /turf/open/floor/engine, /area/station/engineering/supermatter/room) -"cRw" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/iron, -/area/station/hallway/primary/aft) "cRU" = ( /obj/structure/bed, /obj/item/bedsheet/captain, @@ -8189,7 +8184,7 @@ /obj/effect/spawner/random/armory/bulletproof_armor, /obj/structure/rack, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "cTC" = ( /obj/structure/chair, /obj/effect/landmark/start/assistant, @@ -8210,6 +8205,15 @@ }, /turf/open/floor/wood, /area/station/security/office) +"cUq" = ( +/obj/machinery/light/small/directional/west, +/obj/structure/cable, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron, +/area/station/commons/dorms) "cUt" = ( /obj/effect/turf_decal/stripes/line, /obj/effect/decal/cleanable/dirt/dust, @@ -8239,8 +8243,9 @@ network = list("minisat") }, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/warning/vacuum/external/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "cUP" = ( /obj/effect/spawner/random/structure/closet_private, /obj/item/clothing/under/misc/assistantformal, @@ -8519,7 +8524,7 @@ /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "cZm" = ( /obj/effect/turf_decal/tile/green/opposingcorners{ dir = 1 @@ -8693,7 +8698,7 @@ "ddc" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "ddl" = ( /obj/structure/table, /obj/item/stack/sheet/iron/fifty, @@ -8860,7 +8865,7 @@ /obj/effect/turf_decal/bot_white, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "dfp" = ( /obj/effect/turf_decal/tile/bar/opposingcorners, /turf/open/floor/iron, @@ -9032,7 +9037,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "dhC" = ( /obj/structure/cable, /obj/effect/turf_decal/trimline/brown/filled/line, @@ -9128,6 +9133,14 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/central) +"diI" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/sign/warning/secure_area/directional/northeast, +/turf/open/floor/plating, +/area/station/maintenance/port/fore) "diJ" = ( /obj/effect/turf_decal/tile/yellow/half/contrasted, /obj/machinery/light/floor, @@ -9142,6 +9155,20 @@ /obj/structure/sign/warning/electric_shock/directional/south, /turf/open/space/basic, /area/space/nearstation) +"djk" = ( +/obj/item/clothing/suit/hazardvest, +/obj/item/clothing/suit/hazardvest, +/obj/item/tank/internals/emergency_oxygen/engi, +/obj/item/tank/internals/emergency_oxygen/engi, +/obj/effect/turf_decal/delivery, +/obj/structure/table, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/light/directional/east, +/obj/structure/sign/warning/secure_area/directional/east, +/turf/open/floor/iron, +/area/station/engineering/main) "djn" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -9225,6 +9252,16 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/engineering/break_room) +"dlf" = ( +/obj/structure/cable, +/obj/structure/bed/dogbed/mcgriff, +/obj/machinery/power/apc/auto_name/directional/north, +/obj/effect/turf_decal/trimline/dark_red/filled/line{ + dir = 9 + }, +/mob/living/basic/pet/dog/pug/mcgriff, +/turf/open/floor/iron, +/area/station/security/warden) "dlr" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/broken_floor, @@ -9352,15 +9389,7 @@ /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) -"doM" = ( -/obj/item/radio/intercom/directional/north, -/obj/machinery/firealarm/directional/west, -/obj/machinery/light/small/directional/north, -/obj/structure/rack, -/obj/item/storage/toolbox/electrical, -/turf/open/floor/iron/white, -/area/station/science/explab) +/area/station/ai/satellite/exterior) "dpg" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, @@ -9456,7 +9485,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/landmark/firealarm_sanity, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "dqo" = ( /obj/machinery/conveyor{ dir = 1; @@ -9493,7 +9522,7 @@ /obj/machinery/computer/security/telescreen/minisat/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "dqE" = ( /obj/structure/closet/toolcloset, /obj/effect/turf_decal/bot, @@ -9675,6 +9704,14 @@ }, /turf/open/floor/iron, /area/station/engineering/atmos) +"dtE" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/machinery/light/directional/west, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron, +/area/station/hallway/primary/central) "dtY" = ( /obj/machinery/meter/monitored/waste_loop, /obj/machinery/atmospherics/pipe/smart/manifold/scrubbers/visible{ @@ -10385,7 +10422,8 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/sign/map/meta/left{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron, /area/station/hallway/secondary/entry) @@ -10468,9 +10506,11 @@ /turf/open/floor/iron/dark, /area/station/command/bridge) "dKl" = ( -/obj/structure/sign/warning/pods, -/turf/closed/wall/r_wall, -/area/station/maintenance/department/engine) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/sign/warning/pods/directional/east, +/turf/open/floor/iron, +/area/station/security/brig) "dKm" = ( /obj/effect/turf_decal/trimline/blue/filled/line, /turf/open/floor/iron/white, @@ -10491,7 +10531,7 @@ }, /obj/machinery/status_display/ai/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "dKY" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -10569,7 +10609,7 @@ dir = 10 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "dLJ" = ( /obj/machinery/requests_console/directional/south{ department = "Mining"; @@ -10698,13 +10738,9 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/departments/vault/directional/north{ - pixel_x = 32 - }, /obj/effect/turf_decal/tile/neutral/fourcorners, -/obj/effect/landmark/firealarm_sanity, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "dOs" = ( /obj/structure/sign/warning/no_smoking, /turf/closed/wall/r_wall, @@ -10806,7 +10842,7 @@ "dPV" = ( /obj/machinery/porta_turret/ai, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "dPY" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -10984,7 +11020,7 @@ /obj/effect/turf_decal/tile/blue/anticorner/contrasted, /obj/effect/spawner/random/armory/riot_shield, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "dRY" = ( /obj/structure/chair/office, /obj/effect/landmark/start/hangover, @@ -11072,12 +11108,12 @@ /obj/effect/mapping_helpers/airlock/access/any/command/minisat, /obj/effect/mapping_helpers/airlock/access/any/engineering/tcoms, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "dTr" = ( /obj/structure/cable, /obj/effect/spawner/random/engineering/tracking_beacon, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "dTv" = ( /obj/structure/closet/secure_closet/personal, /obj/item/clothing/under/misc/assistantformal, @@ -11085,7 +11121,8 @@ /obj/item/clothing/shoes/winterboots, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/structure/sign/map/meta/right{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron/dark, /area/station/commons/locker) @@ -11241,7 +11278,7 @@ /obj/structure/table/wood/fancy/green, /obj/effect/spawner/random/aimodule/harmless, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "dWg" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, @@ -11292,7 +11329,7 @@ /obj/effect/mapping_helpers/airlock/abandoned, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -11329,7 +11366,7 @@ name = "armory safe A" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "dXH" = ( /obj/structure/chair, /obj/effect/landmark/start/assistant, @@ -11365,7 +11402,7 @@ /obj/machinery/suit_storage_unit/standard_unit, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "dYg" = ( /obj/machinery/status_display/evac/directional/west, /obj/machinery/camera/directional/west{ @@ -11476,11 +11513,11 @@ /obj/item/radio/intercom/directional/north, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "eax" = ( -/obj/structure/sign/poster/official/random/directional/south, /obj/machinery/light/small/directional/west, /obj/machinery/duct, +/obj/structure/sign/poster/official/random/directional/west, /turf/open/floor/plating, /area/station/commons/toilet/auxiliary) "eaA" = ( @@ -11523,11 +11560,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/security/brig) -"eaQ" = ( -/obj/structure/cable, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/iron, -/area/station/construction/storage_wing) "ebd" = ( /obj/effect/turf_decal/trimline/brown/warning{ dir = 8 @@ -11670,15 +11702,6 @@ /obj/docking_port/stationary/escape_pod, /turf/open/space/basic, /area/space) -"edq" = ( -/obj/machinery/light/small/directional/west, -/obj/structure/cable, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/iron, -/area/station/commons/dorms) "edr" = ( /obj/item/flashlight/flare/candle{ pixel_x = 1; @@ -11753,29 +11776,6 @@ /obj/machinery/duct, /turf/open/floor/iron/freezer, /area/station/commons/toilet/restrooms) -"eey" = ( -/obj/machinery/firealarm/directional/west, -/obj/structure/rack, -/obj/item/storage/briefcase{ - pixel_x = -3; - pixel_y = 2 - }, -/obj/item/storage/briefcase/secure{ - pixel_x = 2; - pixel_y = -2 - }, -/turf/open/floor/iron/grimy, -/area/station/security/detectives_office) -"eeT" = ( -/obj/machinery/vending/hydroseeds{ - slogan_delay = 700 - }, -/obj/effect/turf_decal/trimline/green/filled/line{ - dir = 1 - }, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/iron, -/area/station/hallway/primary/central) "efa" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron, @@ -12241,13 +12241,13 @@ /turf/open/floor/iron, /area/station/hallway/primary/fore) "elm" = ( -/obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /obj/structure/sign/warning/electric_shock, /obj/machinery/door/poddoor/preopen{ id = "xenobio8"; name = "Xenobio Pen 8 Blast Door" }, +/obj/effect/spawner/structure/window/reinforced, /turf/open/floor/engine, /area/station/science/xenobiology) "eln" = ( @@ -12631,7 +12631,7 @@ /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "erS" = ( /obj/structure/table/wood, /obj/item/camera_film{ @@ -12645,7 +12645,6 @@ /turf/open/floor/wood, /area/station/service/library) "erU" = ( -/obj/machinery/light/directional/south, /obj/effect/turf_decal/tile/brown/anticorner/contrasted{ dir = 8 }, @@ -12653,6 +12652,7 @@ dir = 1 }, /obj/effect/landmark/start/assistant, +/obj/machinery/light/directional/west, /turf/open/floor/iron, /area/station/cargo/lobby) "esd" = ( @@ -12801,7 +12801,7 @@ /obj/machinery/light_switch/directional/north, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "euo" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 @@ -12831,25 +12831,6 @@ "eut" = ( /turf/closed/wall, /area/station/science/robotics/lab) -"euw" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 4 - }, -/obj/structure/table/reinforced, -/obj/machinery/cell_charger, -/obj/item/stock_parts/power_store/cell/high, -/obj/machinery/firealarm/directional/west, -/obj/machinery/camera/directional/north{ - c_tag = "Science Mechbay"; - network = list("ss13","rd") - }, -/obj/machinery/button/door/directional/north{ - id = "mechbay"; - name = "Mech Bay Shutters Control"; - req_access = list("robotics") - }, -/turf/open/floor/iron, -/area/station/science/robotics/mechbay) "euQ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -12861,16 +12842,19 @@ /turf/open/floor/iron/white, /area/station/science/research) "euT" = ( -/obj/structure/lattice/catwalk, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, -/turf/open/space/basic, -/area/space/nearstation) +/obj/structure/secure_safe/hos, +/turf/closed/wall/r_wall, +/area/station/command/heads_quarters/hos) "euX" = ( /obj/effect/landmark/event_spawn, /turf/open/floor/iron/white, /area/station/security/medical) +"eve" = ( +/obj/machinery/firealarm/directional/west, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/duct, +/turf/open/floor/iron/freezer, +/area/station/commons/toilet/restrooms) "evf" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -12911,12 +12895,6 @@ }, /turf/open/floor/iron/white, /area/station/science/ordnance/testlab) -"evI" = ( -/obj/machinery/computer/teleporter, -/obj/machinery/firealarm/directional/west, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) "evY" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 @@ -12980,7 +12958,7 @@ "ewC" = ( /obj/machinery/camera{ c_tag = "Warden's Office"; - dir = 10 + dir = 8 }, /obj/structure/table, /obj/machinery/button/door{ @@ -13121,7 +13099,7 @@ name = "Research Division Access" }, /obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "sci-entrance" }, @@ -13183,18 +13161,15 @@ /obj/item/flashlight/lamp, /turf/open/floor/iron/grimy, /area/station/tcommsat/computer) -"eBU" = ( -/obj/machinery/light/directional/west, -/obj/effect/turf_decal/stripes/line{ - dir = 1 +"eBW" = ( +/obj/structure/table/reinforced, +/obj/item/paper_bin{ + pixel_x = -3; + pixel_y = 7 }, -/obj/effect/turf_decal/stripes/line, /obj/machinery/firealarm/directional/west, -/obj/effect/turf_decal/siding/purple{ - dir = 8 - }, -/turf/open/floor/iron/white, -/area/station/science/ordnance/storage) +/turf/open/floor/iron/dark, +/area/station/ai/satellite/chamber) "eBY" = ( /obj/effect/turf_decal/tile/bar, /obj/effect/turf_decal/tile/neutral{ @@ -13354,7 +13329,7 @@ /obj/machinery/door/airlock/maintenance, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/command/maintenance, @@ -13408,7 +13383,7 @@ }, /obj/machinery/light/small/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "eGd" = ( /obj/machinery/door/window/left/directional/north{ name = "MiniSat Walkway Access" @@ -13418,7 +13393,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "eGg" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/stripes/line{ @@ -13616,7 +13591,7 @@ /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -13718,7 +13693,7 @@ /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "eLv" = ( /obj/machinery/door/firedoor, /obj/structure/disposalpipe/segment{ @@ -13869,7 +13844,7 @@ "eNh" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "eNk" = ( /obj/machinery/door/airlock/maintenance{ name = "Medbay Maintenance" @@ -13885,7 +13860,7 @@ /area/station/medical/morgue) "eNR" = ( /turf/closed/wall, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "eNV" = ( /obj/effect/turf_decal/delivery, /obj/effect/spawner/random/structure/crate, @@ -14002,9 +13977,6 @@ id_tag = "MedbayFoyer"; name = "Medbay" }, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment{ @@ -14012,6 +13984,9 @@ }, /obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/effect/turf_decal/tile/blue/fourcorners, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 8 + }, /turf/open/floor/iron/white, /area/station/medical/medbay/central) "eQe" = ( @@ -14026,7 +14001,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "eQr" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -14285,14 +14260,6 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/plating, /area/station/maintenance/port/fore) -"eVX" = ( -/obj/machinery/firealarm/directional/west, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, -/obj/item/radio/intercom/directional/south, -/turf/open/floor/carpet, -/area/station/command/heads_quarters/captain/private) "eWn" = ( /obj/effect/landmark/generic_maintenance_landmark, /turf/open/floor/plating, @@ -14368,6 +14335,18 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) +"eXh" = ( +/obj/structure/rack, +/obj/machinery/firealarm/directional/west, +/obj/item/clothing/gloves/color/fyellow, +/obj/item/clothing/suit/hazardvest, +/obj/item/multitool, +/obj/effect/spawner/random/maintenance, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/commons/storage/tools) "eXj" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -14691,23 +14670,6 @@ "fcq" = ( /turf/closed/wall, /area/station/maintenance/port/greater) -"fcA" = ( -/obj/machinery/portable_atmospherics/scrubber, -/obj/machinery/atmospherics/components/unary/portables_connector/visible{ - dir = 4 - }, -/obj/effect/turf_decal/bot, -/obj/structure/sign/warning/secure_area/directional/west{ - pixel_y = -32 - }, -/obj/effect/turf_decal/tile/red/opposingcorners{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/obj/effect/turf_decal/tile/yellow/opposingcorners, -/obj/structure/window/reinforced/spawner/directional/south, -/turf/open/floor/iron, -/area/station/hallway/primary/starboard) "fcJ" = ( /obj/structure/lattice, /obj/item/shard, @@ -14741,7 +14703,7 @@ /obj/effect/mapping_helpers/airlock/abandoned, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden/layer5, /turf/open/floor/plating, @@ -14759,7 +14721,7 @@ name = "Security Requests Console" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "fdX" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -14903,10 +14865,6 @@ /obj/effect/turf_decal/delivery, /obj/structure/cable, /obj/effect/landmark/start/hangover, -/obj/machinery/flasher/directional/east{ - id = "hopflash"; - pixel_y = -26 - }, /turf/open/floor/iron, /area/station/hallway/secondary/command) "fgY" = ( @@ -15034,6 +14992,14 @@ }, /turf/open/floor/iron/white, /area/station/medical/storage) +"fiu" = ( +/obj/structure/chair, +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/structure/sign/warning/directional/northwest, +/turf/open/floor/plating/airless, +/area/station/science/ordnance/bomb) "fix" = ( /obj/structure/chair{ dir = 1 @@ -15449,7 +15415,7 @@ }, /obj/effect/spawner/random/armory/e_gun, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "fnT" = ( /obj/structure/table, /obj/item/crowbar/red, @@ -15508,7 +15474,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/window/reinforced/spawner/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "fpi" = ( /obj/machinery/door/window/right/directional/south{ name = "First Aid Supplies"; @@ -15649,7 +15615,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "frw" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/cobweb/cobweb2, @@ -15745,10 +15711,6 @@ /obj/machinery/vending/autodrobe, /turf/open/floor/plating, /area/station/maintenance/port) -"ftM" = ( -/obj/structure/sign/warning/pods, -/turf/closed/wall, -/area/station/commons/locker) "fuc" = ( /obj/structure/frame/machine{ anchored = 1 @@ -15947,7 +15909,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "fzl" = ( /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating/airless, @@ -16046,7 +16008,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/structure/window/spawner/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "fBz" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -16085,6 +16047,13 @@ /obj/effect/turf_decal/tile/green/fourcorners, /turf/open/floor/iron, /area/station/hallway/primary/central) +"fDb" = ( +/obj/machinery/firealarm/directional/west, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/hallway/primary/central) "fDc" = ( /obj/machinery/door/firedoor, /obj/structure/disposalpipe/segment{ @@ -16108,9 +16077,6 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/firealarm/directional/east{ - pixel_y = -26 - }, /turf/open/floor/iron, /area/station/security/brig) "fDC" = ( @@ -16142,7 +16108,7 @@ }, /obj/machinery/door/firedoor, /obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/structure/cable, @@ -16176,7 +16142,7 @@ "fEO" = ( /obj/structure/cable, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "fEW" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -16236,7 +16202,7 @@ /obj/effect/mapping_helpers/airlock/abandoned, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/port) @@ -16452,7 +16418,7 @@ }, /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "fJy" = ( /turf/closed/wall/r_wall, /area/station/maintenance/department/engine) @@ -16634,17 +16600,6 @@ /obj/effect/landmark/start/depsec/supply, /turf/open/floor/iron/dark, /area/station/security/checkpoint/supply) -"fMN" = ( -/obj/machinery/firealarm/directional/west, -/obj/structure/disposalpipe/segment{ - dir = 6 - }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/station/command/heads_quarters/ce) "fMT" = ( /obj/structure/table, /obj/item/radio/intercom/directional/south, @@ -16655,7 +16610,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "fNa" = ( /obj/machinery/meter, /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, @@ -16668,17 +16623,6 @@ /obj/item/clothing/mask/whistle, /turf/open/floor/iron, /area/station/commons/fitness/recreation) -"fNh" = ( -/obj/machinery/door/poddoor/preopen{ - id = "Prison Gate"; - name = "Security Blast Door" - }, -/obj/effect/turf_decal/delivery, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden, -/turf/open/floor/iron, -/area/station/security/brig) "fNz" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/closet/crate, @@ -16754,7 +16698,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/machinery/atmospherics/pipe/layer_manifold/supply/hidden{ @@ -17264,7 +17208,7 @@ }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /obj/effect/mapping_helpers/airlock/access/any/service/library, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -17306,6 +17250,14 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/primary/starboard) +"gaO" = ( +/obj/structure/cable, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/structure/sign/warning/secure_area/directional/south, +/turf/open/floor/iron, +/area/station/hallway/secondary/command) "gaU" = ( /obj/machinery/button/door/directional/west{ id = "hop"; @@ -17399,7 +17351,7 @@ cycle_id = "sci-maint-passthrough" }, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, /area/station/science/research) "gcA" = ( @@ -17442,11 +17394,11 @@ /turf/open/floor/grass, /area/station/science/research) "gda" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, -/turf/open/space/basic, -/area/space/nearstation) +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable, +/obj/effect/landmark/firealarm_sanity, +/turf/open/floor/plating, +/area/station/command/vault) "gdb" = ( /turf/closed/wall/r_wall, /area/station/security/range) @@ -17491,7 +17443,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "geA" = ( /obj/item/folder/white{ pixel_x = 4; @@ -17548,7 +17500,7 @@ /area/station/command/heads_quarters/hos) "gfU" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "gfZ" = ( /obj/effect/turf_decal/trimline/purple/corner{ dir = 8 @@ -17570,14 +17522,6 @@ "ggj" = ( /turf/closed/wall, /area/station/security/evidence) -"ggq" = ( -/obj/structure/disposalpipe/segment, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/iron, -/area/station/hallway/primary/central) "ggH" = ( /obj/effect/spawner/random/structure/chair_maintenance, /turf/open/floor/iron/checker, @@ -17820,7 +17764,7 @@ "glV" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden/layer5, /turf/open/floor/plating, @@ -17845,7 +17789,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -17862,10 +17806,6 @@ /obj/effect/turf_decal/tile/neutral, /turf/open/floor/iron, /area/station/hallway/primary/aft) -"gmH" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, -/area/station/command/bridge) "gmI" = ( /obj/structure/extinguisher_cabinet/directional/south, /obj/structure/disposalpipe/segment{ @@ -18027,7 +17967,7 @@ }, /obj/machinery/firealarm/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "goF" = ( /obj/machinery/atmospherics/pipe/layer_manifold/cyan/hidden{ dir = 8 @@ -18122,7 +18062,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "gqI" = ( /obj/structure/cable, /obj/effect/spawner/structure/window/reinforced, @@ -18176,25 +18116,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/central) -"grm" = ( -/obj/machinery/atmospherics/components/unary/thermomachine/freezer{ - dir = 4 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/iron/dark, -/area/station/medical/cryo) -"grw" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 10 - }, -/turf/open/floor/plating/airless, -/area/station/science/ordnance/bomb) "grZ" = ( /obj/structure/chair, /obj/machinery/camera/directional/north{ @@ -18402,7 +18323,8 @@ /obj/machinery/button/flasher{ id = "visitorflash"; pixel_x = -6; - pixel_y = 24 + pixel_y = 24; + dir = 1 }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /obj/machinery/button/door/directional/north{ @@ -18465,7 +18387,7 @@ /area/station/security/medical) "gvG" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) @@ -18491,6 +18413,11 @@ "gwf" = ( /turf/open/floor/glass/reinforced, /area/station/science/research) +"gwG" = ( +/obj/machinery/teleport/station, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/plating, +/area/station/command/teleporter) "gwK" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -18646,6 +18573,14 @@ "gyQ" = ( /turf/closed/wall/r_wall, /area/station/science/ordnance) +"gyW" = ( +/obj/structure/disposalpipe/segment, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron, +/area/station/hallway/primary/central) "gzi" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -18663,12 +18598,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/port/aft) -"gzO" = ( -/obj/machinery/firealarm/directional/west, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/duct, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/restrooms) "gzW" = ( /obj/structure/chair/office{ dir = 8 @@ -18798,7 +18727,7 @@ /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "gCA" = ( /obj/effect/spawner/structure/window/reinforced/tinted, /turf/open/floor/iron/dark, @@ -18841,6 +18770,14 @@ /obj/machinery/power/apc/auto_name/directional/west, /turf/open/floor/wood, /area/station/commons/vacant_room/office) +"gDe" = ( +/obj/structure/chair, +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/structure/sign/warning/directional/northeast, +/turf/open/floor/plating/airless, +/area/station/science/ordnance/bomb) "gDh" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -18939,7 +18876,7 @@ /obj/structure/cable/multilayer/connected, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "gEx" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt, @@ -18948,7 +18885,7 @@ "gEG" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -19136,7 +19073,20 @@ /obj/effect/spawner/random/armory/shotgun, /obj/machinery/light/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) +"gHD" = ( +/obj/machinery/firealarm/directional/west, +/obj/structure/rack, +/obj/item/storage/briefcase{ + pixel_x = -3; + pixel_y = 2 + }, +/obj/item/storage/briefcase/secure{ + pixel_x = 2; + pixel_y = -2 + }, +/turf/open/floor/iron/grimy, +/area/station/security/detectives_office) "gHE" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -19251,6 +19201,14 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/station/maintenance/starboard/greater) +"gJh" = ( +/obj/effect/turf_decal/stripes/corner{ + dir = 1 + }, +/obj/machinery/light/directional/north, +/obj/structure/sign/warning/secure_area/directional/north, +/turf/open/floor/iron, +/area/station/hallway/primary/central) "gJi" = ( /obj/machinery/door/poddoor/shutters/preopen{ dir = 4; @@ -19342,17 +19300,6 @@ /obj/effect/turf_decal/tile/neutral, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"gKD" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/machinery/camera/directional/west{ - c_tag = "Xenobiology Lab - Central East"; - network = list("ss13","rd","xeno") - }, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/iron/white, -/area/station/science/xenobiology) "gKH" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -19560,7 +19507,7 @@ }, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "gNR" = ( /obj/structure/girder, /obj/effect/spawner/random/structure/grille, @@ -19610,7 +19557,7 @@ /obj/machinery/holopad, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "gOy" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible, @@ -19761,7 +19708,7 @@ /obj/machinery/door/airlock/maintenance, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, @@ -19775,12 +19722,6 @@ /obj/machinery/rnd/server/master, /turf/open/floor/circuit/telecomms/server, /area/station/science/server) -"gSW" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/iron, -/area/station/hallway/primary/aft) "gTh" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -20076,7 +20017,7 @@ /obj/structure/cable, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, @@ -20324,6 +20265,16 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron, /area/station/engineering/main) +"hcg" = ( +/obj/machinery/vending/hydroseeds{ + slogan_delay = 700 + }, +/obj/effect/turf_decal/trimline/green/filled/line{ + dir = 1 + }, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron, +/area/station/hallway/primary/central) "hcl" = ( /obj/item/target, /obj/effect/turf_decal/stripes/line{ @@ -20434,13 +20385,13 @@ /turf/closed/wall, /area/station/engineering/atmos/pumproom) "hdy" = ( -/obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/preopen{ id = "Xenolab"; name = "Test Chamber Blast Door" }, /obj/structure/cable, /obj/structure/sign/warning/electric_shock, +/obj/effect/spawner/structure/window/reinforced, /turf/open/floor/engine, /area/station/science/xenobiology) "hdI" = ( @@ -20475,7 +20426,7 @@ /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "heE" = ( /obj/structure/table/wood, /obj/effect/spawner/random/decoration/ornament, @@ -20629,6 +20580,16 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/engineering/storage/tech) +"hhE" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/structure/sign/warning/secure_area/directional/north, +/turf/open/floor/iron, +/area/station/hallway/primary/central) "hhN" = ( /obj/machinery/vending/cigarette, /obj/effect/turf_decal/tile/bar/opposingcorners, @@ -20862,7 +20823,8 @@ /area/station/hallway/secondary/exit/departure_lounge) "hlu" = ( /obj/structure/sign/painting/library{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/wood, /area/station/service/library) @@ -20891,7 +20853,7 @@ }, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "hlD" = ( /turf/open/floor/carpet, /area/station/command/heads_quarters/captain/private) @@ -20931,7 +20893,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable/multilayer/connected, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "hmo" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/trimline/blue/filled/line{ @@ -21030,7 +20992,8 @@ dir = 1 }, /obj/structure/sign/map/meta/left{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron, /area/station/hallway/primary/central) @@ -21335,10 +21298,6 @@ }, /turf/open/floor/iron/dark, /area/station/command/heads_quarters/rd) -"hux" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, -/area/station/command/teleporter) "huy" = ( /obj/structure/disposalpipe/segment{ dir = 9 @@ -21528,7 +21487,8 @@ /obj/item/clothing/shoes/winterboots, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/structure/sign/map/meta/left{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron/dark, /area/station/commons/locker) @@ -21559,15 +21519,9 @@ /obj/effect/turf_decal/tile/blue{ dir = 4 }, +/obj/structure/sign/warning/pods/directional/east, /turf/open/floor/iron/white/corner, /area/station/hallway/secondary/entry) -"hxV" = ( -/obj/structure/chair, -/obj/effect/turf_decal/stripes/line{ - dir = 9 - }, -/turf/open/floor/plating/airless, -/area/station/science/ordnance/bomb) "hxW" = ( /obj/machinery/door/window/right/directional/north{ name = "Gas Ports" @@ -21632,10 +21586,6 @@ /obj/machinery/duct, /turf/open/floor/plating, /area/station/maintenance/port) -"hyN" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, -/area/station/ai_monitored/command/storage/eva) "hyT" = ( /obj/structure/closet/emcloset, /obj/effect/turf_decal/bot, @@ -21655,10 +21605,6 @@ /turf/open/floor/iron, /area/station/service/bar) "hyZ" = ( -/obj/machinery/flasher/directional/east{ - id = "AI"; - pixel_y = 26 - }, /obj/machinery/holopad/secure, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/door/window/brigdoor/right/directional/east{ @@ -21667,7 +21613,7 @@ pixel_x = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "hza" = ( /obj/vehicle/sealed/mecha/ripley/paddy/preset, /turf/open/floor/iron/recharge_floor, @@ -21687,7 +21633,7 @@ /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "hzw" = ( /obj/machinery/power/apc/auto_name/directional/east, /obj/structure/cable, @@ -21733,7 +21679,7 @@ }, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "hAL" = ( /obj/machinery/door/poddoor/shutters{ dir = 4; @@ -21755,7 +21701,7 @@ /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "hBo" = ( /mob/living/simple_animal/bot/mulebot, /obj/structure/cable, @@ -21787,7 +21733,7 @@ /turf/open/floor/plating, /area/station/maintenance/starboard/greater) "hBB" = ( -/obj/machinery/computer/rdconsole{ +/obj/machinery/computer/rdconsole/unlocked{ dir = 8 }, /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -21983,21 +21929,11 @@ dir = 4 }, /obj/structure/sign/map/meta/right{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron, /area/station/hallway/secondary/entry) -"hEV" = ( -/obj/effect/decal/cleanable/garbage, -/obj/structure/disposalpipe/segment{ - dir = 9 - }, -/turf/open/floor/iron/white, -/area/station/science/research) -"hEX" = ( -/obj/structure/closet/secure_closet/atmospherics, -/turf/open/floor/iron/dark, -/area/station/engineering/atmospherics_engine) "hFz" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -22246,7 +22182,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "hLB" = ( /obj/structure/rack, /obj/item/crowbar/red, @@ -22267,6 +22203,7 @@ /obj/effect/turf_decal/tile/purple/half/contrasted{ dir = 8 }, +/obj/machinery/newscaster/directional/south, /turf/open/floor/iron/white, /area/station/science/cytology) "hLZ" = ( @@ -22297,7 +22234,7 @@ }, /obj/effect/mapping_helpers/airlock/abandoned, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/construction, @@ -22360,7 +22297,7 @@ /obj/effect/mapping_helpers/airlock/access/any/command/eva, /obj/effect/mapping_helpers/airlock/red_alert_access, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "hNn" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/light/floor, @@ -22740,12 +22677,6 @@ /obj/effect/mapping_helpers/airlock/access/all/engineering/general, /turf/open/floor/iron, /area/station/engineering/gravity_generator) -"hUd" = ( -/obj/structure/closet/l3closet/scientist, -/obj/effect/turf_decal/stripes/line, -/obj/machinery/light/directional/south, -/turf/open/floor/iron/white, -/area/station/science/xenobiology/hallway) "hUn" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -22827,6 +22758,11 @@ /obj/effect/landmark/navigate_destination, /turf/open/floor/iron/white, /area/station/medical/virology) +"hVQ" = ( +/obj/machinery/firealarm/directional/west, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/security/courtroom) "hVY" = ( /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -23036,6 +22972,17 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"hYH" = ( +/obj/structure/reagent_dispensers/watertank, +/obj/machinery/firealarm/directional/west, +/obj/machinery/light_switch/directional/west{ + pixel_x = -38 + }, +/obj/effect/turf_decal/bot{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/engineering/main) "hZg" = ( /obj/structure/closet/crate, /obj/machinery/power/apc/auto_name/directional/west, @@ -23281,9 +23228,9 @@ /turf/open/floor/plating, /area/station/commons/fitness/recreation) "idA" = ( -/obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /obj/structure/sign/warning/electric_shock, +/obj/effect/spawner/structure/window/reinforced, /turf/open/floor/engine, /area/station/science/xenobiology) "idL" = ( @@ -23680,7 +23627,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/all/command/minisat, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "ikO" = ( /obj/machinery/newscaster/directional/north, /obj/structure/table/glass, @@ -24033,7 +23980,7 @@ /obj/machinery/recharge_station, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "iqc" = ( /obj/structure/reflector/single/anchored{ dir = 9 @@ -24181,7 +24128,7 @@ dir = 4 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "isr" = ( /obj/effect/spawner/structure/window/reinforced/plasma, /obj/machinery/door/poddoor/shutters/radiation/preopen{ @@ -24468,7 +24415,7 @@ }, /obj/machinery/light/small/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "ixA" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -24497,7 +24444,7 @@ /obj/structure/closet/crate/silvercrate, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "ixY" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -24552,7 +24499,7 @@ /obj/machinery/door/airlock/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /turf/open/floor/plating, /area/station/commons/fitness/recreation) @@ -24813,7 +24760,7 @@ /obj/effect/spawner/random/armory/riot_helmet, /obj/effect/spawner/random/armory/bulletproof_helmet, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "iCx" = ( /obj/machinery/atmospherics/components/tank/air/layer4{ dir = 1 @@ -24830,7 +24777,7 @@ "iCV" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "iDe" = ( /obj/structure/table, /obj/item/reagent_containers/cup/glass/drinkingglass, @@ -25048,14 +24995,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, /turf/open/floor/iron/dark, /area/station/engineering/supermatter/room) -"iHu" = ( -/obj/machinery/firealarm/directional/west, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/main) "iHv" = ( /obj/effect/spawner/random/trash/grille_or_waste, /turf/open/floor/plating, @@ -25126,7 +25065,7 @@ "iIQ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "iIW" = ( /obj/structure/bookcase/random, /turf/open/floor/plating/airless, @@ -25430,6 +25369,11 @@ /obj/item/radio/intercom/directional/south, /turf/open/floor/wood/parquet, /area/station/medical/psychology) +"iNy" = ( +/obj/structure/cable, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/security/brig) "iNB" = ( /obj/machinery/firealarm/directional/east, /obj/structure/table/glass, @@ -25649,14 +25593,12 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "iQy" = ( -/obj/structure/sign/warning/pods{ - pixel_x = 30 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral, +/obj/structure/sign/warning/pods/directional/east, /turf/open/floor/iron, /area/station/commons/dorms) "iQF" = ( @@ -25749,7 +25691,7 @@ /obj/effect/mapping_helpers/airlock/access/any/command/minisat, /obj/effect/mapping_helpers/airlock/access/any/engineering/tcoms, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "iSd" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/duct, @@ -25767,7 +25709,8 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/sign/map/meta/right{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron, /area/station/hallway/primary/port) @@ -25858,7 +25801,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "iUm" = ( /turf/closed/wall, /area/station/hallway/secondary/exit/departure_lounge) @@ -26057,7 +26000,7 @@ name = "Commissary" }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -26085,15 +26028,6 @@ }, /turf/open/floor/iron/dark, /area/station/command/bridge) -"iYD" = ( -/obj/structure/chair{ - dir = 1 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 6 - }, -/turf/open/floor/plating/airless, -/area/station/science/ordnance/bomb) "iYE" = ( /obj/machinery/atmospherics/pipe/smart/simple/dark/visible, /obj/effect/turf_decal/siding/purple{ @@ -26177,8 +26111,9 @@ pixel_y = 4 }, /obj/item/storage/box/syringes, -/obj/item/gun/syringe, /obj/structure/window/spawner/directional/west, +/obj/item/gun/syringe, +/obj/item/gun/syringe, /turf/open/floor/iron/dark, /area/station/medical/storage) "iZC" = ( @@ -26321,8 +26256,9 @@ }, /obj/machinery/camera{ c_tag = "Xenobiology Lab - Central South"; - dir = 9; - network = list("ss13","rd","xeno") + dir = 1; + network = list("ss13","rd","xeno"); + pixel_x = 20 }, /obj/machinery/status_display/ai/directional/north, /turf/open/floor/iron/white, @@ -26350,7 +26286,7 @@ }, /obj/effect/spawner/random/armory/laser_gun, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "jcw" = ( /obj/machinery/atmospherics/components/tank, /turf/open/floor/iron/dark, @@ -26383,11 +26319,6 @@ /obj/machinery/duct, /turf/open/floor/iron/dark, /area/station/engineering/break_room) -"jcR" = ( -/obj/machinery/firealarm/directional/west, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/security/courtroom) "jdg" = ( /obj/structure/flora/bush/ferny/style_random, /obj/structure/flora/bush/fullgrass/style_random, @@ -26525,12 +26456,12 @@ name = "Primary Treatment Centre" }, /obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, /obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/effect/turf_decal/tile/blue/fourcorners, /obj/effect/landmark/navigate_destination, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 8 + }, /turf/open/floor/iron/white, /area/station/medical/treatment_center) "jfB" = ( @@ -26569,13 +26500,13 @@ /turf/open/floor/iron/white/smooth_large, /area/station/medical/treatment_center) "jfS" = ( -/obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /obj/structure/sign/warning/electric_shock, /obj/machinery/door/poddoor/preopen{ id = "xenobio1"; name = "Xenobio Pen 1 Blast Door" }, +/obj/effect/spawner/structure/window/reinforced, /turf/open/floor/engine, /area/station/science/xenobiology) "jfU" = ( @@ -26642,15 +26573,6 @@ /obj/effect/spawner/random/maintenance, /turf/open/floor/plating, /area/station/maintenance/aft/greater) -"jhc" = ( -/obj/machinery/firealarm/directional/west, -/obj/structure/table, -/obj/item/folder, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/turf/open/floor/iron, -/area/station/commons/locker) "jhd" = ( /obj/structure/cable, /turf/open/floor/plating/airless, @@ -26770,7 +26692,7 @@ "jjy" = ( /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "jjC" = ( /obj/structure/flora/bush/lavendergrass/style_random, /obj/item/food/grown/banana, @@ -26839,7 +26761,7 @@ }, /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "jkT" = ( /obj/effect/turf_decal/stripes/line{ dir = 6 @@ -26895,7 +26817,7 @@ "jln" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "jlJ" = ( /obj/effect/spawner/random/entertainment/arcade, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -27146,6 +27068,17 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) +"jpS" = ( +/obj/machinery/door/firedoor, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/structure/sign/warning/secure_area/directional/north, +/turf/open/floor/iron, +/area/station/hallway/primary/central) "jpU" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, @@ -27384,16 +27317,6 @@ }, /turf/open/floor/iron/dark, /area/station/engineering/atmos) -"juH" = ( -/obj/machinery/firealarm/directional/west{ - pixel_y = -9 - }, -/obj/effect/turf_decal/tile/purple/half/contrasted{ - dir = 8 - }, -/obj/machinery/vending/cytopro, -/turf/open/floor/iron/white, -/area/station/science/cytology) "juJ" = ( /obj/structure/chair/office{ dir = 8 @@ -27490,7 +27413,7 @@ /obj/structure/cable/layer3, /mob/living/simple_animal/bot/secbot/pingsky, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "jvQ" = ( /obj/machinery/door/window/left/directional/north{ name = "Petting Zoo" @@ -27739,6 +27662,14 @@ /obj/machinery/newscaster/directional/east, /turf/open/floor/carpet, /area/station/security/detectives_office) +"jyZ" = ( +/obj/machinery/firealarm/directional/west, +/obj/machinery/modular_computer/preset/engineering, +/obj/structure/cable, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/incident_display/delam/directional/north, +/turf/open/floor/iron/dark, +/area/station/engineering/main) "jzp" = ( /turf/closed/wall, /area/station/commons/vacant_room/office) @@ -27772,7 +27703,7 @@ "jAd" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/broken_floor, @@ -28014,10 +27945,6 @@ /area/station/maintenance/fore) "jEr" = ( /obj/machinery/holopad/secure, -/obj/machinery/flasher/directional/west{ - id = "AI"; - pixel_y = -26 - }, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/door/window/brigdoor/left/directional/west{ name = "Secondary AI Core Access"; @@ -28025,7 +27952,7 @@ pixel_x = -4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "jED" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -28109,15 +28036,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) -"jGa" = ( -/obj/structure/table/reinforced, -/obj/item/paper_bin{ - pixel_x = -3; - pixel_y = 7 - }, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) "jGb" = ( /obj/machinery/holopad, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -28189,6 +28107,32 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/hallway/primary/port) +"jGH" = ( +/obj/structure/table, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/obj/structure/cable, +/obj/item/pen/blue{ + pixel_x = 4; + pixel_y = -3 + }, +/obj/item/pen/fountain{ + pixel_x = 10 + }, +/obj/item/pen/red{ + pixel_x = 8; + pixel_y = 8 + }, +/obj/item/stamp/denied{ + pixel_y = -1 + }, +/obj/item/stamp/granted{ + pixel_x = -9; + pixel_y = -1 + }, +/turf/open/floor/catwalk_floor/iron, +/area/station/cargo/storage) "jGN" = ( /obj/machinery/computer/station_alert{ dir = 1 @@ -28198,7 +28142,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "jGO" = ( /obj/machinery/hydroponics/soil, /obj/item/cultivator, @@ -28231,6 +28175,16 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/chapel, /area/station/service/chapel) +"jHy" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 10 + }, +/obj/structure/sign/warning/directional/southwest, +/turf/open/floor/plating/airless, +/area/station/science/ordnance/bomb) "jHA" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -28244,7 +28198,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "jHM" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -28280,7 +28234,7 @@ /obj/item/radio/off, /obj/item/multitool, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "jIk" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -28351,7 +28305,8 @@ /obj/machinery/button/flasher{ id = "IsolationFlash"; pixel_x = -23; - pixel_y = 8 + pixel_y = 8; + dir = 8 }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -28511,6 +28466,11 @@ }, /turf/open/floor/iron/diagonal, /area/station/cargo/storage) +"jMg" = ( +/obj/structure/cable, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron, +/area/station/construction/storage_wing) "jMo" = ( /obj/structure/chair/stool/directional/north, /turf/open/floor/iron, @@ -28674,10 +28634,6 @@ /obj/machinery/camera/directional/south{ c_tag = "Starboard Primary Hallway - Engineering" }, -/obj/structure/sign/directions/engineering{ - dir = 4; - pixel_y = -24 - }, /obj/effect/turf_decal/tile/yellow{ dir = 8 }, @@ -28709,7 +28665,8 @@ dir = 1 }, /obj/structure/sign/map/meta/left{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron, /area/station/hallway/primary/port) @@ -28751,10 +28708,10 @@ "jQr" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/greater) "jQz" = ( @@ -28883,6 +28840,29 @@ /obj/machinery/light/small/directional/west, /turf/open/floor/grass, /area/station/security/prison/garden) +"jTk" = ( +/obj/structure/rack, +/obj/item/clothing/under/rank/prisoner, +/obj/item/clothing/under/rank/prisoner, +/obj/item/clothing/under/rank/prisoner, +/obj/item/clothing/under/rank/prisoner, +/obj/item/clothing/under/rank/prisoner, +/obj/item/clothing/shoes/sneakers/orange, +/obj/item/clothing/shoes/sneakers/orange, +/obj/item/clothing/shoes/sneakers/orange, +/obj/item/clothing/shoes/sneakers/orange, +/obj/item/clothing/shoes/sneakers/orange, +/obj/item/restraints/handcuffs, +/obj/item/restraints/handcuffs, +/obj/item/restraints/handcuffs, +/obj/item/restraints/handcuffs, +/obj/item/restraints/handcuffs, +/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt, +/obj/machinery/light/small/directional/south, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron, +/area/station/security/holding_cell) "jTl" = ( /obj/structure/disposaloutlet{ dir = 4 @@ -29012,21 +28992,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden, /turf/open/floor/iron/dark, /area/station/security/execution/education) -"jUT" = ( -/obj/structure/table, -/obj/effect/turf_decal/delivery, -/obj/item/clothing/glasses/meson, -/obj/item/clothing/glasses/meson, -/obj/item/clothing/glasses/meson, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/item/storage/belt/utility, -/obj/item/storage/belt/utility, -/obj/item/storage/belt/utility, -/obj/machinery/light/directional/east, -/turf/open/floor/iron, -/area/station/engineering/main) "jUW" = ( /obj/item/radio/intercom/directional/south, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -29071,7 +29036,7 @@ /obj/machinery/button/door/directional/north{ id = "rdordnance"; name = "Ordnance Containment Control"; - req_access = list("rd") + req_access = list("science") }, /turf/open/floor/iron/dark, /area/station/science/ordnance/storage) @@ -29144,7 +29109,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -29205,6 +29170,18 @@ /obj/effect/mapping_helpers/airalarm/surgery, /turf/open/floor/iron/white, /area/station/medical/surgery/aft) +"jYa" = ( +/obj/machinery/light/directional/west, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/firealarm/directional/west, +/obj/effect/turf_decal/siding/purple{ + dir = 8 + }, +/turf/open/floor/iron/white, +/area/station/science/ordnance/storage) "jYr" = ( /obj/effect/turf_decal/bot_white, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -29285,6 +29262,15 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/central) +"jZU" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron, +/area/station/hallway/primary/aft) "jZW" = ( /obj/effect/spawner/random/maintenance, /turf/open/floor/plating, @@ -29309,17 +29295,13 @@ }, /turf/open/floor/iron/dark/corner, /area/station/engineering/atmos/storage/gas) -"kat" = ( -/obj/structure/sign/warning/vacuum/external, -/turf/closed/wall, -/area/station/cargo/miningoffice) "kaC" = ( /obj/machinery/light_switch/directional/east, /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "kaF" = ( /obj/effect/turf_decal/trimline/purple/line{ dir = 1 @@ -29522,13 +29504,13 @@ /area/station/commons/toilet/restrooms) "ken" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/fore) "keK" = ( @@ -29716,6 +29698,18 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/security/checkpoint/engineering) +"khC" = ( +/obj/structure/cable, +/obj/machinery/camera/motion/directional/south{ + c_tag = "Vault"; + network = list("vault") + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/structure/sign/departments/vault/directional/south, +/turf/open/floor/iron/dark, +/area/station/command/vault) "khD" = ( /obj/machinery/door/airlock/maintenance{ name = "Crematorium Maintenance" @@ -30028,6 +30022,12 @@ }, /turf/open/floor/iron, /area/station/service/hydroponics) +"klN" = ( +/obj/structure/cable, +/obj/effect/turf_decal/tile/neutral, +/obj/structure/sign/warning/secure_area/directional/south, +/turf/open/floor/iron, +/area/station/hallway/secondary/command) "klS" = ( /obj/machinery/griddle, /turf/open/floor/iron/cafeteria, @@ -30048,10 +30048,6 @@ "kmN" = ( /turf/open/floor/plating, /area/station/maintenance/starboard/lesser) -"kmZ" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, -/area/station/command/gateway) "kna" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -30521,7 +30517,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "kwQ" = ( /obj/machinery/door/firedoor, /obj/effect/turf_decal/tile/neutral{ @@ -30690,6 +30686,7 @@ }, /obj/structure/sign/departments/aisat/directional/south, /obj/effect/turf_decal/tile/yellow/anticorner/contrasted, +/obj/structure/sign/warning/pods/directional/east, /turf/open/floor/iron, /area/station/engineering/break_room) "kzg" = ( @@ -30743,7 +30740,7 @@ /obj/effect/mapping_helpers/airlock/access/any/command/eva, /obj/effect/mapping_helpers/airlock/red_alert_access, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "kzQ" = ( /obj/effect/turf_decal/siding/purple, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -30779,6 +30776,20 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/station/command/teleporter) +"kAw" = ( +/obj/machinery/firealarm/directional/west, +/obj/machinery/camera/directional/west{ + c_tag = "Arrivals - Station Entrance" + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden/layer5, +/turf/open/floor/iron, +/area/station/hallway/secondary/entry) "kAF" = ( /obj/machinery/duct, /turf/open/floor/iron/freezer, @@ -30881,14 +30892,6 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/iron, /area/station/command/teleporter) -"kCq" = ( -/obj/machinery/firealarm/directional/west, -/obj/machinery/modular_computer/preset/engineering, -/obj/structure/cable, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/obj/machinery/incident_display/delam/directional/north, -/turf/open/floor/iron/dark, -/area/station/engineering/main) "kCt" = ( /obj/machinery/status_display/door_timer{ id = "Cell 2"; @@ -31082,10 +31085,11 @@ /obj/effect/turf_decal/stripes/line{ dir = 9 }, +/obj/structure/sign/warning/pods/directional/north, /turf/open/floor/iron, /area/station/hallway/secondary/entry) "kGc" = ( -/obj/machinery/computer/rdconsole, +/obj/machinery/computer/rdconsole/unlocked, /obj/effect/turf_decal/tile/red/anticorner/contrasted{ dir = 4 }, @@ -31107,7 +31111,7 @@ }, /obj/effect/mapping_helpers/airlock/abandoned, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -31127,6 +31131,13 @@ /obj/machinery/light/small/directional/north, /turf/open/floor/iron/white, /area/station/science/lab) +"kGP" = ( +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/structure/sign/warning/secure_area/directional/north, +/turf/open/floor/iron, +/area/station/hallway/primary/central) "kGR" = ( /obj/machinery/button/ignition{ id = "Xenobio"; @@ -31179,8 +31190,9 @@ "kHt" = ( /obj/machinery/camera{ c_tag = "Xenobiology Lab - Pen #2"; - dir = 9; - network = list("ss13","rd","xeno") + dir = 1; + network = list("ss13","rd","xeno"); + pixel_x = 16 }, /turf/open/floor/engine, /area/station/science/xenobiology) @@ -31225,6 +31237,16 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/science/ordnance/storage) +"kJf" = ( +/obj/machinery/firealarm/directional/west, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/hallway/primary/central) "kJi" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating/airless, @@ -31261,15 +31283,6 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) -"kJO" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/light/no_nightlight/directional/north, -/turf/open/floor/iron, -/area/station/engineering/atmos) "kKd" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -31389,7 +31402,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "kLh" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -31883,7 +31896,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "kUo" = ( /obj/structure/closet/crate/engineering/electrical, /obj/item/solar_assembly, @@ -31903,14 +31916,24 @@ /obj/machinery/door/airlock/maintenance, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden/layer5, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/fore) +"kUA" = ( +/obj/machinery/firealarm/directional/west, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment, +/obj/effect/turf_decal/tile/blue/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron, +/area/station/hallway/primary/aft) "kUG" = ( /obj/effect/turf_decal/bot, /obj/effect/turf_decal/loading_area{ @@ -31958,7 +31981,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "kVZ" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment{ @@ -31997,7 +32020,7 @@ /obj/effect/spawner/random/engineering/tracking_beacon, /obj/effect/landmark/event_spawn, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "kWE" = ( /obj/machinery/smartfridge/organ, /obj/effect/turf_decal/tile/dark_blue/full, @@ -32072,7 +32095,7 @@ /area/station/commons/toilet/auxiliary) "kXp" = ( /obj/machinery/camera/autoname{ - dir = 5 + pixel_x = 20 }, /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -32224,6 +32247,14 @@ /obj/structure/chair/stool/directional/north, /turf/open/floor/wood, /area/station/commons/lounge) +"kZo" = ( +/obj/machinery/firealarm/directional/west, +/obj/effect/turf_decal/tile/purple/half/contrasted{ + dir = 8 + }, +/obj/machinery/vending/cytopro, +/turf/open/floor/iron/white, +/area/station/science/cytology) "kZq" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -32313,6 +32344,7 @@ /obj/effect/turf_decal/tile/brown{ dir = 1 }, +/obj/structure/sign/departments/cargo/directional/west, /turf/open/floor/iron, /area/station/construction/storage_wing) "laE" = ( @@ -32380,6 +32412,17 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden/layer4, /turf/open/floor/plating/airless, /area/station/engineering/atmos) +"lch" = ( +/obj/machinery/firealarm/directional/west, +/obj/structure/disposalpipe/segment{ + dir = 6 + }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/station/command/heads_quarters/ce) "lct" = ( /obj/effect/turf_decal/bot, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -32431,7 +32474,8 @@ dir = 1 }, /obj/structure/sign/map/meta/right{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron, /area/station/hallway/primary/central) @@ -32450,7 +32494,7 @@ /area/station/maintenance/starboard/fore) "ldP" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "ldQ" = ( /obj/structure/cable, /turf/open/floor/iron/dark, @@ -32606,6 +32650,12 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron, /area/station/security/prison) +"lhI" = ( +/obj/machinery/computer/teleporter, +/obj/machinery/firealarm/directional/west, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/station/ai/satellite/foyer) "lhT" = ( /obj/effect/turf_decal/bot, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -32763,6 +32813,24 @@ /obj/structure/sign/poster/contraband/random/directional/west, /turf/open/floor/plating, /area/station/maintenance/port/greater) +"lkE" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/trimline/brown/warning{ + dir = 6 + }, +/obj/effect/turf_decal/trimline/brown/warning{ + dir = 6 + }, +/obj/effect/turf_decal/siding/yellow, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral/opposingcorners, +/obj/structure/window/reinforced/spawner/directional/east, +/obj/structure/sign/warning/secure_area/directional/northeast, +/turf/open/floor/iron, +/area/station/hallway/primary/starboard) "lkW" = ( /obj/machinery/light/small/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -32878,7 +32946,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "lmL" = ( /obj/structure/cable, /obj/effect/mapping_helpers/airlock/abandoned, @@ -32929,7 +32997,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "loh" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -32968,7 +33036,7 @@ /obj/effect/mapping_helpers/airlock/abandoned, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/any/security/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -32981,7 +33049,7 @@ /obj/machinery/light/small/directional/west, /obj/effect/spawner/random/armory/dragnet, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "lpk" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -33011,6 +33079,21 @@ /obj/machinery/biogenerator, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) +"lpL" = ( +/obj/machinery/portable_atmospherics/scrubber, +/obj/machinery/atmospherics/components/unary/portables_connector/visible{ + dir = 4 + }, +/obj/effect/turf_decal/bot, +/obj/effect/turf_decal/tile/red/opposingcorners{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/effect/turf_decal/tile/yellow/opposingcorners, +/obj/structure/window/reinforced/spawner/directional/south, +/obj/structure/sign/warning/secure_area/directional/southwest, +/turf/open/floor/iron, +/area/station/hallway/primary/starboard) "lpR" = ( /obj/structure/table, /obj/effect/turf_decal/siding{ @@ -33042,7 +33125,7 @@ /obj/effect/turf_decal/siding{ dir = 1 }, -/obj/machinery/computer/rdconsole, +/obj/machinery/computer/rdconsole/unlocked, /turf/open/floor/iron/dark, /area/station/science/lab) "lqQ" = ( @@ -33083,8 +33166,9 @@ pixel_y = 2 }, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/flasher/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lrp" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -33269,14 +33353,10 @@ /obj/machinery/ai_slipper{ uses = 10 }, -/obj/machinery/flasher/directional/south{ - id = "AI"; - pixel_x = 26 - }, /obj/structure/cable, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lus" = ( /obj/structure/closet/athletic_mixed, /obj/effect/landmark/start/hangover, @@ -33323,8 +33403,9 @@ /obj/machinery/door/airlock/maintenance, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/lesser) "lvu" = ( @@ -33437,8 +33518,8 @@ /obj/machinery/door/airlock/maintenance, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/port) "lyf" = ( @@ -33604,7 +33685,7 @@ /obj/effect/mapping_helpers/airlock/access/all/supply/vault, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "lBm" = ( /obj/machinery/conveyor{ dir = 4; @@ -33660,7 +33741,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "lDo" = ( /obj/item/radio/off, /obj/effect/turf_decal/stripes/line{ @@ -34086,7 +34167,7 @@ }, /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -34270,7 +34351,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/structure/window/spawner/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "lPy" = ( /obj/structure/disposalpipe/segment{ dir = 6 @@ -34417,7 +34498,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/light/floor, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "lSz" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -34491,7 +34572,7 @@ /obj/structure/extinguisher_cabinet/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "lTR" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -34703,11 +34784,21 @@ /obj/structure/sign/warning/vacuum/directional/east, /turf/open/floor/plating, /area/station/maintenance/aft/lesser) -"lXm" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/structure/sign/warning/vacuum/external, -/turf/open/floor/plating, -/area/station/hallway/secondary/entry) +"lWX" = ( +/obj/structure/table/reinforced, +/obj/item/defibrillator/loaded{ + pixel_y = 6 + }, +/obj/item/defibrillator/loaded{ + pixel_y = 3 + }, +/obj/item/defibrillator/loaded, +/obj/item/defibrillator/loaded{ + pixel_y = -4 + }, +/obj/structure/window/spawner/directional/west, +/turf/open/floor/iron/dark, +/area/station/medical/storage) "lXr" = ( /obj/effect/turf_decal/tile/green{ dir = 4 @@ -34976,7 +35067,7 @@ "mbS" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "mbV" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, @@ -35074,17 +35165,6 @@ }, /turf/open/floor/iron/white, /area/station/medical/virology) -"mdu" = ( -/obj/machinery/firealarm/directional/west, -/obj/effect/turf_decal/siding/blue/corner{ - dir = 4 - }, -/obj/machinery/pdapainter/research, -/obj/effect/turf_decal/tile/neutral/opposingcorners{ - dir = 1 - }, -/turf/open/floor/iron/dark, -/area/station/command/heads_quarters/rd) "mdy" = ( /obj/effect/landmark/blobstart, /obj/structure/cable, @@ -35128,9 +35208,9 @@ /turf/open/floor/iron, /area/station/engineering/atmos) "mez" = ( -/obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /obj/structure/sign/warning/electric_shock, +/obj/effect/spawner/structure/window/reinforced, /turf/open/floor/engine, /area/station/science/cytology) "meJ" = ( @@ -35184,7 +35264,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "mgh" = ( /obj/machinery/camera/directional/east{ c_tag = "Atmospherics Tank - O2" @@ -35194,13 +35274,9 @@ "mgj" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/flasher/directional/north{ - id = "AI"; - pixel_x = -22 - }, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "mgo" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -35306,7 +35382,7 @@ name = "Research Division Access" }, /obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "sci-entrance" }, @@ -35332,6 +35408,12 @@ }, /turf/open/floor/iron/white, /area/station/science/xenobiology) +"mio" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron, +/area/station/hallway/primary/aft) "mix" = ( /obj/structure/frame/machine, /obj/item/circuitboard/machine/chem_master, @@ -35402,7 +35484,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "mkr" = ( /obj/machinery/atmospherics/components/binary/pump{ dir = 4; @@ -35635,6 +35717,26 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron, /area/station/security/brig) +"mop" = ( +/obj/structure/table/reinforced, +/obj/machinery/door/window/right/directional/east{ + name = "Outer Window" + }, +/obj/machinery/door/window/brigdoor/left/directional/west{ + name = "Brig Control Desk"; + req_access = list("armory") + }, +/obj/item/folder/red, +/obj/item/folder/red, +/obj/item/poster/random_official, +/obj/structure/cable, +/obj/item/book/manual/wiki/security_space_law{ + pixel_x = -3; + pixel_y = 5 + }, +/obj/machinery/door/firedoor, +/turf/open/floor/iron/showroomfloor, +/area/station/security/warden) "moF" = ( /obj/effect/turf_decal/siding/purple{ dir = 5 @@ -35674,7 +35776,7 @@ "mph" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "mpk" = ( /obj/structure/table/glass, /obj/effect/turf_decal/tile/blue/fourcorners, @@ -35959,9 +36061,14 @@ /turf/open/floor/iron, /area/station/security/brig) "mtL" = ( -/obj/structure/sign/warning/pods, -/turf/closed/wall, -/area/station/hallway/secondary/entry) +/obj/machinery/door/poddoor/preopen{ + id = "Xenolab"; + name = "Test Chamber Blast Door" + }, +/obj/structure/cable, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/engine, +/area/station/science/xenobiology) "mtO" = ( /obj/effect/landmark/event_spawn, /turf/open/floor/iron, @@ -36000,7 +36107,7 @@ }, /obj/effect/mapping_helpers/airlock/abandoned, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -36439,8 +36546,8 @@ "mCj" = ( /obj/machinery/camera{ c_tag = "Xenobiology Lab - Pen #7"; - dir = 5; - network = list("ss13","rd","xeno") + network = list("ss13","rd","xeno"); + pixel_x = 16 }, /turf/open/floor/engine, /area/station/science/xenobiology) @@ -36478,7 +36585,7 @@ "mCL" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "mCM" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -36733,6 +36840,13 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/command/gateway) +"mGl" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/sign/warning/secure_area/directional/north, +/turf/open/floor/iron, +/area/station/command/eva) "mGy" = ( /obj/structure/sign/warning/vacuum/directional/west, /obj/effect/turf_decal/delivery, @@ -36902,7 +37016,11 @@ /obj/effect/turf_decal/tile/neutral, /turf/open/floor/iron, /area/station/commons/dorms) -"mJN" = ( +"mJO" = ( +/obj/machinery/light/directional/west, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/firealarm/directional/west, /obj/effect/turf_decal/tile/neutral{ dir = 8 @@ -36963,6 +37081,20 @@ }, /turf/open/floor/iron/white, /area/station/science/cytology) +"mKQ" = ( +/obj/machinery/door/airlock/security/glass{ + id_tag = "innerbrig"; + name = "Brig" + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "brig-entrance" + }, +/obj/effect/mapping_helpers/airlock/access/all/security/entrance, +/turf/open/floor/iron, +/area/station/security/brig) "mKR" = ( /obj/structure/sign/warning/test_chamber, /turf/closed/wall, @@ -37077,9 +37209,7 @@ pixel_x = -4; pixel_y = 4 }, -/obj/structure/cable, /obj/machinery/light_switch/directional/west, -/obj/machinery/power/apc/auto_name/directional/west, /turf/open/floor/iron/dark, /area/station/security/lockers) "mMl" = ( @@ -37108,6 +37238,22 @@ }, /turf/open/floor/iron, /area/station/commons/dorms) +"mMH" = ( +/obj/structure/table, +/obj/effect/turf_decal/delivery, +/obj/item/clothing/glasses/meson, +/obj/item/clothing/glasses/meson, +/obj/item/clothing/glasses/meson, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/item/storage/belt/utility, +/obj/item/storage/belt/utility, +/obj/item/storage/belt/utility, +/obj/machinery/light/directional/east, +/obj/structure/sign/warning/secure_area/directional/east, +/turf/open/floor/iron, +/area/station/engineering/main) "mMK" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -37116,25 +37262,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/science/xenobiology) -"mMM" = ( -/obj/structure/table/reinforced, -/obj/machinery/door/window/right/directional/east{ - name = "Outer Window" - }, -/obj/machinery/door/window/brigdoor/left/directional/west{ - name = "Brig Control Desk"; - req_access = list("armory") - }, -/obj/item/folder/red, -/obj/item/folder/red, -/obj/item/poster/random_official, -/obj/structure/cable, -/obj/item/book/manual/wiki/security_space_law{ - pixel_x = -3; - pixel_y = 5 - }, -/turf/open/floor/iron/showroomfloor, -/area/station/security/warden) "mMX" = ( /turf/closed/wall/r_wall, /area/station/science/ordnance/office) @@ -37146,7 +37273,8 @@ /obj/machinery/button/door{ id = "ordnancebridge"; pixel_x = -24; - req_one_access = list("maint_tunnels","science") + req_one_access = list("maint_tunnels","science"); + dir = 8 }, /obj/effect/turf_decal/caution/stand_clear{ dir = 1 @@ -37468,8 +37596,7 @@ /area/station/maintenance/starboard/fore) "mSI" = ( /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/ai_upload"; - icon_state = "control_stun"; + control_area = "/area/station/ai/upload/chamber"; name = "AI Upload Turret Control"; pixel_y = 28 }, @@ -37489,7 +37616,7 @@ /obj/machinery/power/apc/auto_name/directional/south, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "mSM" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -37701,7 +37828,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "mXj" = ( /obj/machinery/computer/station_alert, /obj/effect/turf_decal/tile/brown/half/contrasted{ @@ -37857,7 +37984,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/status_display/evac/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "mZB" = ( /obj/structure/urinal/directional/north, /obj/effect/landmark/start/hangover, @@ -37899,7 +38026,7 @@ /obj/effect/turf_decal/tile/blue, /mob/living/basic/bot/cleanbot, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "nad" = ( /obj/effect/turf_decal/trimline/brown/filled/corner{ dir = 8 @@ -37916,16 +38043,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/dark/hidden, /turf/open/floor/iron/white, /area/station/science/cytology) -"naf" = ( -/obj/machinery/firealarm/directional/west, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/disposalpipe/segment, -/obj/effect/turf_decal/tile/blue/half/contrasted{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/hallway/primary/aft) "nao" = ( /obj/structure/easel, /obj/machinery/light/small/dim/directional/west, @@ -38085,7 +38202,8 @@ /obj/effect/turf_decal/delivery, /obj/effect/turf_decal/delivery, /obj/structure/sign/map/meta/left{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron/dark, /area/station/hallway/secondary/exit/departure_lounge) @@ -38168,7 +38286,7 @@ }, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "neL" = ( /obj/machinery/door/airlock/maintenance{ name = "Storage Room" @@ -38176,7 +38294,7 @@ /obj/effect/mapping_helpers/airlock/abandoned, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/any/security/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -38286,7 +38404,7 @@ /area/station/command/heads_quarters/rd) "nhP" = ( /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "nhS" = ( /obj/machinery/vending/cigarette, /obj/structure/sign/poster/official/random/directional/east, @@ -38298,7 +38416,7 @@ /obj/machinery/computer/security/telescreen/research/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "nie" = ( /obj/machinery/door/firedoor, /obj/structure/disposalpipe/segment, @@ -38749,7 +38867,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/security/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/iron/dark, @@ -38853,12 +38971,10 @@ /area/station/maintenance/starboard/fore) "nqV" = ( /obj/structure/closet/emcloset, -/obj/structure/sign/warning/pods{ - pixel_y = 30 - }, /obj/effect/landmark/start/hangover, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/small/directional/west, +/obj/structure/sign/warning/pods/directional/north, /turf/open/floor/iron/dark, /area/station/commons/fitness/recreation) "nra" = ( @@ -38936,7 +39052,8 @@ /obj/effect/landmark/start/depsec/medical, /obj/machinery/button/door/directional/east{ id = "medsecprivacy"; - name = "Privacy Shutters Control" + name = "Privacy Shutters Control"; + pixel_x = 22 }, /obj/effect/turf_decal/trimline/red/filled/line{ dir = 5 @@ -39078,12 +39195,12 @@ /obj/machinery/door/airlock/maintenance{ name = "Disposal Access" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, @@ -39298,7 +39415,7 @@ /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "nwT" = ( /obj/structure/disposalpipe/sorting/mail/flip{ dir = 8 @@ -39823,7 +39940,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "nFn" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, @@ -39835,7 +39952,7 @@ }, /obj/machinery/light/small/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "nGo" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/chair/stool/directional/east, @@ -39846,18 +39963,6 @@ /obj/effect/spawner/random/entertainment/dice, /turf/open/floor/iron, /area/station/commons/locker) -"nGq" = ( -/obj/structure/railing/corner, -/obj/effect/turf_decal/trimline/yellow/filled/line{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/yellow/warning{ - dir = 8 - }, -/obj/machinery/firealarm/directional/west, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/engineering/atmos) "nGr" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk{ @@ -40034,11 +40139,13 @@ }, /obj/machinery/button/ignition/incinerator/ordmix{ pixel_x = 24; - pixel_y = -6 + pixel_y = -6; + dir = 4 }, /obj/machinery/button/door/incinerator_vent_ordmix{ pixel_x = 24; - pixel_y = 8 + pixel_y = 8; + dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/science/ordnance, /turf/open/floor/engine, @@ -40302,6 +40409,17 @@ }, /turf/open/floor/iron, /area/station/engineering/atmos) +"nOA" = ( +/obj/machinery/firealarm/directional/west, +/obj/structure/cable, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/duct, +/turf/open/floor/iron, +/area/station/commons/fitness/recreation) "nOC" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -40458,11 +40576,6 @@ "nSe" = ( /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) -"nSn" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/tile/neutral, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) "nSs" = ( /obj/structure/showcase/cyborg/old{ pixel_y = 20 @@ -40477,7 +40590,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "nSB" = ( /obj/item/toy/figure/roboticist, /obj/structure/disposalpipe/segment, @@ -40511,6 +40624,22 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/yellow/visible, /turf/open/floor/iron/dark, /area/station/engineering/supermatter/room) +"nTD" = ( +/obj/machinery/airalarm/directional/west{ + pixel_y = -5 + }, +/obj/structure/disposaloutlet{ + dir = 4; + name = "Cargo Deliveries" + }, +/obj/effect/turf_decal/siding/white, +/obj/effect/turf_decal/trimline/brown/warning, +/obj/structure/disposalpipe/trunk{ + dir = 4 + }, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron, +/area/station/medical/medbay/lobby) "nTH" = ( /obj/structure/cable, /obj/machinery/computer/crew{ @@ -40678,7 +40807,7 @@ /obj/machinery/ore_silo, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "nYy" = ( /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/structure/closet/secure_closet/freezer/kitchen/maintenance, @@ -41270,7 +41399,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, @@ -41286,17 +41415,6 @@ /obj/effect/spawner/random/structure/crate, /turf/open/floor/iron, /area/station/cargo/warehouse) -"okj" = ( -/obj/structure/cable, -/obj/machinery/camera/motion/directional/south{ - c_tag = "Vault"; - network = list("vault") - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) "okP" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -41400,7 +41518,7 @@ /obj/item/stock_parts/power_store/cell/high, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "omm" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -41421,7 +41539,7 @@ /obj/machinery/status_display/evac/directional/north, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "omK" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment, @@ -41481,7 +41599,8 @@ dir = 4 }, /obj/structure/sign/map/meta/right{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/machinery/airalarm/directional/east, /turf/open/floor/iron, @@ -41613,7 +41732,7 @@ }, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "oqk" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -41683,7 +41802,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "osc" = ( /obj/structure/cable, /obj/effect/spawner/random/decoration/showcase, @@ -41716,16 +41835,8 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/door/firedoor, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) -"osw" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, -/area/station/security/brig) +/area/station/ai/upload/foyer) "osH" = ( -/obj/structure/secure_safe/hos{ - pixel_x = 36; - pixel_y = 28 - }, /obj/machinery/status_display/evac/directional/north, /obj/structure/cable, /turf/open/floor/carpet, @@ -41791,6 +41902,20 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, /turf/open/floor/engine, /area/station/engineering/supermatter/room) +"ott" = ( +/obj/effect/turf_decal/tile/red/anticorner/contrasted{ + dir = 8 + }, +/obj/machinery/computer/records/security{ + dir = 1 + }, +/obj/machinery/light/small/directional/west, +/obj/machinery/firealarm/directional/west, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/power/apc/auto_name/directional/south, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/security/checkpoint/supply) "otu" = ( /turf/closed/wall, /area/station/service/chapel) @@ -41890,9 +42015,10 @@ dir = 4 }, /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/maintenance/starboard/greater) "ouX" = ( @@ -42205,6 +42331,30 @@ /obj/structure/sign/poster/contraband/random/directional/north, /turf/open/floor/plating, /area/station/maintenance/aft/greater) +"oBE" = ( +/obj/effect/decal/cleanable/garbage, +/obj/structure/disposalpipe/segment{ + dir = 9 + }, +/obj/structure/sign/warning/secure_area/directional/east, +/turf/open/floor/iron/white, +/area/station/science/research) +"oBK" = ( +/obj/structure/table, +/obj/machinery/microwave, +/obj/effect/turf_decal/trimline/brown/warning{ + dir = 5 + }, +/obj/machinery/light/directional/west, +/obj/effect/turf_decal/tile/bar{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 8 + }, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron/cafeteria, +/area/station/service/kitchen) "oBM" = ( /obj/structure/table/reinforced, /obj/machinery/door/firedoor, @@ -42269,15 +42419,18 @@ pixel_y = 2 }, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/flasher/directional/east{ + pixel_y = -5 + }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "oDl" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/cable, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/greater) "oDs" = ( @@ -42313,10 +42466,6 @@ }, /turf/open/floor/iron, /area/station/engineering/main) -"oDJ" = ( -/obj/structure/sign/warning/vacuum/external, -/turf/closed/wall, -/area/station/cargo/storage) "oDW" = ( /obj/effect/turf_decal/trimline/yellow/filled/corner, /obj/machinery/firealarm/directional/south, @@ -42482,7 +42631,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "north-maint-viewingdeck" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, @@ -42527,7 +42676,7 @@ name = "Fuel Closet" }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -42942,7 +43091,7 @@ }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "oOy" = ( /obj/effect/landmark/start/botanist, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -43289,6 +43438,13 @@ /obj/machinery/digital_clock/directional/north, /turf/open/floor/iron, /area/station/hallway/secondary/command) +"oUJ" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/sign/nanotrasen/directional/west, +/turf/open/floor/plating, +/area/station/maintenance/port/aft) "oUK" = ( /obj/structure/table, /obj/item/electronics/apc, @@ -43335,10 +43491,6 @@ }, /turf/open/floor/iron, /area/station/security/courtroom) -"oWc" = ( -/obj/structure/sign/warning/electric_shock, -/turf/closed/wall/r_wall, -/area/station/maintenance/starboard/aft) "oWk" = ( /turf/closed/wall/r_wall, /area/station/maintenance/starboard/aft) @@ -43353,7 +43505,7 @@ "oWF" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "oWH" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -43418,7 +43570,7 @@ /obj/effect/turf_decal/bot_white/left, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "oXL" = ( /obj/machinery/disposal/bin, /obj/structure/cable, @@ -43514,7 +43666,8 @@ dir = 4 }, /obj/structure/sign/map/meta/right{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) @@ -43561,7 +43714,7 @@ "pan" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/closed/wall/r_wall, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "pav" = ( /obj/structure/chair/stool/directional/west, /obj/machinery/camera/directional/north{ @@ -43592,7 +43745,7 @@ /area/station/cargo/bitrunning/den) "paU" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, @@ -43835,7 +43988,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "pfs" = ( /obj/structure/closet/secure_closet{ name = "contraband locker"; @@ -43847,7 +44000,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "pfP" = ( /obj/effect/turf_decal/stripes/line, /obj/machinery/light_switch/directional/south, @@ -43865,7 +44018,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -43882,7 +44035,7 @@ name = "Chapel Maintenance" }, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -43970,7 +44123,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "phR" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -44026,7 +44179,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "piz" = ( /obj/structure/cable, /obj/effect/landmark/start/hangover, @@ -44401,7 +44554,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "service-passthrough" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -44513,7 +44666,7 @@ "pqH" = ( /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "pqI" = ( /obj/structure/lattice/catwalk, /obj/item/reagent_containers/cup/fish_feed, @@ -44606,7 +44759,8 @@ dir = 1 }, /obj/structure/sign/map/meta/left{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron, /area/station/hallway/primary/central) @@ -44644,7 +44798,7 @@ /obj/machinery/power/apc/auto_name/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "psw" = ( /obj/machinery/computer/security/hos{ dir = 4 @@ -44707,6 +44861,8 @@ "pti" = ( /obj/structure/closet/secure_closet/security/sec, /obj/effect/turf_decal/tile/red/anticorner/contrasted, +/obj/machinery/power/apc/auto_name/directional/west, +/obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/lockers) "pts" = ( @@ -44981,7 +45137,7 @@ "pyP" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "pyR" = ( /obj/machinery/power/apc/auto_name/directional/west, /obj/machinery/light_switch/directional/south, @@ -45079,7 +45235,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "pAV" = ( /obj/structure/table/reinforced, /obj/machinery/microwave/engineering/cell_included, @@ -45252,6 +45408,12 @@ /obj/effect/turf_decal/tile/green/fourcorners, /turf/open/floor/iron, /area/station/hallway/primary/central) +"pEl" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/neutral, +/obj/structure/sign/warning/secure_area/directional/south, +/turf/open/floor/iron/dark, +/area/station/command/vault) "pEs" = ( /obj/structure/disposalpipe/segment{ dir = 10 @@ -45435,7 +45597,8 @@ /obj/effect/turf_decal/bot, /obj/machinery/camera{ c_tag = "Engineering - Foyer - Starboard"; - dir = 9 + dir = 1; + pixel_x = 25 }, /obj/effect/turf_decal/stripes/corner{ dir = 1 @@ -45522,7 +45685,7 @@ }, /obj/machinery/status_display/evac/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "pIF" = ( /obj/effect/turf_decal/stripes/white/line, /obj/machinery/research/anomaly_refinery, @@ -45708,15 +45871,6 @@ /obj/machinery/light/small/directional/south, /turf/open/floor/engine/n2, /area/station/engineering/atmos) -"pMy" = ( -/obj/machinery/computer/prisoner/management{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/dark_red/filled/line{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/security/warden) "pMH" = ( /obj/machinery/computer/station_alert{ dir = 4 @@ -45758,7 +45912,7 @@ /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "pNb" = ( /obj/effect/spawner/random/maintenance, /obj/structure/cable, @@ -45981,7 +46135,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "pQy" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/delivery, @@ -46005,7 +46159,7 @@ dir = 4 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "pQK" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -46095,6 +46249,13 @@ /obj/effect/spawner/random/engineering/atmospherics_portable, /turf/open/floor/plating, /area/station/maintenance/starboard/lesser) +"pSR" = ( +/obj/structure/closet/l3closet/scientist, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/light/directional/south, +/obj/structure/sign/warning/secure_area/directional/south, +/turf/open/floor/iron/white, +/area/station/science/xenobiology/hallway) "pSS" = ( /obj/structure/lattice/catwalk, /obj/structure/transit_tube/junction/flipped{ @@ -46364,7 +46525,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "pWT" = ( /obj/machinery/atmospherics/components/tank/air{ dir = 8 @@ -46495,13 +46656,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/solars/starboard/fore) -"pZW" = ( -/obj/structure/lattice, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, -/turf/open/space/basic, -/area/space/nearstation) "qaf" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood/large, @@ -46605,10 +46759,10 @@ /obj/machinery/door/airlock/maintenance, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical/central) "qcd" = ( @@ -46673,22 +46827,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden/layer5, /turf/open/floor/iron/white/corner, /area/station/hallway/secondary/entry) -"qdI" = ( -/obj/structure/table, -/obj/machinery/microwave, -/obj/effect/turf_decal/trimline/brown/warning{ - dir = 5 - }, -/obj/machinery/light/directional/west, -/obj/effect/turf_decal/tile/bar{ - dir = 1 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/iron/cafeteria, -/area/station/service/kitchen) "qdT" = ( /obj/effect/turf_decal/siding/red, /obj/effect/landmark/start/depsec/science, @@ -46734,7 +46872,6 @@ /area/station/hallway/primary/central) "qeQ" = ( /obj/machinery/turretid{ - icon_state = "control_stun"; name = "AI Chamber turret control"; pixel_x = 3; pixel_y = -23 @@ -46747,7 +46884,7 @@ req_access = list("ai_upload") }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "qfp" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/public/glass{ @@ -46770,6 +46907,14 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/security/courtroom) +"qfK" = ( +/obj/machinery/firealarm/directional/west, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/obj/item/radio/intercom/directional/south, +/turf/open/floor/carpet, +/area/station/command/heads_quarters/captain/private) "qfL" = ( /obj/machinery/power/port_gen/pacman/pre_loaded, /turf/open/floor/plating, @@ -46777,8 +46922,9 @@ "qfM" = ( /obj/machinery/camera{ c_tag = "Xenobiology Lab - Pen #4"; - dir = 6; - network = list("ss13","rd","xeno") + dir = 4; + network = list("ss13","rd","xeno"); + pixel_y = -16 }, /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/engine, @@ -47030,7 +47176,7 @@ }, /mob/living/basic/bot/repairbot, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "qiY" = ( /obj/effect/turf_decal/siding/wood{ dir = 8 @@ -47049,7 +47195,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "qjl" = ( /obj/machinery/vending/tool, /obj/effect/turf_decal/delivery, @@ -47072,7 +47218,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "viro-passthrough" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, @@ -47092,7 +47238,7 @@ /obj/effect/mapping_helpers/airlock/access/any/command/general, /obj/effect/mapping_helpers/airlock/access/any/command/minisat, /turf/open/floor/plating, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "qjH" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -47193,7 +47339,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "qlL" = ( /obj/structure/closet/secure_closet/hydroponics, /obj/effect/turf_decal/stripes/line, @@ -47263,8 +47409,9 @@ dir = 4 }, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/warning/vacuum/external/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "qnj" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -47361,16 +47508,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/security/interrogation) -"qoR" = ( -/obj/machinery/door/firedoor, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/hallway/primary/central) "qoY" = ( /obj/effect/spawner/random/maintenance, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -47396,10 +47533,6 @@ }, /turf/open/floor/iron/dark, /area/station/command/bridge) -"qpD" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, -/area/station/ai_monitored/command/nuke_storage) "qpM" = ( /obj/effect/landmark/event_spawn, /turf/open/floor/wood, @@ -47455,7 +47588,7 @@ /turf/open/floor/circuit/green{ luminosity = 2 }, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "qri" = ( /turf/open/floor/iron/chapel{ dir = 1 @@ -47592,7 +47725,7 @@ name = "Private Channel" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "qsW" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -48013,13 +48146,6 @@ /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/iron, /area/station/science/xenobiology) -"qCm" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/plating, -/area/station/maintenance/port/fore) "qCv" = ( /obj/machinery/telecomms/processor/preset_two, /turf/open/floor/circuit/telecomms/mainframe, @@ -48091,7 +48217,7 @@ /obj/effect/turf_decal/stripes/corner{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, @@ -48108,7 +48234,7 @@ "qDi" = ( /obj/machinery/status_display/ai/directional/east, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "qDy" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, @@ -48248,6 +48374,16 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/commons/dorms) +"qGw" = ( +/obj/machinery/firealarm/directional/west, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/trimline/blue/filled/corner{ + dir = 1 + }, +/turf/open/floor/iron/white, +/area/station/medical/medbay/central) "qGK" = ( /obj/machinery/door/poddoor/preopen{ id = "Engineering"; @@ -48326,7 +48462,7 @@ }, /obj/structure/window/reinforced/spawner/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "qIl" = ( /turf/closed/wall, /area/station/hallway/secondary/command) @@ -48386,7 +48522,7 @@ }, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "qIR" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -48447,7 +48583,8 @@ dir = 1 }, /obj/structure/sign/map/meta/right{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron, /area/station/hallway/primary/central) @@ -49192,7 +49329,7 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Cargo Bay Bridge Access" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, @@ -49212,7 +49349,7 @@ "qTS" = ( /obj/structure/window/reinforced/spawner/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "qTU" = ( /obj/item/retractor, /obj/item/hemostat{ @@ -49471,7 +49608,7 @@ /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "qZa" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -49493,7 +49630,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -49541,7 +49678,7 @@ }, /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "rac" = ( /turf/closed/wall, /area/station/commons/lounge) @@ -49695,10 +49832,6 @@ }, /turf/open/floor/wood, /area/station/service/library) -"rcR" = ( -/obj/structure/sign/departments/cargo, -/turf/closed/wall, -/area/station/cargo/lobby) "rcW" = ( /obj/structure/closet/emcloset, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -49874,6 +50007,17 @@ }, /turf/open/floor/iron/white, /area/station/medical/virology) +"rgH" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/camera/directional/west{ + c_tag = "Xenobiology Lab - Central East"; + network = list("ss13","rd","xeno") + }, +/obj/machinery/firealarm/directional/west, +/turf/open/floor/iron/white, +/area/station/science/xenobiology) "rgS" = ( /obj/machinery/modular_computer/preset/civilian{ dir = 1 @@ -49964,7 +50108,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "viro-passthrough" }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/duct, @@ -49998,6 +50142,7 @@ /obj/machinery/atmospherics/components/unary/airlock_pump{ dir = 4 }, +/obj/structure/sign/warning/vacuum/external/directional/south, /turf/open/floor/plating, /area/station/cargo/storage) "riW" = ( @@ -50016,7 +50161,7 @@ req_access = list("armory") }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "riZ" = ( /obj/effect/landmark/start/assistant, /turf/open/floor/wood, @@ -50181,7 +50326,7 @@ /area/station/medical/medbay/central) "rlU" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "rmj" = ( /obj/structure/table, /turf/open/floor/iron/cafeteria, @@ -50303,7 +50448,7 @@ /obj/machinery/firealarm/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "rod" = ( /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/trimline/brown/arrow_cw{ @@ -50566,7 +50711,7 @@ dir = 4 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "rtj" = ( /obj/machinery/igniter/incinerator_ordmix, /turf/open/floor/engine/vacuum, @@ -50719,17 +50864,6 @@ /obj/effect/turf_decal/tile/yellow, /turf/open/floor/iron, /area/station/engineering/break_room) -"rux" = ( -/obj/structure/reagent_dispensers/watertank, -/obj/machinery/firealarm/directional/west, -/obj/machinery/light_switch/directional/west{ - pixel_x = -38 - }, -/obj/effect/turf_decal/bot{ - dir = 1 - }, -/turf/open/floor/iron, -/area/station/engineering/main) "ruz" = ( /obj/structure/chair/stool/directional/north, /turf/open/floor/wood, @@ -50743,7 +50877,7 @@ name = "Cleaning Closet" }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, /area/station/maintenance/starboard/lesser) "rvb" = ( @@ -50931,7 +51065,7 @@ "rxx" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "rxA" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 10 @@ -50995,7 +51129,7 @@ /obj/structure/cable/layer3, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "ryL" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -51396,7 +51530,7 @@ }, /obj/effect/turf_decal/delivery, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "rGB" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, @@ -51438,26 +51572,6 @@ "rHn" = ( /turf/closed/wall/r_wall, /area/station/engineering/supermatter) -"rHq" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/trimline/brown/warning{ - dir = 6 - }, -/obj/structure/sign/warning/secure_area/directional/east{ - pixel_y = 32 - }, -/obj/effect/turf_decal/trimline/brown/warning{ - dir = 6 - }, -/obj/effect/turf_decal/siding/yellow, -/obj/effect/turf_decal/tile/yellow{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral/opposingcorners, -/obj/structure/window/reinforced/spawner/directional/east, -/turf/open/floor/iron, -/area/station/hallway/primary/starboard) "rHz" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -51513,7 +51627,7 @@ pixel_y = 2 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "rIP" = ( /obj/machinery/power/apc/auto_name/directional/south, /obj/structure/cable, @@ -51642,11 +51756,6 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/port) -"rKJ" = ( -/obj/machinery/teleport/station, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/plating, -/area/station/command/teleporter) "rKN" = ( /obj/effect/turf_decal/siding/white{ dir = 10 @@ -51817,7 +51926,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "rNv" = ( /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -51837,7 +51946,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/duct, @@ -52136,8 +52245,9 @@ "rTi" = ( /obj/machinery/camera{ c_tag = "Xenobiology Lab - Pen #3"; - dir = 6; - network = list("ss13","rd","xeno") + dir = 4; + network = list("ss13","rd","xeno"); + pixel_y = -16 }, /turf/open/floor/engine, /area/station/science/xenobiology) @@ -52392,6 +52502,7 @@ "rYy" = ( /obj/machinery/power/smes, /obj/structure/cable, +/obj/structure/sign/warning/electric_shock/directional/north, /turf/open/floor/plating, /area/station/maintenance/solars/starboard/aft) "rYA" = ( @@ -52401,7 +52512,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "rYH" = ( /obj/structure/rack, /obj/item/clothing/suit/hazardvest, @@ -52456,7 +52567,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "rZz" = ( /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -52465,7 +52576,8 @@ /area/station/service/hydroponics/garden) "rZA" = ( /obj/structure/sign/map/meta/left{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/wood, /area/station/command/heads_quarters/captain/private) @@ -52658,7 +52770,7 @@ /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/window/reinforced/spawner/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "sbK" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -53292,7 +53404,7 @@ "soi" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/command/maintenance, /turf/open/floor/plating, /area/station/maintenance/central) @@ -53350,7 +53462,7 @@ /turf/open/floor/circuit/green{ luminosity = 2 }, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "sph" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -53388,6 +53500,15 @@ /obj/effect/turf_decal/tile/neutral, /turf/open/floor/iron, /area/station/commons/fitness/recreation) +"sqB" = ( +/obj/machinery/firealarm/directional/west, +/obj/structure/table, +/obj/item/folder, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/iron, +/area/station/commons/locker) "sqE" = ( /turf/closed/wall/r_wall, /area/station/command/heads_quarters/ce) @@ -53598,9 +53719,6 @@ /area/station/maintenance/disposal/incinerator) "svQ" = ( /obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, /obj/structure/cable, /obj/machinery/door/airlock/medical/glass{ id_tag = "MedbayFoyer"; @@ -53608,6 +53726,9 @@ }, /obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/effect/turf_decal/tile/blue/fourcorners, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 8 + }, /turf/open/floor/iron/white, /area/station/medical/medbay/central) "svS" = ( @@ -53703,11 +53824,6 @@ /obj/machinery/light/small/directional/south, /turf/open/floor/wood/large, /area/station/service/theater) -"syc" = ( -/obj/structure/cable, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/station/security/brig) "syh" = ( /obj/machinery/door/poddoor/shutters{ id = "maintwarehouse" @@ -53951,10 +54067,6 @@ /obj/item/storage/crayons, /turf/open/space/basic, /area/space/nearstation) -"sCp" = ( -/obj/structure/sign/warning/radiation, -/turf/closed/wall/r_wall, -/area/station/engineering/atmospherics_engine) "sCs" = ( /obj/structure/flora/bush/flowers_pp/style_3, /turf/open/floor/grass, @@ -54204,7 +54316,8 @@ "sFo" = ( /obj/machinery/button/crematorium{ id = "crematoriumChapel"; - pixel_x = -26 + pixel_x = -26; + dir = 8 }, /turf/open/floor/iron/dark, /area/station/service/chapel/office) @@ -54261,10 +54374,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/aft/greater) "sGC" = ( @@ -54435,7 +54548,7 @@ name = "Storage Room" }, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, @@ -54496,7 +54609,7 @@ pixel_x = 8 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "sLU" = ( /obj/effect/turf_decal/tile/brown/half/contrasted{ dir = 4 @@ -54645,13 +54758,13 @@ name = "Primary Treatment Centre" }, /obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/effect/turf_decal/tile/blue/fourcorners, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 8 + }, /turf/open/floor/iron/white, /area/station/medical/treatment_center) "sOi" = ( @@ -54710,7 +54823,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "sOZ" = ( /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -54741,7 +54854,7 @@ }, /obj/effect/mapping_helpers/airlock/abandoned, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -54824,7 +54937,7 @@ /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /obj/effect/mapping_helpers/airlock/access/any/service/library, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, /area/station/maintenance/port) "sQy" = ( @@ -54861,6 +54974,17 @@ }, /turf/open/floor/iron, /area/station/engineering/gravity_generator) +"sQQ" = ( +/obj/machinery/firealarm/directional/west, +/obj/effect/turf_decal/siding/blue/corner{ + dir = 4 + }, +/obj/machinery/pdapainter/research, +/obj/effect/turf_decal/tile/neutral/opposingcorners{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/command/heads_quarters/rd) "sQY" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -54958,17 +55082,6 @@ "sSp" = ( /turf/closed/wall, /area/station/medical/treatment_center) -"sSs" = ( -/obj/machinery/firealarm/directional/west, -/obj/structure/cable, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/duct, -/turf/open/floor/iron, -/area/station/commons/fitness/recreation) "sSx" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/command{ @@ -54990,7 +55103,7 @@ }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, @@ -55153,7 +55266,7 @@ /obj/structure/cable, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "sVz" = ( /obj/machinery/airalarm/directional/west, /obj/machinery/modular_computer/preset/command, @@ -55270,12 +55383,10 @@ "sXe" = ( /obj/effect/landmark/start/station_engineer, /obj/machinery/light/directional/west, -/obj/structure/sign/warning/electric_shock{ - pixel_x = -31 - }, /obj/effect/turf_decal/stripes/line{ dir = 9 }, +/obj/structure/sign/warning/electric_shock/directional/west, /turf/open/floor/iron, /area/station/engineering/main) "sXm" = ( @@ -55447,7 +55558,7 @@ }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, @@ -55674,7 +55785,7 @@ "tfz" = ( /obj/machinery/airalarm/directional/north, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "tfD" = ( /obj/structure/table/wood/poker, /obj/effect/decal/cleanable/dirt, @@ -55686,7 +55797,7 @@ /obj/effect/decal/cleanable/dirt, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -56008,9 +56119,6 @@ "tml" = ( /obj/effect/turf_decal/stripes/line, /obj/structure/cable, -/obj/machinery/newscaster/directional/south{ - pixel_x = -28 - }, /obj/machinery/atmospherics/components/binary/pump{ dir = 4 }, @@ -56058,10 +56166,10 @@ /obj/machinery/door/airlock/maintenance, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/aft/greater) "tmQ" = ( @@ -56206,7 +56314,7 @@ }, /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "tpn" = ( /obj/machinery/light/small/directional/west, /obj/machinery/camera/directional/west{ @@ -56215,7 +56323,7 @@ }, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "tpA" = ( /obj/machinery/cell_charger{ pixel_y = 4 @@ -56334,14 +56442,14 @@ /obj/machinery/teleport/hub, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "trx" = ( /obj/machinery/airalarm/directional/north, /obj/machinery/light/directional/north, /turf/open/floor/circuit/green{ luminosity = 2 }, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "try" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -56363,17 +56471,7 @@ /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) -"trG" = ( -/obj/structure/table, -/obj/item/stack/cable_coil, -/obj/machinery/firealarm/directional/west, -/obj/item/stack/cable_coil{ - pixel_x = -1; - pixel_y = -3 - }, -/turf/open/floor/iron/dark, -/area/station/engineering/atmospherics_engine) +/area/station/ai/satellite/exterior) "tsb" = ( /obj/structure/disposalpipe/segment{ dir = 6 @@ -56435,13 +56533,6 @@ /obj/item/knife/kitchen, /turf/open/floor/iron/white, /area/station/science/cytology) -"tsT" = ( -/obj/effect/turf_decal/stripes/corner{ - dir = 1 - }, -/obj/machinery/light/directional/north, -/turf/open/floor/iron, -/area/station/hallway/primary/central) "tsZ" = ( /obj/machinery/atmospherics/pipe/smart/simple/orange/visible, /obj/structure/lattice/catwalk, @@ -56684,7 +56775,7 @@ /obj/structure/cable/layer3, /obj/effect/mapping_helpers/airlock/access/all/command/minisat, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "txk" = ( /obj/machinery/navbeacon{ codes_txt = "patrol;next_patrol=14.5-Recreation"; @@ -56948,6 +57039,18 @@ /obj/machinery/door/firedoor/heavy, /turf/open/floor/iron/dark/textured, /area/station/engineering/atmos) +"tBO" = ( +/obj/item/radio/intercom/directional/north, +/obj/machinery/firealarm/directional/west, +/obj/structure/table/wood, +/obj/item/clothing/under/misc/burial, +/obj/item/clothing/under/misc/burial, +/obj/item/clothing/under/misc/burial, +/obj/item/clothing/under/misc/burial, +/obj/item/clothing/under/misc/burial, +/obj/item/clothing/under/misc/burial, +/turf/open/floor/iron/grimy, +/area/station/service/chapel/office) "tBV" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 @@ -57102,6 +57205,12 @@ }, /turf/open/floor/plating, /area/station/cargo/sorting) +"tGy" = ( +/obj/machinery/firealarm/directional/west, +/obj/effect/turf_decal/tile/green/fourcorners, +/obj/effect/turf_decal/tile/green/fourcorners, +/turf/open/floor/iron, +/area/station/hallway/primary/central) "tGA" = ( /obj/effect/turf_decal/tile/neutral{ dir = 8 @@ -57178,7 +57287,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "tHZ" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -57191,7 +57300,7 @@ "tIa" = ( /obj/structure/cable/multilayer/connected, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "tIb" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/reagent_dispensers/watertank, @@ -57207,14 +57316,6 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron, /area/station/hallway/secondary/service) -"tId" = ( -/obj/effect/decal/cleanable/blood/old, -/obj/machinery/camera/directional/east{ - c_tag = "Science Maintenance Corridor"; - network = list("ss13","rd") - }, -/turf/open/floor/iron/white, -/area/station/science/research) "tIe" = ( /obj/effect/turf_decal/stripes/corner, /turf/open/floor/iron/white, @@ -57293,7 +57394,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -57338,7 +57439,7 @@ "tJE" = ( /obj/effect/turf_decal/trimline/red/filled/corner, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "tJF" = ( /obj/effect/turf_decal/stripes/line{ dir = 10 @@ -57406,16 +57507,6 @@ /obj/machinery/wall_healer/directional/south, /turf/open/floor/iron, /area/station/hallway/secondary/command) -"tKu" = ( -/obj/machinery/firealarm/directional/west, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/hallway/primary/central) "tKE" = ( /turf/closed/wall, /area/station/security/checkpoint/engineering) @@ -57642,7 +57733,7 @@ /obj/effect/mapping_helpers/airlock/abandoned, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -57680,7 +57771,7 @@ /area/station/science/xenobiology/hallway) "tOh" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "tOm" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -57872,7 +57963,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "tSY" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk, @@ -57887,7 +57978,7 @@ /obj/machinery/atmospherics/components/unary/outlet_injector/on/layer2, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/plating/airless, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "tTF" = ( /obj/effect/spawner/random/engineering/vending_restock, /turf/open/floor/plating, @@ -57908,17 +57999,15 @@ }, /obj/effect/spawner/random/armory/barrier_grenades, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "tTT" = ( /obj/machinery/disposal/bin, /obj/structure/disposalpipe/trunk, /obj/machinery/camera/directional/north{ c_tag = "Locker Room Starboard" }, -/obj/structure/sign/warning/pods{ - pixel_y = 30 - }, /obj/effect/turf_decal/delivery, +/obj/structure/sign/warning/pods/directional/north, /turf/open/floor/iron, /area/station/commons/locker) "tUc" = ( @@ -58019,8 +58108,11 @@ }, /obj/structure/cable, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/flasher/directional/south{ + id = "AI" + }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "tUH" = ( /obj/item/clothing/mask/gas, /turf/open/floor/plating, @@ -58090,7 +58182,7 @@ }, /obj/machinery/light/small/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "tVG" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible, /obj/machinery/firealarm/directional/north, @@ -58180,7 +58272,7 @@ /obj/structure/cable/layer3, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "tXD" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -58237,19 +58329,6 @@ /obj/effect/turf_decal/tile/purple/fourcorners, /turf/open/floor/iron, /area/station/command/heads_quarters/rd) -"tYQ" = ( -/obj/structure/cable, -/obj/structure/bed/dogbed/mcgriff, -/obj/machinery/power/apc/auto_name/directional/north, -/obj/machinery/firealarm/directional/west{ - pixel_y = 26 - }, -/obj/effect/turf_decal/trimline/dark_red/filled/line{ - dir = 9 - }, -/mob/living/basic/pet/dog/pug/mcgriff, -/turf/open/floor/iron, -/area/station/security/warden) "tYS" = ( /obj/machinery/door/airlock/external{ name = "Escape Pod Two"; @@ -58336,7 +58415,7 @@ }, /obj/structure/cable, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "uag" = ( /obj/item/radio/intercom/directional/north, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -58398,12 +58477,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/maintenance/disposal/incinerator) -"uaN" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 1 - }, -/turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) "uaR" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/engine, @@ -58442,7 +58515,7 @@ }, /obj/structure/sign/directions/evac, /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ubj" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -58482,19 +58555,7 @@ /obj/machinery/light/small/directional/east, /obj/machinery/newscaster/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) -"ubD" = ( -/obj/structure/rack, -/obj/machinery/firealarm/directional/west, -/obj/item/clothing/gloves/color/fyellow, -/obj/item/clothing/suit/hazardvest, -/obj/item/multitool, -/obj/effect/spawner/random/maintenance, -/obj/effect/turf_decal/tile/yellow/half/contrasted{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/commons/storage/tools) +/area/station/ai/satellite/chamber) "ubF" = ( /obj/structure/table, /obj/item/reagent_containers/cup/beaker{ @@ -58696,7 +58757,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/mapping_helpers/airlock/access/any/science/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden/layer5, @@ -58829,7 +58890,7 @@ /obj/machinery/door/airlock/maintenance, /obj/structure/cable, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) @@ -58911,7 +58972,7 @@ "ukk" = ( /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ukm" = ( /obj/effect/turf_decal/siding/wood{ dir = 8 @@ -59147,7 +59208,7 @@ }, /obj/effect/turf_decal/tile/blue/anticorner/contrasted, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "uoM" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/closet/secure_closet/brig{ @@ -59222,7 +59283,7 @@ name = "Research Division Access" }, /obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, @@ -59398,6 +59459,7 @@ /obj/machinery/atmospherics/components/unary/airlock_pump{ dir = 4 }, +/obj/structure/sign/warning/vacuum/external/directional/north, /turf/open/floor/plating, /area/station/hallway/secondary/entry) "usC" = ( @@ -59541,7 +59603,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "uuO" = ( /obj/machinery/mech_bay_recharge_port{ dir = 8 @@ -59653,7 +59715,7 @@ /obj/structure/cable, /obj/machinery/duct, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -59835,32 +59897,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"uzK" = ( -/obj/structure/table, -/obj/structure/disposalpipe/segment{ - dir = 6 - }, -/obj/structure/cable, -/obj/item/pen/blue{ - pixel_x = 4; - pixel_y = -3 - }, -/obj/item/pen/fountain{ - pixel_x = 10 - }, -/obj/item/pen/red{ - pixel_x = 8; - pixel_y = 8 - }, -/obj/item/stamp/denied{ - pixel_y = -1 - }, -/obj/item/stamp{ - pixel_x = -9; - pixel_y = -1 - }, -/turf/open/floor/catwalk_floor/iron, -/area/station/cargo/storage) "uAg" = ( /obj/effect/turf_decal/bot, /obj/machinery/atmospherics/pipe/smart/simple/supply/hidden, @@ -60099,7 +60135,7 @@ dir = 8 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "uEz" = ( /obj/effect/turf_decal/trimline/blue/filled/corner{ dir = 4 @@ -60194,7 +60230,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "uFy" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 @@ -60494,7 +60530,7 @@ "uKj" = ( /obj/structure/chair, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "uKx" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock{ @@ -60576,7 +60612,7 @@ name = "AI Chamber Requests Console" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "uLz" = ( /obj/machinery/light/small/directional/east, /obj/machinery/camera/directional/east{ @@ -60585,7 +60621,7 @@ }, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "uLE" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -61050,7 +61086,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "uVd" = ( /obj/structure/chair{ dir = 8 @@ -61135,15 +61171,11 @@ }, /turf/open/floor/iron, /area/station/security/courtroom) -"uWk" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, -/area/station/science/xenobiology/hallway) "uWn" = ( /obj/machinery/nuclearbomb/selfdestruct, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "uWo" = ( /obj/effect/turf_decal/trimline/red/filled/corner, /turf/open/floor/iron, @@ -61166,7 +61198,8 @@ }, /obj/machinery/light/directional/east, /obj/structure/sign/painting/library_secure{ - pixel_x = 32 + pixel_x = 32; + dir = 4 }, /obj/effect/spawner/random/decoration/statue{ spawn_loot_chance = 50 @@ -61182,7 +61215,7 @@ name = "Theater Backstage" }, /obj/effect/mapping_helpers/airlock/access/all/service/theatre, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/door/firedoor, /turf/open/floor/wood, /area/station/service/theater) @@ -61428,19 +61461,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden, /turf/open/floor/iron/white, /area/station/security/medical) -"vaI" = ( -/obj/item/clothing/suit/hazardvest, -/obj/item/clothing/suit/hazardvest, -/obj/item/tank/internals/emergency_oxygen/engi, -/obj/item/tank/internals/emergency_oxygen/engi, -/obj/effect/turf_decal/delivery, -/obj/structure/table, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/machinery/light/directional/east, -/turf/open/floor/iron, -/area/station/engineering/main) "vaY" = ( /obj/item/storage/bag/trash, /obj/machinery/airalarm/directional/west, @@ -61499,7 +61519,7 @@ /turf/open/floor/circuit/green{ luminosity = 2 }, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "vbL" = ( /obj/machinery/door/airlock/research{ name = "Ordnance Lab" @@ -61701,7 +61721,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/window/reinforced/spawner/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "vgZ" = ( /obj/structure/table/glass, /obj/structure/cable, @@ -61793,7 +61813,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/item/poster/traitor, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "viF" = ( /obj/machinery/computer/upload/borg, /obj/machinery/door/window/left/directional/south{ @@ -61804,7 +61824,7 @@ /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "viH" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/spawner/structure/window/reinforced, @@ -61982,7 +62002,7 @@ }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -62040,7 +62060,7 @@ "vly" = ( /obj/item/target/alien/anchored, /obj/machinery/camera/preset/ordnance{ - dir = 5 + pixel_x = 10 }, /obj/effect/turf_decal/stripes/line, /turf/open/floor/plating/airless{ @@ -62090,7 +62110,7 @@ "vmk" = ( /obj/machinery/status_display/ai/directional/west, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "vmp" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -62112,17 +62132,6 @@ /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/engineering/atmospherics_engine) -"vmX" = ( -/obj/machinery/light/directional/west, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/firealarm/directional/west, -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/hallway/primary/central) "vnk" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/security{ @@ -62148,7 +62157,7 @@ network = list("aicore") }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "vnp" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -62391,7 +62400,7 @@ dir = 8 }, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "vrP" = ( /obj/structure/cable, /obj/structure/table/reinforced, @@ -62714,11 +62723,11 @@ "vwN" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/greater) "vwP" = ( @@ -62815,10 +62824,6 @@ /obj/item/storage/fancy/candle_box, /turf/open/floor/iron/white, /area/station/medical/abandoned) -"vyi" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, -/area/station/command/corporate_showroom) "vyv" = ( /obj/structure/table, /obj/machinery/status_display/ai/directional/west, @@ -62831,7 +62836,7 @@ }, /obj/item/ai_module/supplied/freeform, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "vyy" = ( /obj/machinery/washing_machine, /obj/effect/decal/cleanable/dirt, @@ -62846,7 +62851,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "vyZ" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -63547,7 +63552,8 @@ "vKt" = ( /obj/structure/table/wood/fancy/royalblue, /obj/structure/sign/painting/library_secure{ - pixel_x = 32 + pixel_x = 32; + dir = 4 }, /obj/effect/spawner/random/decoration/statue{ spawn_loot_chance = 50 @@ -63649,6 +63655,21 @@ /obj/machinery/portable_atmospherics/canister/water_vapor, /turf/open/floor/iron, /area/station/service/janitor) +"vMj" = ( +/obj/machinery/door/airlock/security/glass{ + id_tag = "innerbrig"; + name = "Brig" + }, +/obj/structure/cable, +/obj/effect/turf_decal/trimline/red/filled/corner{ + dir = 1 + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "brig-entrance" + }, +/obj/effect/mapping_helpers/airlock/access/all/security/entrance, +/turf/open/floor/iron, +/area/station/security/brig) "vMw" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -63732,7 +63753,7 @@ /obj/machinery/door/airlock/maintenance, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/command/maintenance, @@ -63871,9 +63892,14 @@ /turf/open/floor/wood, /area/station/service/theater) "vQI" = ( -/obj/structure/sign/warning/pods, -/turf/closed/wall/r_wall, -/area/station/security/brig) +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/structure/sign/warning/pods/directional/north, +/turf/open/floor/iron, +/area/station/hallway/primary/central) "vQO" = ( /obj/structure/cable, /obj/effect/turf_decal/tile/red/half/contrasted{ @@ -64197,19 +64223,13 @@ /obj/item/multitool, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) -"vVI" = ( -/obj/structure/table/glass, -/obj/machinery/firealarm/directional/west, -/obj/effect/turf_decal/tile/blue/fourcorners, -/turf/open/floor/iron/white, -/area/station/medical/treatment_center) +/area/station/ai/satellite/maintenance/storage) "vVM" = ( /obj/effect/turf_decal/bot_white/right, /obj/structure/closet/crate/goldcrate, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "vVV" = ( /obj/structure/disposalpipe/segment{ dir = 5 @@ -64389,21 +64409,6 @@ /obj/effect/turf_decal/trimline/purple/filled/line, /turf/open/floor/iron/white, /area/station/command/heads_quarters/rd) -"vYF" = ( -/obj/machinery/door/firedoor, -/obj/machinery/door/airlock/security/glass{ - id_tag = "innerbrig"; - name = "Brig" - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ - cycle_id = "brig-entrance" - }, -/obj/effect/mapping_helpers/airlock/access/all/security/entrance, -/turf/open/floor/iron, -/area/station/security/brig) "vYI" = ( /obj/structure/sign/warning/secure_area/directional/north, /obj/structure/closet/radiation, @@ -64431,6 +64436,18 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/station/command/heads_quarters/ce) +"vYP" = ( +/obj/structure/railing/corner, +/obj/effect/turf_decal/trimline/yellow/filled/line{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/yellow/warning{ + dir = 8 + }, +/obj/machinery/firealarm/directional/west, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/engineering/atmos) "vZb" = ( /obj/machinery/disposal/bin{ desc = "A pneumatic waste disposal unit. This one leads to the morgue."; @@ -64555,6 +64572,16 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/service/hydroponics) +"wau" = ( +/obj/structure/table, +/obj/item/stack/cable_coil, +/obj/machinery/firealarm/directional/west, +/obj/item/stack/cable_coil{ + pixel_x = -1; + pixel_y = -3 + }, +/turf/open/floor/iron/dark, +/area/station/engineering/atmospherics_engine) "waB" = ( /obj/machinery/door/airlock/external/glass{ name = "Supply Door Airlock" @@ -64768,13 +64795,6 @@ /obj/machinery/light/cold/directional/east, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"weq" = ( -/obj/structure/sign/warning/secure_area{ - desc = "A warning sign which reads 'BOMB RANGE"; - name = "BOMB RANGE" - }, -/turf/closed/wall, -/area/station/science/ordnance/bomb) "wev" = ( /obj/structure/rack, /obj/item/storage/box, @@ -64795,7 +64815,7 @@ }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /turf/open/floor/plating, /area/station/maintenance/central) @@ -64933,12 +64953,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood, /area/station/commons/dorms) -"wgw" = ( -/obj/structure/sign/warning/secure_area{ - name = "\improper STAY CLEAR HEAVY MACHINERY" - }, -/turf/closed/wall, -/area/station/maintenance/port/fore) "wgP" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -65102,7 +65116,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "wjT" = ( /obj/structure/cable, /obj/machinery/power/terminal{ @@ -65113,13 +65127,6 @@ }, /turf/open/floor/plating, /area/station/maintenance/solars/port/aft) -"wkh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/trimline/red/filled/line{ - dir = 1 - }, -/turf/open/floor/iron, -/area/station/security/brig) "wki" = ( /obj/effect/spawner/random/engineering/tracking_beacon, /turf/open/floor/wood, @@ -65198,6 +65205,11 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/commons/storage/tools) +"wlQ" = ( +/obj/structure/closet/secure_closet/atmospherics, +/obj/structure/sign/warning/radiation/directional/west, +/turf/open/floor/iron/dark, +/area/station/engineering/atmospherics_engine) "wlZ" = ( /obj/machinery/status_display/evac/directional/west, /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden/layer4, @@ -65295,7 +65307,7 @@ }, /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "wnW" = ( /obj/structure/bodycontainer/morgue{ dir = 1 @@ -65341,6 +65353,12 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/engineering/main) +"woU" = ( +/obj/machinery/holopad, +/obj/effect/turf_decal/delivery, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/iron, +/area/station/hallway/secondary/exit/departure_lounge) "woV" = ( /obj/machinery/door/window/left/directional/north, /turf/open/floor/iron/grimy, @@ -65402,7 +65420,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "wpK" = ( /obj/effect/turf_decal/bot, /obj/effect/turf_decal/tile/neutral{ @@ -65509,7 +65527,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "wss" = ( /obj/machinery/status_display/evac/directional/north, /obj/item/folder/yellow{ @@ -65541,12 +65559,12 @@ /obj/machinery/door/airlock/medical/glass{ name = "Cryogenics Bay" }, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 1 - }, /obj/structure/disposalpipe/segment, /obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/effect/turf_decal/tile/blue/fourcorners, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 1 + }, /turf/open/floor/iron/white, /area/station/medical/treatment_center) "wsx" = ( @@ -65634,7 +65652,7 @@ /obj/machinery/door/airlock/maintenance, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden/layer5, @@ -65686,7 +65704,7 @@ "wtB" = ( /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "wtD" = ( /obj/effect/turf_decal/tile/neutral, /obj/machinery/wall_healer/directional/east, @@ -65727,7 +65745,7 @@ "wuM" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "wvd" = ( /obj/machinery/door/airlock{ id_tag = "Cabin5"; @@ -66033,7 +66051,7 @@ "wzH" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "wzK" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -66076,6 +66094,10 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/starboard) +"wAI" = ( +/obj/structure/sign/warning/secure_area/directional/south, +/turf/open/floor/carpet, +/area/station/command/bridge) "wBe" = ( /obj/effect/turf_decal/trimline/red/filled/corner{ dir = 4 @@ -66222,6 +66244,18 @@ }, /turf/open/floor/iron, /area/station/security/courtroom) +"wCR" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/structure/sign/warning/secure_area/directional/north, +/turf/open/floor/iron, +/area/station/hallway/secondary/command) "wCS" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -66377,6 +66411,14 @@ /obj/machinery/light_switch/directional/east, /turf/open/floor/iron, /area/station/service/hydroponics) +"wFP" = ( +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/trimline/red/filled/line{ + dir = 1 + }, +/obj/effect/landmark/firealarm_sanity, +/turf/open/floor/iron, +/area/station/security/brig) "wGa" = ( /obj/machinery/camera/directional/west{ c_tag = "Central Primary Hallway - Starboard - Art Storage" @@ -66460,6 +66502,13 @@ }, /turf/open/floor/iron/freezer, /area/station/commons/toilet/restrooms) +"wHr" = ( +/obj/machinery/flasher/directional/east{ + id = "hopflash"; + pixel_x = 0 + }, +/turf/closed/wall/r_wall, +/area/station/hallway/secondary/command) "wHu" = ( /turf/closed/wall, /area/station/science/lobby) @@ -66474,20 +66523,6 @@ }, /turf/open/floor/iron/white/corner, /area/station/hallway/secondary/entry) -"wHK" = ( -/obj/machinery/firealarm/directional/west, -/obj/machinery/camera/directional/west{ - c_tag = "Arrivals - Station Entrance" - }, -/obj/effect/turf_decal/stripes/line{ - dir = 8 - }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden/layer5, -/turf/open/floor/iron, -/area/station/hallway/secondary/entry) "wHL" = ( /obj/machinery/vending/wardrobe/bar_wardrobe, /obj/item/radio/intercom/directional/east, @@ -66506,7 +66541,7 @@ /turf/open/floor/circuit/green{ luminosity = 2 }, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "wIa" = ( /obj/structure/extinguisher_cabinet/directional/west, /turf/open/floor/iron, @@ -66673,7 +66708,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "wNp" = ( /obj/structure/bed, /obj/effect/decal/cleanable/cobweb, @@ -66814,7 +66849,7 @@ req_access = list("ai_upload") }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "wPB" = ( /obj/machinery/light/small/directional/south, /turf/open/floor/engine/air, @@ -66907,6 +66942,16 @@ /obj/effect/landmark/generic_maintenance_landmark, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"wQE" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/structure/sign/warning/directional/southeast, +/turf/open/floor/plating/airless, +/area/station/science/ordnance/bomb) "wQI" = ( /obj/machinery/door/poddoor/shutters/preopen{ dir = 8; @@ -66948,18 +66993,6 @@ }, /turf/open/floor/iron, /area/station/service/hydroponics/garden) -"wRB" = ( -/obj/item/radio/intercom/directional/north, -/obj/machinery/firealarm/directional/west, -/obj/structure/table/wood, -/obj/item/clothing/under/misc/burial, -/obj/item/clothing/under/misc/burial, -/obj/item/clothing/under/misc/burial, -/obj/item/clothing/under/misc/burial, -/obj/item/clothing/under/misc/burial, -/obj/item/clothing/under/misc/burial, -/turf/open/floor/iron/grimy, -/area/station/service/chapel/office) "wRD" = ( /obj/effect/decal/cleanable/dirt, /obj/item/mmi, @@ -67048,7 +67081,7 @@ /obj/item/pen, /obj/item/papercutter, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "wTs" = ( /obj/item/radio/intercom/directional/south, /obj/machinery/camera/directional/south{ @@ -67104,13 +67137,6 @@ /obj/effect/spawner/random/engineering/atmospherics_portable, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"wUG" = ( -/obj/machinery/firealarm/directional/west, -/obj/effect/turf_decal/trimline/blue/filled/warning, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/white, -/area/station/medical/medbay/central) "wUH" = ( /obj/machinery/camera/directional/west{ c_tag = "Medbay Break Room"; @@ -67265,7 +67291,7 @@ /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -67527,7 +67553,7 @@ }, /obj/machinery/light/cold/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "xdF" = ( /obj/structure/girder, /turf/open/floor/plating, @@ -67561,7 +67587,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "xeN" = ( /obj/structure/cable, /obj/effect/turf_decal/stripes/line{ @@ -67677,43 +67703,6 @@ /obj/effect/spawner/random/maintenance, /turf/open/floor/iron, /area/station/cargo/storage) -"xgi" = ( -/obj/structure/table/reinforced, -/obj/effect/turf_decal/bot, -/obj/item/bodypart/arm/right/robot{ - pixel_x = 3 - }, -/obj/item/bodypart/arm/left/robot{ - pixel_x = -3 - }, -/obj/structure/extinguisher_cabinet/directional/north, -/obj/machinery/firealarm/directional/west, -/obj/item/assembly/flash/handheld{ - pixel_x = 6; - pixel_y = 13 - }, -/obj/item/assembly/flash/handheld{ - pixel_x = 6; - pixel_y = 13 - }, -/obj/item/assembly/flash/handheld{ - pixel_x = 6; - pixel_y = 13 - }, -/obj/item/assembly/flash/handheld{ - pixel_x = 6; - pixel_y = 13 - }, -/obj/item/assembly/flash/handheld{ - pixel_x = 6; - pixel_y = 13 - }, -/obj/machinery/ecto_sniffer{ - pixel_x = -6; - pixel_y = 6 - }, -/turf/open/floor/iron, -/area/station/science/robotics/lab) "xgn" = ( /obj/structure/table/glass, /obj/effect/turf_decal/siding/white{ @@ -67761,7 +67750,7 @@ /obj/structure/cable/multilayer/connected, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "xgG" = ( /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/structure/rack, @@ -67795,7 +67784,7 @@ /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "xhb" = ( /obj/machinery/meter, /obj/effect/decal/cleanable/dirt, @@ -67902,7 +67891,7 @@ pixel_x = -8 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "xje" = ( /obj/machinery/duct, /turf/open/floor/plating, @@ -68005,7 +67994,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "xkE" = ( /obj/machinery/recharge_station, /obj/effect/landmark/start/hangover, @@ -68077,7 +68066,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "xlW" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 @@ -68503,7 +68492,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "north-maint-viewingdeck" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, @@ -68701,6 +68690,11 @@ "xww" = ( /turf/closed/wall/r_wall, /area/station/engineering/storage/tech) +"xwC" = ( +/obj/machinery/firealarm/directional/west, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/wood, +/area/station/service/library) "xwD" = ( /obj/effect/turf_decal/trimline/yellow/filled/corner, /turf/open/floor/iron/white, @@ -68799,7 +68793,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "xyq" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, @@ -69007,7 +69001,7 @@ dir = 6 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "xCf" = ( /obj/item/clothing/suit/jacket/straight_jacket, /obj/item/electropack, @@ -69045,7 +69039,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "xCx" = ( /obj/item/stack/package_wrap, /obj/item/stack/package_wrap, @@ -69204,7 +69198,8 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/turf_decal/delivery, /obj/structure/sign/map/meta/right{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron/dark, /area/station/hallway/secondary/exit/departure_lounge) @@ -69270,7 +69265,8 @@ /area/station/medical/medbay/lobby) "xFx" = ( /obj/structure/sign/map/meta/right{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/wood, /area/station/command/heads_quarters/captain/private) @@ -69312,7 +69308,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "xGT" = ( /obj/structure/disposalpipe/segment, /turf/closed/wall, @@ -69469,11 +69465,11 @@ /turf/open/floor/iron/white, /area/station/science/ordnance/testlab) "xKd" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 +/obj/structure/sign/directions/engineering{ + dir = 4 }, -/turf/open/space/basic, -/area/space/nearstation) +/turf/closed/wall/r_wall, +/area/station/engineering/storage/tcomms) "xKh" = ( /obj/structure/railing{ dir = 10 @@ -69650,7 +69646,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "service-passthrough" }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/greater) @@ -69678,6 +69674,15 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/port) +"xOB" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/turf_decal/stripes/line, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/sign/nanotrasen/directional/west, +/turf/open/floor/plating, +/area/station/maintenance/aft/greater) "xOF" = ( /obj/docking_port/stationary/laborcamp_home{ dir = 8 @@ -69800,7 +69805,7 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "xQO" = ( /obj/structure/table/glass, /obj/item/reagent_containers/cup/bottle/morphine{ @@ -69956,16 +69961,6 @@ }, /turf/open/floor/iron/dark, /area/station/medical/break_room) -"xUb" = ( -/obj/machinery/firealarm/directional/west, -/obj/structure/disposalpipe/segment, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/trimline/blue/filled/corner{ - dir = 1 - }, -/turf/open/floor/iron/white, -/area/station/medical/medbay/central) "xUh" = ( /obj/structure/closet/wardrobe/pjs, /obj/effect/landmark/start/hangover, @@ -70210,7 +70205,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "xXM" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/structure/chair, @@ -70218,7 +70213,8 @@ dir = 1 }, /obj/structure/sign/map/meta/left{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) @@ -70745,7 +70741,7 @@ /area/station/engineering/atmos) "yfL" = ( /turf/closed/wall, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "yfT" = ( /obj/structure/table/wood, /obj/item/pen/red, @@ -70819,19 +70815,6 @@ /obj/structure/extinguisher_cabinet/directional/west, /turf/open/floor/iron/dark, /area/station/hallway/primary/central) -"yhm" = ( -/obj/machinery/airalarm/directional/west, -/obj/structure/disposaloutlet{ - dir = 4; - name = "Cargo Deliveries" - }, -/obj/effect/turf_decal/siding/white, -/obj/effect/turf_decal/trimline/brown/warning, -/obj/structure/disposalpipe/trunk{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/medical/medbay/lobby) "yhu" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment{ @@ -70889,6 +70872,23 @@ }, /turf/open/floor/iron/white/smooth_large, /area/station/medical/chemistry) +"yiB" = ( +/obj/machinery/firealarm/directional/west, +/obj/effect/turf_decal/trimline/blue/filled/warning, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/white, +/area/station/medical/medbay/central) +"yiH" = ( +/obj/machinery/computer/prisoner/management{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/dark_red/filled/line{ + dir = 4 + }, +/obj/machinery/firealarm/directional/east, +/turf/open/floor/iron, +/area/station/security/warden) "yiJ" = ( /obj/structure/chair/sofa/right/brown, /obj/item/toy/plush/moth{ @@ -71038,10 +71038,6 @@ }, /turf/open/floor/iron, /area/station/security/brig) -"yme" = ( -/obj/structure/sign/warning/pods, -/turf/closed/wall, -/area/station/security/checkpoint/customs) (1,1,1) = {" aaa @@ -80404,7 +80400,7 @@ aaa aaa wdr vvW -mtL +wdr kFT nDP qEt @@ -83251,7 +83247,7 @@ eIa vNM wdr lMJ -lXm +qEt jrY qEt lMJ @@ -83522,7 +83518,7 @@ pOa aox aox aox -euT +aox aox aaa aaa @@ -84036,7 +84032,7 @@ iCx pOa dlL qgf -gDZ +aOs jUb jUb nBy @@ -84528,7 +84524,7 @@ lCD fSJ lCD lCD -wHK +kAw wwI lCD vAe @@ -85039,7 +85035,7 @@ fcq xjh qhW xjh -yme +xjh fxI tep dHc @@ -85341,7 +85337,7 @@ aaa aaa lMJ aox -pZW +lMJ aaa aaa xjH @@ -85855,7 +85851,7 @@ jUb jUb jUb oDs -aCW +oUJ nBy aaa xjH @@ -87585,7 +87581,7 @@ com hKg hKg xXR -kat +hKg hKg pnI hKg @@ -87595,7 +87591,7 @@ aaa hxo bnA riU -oDJ +cbz lAa fyz hxo @@ -88347,7 +88343,7 @@ dwI iPE vfv wXv -qCm +diI tXO jXu iGB @@ -88603,7 +88599,7 @@ ggZ isO gYE uEC -wgw +jXu twr fpn jXu @@ -88700,7 +88696,7 @@ gAf tSw tSw aaa -gda +lAu aaa aaa sGL @@ -89213,7 +89209,7 @@ tSw aBQ qEf qEf -aIl +xOB gXF atk bhS @@ -89913,7 +89909,7 @@ dfk rQD nsh vWD -uzK +jGH liU nrB smB @@ -90194,7 +90190,7 @@ wki jIY mjr bXQ -cxC +xwC saN tPe sVY @@ -90990,7 +90986,7 @@ rDJ guC fTE hBY -vVI +bKl gmN vun iRy @@ -91238,7 +91234,7 @@ mpV izs fYc gvd -grm +aCZ sSp ina drE @@ -91954,9 +91950,9 @@ rlU qrg cpi cpi -nSn -qpD -qYC +pEl +rlU +gda pNC uqX loR @@ -92045,7 +92041,7 @@ tSw wZA vpP tSw -wRB +tBO iix cvy xvf @@ -92236,7 +92232,7 @@ rBB kJk xJj gZq -aiy +ott oor mnP tEr @@ -92468,7 +92464,7 @@ rlU vbF wHW wHW -okj +khC rlU qYC pNC @@ -92482,7 +92478,7 @@ kQP kQP kQP kQP -rcR +lVp sZP pxK tAV @@ -92735,7 +92731,7 @@ hTM aHt aHt aHt -eaQ +jMg aHt qlW jfg @@ -93050,7 +93046,7 @@ mpk pyU vun eFG -cBH +lWX hwe iZn rar @@ -93272,7 +93268,7 @@ guR lsf usA vLi -vmX +mJO usA keR xuS @@ -93284,7 +93280,7 @@ usA vLi usA jWg -tKu +kJf bBA txz wYe @@ -93560,7 +93556,7 @@ dpI ttE ttE sZH -wUG +yiB eGJ rpw gQG @@ -93572,7 +93568,7 @@ pLz lgT hDp sOn -xUb +qGw ePg eMI jfN @@ -94818,8 +94814,8 @@ lxp qRI urA nIR -hyN -uaN +tOh +mGl jIg dTr rIL @@ -95014,7 +95010,7 @@ cFc tdW xQO tnb -cui +aqv aBL rUG cWI @@ -95597,8 +95593,8 @@ yfL yfL yfL yfL -hyN -qoR +tOh +jpS kON eLv qPJ @@ -95850,7 +95846,7 @@ gBD twl bcx rhK -rKJ +gwG wFe rjz fHd @@ -95860,7 +95856,7 @@ htd ebM uRA mTk -yhm +nTD rbs jHA lln @@ -96100,7 +96096,7 @@ htG bIq pJR mQq -ndS +wHr urA pFG gBD @@ -96305,7 +96301,7 @@ kNY btR btR swe -fNh +bHU wUc mtG uyd @@ -96318,7 +96314,7 @@ jyJ jyJ jyJ jyJ -cJj +dKl klp pHb wsX @@ -96562,7 +96558,7 @@ ndj cWI gCE lAM -osw +lAM lAM rJB ggj @@ -96575,7 +96571,7 @@ xqI gWc oAN iKj -vQI +lAM mCJ lsP ekP @@ -96616,8 +96612,8 @@ bOk tNg vpg ebx -aks -hux +gaO +gBD bbT ilq kAp @@ -97396,8 +97392,8 @@ sYh dVw nBs eLa -vyi -nNY +jzN +hhE htd tHR sTz @@ -97450,9 +97446,9 @@ bxX iUm aAS kJB -biA +woU iUm -xKd +lAu lMJ aaa aaa @@ -97642,8 +97638,8 @@ duI lwt ddm vKL -gmH -lSz +dho +wCR aks qzz qRV @@ -97861,7 +97857,7 @@ aeq dFW fYJ ycM -tYQ +dlf dsk ewC iAN @@ -98189,7 +98185,7 @@ iEK jyt vWn joq -naf +kUA hvs wWk aCE @@ -98200,11 +98196,11 @@ qQY njX njX njX -gSW +mio oAu bxf njX -cRw +jZU uGE njX vNv @@ -98633,7 +98629,7 @@ vDh ewj bkl wZU -pMy +yiH oGH orx eeq @@ -98889,8 +98885,8 @@ aeq jpj ewj ycM -mMM -bkl +mop +ycM ycM bkl bkl @@ -99148,7 +99144,7 @@ ayV gFR khm uok -bzV +vMj ezg uVv pdI @@ -99159,7 +99155,7 @@ olw pxT xEt wXT -jcR +hVQ fky vWI txH @@ -99183,8 +99179,8 @@ duI duI wtX ppB -nEC -gmH +wAI +dho ebx vQe kHn @@ -99206,7 +99202,7 @@ rgZ suW hJF cZK -euw +bto cXg nyy gVl @@ -99216,7 +99212,7 @@ ebV dZb ebV fma -xgi +bYQ sck iwA puP @@ -99405,8 +99401,8 @@ nZk sVi tjv pHb -syc -wkh +iNy +wFP dGW hhp bJq @@ -99452,8 +99448,8 @@ aAI gzi krL cqm -vyi -wpx +jzN +kGP htd tHR udN @@ -99662,7 +99658,7 @@ duF cJj erx lsP -vYF +mKQ eaP fDm bAV @@ -100179,7 +100175,7 @@ pHb qwh mrL fnN -cqd +jTk ieV qhz juj @@ -100214,8 +100210,8 @@ eoD eoD bcT xPN -vQe -kmZ +klN +tvE buL pha sdp @@ -100725,7 +100721,7 @@ syo sYp wBs apw -eVX +qfK syo nue vQe @@ -100770,7 +100766,7 @@ pJl rYI gHw nDw -eBU +jYa aYX vzx gyQ @@ -101719,7 +101715,7 @@ pBG sOZ uWo jMy -eey +gHD aHr mhA xNo @@ -102279,8 +102275,8 @@ tvE tvE aan tvE -kmZ -tsT +tvE +gJh htd dhU dkW @@ -102764,8 +102760,8 @@ iIf pJE uUl cBf -ftM -wEG +cBf +vQI htd vET syo @@ -103029,7 +103025,7 @@ sqM kwQ jZR sqM -cOP +dtE nOj wGa kwQ @@ -103037,7 +103033,7 @@ mmS vLb jmT jZR -mJN +fDb cwP sqM hBr @@ -103048,7 +103044,7 @@ diE dYg hwF diE -ggq +gyW nnR wah wpx @@ -103272,7 +103268,7 @@ rUO gmk qCP mPw -jhc +sqB iPp eVz pJE @@ -103313,8 +103309,8 @@ cfe ddO sLE cEv -cyM -eeT +tGy +hcg tUn hKV fWK @@ -103832,7 +103828,7 @@ qOM tUn ftj wXF -doM +bLq tZo bXg oFT @@ -104053,7 +104049,7 @@ xNv mqK qXB eFR -ubD +eXh usK dZm vFB @@ -104095,7 +104091,7 @@ rCx nBj gYe vQb -mdu +sQQ xPm ohZ sac @@ -104270,7 +104266,7 @@ aaa aaa aaa aaa -mxn +euT yeV hUB qmf @@ -104293,7 +104289,7 @@ fRW qnS uxb hAk -gzO +eve eqn jSb kAF @@ -105709,13 +105705,13 @@ lMJ dxK lMJ lMJ -weq +cxz kJi pgU qRS pnk kJi -weq +cxz aaa aaa aaa @@ -105870,7 +105866,7 @@ sFB mal wIf pmZ -qdI +oBK ttF sRY wDh @@ -105967,11 +105963,11 @@ aaa lMJ kJi kJi -hxV +fiu xhh xhh cmH -grw +jHy kJi kJi aaa @@ -106073,7 +106069,7 @@ cfy oAa peF peF -sSs +nOA gkM plL uKL @@ -106481,11 +106477,11 @@ aaa lMJ kJi kJi -coc +gDe bQk xhh xhh -iYD +wQE kJi kJi aaa @@ -106737,13 +106733,13 @@ lMJ dxK lMJ lMJ -weq +cxz kJi vpl cDb xOI kJi -weq +cxz aaa aaa aaa @@ -107112,7 +107108,7 @@ ewk dtg wcr mMx -edq +cUq wcr mMx qTz @@ -107443,9 +107439,9 @@ wXF mOD fAI tUn -tId +aah okQ -hEV +oBE bLd uGX xuD @@ -107700,9 +107696,9 @@ wXF wXF wXF wXF -bcb +gFQ gMQ -bcb +gFQ oWk clj xuD @@ -108744,7 +108740,7 @@ xuD xuD imU mEL -oWc +oWk rYy rUT uIi @@ -109947,7 +109943,7 @@ tCS aeu kSB gon -rux +hYH yaD uXd sVc @@ -109955,7 +109951,7 @@ tfg ssI ssI uXd -kCq +jyZ sXe gLo ofk @@ -109964,7 +109960,7 @@ fDL hSt qhw naN -fMN +lch icR sqE nGA @@ -110484,7 +110480,7 @@ sqE mEO gnS jPf -esk +xKd esk esk vgd @@ -110746,7 +110742,7 @@ mbJ ncd gYO flE -fcA +lpL cVj uKz fnT @@ -111252,7 +111248,7 @@ oWm cuc adz tUw -rHq +lkE peX kRi klw @@ -111491,7 +111487,7 @@ loA tlh loA erh -iHu +bRn xAW lia aXK @@ -112262,13 +112258,13 @@ wbF qaA bMA rao -vaI +djk yaF qaA fTL qaA wgf -jUT +mMH rao qaA haR @@ -112334,8 +112330,8 @@ aaa wmL cvO fjO -hUd -uWk +pSR +wmL aaa aaa aaa @@ -112519,13 +112515,13 @@ kYG sGC vuJ sGC -cFu +kYG kYG sGC wBM sGC dOs -cFu +kYG sGC pqb sNt @@ -113105,7 +113101,7 @@ eYu agN bXs bvg -juH +kZo pJA hLJ oMA @@ -114851,7 +114847,7 @@ fJy fJy fJy pnJ -dKl +fJy fJy byR iFh @@ -115896,7 +115892,7 @@ vRS gyJ qLU fFA -nGq +vYP kRf uQe pul @@ -117214,7 +117210,7 @@ nEb jCO caf tgm -gKD +rgH fdZ fdZ fdZ @@ -117433,7 +117429,7 @@ aaa vhv vhv vhv -sCp +vhv mUL isr eDc @@ -117689,8 +117685,8 @@ aaa aaa vhv sZI -trG -hEX +wau +wlQ vTX vTX gSu @@ -119239,8 +119235,8 @@ nqR oog vTX jTS -sCp -kJO +vhv +cAr cyW jvj pul @@ -119270,7 +119266,7 @@ rDf eUe eSb nnc -nnc +mtL nnc rvK nnc @@ -122814,10 +122810,10 @@ aaa aaa aaa lMJ -beq +ghL qmR cUI -beq +ghL blx qZX hml @@ -124360,7 +124356,7 @@ gfU gfU gfU gfU -evI +lhI abR pfe cok @@ -125128,7 +125124,7 @@ jEr lro aWN aVl -jGa +eBW uLv bjQ bjQ diff --git a/_maps/map_files/Mining/Lavaland.dmm b/_maps/map_files/Mining/Lavaland.dmm index a5993035d49070..276d55ba7dba57 100644 --- a/_maps/map_files/Mining/Lavaland.dmm +++ b/_maps/map_files/Mining/Lavaland.dmm @@ -20,7 +20,6 @@ /turf/closed/mineral/random/high_chance/volcanic, /area/lavaland/surface/outdoors) "ae" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /obj/effect/turf_decal/trimline/blue/filled/line{ @@ -82,12 +81,6 @@ /obj/item/clothing/glasses/meson, /turf/open/floor/iron/dark, /area/mine/storage/public) -"as" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) "av" = ( /obj/machinery/computer/arcade/orion_trail{ dir = 4 @@ -100,15 +93,10 @@ /turf/open/misc/asteroid/basalt/lava_land_surface, /area/lavaland/surface/outdoors) "aF" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet/red, -/area/mine/lobby/raptor) -"aH" = ( -/obj/structure/railing{ - dir = 10 - }, -/turf/open/misc/hay/lavaland, -/area/mine/lobby/raptor) +/obj/structure/lattice/catwalk/mining, +/obj/structure/railing, +/turf/open/lava/smooth/lava_land_surface, +/area/lavaland/surface/outdoors) "aM" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "lavaland_living_east_maint" @@ -118,7 +106,7 @@ /obj/machinery/door/airlock/external{ name = "Mining External Airlock" }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, /obj/effect/decal/cleanable/dirt, @@ -153,20 +141,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/mine/maintenance/service) -"aX" = ( -/obj/effect/turf_decal/sand/plating/volcanic, -/obj/structure/railing{ - dir = 9 - }, -/turf/open/floor/plating/lavaland_atmos, -/area/lavaland/surface/outdoors) -"ba" = ( -/obj/structure/chair/sofa/middle{ - dir = 1; - color = "#AA4A44" - }, -/turf/open/floor/carpet/red, -/area/mine/lobby/raptor) "bb" = ( /obj/structure/closet/crate/internals, /obj/item/tank/internals/emergency_oxygen, @@ -185,12 +159,19 @@ }, /area/mine/laborcamp/production) "be" = ( -/obj/machinery/door/airlock/external/glass{ - name = "Raptor Ranch External Airlock" +/obj/structure/railing{ + dir = 6 }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper, -/turf/open/floor/plating/lavaland_atmos, -/area/mine/lobby/raptor) +/obj/structure/table/wood, +/obj/item/raptor_dex, +/obj/item/raptor_dex{ + pixel_y = 7 + }, +/obj/item/raptor_dex{ + pixel_y = 13 + }, +/turf/open/misc/hay/lavaland, +/area/lavaland/surface/outdoors) "bf" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/smooth_large, @@ -234,10 +215,6 @@ }, /turf/open/floor/plating, /area/mine/maintenance/production) -"bE" = ( -/obj/structure/table/wood, -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) "bH" = ( /obj/structure/table, /obj/item/book/manual/chef_recipes{ @@ -398,8 +375,6 @@ /area/mine/maintenance/production) "cy" = ( /obj/structure/bed/medical/emergency, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/trimline/blue/filled/line, /turf/open/floor/iron/white/smooth_corner{ dir = 8 @@ -630,18 +605,22 @@ /turf/open/lava/smooth/lava_land_surface, /area/lavaland/surface/outdoors) "dF" = ( -/obj/structure/table/wood, -/obj/item/food/meat/slab, -/obj/item/food/meat/slab{ - pixel_x = 6; - pixel_y = 5 +/obj/item/reagent_containers/cup/bucket/wooden{ + pixel_y = 12; + pixel_x = 10 + }, +/obj/structure/chair/plastic{ + dir = 4 }, -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) +/turf/open/misc/hay/lavaland, +/area/lavaland/surface/outdoors) "dI" = ( -/obj/machinery/light/small/directional/east, -/turf/open/floor/plating/lavaland_atmos, -/area/mine/lobby/raptor) +/obj/structure/railing{ + dir = 1 + }, +/obj/structure/flora/ash/fireblossom, +/turf/open/misc/hay/lavaland, +/area/lavaland/surface/outdoors) "dJ" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -699,10 +678,17 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/decal/cleanable/dirt, +/obj/structure/cable, /turf/open/floor/iron/smooth_edge{ dir = 8 }, /area/mine/laborcamp/production) +"ep" = ( +/obj/structure/sign/directions/evac/directional/south{ + pixel_y = 0 + }, +/turf/closed/wall, +/area/mine/production) "et" = ( /obj/structure/stone_tile/block/cracked{ dir = 4 @@ -782,11 +768,12 @@ }, /area/mine/cafeteria) "eL" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/carpet/red, -/area/mine/lobby/raptor) +/obj/structure/railing{ + dir = 9 + }, +/obj/effect/turf_decal/sand/plating/volcanic, +/turf/open/floor/plating/lavaland_atmos, +/area/lavaland/surface/outdoors) "eN" = ( /obj/structure/chair/wood{ dir = 1 @@ -834,9 +821,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/plating, /area/mine/laborcamp/security/maintenance) -"fa" = ( -/turf/open/floor/carpet/red, -/area/mine/lobby/raptor) "fb" = ( /obj/structure/railing/corner{ dir = 4 @@ -847,6 +831,7 @@ "fe" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, /turf/open/floor/iron/smooth_large, /area/mine/laborcamp/production) "ff" = ( @@ -875,6 +860,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/decal/cleanable/dirt, +/obj/structure/cable, /turf/open/floor/iron/smooth, /area/mine/laborcamp) "fo" = ( @@ -1239,7 +1225,6 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 }, -/obj/structure/cable, /obj/machinery/light/directional/south, /obj/effect/turf_decal/trimline/red/filled/line, /obj/item/radio/intercom/directional/south, @@ -1289,8 +1274,10 @@ /turf/open/floor/iron/freezer, /area/mine/living_quarters) "hl" = ( -/obj/structure/tank_holder/extinguisher, -/turf/open/misc/asteroid/basalt/lava_land_surface, +/obj/structure/railing/corner/end/flip{ + dir = 4 + }, +/turf/open/misc/hay/lavaland, /area/lavaland/surface/outdoors) "hn" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ @@ -1410,13 +1397,6 @@ /obj/structure/stone_tile, /turf/open/misc/asteroid/basalt/lava_land_surface, /area/lavaland/surface/outdoors) -"hM" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, -/obj/machinery/light/directional/south, -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) "hR" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -1456,6 +1436,7 @@ name = "Infirmary" }, /obj/effect/turf_decal/tile/blue/fourcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/side{ dir = 1 }, @@ -1516,10 +1497,6 @@ /obj/item/clothing/glasses/meson, /turf/open/floor/iron/dark, /area/mine/storage/public) -"il" = ( -/obj/item/flashlight/lantern/on, -/turf/open/misc/hay/lavaland, -/area/mine/lobby/raptor) "io" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -1714,9 +1691,22 @@ /turf/open/lava/smooth/lava_land_surface, /area/lavaland/surface/outdoors) "jt" = ( -/obj/structure/fireplace, -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) +/obj/effect/turf_decal/trimline/yellow/filled/arrow_cw{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/red/filled/arrow_cw{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/yellow/filled/mid_joiner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/red/filled/mid_joiner{ + dir = 4 + }, +/turf/open/floor/iron/dark/textured_corner{ + dir = 1 + }, +/area/mine/production) "jw" = ( /obj/structure/disposalpipe/segment{ dir = 9 @@ -1761,11 +1751,6 @@ }, /turf/open/lava/smooth/lava_land_surface, /area/lavaland/surface/outdoors) -"jJ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) "jL" = ( /obj/structure/stone_tile/surrounding_tile, /obj/structure/stone_tile/surrounding_tile{ @@ -1816,12 +1801,23 @@ }, /area/mine/production) "jX" = ( -/obj/effect/turf_decal/siding/wood, -/obj/effect/turf_decal/siding/wood{ - dir = 1 +/obj/effect/turf_decal/trimline/yellow/filled/arrow_cw{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/red/filled/arrow_cw{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/yellow/filled/mid_joiner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/red/filled/mid_joiner{ + dir = 4 }, -/turf/open/floor/wood/large, -/area/mine/lobby/raptor) +/obj/structure/tank_holder/extinguisher, +/turf/open/floor/iron/dark/textured_corner{ + dir = 8 + }, +/area/mine/production) "ka" = ( /obj/structure/table, /obj/machinery/newscaster/directional/north, @@ -1833,18 +1829,16 @@ /turf/open/floor/iron/checker, /area/mine/cafeteria) "kf" = ( -/obj/structure/railing{ - dir = 9 +/obj/effect/turf_decal/sand/plating/volcanic, +/obj/structure/marker_beacon/purple, +/obj/structure/railing/corner/end/flip{ + dir = 8 }, -/turf/open/misc/hay/lavaland, -/area/mine/lobby/raptor) +/turf/open/floor/plating/lavaland_atmos, +/area/lavaland/surface/outdoors) "kg" = ( /turf/closed/wall/r_wall, /area/mine/laborcamp) -"ki" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating/lavaland_atmos, -/area/mine/lobby/raptor) "kk" = ( /obj/structure/stone_tile/block{ dir = 8 @@ -2193,12 +2187,15 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/door/airlock/external/glass{ name = "Mining Shuttle Airlock" }, /obj/effect/mapping_helpers/airlock/access/any/supply/mining, -/obj/effect/mapping_helpers/airlock/access/any/supply/mining, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line, /turf/open/floor/iron/dark/textured_large, /area/mine/production) "lN" = ( @@ -2328,17 +2325,6 @@ }, /turf/open/misc/asteroid/basalt/lava_land_surface, /area/lavaland/surface/outdoors) -"mk" = ( -/obj/structure/table/wood, -/obj/item/raptor_dex{ - pixel_y = 13 - }, -/obj/item/raptor_dex{ - pixel_y = 7 - }, -/obj/item/raptor_dex, -/turf/open/misc/hay/lavaland, -/area/mine/lobby/raptor) "ml" = ( /obj/structure/stone_tile/block/cracked{ dir = 8 @@ -2419,7 +2405,7 @@ /obj/structure/cable, /obj/structure/disposalpipe/segment, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -2752,12 +2738,6 @@ /obj/effect/spawner/random/trash/food_packaging, /turf/open/floor/iron/checker, /area/mine/laborcamp) -"nO" = ( -/obj/structure/railing{ - dir = 4 - }, -/turf/open/misc/asteroid/basalt/lava_land_surface, -/area/lavaland/surface/outdoors) "nP" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/portable_atmospherics/scrubber, @@ -2858,7 +2838,6 @@ /turf/open/floor/iron/dark, /area/mine/production) "oq" = ( -/obj/structure/cable, /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/smooth_large, /area/mine/laborcamp/production) @@ -2936,14 +2915,9 @@ /turf/open/floor/iron/dark, /area/mine/laborcamp) "oO" = ( -/obj/machinery/door/airlock/external/glass{ - name = "Mining External Airlock" - }, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 1 - }, -/turf/open/floor/plating/lavaland_atmos, -/area/mine/lobby/raptor) +/obj/structure/railing, +/turf/open/misc/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) "oS" = ( /obj/machinery/door/airlock/external/glass{ name = "Mining External Airlock" @@ -3015,7 +2989,6 @@ "pp" = ( /obj/effect/spawner/random/trash/graffiti, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable, /turf/open/floor/iron/smooth_large, /area/mine/laborcamp/production) "pq" = ( @@ -3090,12 +3063,6 @@ }, /turf/open/floor/plating, /area/mine/laborcamp) -"pF" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 - }, -/turf/open/floor/carpet/red, -/area/mine/lobby/raptor) "pH" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -3122,9 +3089,20 @@ /turf/open/floor/iron/freezer, /area/mine/laborcamp/quarters) "pM" = ( -/obj/structure/bookcase/random/reference, -/turf/open/floor/wood, -/area/mine/lobby/raptor) +/obj/effect/turf_decal/trimline/yellow/filled/arrow_ccw{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/red/filled/arrow_ccw{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/yellow/filled/mid_joiner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/red/filled/mid_joiner{ + dir = 8 + }, +/turf/open/floor/iron/dark/textured_corner, +/area/mine/production) "pO" = ( /obj/machinery/shower/directional/south, /obj/machinery/door/window/left/directional/south, @@ -3134,7 +3112,6 @@ "pP" = ( /obj/effect/turf_decal/bot, /obj/effect/decal/cleanable/dirt, -/obj/structure/cable, /turf/open/floor/iron/smooth_large, /area/mine/laborcamp/production) "pQ" = ( @@ -3284,11 +3261,6 @@ }, /turf/open/floor/iron/dark, /area/mine/laborcamp/security) -"qB" = ( -/obj/machinery/smartfridge/drying/rack, -/obj/item/food/cheese/firm_cheese, -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) "qH" = ( /obj/machinery/door/airlock{ id_tag = "miningbathroomprivate"; @@ -3348,35 +3320,12 @@ }, /turf/open/floor/plating/lavaland_atmos, /area/lavaland/surface/outdoors) -"rf" = ( -/obj/machinery/airalarm/directional/north, -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) "rj" = ( -/obj/item/food/grown/grass/fairy{ - name = "weird hay"; - desc = "Somehow, somewhere, this tells you it should increase your friendship level with your animals. Too bad that doesn't work, right?"; - pixel_y = -1; - pixel_x = 5 - }, -/obj/item/food/grown/grass/fairy{ - name = "weird hay"; - desc = "Somehow, somewhere, this tells you it should increase your friendship level with your animals. Too bad that doesn't work, right?"; - pixel_y = 9; - pixel_x = 8 - }, -/obj/item/food/grown/grass/fairy{ - name = "weird hay"; - desc = "Somehow, somewhere, this tells you it should increase your friendship level with your animals. Too bad that doesn't work, right?"; - pixel_y = 9; - pixel_x = 2 - }, -/obj/item/food/grown/grass/fairy{ - name = "weird hay"; - desc = "Somehow, somewhere, this tells you it should increase your friendship level with your animals. Too bad that doesn't work, right?" - }, +/obj/structure/railing, +/obj/structure/table/wood, +/obj/item/flashlight/lantern/on, /turf/open/misc/hay/lavaland, -/area/mine/lobby/raptor) +/area/lavaland/surface/outdoors) "rm" = ( /obj/structure/sign/warning/gas_mask/directional/west, /obj/effect/decal/cleanable/dirt, @@ -3419,12 +3368,13 @@ /turf/open/floor/plating, /area/mine/maintenance/service) "rB" = ( -/obj/structure/chair/sofa/corner{ - dir = 1; - color = "#AA4A44" +/obj/effect/turf_decal/sand/plating/volcanic, +/obj/structure/railing/corner/end/flip{ + dir = 4 }, -/turf/open/floor/carpet/red, -/area/mine/lobby/raptor) +/obj/structure/marker_beacon/purple, +/turf/open/floor/plating/lavaland_atmos, +/area/lavaland/surface/outdoors) "rF" = ( /turf/closed/wall/r_wall, /area/mine/maintenance/labor) @@ -3495,11 +3445,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/mine/maintenance/service) -"sa" = ( -/obj/structure/table/wood, -/obj/item/flashlight/lantern/on, -/turf/open/misc/hay/lavaland, -/area/mine/lobby/raptor) "se" = ( /turf/open/floor/iron/dark/textured_large, /area/mine/eva) @@ -3596,10 +3541,6 @@ "sO" = ( /turf/open/floor/plating, /area/mine/maintenance/service) -"sQ" = ( -/obj/structure/ore_container/food_trough/raptor_trough, -/turf/open/misc/hay/lavaland, -/area/mine/lobby/raptor) "sR" = ( /obj/machinery/light/small/directional/west, /obj/effect/decal/cleanable/dirt, @@ -3673,12 +3614,11 @@ }, /area/mine/cafeteria) "tf" = ( -/obj/structure/chair/sofa/corner{ - dir = 8; - color = "#AA4A44" +/obj/structure/railing{ + dir = 8 }, -/turf/open/floor/carpet/red, -/area/mine/lobby/raptor) +/turf/open/misc/hay/lavaland, +/area/lavaland/surface/outdoors) "tg" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/door/airlock/maintenance{ @@ -3742,8 +3682,6 @@ "tB" = ( /obj/structure/bed, /obj/item/bedsheet, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 6 }, @@ -3868,10 +3806,6 @@ }, /turf/open/floor/iron/white/smooth_edge, /area/mine/cafeteria) -"uw" = ( -/obj/effect/spawner/random/lavaland_mob/raptor, -/turf/open/misc/hay/lavaland, -/area/mine/lobby/raptor) "ux" = ( /obj/machinery/door/airlock{ id_tag = "miningdorm1"; @@ -3887,6 +3821,7 @@ /obj/effect/turf_decal/siding/wideplating_new{ dir = 9 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/checker, /area/mine/laborcamp) "uD" = ( @@ -3944,8 +3879,8 @@ /turf/open/floor/iron/dark/smooth_edge, /area/mine/laborcamp/security) "vb" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/trimline/blue/filled/line, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/smooth_corner, /area/mine/medical) "vc" = ( @@ -4035,14 +3970,24 @@ /turf/open/floor/plating, /area/mine/hydroponics) "vr" = ( -/obj/structure/railing{ - dir = 1 +/obj/effect/turf_decal/trimline/yellow/filled/arrow_ccw{ + dir = 8 }, -/turf/open/misc/hay/lavaland, -/area/mine/lobby/raptor) +/obj/effect/turf_decal/trimline/red/filled/arrow_ccw{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/yellow/filled/mid_joiner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/red/filled/mid_joiner{ + dir = 8 + }, +/turf/open/floor/iron/dark/textured_edge{ + dir = 8 + }, +/area/mine/production) "vu" = ( /obj/structure/bed/medical/emergency, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/trimline/blue/filled/line, /turf/open/floor/iron/white, /area/mine/medical) @@ -4101,6 +4046,7 @@ /area/mine/living_quarters) "vJ" = ( /obj/item/cigbutt, +/obj/structure/cable, /turf/open/floor/iron/smooth_large, /area/mine/laborcamp/production) "vL" = ( @@ -4108,14 +4054,6 @@ /obj/item/cigbutt, /turf/open/floor/iron/smooth, /area/mine/laborcamp) -"vM" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/obj/effect/turf_decal/siding/wood, -/obj/effect/turf_decal/siding/wood{ - dir = 1 - }, -/turf/open/floor/wood/large, -/area/mine/lobby/raptor) "vN" = ( /obj/machinery/computer/records/security, /obj/structure/cable, @@ -4168,11 +4106,12 @@ /turf/open/floor/iron/checker, /area/mine/laborcamp) "wa" = ( -/obj/machinery/camera/autoname/directional/north{ - network = list("mine") +/obj/structure/railing{ + dir = 4 }, -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) +/obj/structure/ore_container/food_trough/raptor_trough, +/turf/open/misc/hay/lavaland, +/area/lavaland/surface/outdoors) "wb" = ( /obj/structure/chair{ dir = 8 @@ -4655,7 +4594,11 @@ /turf/open/floor/plating, /area/mine/maintenance/service) "ze" = ( -/turf/open/misc/ashplanet/rocky, +/obj/structure/railing{ + dir = 8 + }, +/obj/structure/ore_container/food_trough/raptor_trough, +/turf/open/misc/hay/lavaland, /area/lavaland/surface/outdoors) "zf" = ( /obj/machinery/door/airlock{ @@ -4811,12 +4754,9 @@ /turf/open/misc/asteroid/basalt/lava_land_surface, /area/lavaland/surface/outdoors) "zX" = ( -/obj/structure/chair/wood{ - dir = 1 - }, -/obj/machinery/light/directional/south, -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) +/obj/structure/railing/corner, +/turf/open/misc/hay/lavaland, +/area/lavaland/surface/outdoors) "Ae" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -4833,12 +4773,12 @@ /turf/open/floor/plating, /area/mine/laborcamp/production) "Ah" = ( -/obj/machinery/microwave{ - pixel_y = 6 +/obj/structure/lattice/catwalk/mining, +/obj/structure/railing{ + dir = 1 }, -/obj/structure/table/wood, -/turf/open/floor/carpet/red, -/area/mine/lobby/raptor) +/turf/open/lava/smooth/lava_land_surface, +/area/lavaland/surface/outdoors) "Ai" = ( /obj/structure/stone_tile/cracked{ dir = 1 @@ -4875,10 +4815,10 @@ /turf/open/floor/iron/dark/textured_large, /area/mine/production) "Av" = ( -/obj/structure/railing{ - dir = 9 +/obj/structure/railing/corner{ + dir = 8 }, -/turf/open/misc/asteroid/basalt/lava_land_surface, +/turf/open/misc/hay/lavaland, /area/lavaland/surface/outdoors) "Ax" = ( /obj/item/pickaxe, @@ -4903,11 +4843,10 @@ /turf/open/floor/iron/smooth, /area/mine/laborcamp) "AF" = ( -/obj/structure/lattice/catwalk/mining, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/lava/smooth/lava_land_surface, +/obj/structure/railing{ + dir = 10 + }, +/turf/open/misc/hay/lavaland, /area/lavaland/surface/outdoors) "AI" = ( /obj/structure/cable, @@ -4986,7 +4925,6 @@ /turf/open/floor/iron/smooth, /area/mine/laborcamp) "BA" = ( -/obj/structure/cable, /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/smooth_edge{ dir = 8 @@ -5041,7 +4979,7 @@ /obj/machinery/door/airlock/external{ name = "Mining External Airlock" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, @@ -5086,30 +5024,9 @@ }, /turf/open/floor/iron/checker, /area/mine/cafeteria) -"Cn" = ( -/obj/structure/table/wood, -/obj/item/plate{ - pixel_x = 6; - pixel_y = 7 - }, -/obj/item/plate{ - pixel_x = -6; - pixel_y = -6 - }, -/obj/item/reagent_containers/cup/glass/mug/tea{ - pixel_x = 8; - pixel_y = -3 - }, -/obj/effect/turf_decal/siding/wood/end{ - dir = 8 - }, -/turf/open/floor/wood/large, -/area/mine/lobby/raptor) "Cv" = ( -/obj/effect/turf_decal/sand/plating/volcanic, -/obj/structure/marker_beacon/purple, -/obj/effect/turf_decal/sand/plating/volcanic, -/turf/open/floor/plating/lavaland_atmos, +/obj/effect/spawner/random/lavaland_mob/raptor/young, +/turf/open/misc/hay/lavaland, /area/lavaland/surface/outdoors) "Cz" = ( /obj/machinery/door/airlock/medical/glass{ @@ -5163,21 +5080,27 @@ /turf/open/floor/iron/dark, /area/mine/mechbay) "CI" = ( -/obj/structure/sign/directions/supply/directional/east{ - pixel_x = null; - pixel_y = -24 +/obj/structure/railing{ + dir = 5 }, -/obj/structure/disposalpipe/segment{ - dir = 4 +/turf/open/misc/hay/lavaland, +/area/lavaland/surface/outdoors) +"CM" = ( +/obj/effect/turf_decal/trimline/yellow/filled/arrow_ccw{ + dir = 8 }, -/obj/effect/turf_decal/trimline/blue/filled/line, -/turf/open/floor/iron/edge{ - dir = 1 +/obj/effect/turf_decal/trimline/red/filled/arrow_ccw{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/yellow/filled/mid_joiner{ + dir = 8 + }, +/obj/effect/turf_decal/trimline/red/filled/mid_joiner{ + dir = 8 + }, +/turf/open/floor/iron/dark/textured_corner{ + dir = 4 }, -/area/mine/living_quarters) -"CM" = ( -/obj/effect/turf_decal/stripes/line, -/turf/open/floor/iron/dark/textured_large, /area/mine/production) "CO" = ( /turf/open/floor/iron/textured_large, @@ -5194,7 +5117,6 @@ /obj/machinery/door/airlock/maintenance{ name = "Mining Station Maintenance" }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, @@ -5209,9 +5131,6 @@ /obj/structure/curtain, /turf/open/floor/iron/freezer, /area/mine/living_quarters) -"CV" = ( -/turf/closed/wall/mineral/iron, -/area/mine/lobby/raptor) "CX" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -5416,6 +5335,7 @@ "Ez" = ( /obj/effect/turf_decal/bot, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/floor/iron/smooth_large, /area/mine/laborcamp/production) "EB" = ( @@ -5476,12 +5396,6 @@ dir = 1 }, /area/mine/production) -"EP" = ( -/obj/structure/railing{ - dir = 4 - }, -/turf/open/misc/hay/lavaland, -/area/mine/lobby/raptor) "EQ" = ( /turf/open/floor/iron/smooth_edge{ dir = 8 @@ -5536,12 +5450,6 @@ }, /turf/open/misc/asteroid/basalt/lava_land_surface, /area/lavaland/surface/outdoors) -"Fo" = ( -/obj/effect/turf_decal/siding/wood/end{ - dir = 4 - }, -/turf/open/floor/wood/large, -/area/mine/lobby/raptor) "Fp" = ( /obj/structure/table, /obj/machinery/recharger, @@ -5551,11 +5459,17 @@ /turf/open/floor/iron/dark, /area/mine/laborcamp/security) "Fr" = ( -/obj/machinery/door/airlock/external/glass{ - name = "Mining Shuttle Airlock" +/obj/effect/turf_decal/trimline/yellow/filled/corner{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/yellow/filled/corner, +/obj/effect/turf_decal/trimline/red/filled/corner, +/obj/effect/turf_decal/trimline/red/filled/corner{ + dir = 4 + }, +/turf/open/floor/iron/dark/textured_edge{ + dir = 4 }, -/obj/effect/mapping_helpers/airlock/access/any/supply/mining, -/turf/open/floor/iron/dark/textured_large, /area/mine/production) "Fs" = ( /obj/effect/turf_decal/sand/plating/volcanic, @@ -5600,10 +5514,6 @@ "FH" = ( /turf/closed/wall, /area/lavaland/surface/outdoors) -"FI" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) "FL" = ( /obj/structure/disposalpipe/segment, /obj/machinery/light/small/directional/west, @@ -5689,6 +5599,10 @@ /obj/effect/turf_decal/trimline/green/filled/line, /turf/open/floor/iron/dark, /area/mine/laborcamp) +"Gw" = ( +/obj/structure/sign/directions/supply/directional/east, +/turf/closed/wall, +/area/mine/living_quarters) "Gx" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -5731,9 +5645,6 @@ dir = 8 }, /area/mine/production) -"GG" = ( -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) "GH" = ( /obj/machinery/door/airlock/glass{ name = "Arrival Lounge" @@ -5743,12 +5654,6 @@ /obj/effect/turf_decal/tile/blue/fourcorners, /turf/open/floor/iron, /area/mine/lounge) -"GI" = ( -/obj/structure/rack, -/obj/item/stack/sheet/mineral/wood/fifty, -/obj/item/lighter, -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) "GL" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -5797,7 +5702,6 @@ /turf/open/floor/plating, /area/mine/maintenance/labor) "Hd" = ( -/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/decal/cleanable/dirt, @@ -6144,9 +6048,10 @@ /area/mine/laborcamp) "Jg" = ( /obj/effect/turf_decal/sand/plating/volcanic, -/obj/structure/railing{ - dir = 10 +/obj/structure/railing/corner/end{ + dir = 4 }, +/obj/structure/marker_beacon/purple, /turf/open/floor/plating/lavaland_atmos, /area/lavaland/surface/outdoors) "Jh" = ( @@ -6201,7 +6106,6 @@ /turf/open/floor/iron, /area/mine/lounge) "Ju" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured_large, /area/mine/mechbay) @@ -6222,10 +6126,6 @@ /area/lavaland/surface/outdoors) "JA" = ( /obj/machinery/computer/shuttle/mining/common, -/obj/structure/sign/directions/evac/directional/east{ - pixel_x = 0; - pixel_y = 24 - }, /obj/machinery/camera/autoname/directional/north{ network = list("mine") }, @@ -6407,40 +6307,11 @@ /turf/open/misc/asteroid/basalt/lava_land_surface, /area/lavaland/surface/outdoors) "Km" = ( -/obj/structure/rack, -/obj/item/food/grown/grass/fairy{ - name = "weird hay"; - desc = "Somehow, somewhere, this tells you it should increase your friendship level with your animals. Too bad that doesn't work, right?" - }, -/obj/item/food/grown/grass/fairy{ - name = "weird hay"; - desc = "Somehow, somewhere, this tells you it should increase your friendship level with your animals. Too bad that doesn't work, right?"; - pixel_y = 9 - }, -/obj/item/food/grown/grass/fairy{ - name = "weird hay"; - desc = "Somehow, somewhere, this tells you it should increase your friendship level with your animals. Too bad that doesn't work, right?"; - pixel_y = 9; - pixel_x = 2 - }, -/obj/item/food/grown/grass/fairy{ - name = "weird hay"; - desc = "Somehow, somewhere, this tells you it should increase your friendship level with your animals. Too bad that doesn't work, right?"; - pixel_y = 6 - }, -/obj/item/food/grown/grass/fairy{ - name = "weird hay"; - desc = "Somehow, somewhere, this tells you it should increase your friendship level with your animals. Too bad that doesn't work, right?"; - pixel_y = 6; - pixel_x = 9 - }, -/obj/item/crowbar/large, -/obj/effect/turf_decal/siding/wood, -/obj/effect/turf_decal/siding/wood{ - dir = 1 +/obj/structure/railing/corner/end{ + dir = 8 }, -/turf/open/floor/wood/large, -/area/mine/lobby/raptor) +/turf/open/misc/hay/lavaland, +/area/lavaland/surface/outdoors) "Kn" = ( /obj/machinery/telecomms/relay/preset/mining, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -6460,11 +6331,6 @@ /obj/item/radio/intercom/directional/west, /turf/open/floor/iron/dark, /area/mine/storage/public) -"Kp" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/iron/smooth_edge, -/area/mine/laborcamp) "Kq" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -6534,12 +6400,6 @@ }, /turf/open/floor/iron/checker, /area/mine/cafeteria) -"KO" = ( -/obj/structure/railing{ - dir = 8 - }, -/turf/open/misc/hay/lavaland, -/area/mine/lobby/raptor) "KV" = ( /obj/structure/table, /obj/machinery/light/directional/east, @@ -6580,6 +6440,7 @@ dir = 1 }, /obj/effect/spawner/random/trash/mess, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/checker, /area/mine/laborcamp) "Lg" = ( @@ -6661,15 +6522,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/mine/storage) -"Lv" = ( -/obj/machinery/power/apc/auto_name/directional/south, -/obj/structure/cable, -/obj/effect/turf_decal/siding/wood{ - dir = 1 - }, -/obj/effect/turf_decal/siding/wood, -/turf/open/floor/wood/large, -/area/mine/lobby/raptor) "Lw" = ( /obj/effect/turf_decal/sand/plating/volcanic, /obj/effect/turf_decal/stripes/line{ @@ -6688,7 +6540,7 @@ /area/mine/storage) "LE" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 + dir = 8 }, /obj/effect/turf_decal/siding/yellow{ dir = 1 @@ -6761,7 +6613,6 @@ /area/mine/laborcamp/production) "LR" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable, /obj/machinery/portable_atmospherics/canister/oxygen, /turf/open/floor/iron/smooth_edge{ dir = 4 @@ -6786,7 +6637,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/smooth_edge, /area/mine/laborcamp) @@ -6827,10 +6677,6 @@ dir = 8 }, /area/mine/lounge) -"Mf" = ( -/obj/item/kirbyplants/random, -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) "Mr" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, @@ -6909,28 +6755,19 @@ /turf/open/floor/iron/checker, /area/mine/cafeteria) "MQ" = ( -/obj/structure/railing/corner{ - dir = 4 - }, /obj/structure/sign/directions/security/directional/west{ - pixel_x = 32; - pixel_y = -8 - }, -/obj/structure/sign/directions/lavaland/directional/north{ - pixel_x = 32; - pixel_y = 8 + pixel_y = -7; + pixel_x = 0 }, -/obj/effect/turf_decal/sand/plating/volcanic, -/turf/open/floor/plating/lavaland_atmos, +/turf/closed/wall, /area/lavaland/surface/outdoors) "MS" = ( /turf/open/floor/carpet/executive, /area/mine/lounge) "MW" = ( -/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/spawner/random/trash/mess, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/smooth_edge{ dir = 4 }, @@ -6939,6 +6776,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/decal/cleanable/dirt, +/obj/structure/cable, /turf/open/floor/iron/smooth_large, /area/mine/laborcamp/production) "Nc" = ( @@ -7011,6 +6849,7 @@ /obj/structure/ore_box, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/decal/cleanable/dirt, +/obj/structure/cable, /turf/open/floor/iron/smooth_large, /area/mine/laborcamp/production) "Ns" = ( @@ -7046,7 +6885,6 @@ "Nz" = ( /obj/effect/turf_decal/bot, /obj/structure/ore_box, -/obj/structure/cable, /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/smooth_large, /area/mine/laborcamp/production) @@ -7073,9 +6911,6 @@ /obj/machinery/computer/order_console/mining, /turf/open/floor/iron/dark, /area/mine/production) -"NK" = ( -/turf/open/misc/ashplanet/ash, -/area/lavaland/surface/outdoors) "NL" = ( /obj/structure/railing, /obj/structure/lattice/catwalk/mining, @@ -7086,12 +6921,12 @@ /turf/open/floor/plating, /area/mine/laborcamp/security/maintenance) "NP" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/spawner/structure/window/reinforced, -/obj/structure/cable, -/turf/open/floor/plating/lavaland_atmos, -/area/mine/lobby/raptor) +/obj/structure/railing{ + dir = 1 + }, +/obj/effect/spawner/random/lavaland_mob/raptor/baby, +/turf/open/misc/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) "NR" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 @@ -7101,9 +6936,6 @@ dir = 1 }, /area/mine/laborcamp/production) -"NS" = ( -/turf/open/misc/hay/lavaland, -/area/mine/lobby/raptor) "NT" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -7198,13 +7030,6 @@ }, /turf/open/floor/iron, /area/mine/lounge) -"Oo" = ( -/obj/structure/railing{ - dir = 5 - }, -/obj/item/reagent_containers/cup/bucket/wooden, -/turf/open/misc/hay/lavaland, -/area/lavaland/surface/outdoors) "Op" = ( /obj/structure/stone_tile/slab, /turf/open/misc/asteroid/basalt/lava_land_surface, @@ -7226,16 +7051,6 @@ dir = 4 }, /area/mine/laborcamp/security) -"OE" = ( -/obj/effect/turf_decal/siding/wood, -/obj/effect/turf_decal/siding/wood{ - dir = 1 - }, -/obj/structure/chair/wood{ - dir = 1 - }, -/turf/open/floor/wood/large, -/area/mine/lobby/raptor) "OH" = ( /obj/item/storage/fancy/cigarettes/cigpack_robust{ pixel_x = -8; @@ -7282,17 +7097,6 @@ /obj/structure/cable, /turf/open/floor/iron/white/textured_large, /area/mine/cafeteria) -"OW" = ( -/obj/structure/table/wood, -/obj/item/soap/deluxe{ - pixel_y = 11 - }, -/obj/item/soap/deluxe{ - pixel_y = 6 - }, -/obj/item/soap/deluxe, -/turf/open/misc/hay/lavaland, -/area/mine/lobby/raptor) "OZ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -7316,13 +7120,6 @@ /obj/effect/turf_decal/stripes/corner, /turf/open/floor/plating/lavaland_atmos, /area/lavaland/surface/outdoors) -"Pe" = ( -/obj/structure/lattice/catwalk/mining, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/plating/lavaland_atmos, -/area/lavaland/surface/outdoors) "Pi" = ( /obj/machinery/light/small/directional/south, /obj/effect/turf_decal/trimline/red/filled/line, @@ -7362,10 +7159,10 @@ /turf/open/floor/plating, /area/mine/cafeteria) "Pn" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/plating/lavaland_atmos, +/obj/structure/railing{ + dir = 6 + }, +/turf/open/misc/hay/lavaland, /area/lavaland/surface/outdoors) "Po" = ( /obj/structure/table, @@ -7673,23 +7470,6 @@ /obj/structure/easel, /turf/open/misc/hay/lavaland, /area/lavaland/surface/outdoors) -"Rj" = ( -/obj/machinery/suit_storage_unit/mining, -/obj/effect/turf_decal/trimline/brown/filled/line{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/iron/dark/smooth_edge{ - dir = 8 - }, -/area/mine/eva) -"Rm" = ( -/obj/structure/bed, -/obj/effect/spawner/random/bedsheet, -/turf/open/floor/carpet/red, -/area/mine/lobby/raptor) "Ro" = ( /obj/effect/turf_decal/loading_area, /obj/effect/turf_decal/trimline/brown/filled/line{ @@ -7746,26 +7526,16 @@ /turf/closed/wall, /area/mine/maintenance/labor) "RF" = ( -/obj/structure/railing/corner{ - dir = 1 - }, -/obj/structure/sign/directions/security/directional/west{ - pixel_x = 0; - pixel_y = 24 - }, /obj/structure/sign/directions/lavaland/directional/west{ - pixel_x = 0; - pixel_y = 32 + pixel_x = 0 }, -/obj/effect/turf_decal/sand/plating/volcanic, -/turf/open/floor/plating/lavaland_atmos, -/area/lavaland/surface/outdoors) +/turf/closed/wall, +/area/mine/cafeteria) "RG" = ( /obj/machinery/door/airlock/public/glass{ id_tag = "cellblock1"; name = "Labor Camp Operations" }, -/obj/structure/cable, /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/smooth, /area/mine/laborcamp) @@ -7775,12 +7545,12 @@ /turf/open/misc/asteroid/basalt/lava_land_surface, /area/lavaland/surface/outdoors) "RO" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, -/turf/open/floor/plating, -/area/mine/eva) +/obj/effect/turf_decal/sand/plating/volcanic, +/obj/structure/railing{ + dir = 1 + }, +/turf/open/floor/plating/lavaland_atmos, +/area/lavaland/surface/outdoors) "RV" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 @@ -7791,7 +7561,7 @@ /area/mine/laborcamp/quarters) "RW" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 1 }, @@ -7842,11 +7612,6 @@ }, /turf/open/misc/asteroid/basalt/lava_land_surface, /area/lavaland/surface/outdoors) -"Sj" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/carpet/red, -/area/mine/lobby/raptor) "Sm" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/effect/turf_decal/siding/yellow, @@ -7861,15 +7626,16 @@ /turf/open/floor/iron/dark, /area/mine/hydroponics) "Sp" = ( -/obj/structure/easel, -/obj/item/canvas/fortyfive_twentyseven, -/obj/item/canvas/thirtysix_twentyfour, -/obj/item/canvas/twentythree_nineteen, -/obj/item/paint_palette, -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) +/obj/structure/railing{ + dir = 8 + }, +/obj/structure/railing/corner, +/turf/open/misc/hay/lavaland, +/area/lavaland/surface/outdoors) "Sq" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, /obj/structure/cable, /obj/machinery/airalarm/directional/north, /obj/effect/turf_decal/trimline/blue/filled/line{ @@ -8049,23 +7815,24 @@ dir = 4 }, /area/mine/production) -"Tt" = ( -/obj/item/kirbyplants/random, -/obj/effect/turf_decal/siding/wood/end{ - dir = 4 - }, -/turf/open/floor/wood/large, -/area/mine/lobby/raptor) "Tu" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/smooth, /area/mine/laborcamp) -"Tw" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) +"Tv" = ( +/obj/machinery/door/airlock/external/glass{ + name = "Mining External Airlock" + }, +/obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ + cycle_id = "lavaland_living_west" + }, +/obj/structure/sign/directions/security/directional/west{ + pixel_y = -8 + }, +/turf/open/floor/iron/textured_large, +/area/mine/cafeteria) "Tx" = ( /obj/machinery/light/small/directional/north, /obj/effect/decal/cleanable/dirt, @@ -8079,7 +7846,6 @@ /turf/open/floor/iron/dark/smooth_edge, /area/mine/production) "TF" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/effect/turf_decal/trimline/purple/filled/corner{ @@ -8225,9 +7991,7 @@ /turf/open/floor/iron/dark/textured_large, /area/mine/production) "Ut" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 - }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/smooth_edge, /area/mine/laborcamp) "Uu" = ( @@ -8246,9 +8010,12 @@ /turf/open/misc/asteroid/basalt/lava_land_surface, /area/lavaland/surface/outdoors) "Uz" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/carpet/red, -/area/mine/lobby/raptor) +/obj/structure/railing{ + dir = 1 + }, +/obj/item/flashlight/lantern/on, +/turf/open/misc/hay/lavaland, +/area/lavaland/surface/outdoors) "UD" = ( /obj/structure/toilet{ dir = 8 @@ -8337,9 +8104,9 @@ /turf/open/misc/asteroid/basalt/lava_land_surface, /area/lavaland/surface/outdoors) "Vd" = ( -/obj/structure/railing, -/turf/open/misc/hay/lavaland, -/area/mine/lobby/raptor) +/obj/structure/flora/ash/tall_shroom, +/turf/open/misc/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) "Ve" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark/textured_large, @@ -8462,14 +8229,18 @@ /turf/open/floor/iron/checker, /area/mine/laborcamp) "VI" = ( -/obj/effect/spawner/random/food_or_drink/donkpockets, -/obj/effect/spawner/random/food_or_drink/donkpockets{ - pixel_x = 6; - pixel_y = 5 +/obj/machinery/door/airlock/external/glass{ + name = "Mining Shuttle Airlock" }, -/obj/structure/table/wood, -/turf/open/floor/carpet/red, -/area/mine/lobby/raptor) +/obj/effect/mapping_helpers/airlock/access/any/supply/mining, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/turf/open/floor/iron/dark/textured_large, +/area/mine/production) "VJ" = ( /obj/structure/closet/crate, /obj/item/food/mint, @@ -8492,12 +8263,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/mine/maintenance/labor) -"VP" = ( -/obj/effect/turf_decal/siding/wood/end{ - dir = 8 - }, -/turf/open/floor/wood/large, -/area/mine/lobby/raptor) "VS" = ( /obj/machinery/hydroponics/constructable, /obj/effect/decal/cleanable/dirt, @@ -8508,10 +8273,8 @@ /turf/open/floor/iron/dark, /area/mine/laborcamp) "VU" = ( -/obj/structure/railing/corner/end{ - dir = 8 - }, -/turf/open/misc/asteroid/basalt/lava_land_surface, +/obj/structure/railing, +/turf/open/misc/hay/lavaland, /area/lavaland/surface/outdoors) "VX" = ( /obj/effect/decal/cleanable/dirt, @@ -8546,15 +8309,22 @@ /area/mine/lounge) "Wh" = ( /obj/structure/railing{ - dir = 8 + dir = 10 }, -/turf/open/misc/asteroid/basalt/lava_land_surface, +/obj/structure/table/wood, +/obj/item/soap/deluxe, +/obj/item/soap/deluxe{ + pixel_y = 6 + }, +/obj/item/soap/deluxe{ + pixel_y = 11 + }, +/turf/open/misc/hay/lavaland, /area/lavaland/surface/outdoors) "Wk" = ( -/obj/structure/railing{ - dir = 1 - }, -/turf/open/misc/asteroid/basalt/lava_land_surface, +/obj/structure/railing, +/obj/effect/spawner/random/lavaland_mob/raptor/young, +/turf/open/misc/hay/lavaland, /area/lavaland/surface/outdoors) "Wl" = ( /obj/machinery/door/airlock/external/glass{ @@ -8576,11 +8346,9 @@ }, /area/mine/laborcamp/security) "Wq" = ( -/obj/structure/railing{ - dir = 5 - }, -/turf/open/misc/hay/lavaland, -/area/mine/lobby/raptor) +/obj/structure/flora/ash/leaf_shroom, +/turf/open/misc/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) "Wt" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/structure/disposalpipe/segment, @@ -8746,10 +8514,6 @@ dir = 4 }, /area/mine/production) -"Xk" = ( -/obj/effect/spawner/random/lavaland_mob/raptor, -/turf/open/misc/hay/lavaland, -/area/lavaland/surface/outdoors) "Xp" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -8790,6 +8554,7 @@ /obj/effect/turf_decal/siding/wideplating_new{ dir = 1 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/checker, /area/mine/laborcamp) "XA" = ( @@ -8839,13 +8604,6 @@ /obj/item/seeds/apple, /turf/open/floor/iron/dark, /area/mine/laborcamp) -"XM" = ( -/obj/structure/sign/directions/evac/directional/south{ - pixel_x = -32; - pixel_y = 0 - }, -/turf/open/floor/iron/dark/textured_large, -/area/mine/production) "XP" = ( /obj/structure/stone_tile/cracked, /obj/structure/stone_tile/block{ @@ -8936,8 +8694,6 @@ /area/mine/lounge) "Yg" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, /turf/open/floor/iron/dark/textured_large, /area/mine/eva) "Yk" = ( @@ -9024,13 +8780,13 @@ /turf/open/misc/asteroid/basalt/lava_land_surface, /area/lavaland/surface/outdoors) "YP" = ( -/obj/structure/bookcase/random/reference, -/obj/effect/turf_decal/siding/wood, -/obj/effect/turf_decal/siding/wood{ - dir = 1 +/obj/effect/turf_decal/sand/plating/volcanic, +/obj/structure/railing/corner/end{ + dir = 8 }, -/turf/open/floor/wood/large, -/area/mine/lobby/raptor) +/obj/structure/marker_beacon/purple, +/turf/open/floor/plating/lavaland_atmos, +/area/lavaland/surface/outdoors) "YR" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -9066,6 +8822,11 @@ }, /turf/open/floor/iron, /area/mine/lounge) +"Zg" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/sign/directions/evac/directional/east, +/turf/open/floor/plating, +/area/mine/lounge) "Zh" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -9114,10 +8875,6 @@ }, /turf/open/floor/iron/smooth, /area/mine/laborcamp/production) -"Zs" = ( -/obj/structure/closet/secure_closet/personal/cabinet, -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) "Zt" = ( /turf/closed/wall, /area/mine/laborcamp) @@ -9137,12 +8894,10 @@ /area/mine/living_quarters) "Zx" = ( /obj/structure/sign/directions/dorms/directional/west{ - pixel_x = 0; - pixel_y = 24 + pixel_x = 0 }, -/obj/effect/turf_decal/sand/plating/volcanic, -/turf/open/floor/plating/lavaland_atmos, -/area/lavaland/surface/outdoors) +/turf/closed/wall, +/area/mine/maintenance/production) "Zz" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -9157,18 +8912,25 @@ dir = 8 }, /area/mine/lounge) -"ZB" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 1 +"ZC" = ( +/obj/structure/railing/corner{ + dir = 4 }, -/obj/effect/turf_decal/siding/wood, -/turf/open/floor/wood/large, -/area/mine/lobby/raptor) -"ZF" = ( -/obj/effect/turf_decal/sand/plating/volcanic, /obj/effect/turf_decal/sand/plating/volcanic, +/obj/structure/sign/directions/lavaland/directional/north{ + pixel_y = 40 + }, /turf/open/floor/plating/lavaland_atmos, /area/lavaland/surface/outdoors) +"ZF" = ( +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/railing/corner{ + dir = 8 + }, +/turf/open/misc/hay/lavaland, +/area/lavaland/surface/outdoors) "ZH" = ( /obj/structure/closet/secure_closet/labor_camp_security, /obj/effect/turf_decal/trimline/red/filled/line{ @@ -9178,12 +8940,11 @@ /turf/open/floor/iron/dark, /area/mine/laborcamp/security) "ZL" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/chair/wood, -/obj/structure/cable, -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) +/obj/structure/railing/corner/end/flip{ + dir = 8 + }, +/turf/open/misc/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) "ZM" = ( /obj/structure/railing{ dir = 8 @@ -9216,16 +8977,9 @@ /turf/open/floor/plating, /area/mine/maintenance/public/north) "ZU" = ( -/obj/structure/railing{ - dir = 6 - }, -/turf/open/misc/hay/lavaland, -/area/mine/lobby/raptor) -"ZX" = ( -/obj/structure/table/wood, -/obj/item/knife, -/turf/open/floor/wood/parquet, -/area/mine/lobby/raptor) +/obj/effect/spawner/random/lavaland_mob/raptor/young, +/turf/open/misc/asteroid/basalt/lava_land_surface, +/area/lavaland/surface/outdoors) "ZY" = ( /turf/closed/mineral/random/volcanic, /area/lavaland/surface/outdoors/unexplored) @@ -26417,7 +26171,7 @@ Zt rX Zt Ub -Tu +fg MW HS Dn @@ -26931,7 +26685,7 @@ Zt rX Zt rS -Kp +zQ Xy hW PY @@ -35417,7 +35171,7 @@ VK VK VK Nf -MQ +rG BP ol pU @@ -35674,8 +35428,8 @@ aj aj aj aj -FH -rG +MQ +ZC ol aj aj @@ -37473,8 +37227,8 @@ zH kY kY Tc -kY RF +vd NL aj aj @@ -37730,7 +37484,7 @@ te dz px DI -oS +Tv BP ol aj @@ -42353,7 +42107,7 @@ iu iu iN ix -iu +Gw Zw UD iu @@ -42609,7 +42363,7 @@ Nt pI zf Up -CI +ix iu iu iu @@ -42624,7 +42378,7 @@ mn QP MS MS -QP +PR LE os JQ @@ -42633,8 +42387,8 @@ Hj pU BP pU -NK -ze +ai +ai pU pU aj @@ -42889,9 +42643,9 @@ EL EL pU pU -ze +ai BP -ze +ai pU pU aj @@ -43146,8 +42900,8 @@ pU pU pU pU -ze -ze +ai +ai pU pU aj @@ -43389,7 +43143,7 @@ pU tF tF pU -SP +Zg ti DZ FD @@ -44946,8 +44700,8 @@ aj aj aj aj -NK -NK +ad +ad pU aj aj @@ -45177,8 +44931,8 @@ FX FX nm iY -nm Zx +BP Yq aj aj @@ -45204,7 +44958,7 @@ aj aj pU pU -ze +ad pU aj aj @@ -45461,7 +45215,7 @@ aj aj pU BP -ze +ai pU pU aj @@ -45717,7 +45471,7 @@ aj aj aj pU -NK +ai pU pU pU @@ -47494,11 +47248,11 @@ WB wt jw fA -Le -Le NU Le +ep Le +NU BP BP BP @@ -47516,9 +47270,9 @@ aj aj pU pU -NK +ai BP -ze +ad pU pU aj @@ -47752,8 +47506,8 @@ Jl rv TJ RW -cc -XM +pM +vr CM lM Ec @@ -47772,10 +47526,10 @@ aj aj aj pU -ze -ze -ze -ze +ai +ad +ad +ai aj aj aj @@ -48009,9 +47763,9 @@ GF lb Yl Le -Le +jX Fr -Le +jt Le BP BP @@ -48030,8 +47784,8 @@ aj aj pU BP -ze -NK +ad +ad pU aj aj @@ -48266,10 +48020,10 @@ Ra oh pK NU -BP -BP -BP -JD +Le +VI +Le +NU BP BP BP @@ -48286,8 +48040,8 @@ pU aj aj pU -NK -NK +ai +ai pU pU aj @@ -48524,7 +48278,7 @@ mT pK pU BP -ZF +BP BP JD BP @@ -48780,9 +48534,9 @@ Yg li dK pU -Cv BP -Cv +rB +BP zk mc mc @@ -49037,8 +48791,8 @@ Yg TQ dK pU -aX -BP +pU +RO Jg pU pU @@ -49290,14 +49044,14 @@ YD pK Ob IL -Rj +IL KV pK aj +aj yV -BP fK -pU +aj pU pU pU @@ -49547,12 +49301,12 @@ NU pK pK dK -RO +dK pK pK aj +aj yV -tF NL aj aj @@ -49804,12 +49558,12 @@ NU ai pU pU -Pn pU +pU +aj aj aj yV -tF NL aj aj @@ -50061,12 +49815,12 @@ pU pU pU pU -AF +aj aj aj pU +aj yV -tF NL aj aj @@ -50318,12 +50072,12 @@ pU aj aj aj -AF +aj aj pU aj +aj yV -tF NL aj pU @@ -50340,9 +50094,9 @@ pU pU pU pU -ze -ze -ze +ai +ad +ad pU pU pU @@ -50575,13 +50329,13 @@ aj aj aj aj -AF aj aj aj -zs -tF -de +aj +aj +Ah +aF aj aj aj @@ -50596,9 +50350,9 @@ aj pU pU pU -ze -NK -ze +ai +ad +ad BP pU pU @@ -50832,13 +50586,13 @@ aj aj aj aj -AF aj aj aj -ct -BP -ct +aj +aj +RO +kf pU aj aj @@ -50852,10 +50606,10 @@ aj pU pU pU -ze +ai BP -NK -ze +ai +ai pU pU pU @@ -51089,12 +50843,12 @@ ai ai pU pU -AF -aj +pU +pU aj aj -BP -BP +pU +YP BP pU pU @@ -51108,10 +50862,10 @@ aj pU pU pU -ze -ze -NK -ze +ai +ad +ai +ai lP pU pU @@ -51346,11 +51100,11 @@ ai ai ai ai -Pn -AF -AF -AF -Pe +pU +pU +pU +pU +pU BP BP BP @@ -51366,10 +51120,10 @@ lt Ri eN pU -ze -ze -ze -ze +ai +ai +ai +ai pU pU aj @@ -51607,10 +51361,8 @@ ai pU pU pU -AF -BP -BP -BP +pU +pU BP ct pU @@ -51618,6 +51370,8 @@ pU pU pU pU +pU +BP lt Ns lt @@ -51625,7 +51379,7 @@ pU pU pU pU -ze +ai pU pU aj @@ -51861,21 +51615,21 @@ aj aj ai ai -CV -CV -ki -NP -ki -CV -CV -CV -lt pU pU pU pU pU pU +pU +pU +pU +pU +pU +pU +pU +BP +BP lt pU lP @@ -52117,19 +51871,11 @@ aj aj aj aj -CV -CV -Km -qB -eL -Ah -VI -ZX -ki -Ns +aj +pU +pU lt pU -BP pU pU pU @@ -52138,6 +51884,14 @@ pU pU pU pU +Wq +pU +pU +pU +pU +pU +pU +pU pU pU aj @@ -52374,25 +52128,25 @@ aj aj aj aj -CV -GG -jX -Tw -eL -aF -pF -dF -ki -lt -lt +aj +aj +pU +Ns lt pU +BP +pU +pU pU pU BP -NK -NK -ze +pU +lt +Ns +lt +UI +pU +pU pU pU pU @@ -52628,28 +52382,28 @@ pU ai ai ai -pU +ai aj aj -CV -Sp -OE -as -ZL -Cn -zX -CV -CV +aj +aj +pU pU lt +lt pU pU pU pU +BP +eL ze -NK +AF +tf ze -BP +Sp +FH +pU pU pU pU @@ -52887,27 +52641,24 @@ ai ai ai ai +ai +aj +aj pU -CV -GG -Tt -fa -eL -ZB -GG -CV pU +lt pU pU -lP pU -BP pU -ze -NK pU -UI +BP +NP pU +oO +lP +lt +VU pU pU pU @@ -52919,6 +52670,9 @@ aj aj aj aj +aj +aj +aj "} (171,1,1) = {" aa @@ -53145,34 +52899,34 @@ aj ai ai ai -CV -wa -rB -fa -eL -Lv -CV -CV -CV -ct -pU +ai pU pU pU pU -ze +lP pU +BP pU -lt -lt -lt UI +ct +dI +Az +oO pU -aj +pU +VU pU pU aj +aj +aj +aj +aj +aj +aj pU +aj pU aj aj @@ -53400,29 +53154,25 @@ aj aj aj aj -pU ai -CV -jt -ba -fa -jJ -ZB -be -dI -oO -BP +ai +ai +pU +UI +ct +pU pU -BP pU pU pU -ct -BP lt lt -Ns +up +UI +oO +ZU lt +VU lt pU pU @@ -53430,7 +53180,11 @@ pU pU pU pU -pU +aj +aj +aj +aj +aj aj aj "} @@ -53659,37 +53413,37 @@ aj aj aj aj -CV -GG -tf -fa -Sj -ZB -CV -CV -CV -ct pU pU pU +BP +pU pU pU -BP +pU +lt +lt +lt +Km +pU +ZL +lt +lt Av Wh -Wh -CV -ki -ki -CV -CV -ki -ki -CV -CV +lt +pU +pU +pU +pU +pU +aj +aj pU pU aj +aj +aj "} (174,1,1) = {" aa @@ -53916,36 +53670,36 @@ aj aj aj aj -CV -rf -VP -fa -Sj -ZB -Mf -CV -hl +aj +aj +pU +pU +pU +BP +pU pU lt +Ns +lt lt pU pU lt lt -up +lt +rj lt pU -vr -sQ -NS -Vd -NS -NS -sQ -NS -CV pU +aj +aj pU +pU +aj +aj +aj +aj +aj aj "} (175,1,1) = {" @@ -54173,37 +53927,37 @@ aj aj aj aj -CV -GI -vM -FI -jJ -Fo -hM -CV -CV -Ns -lt +aj +aj +pU +pU +pU +pU +pU +pU pU pU lt +hl lt +xW +pU lt -up +zX +be pU pU -vr -il -NS -Vd -NS -NS -il -NS -ki pU aj aj +aj +aj +aj +aj +aj +aj +aj +aj "} (176,1,1) = {" aa @@ -54430,37 +54184,37 @@ aj aj aj aj -CV -pM -YP -GG -Uz -Uz -Uz -Zs -ki -lt -lt +aj +pU +pU +pU +pU +pU pU pU pU -lt pU +lt +Uz +lt +VU +lt +lt Wk -UI -ct -vr -NS -NS -Vd -NS -NS -NS -NS -ki +lt +pU +pU pU pU aj +aj +aj +aj +aj +aj +aj +aj +aj "} (177,1,1) = {" aa @@ -54685,39 +54439,39 @@ pU pU pU pU -aj -aj -CV -CV -YP -GG -fa -fa -Rm -bE -ki -lt pU pU pU pU pU pU -Wk pU +pU +pU +pU +ct lt -Wq -EP -NS -ZU -NS -NS -EP -EP -CV -CV +dF +up +Cv +VU +lt +lt +VU +lt +pU +pU +pU +pU +aj +aj +aj +aj +aj pU aj +aj +aj "} (178,1,1) = {" aa @@ -54943,36 +54697,36 @@ pU pU pU pU -aj -aj -CV -CV -ki -ki -ki -CV -CV -CV -lt pU pU -lt pU pU pU -VU -Xk +pU +pU +pU +pU +pU lt -NS -NS -NS -NS -NS -uw -NS -NS -NS -ki +Pb +up +lt +VU +Ns +Az +VU +pU +pU +pU +pU +pU +aj +aj +aj +aj +aj +aj +aj pU aj "} @@ -55201,9 +54955,6 @@ pU pU pU pU -aj -aj -aj pU pU pU @@ -55214,24 +54965,27 @@ pU pU pU Ns -Az +lt +CI +wa +Pn +ej +wa +ZF +FH +pU +pU +pU +pU +aj +aj +pU pU pU -lt -lt -lt -NS -mk -sa -NS -NS -NS -OW -sa -NS -ki aj aj +pU +aj "} (180,1,1) = {" aa @@ -55468,26 +55222,26 @@ pU pU pU pU -pU -pU -lt lt pU -xW lt lt lt -NS -NS -uw -NS -NS -NS -NS -NS -NS -ki +Vd +pU +pU +pU +pU +pU +aj +aj +pU +pU pU +pU +pU +aj +aj aj "} (181,1,1) = {" @@ -55728,22 +55482,22 @@ pU pU pU pU -lt pU pU -Wk -lt -lt -kf -KO -NS -aH -NS -NS -KO -KO -CV -CV +pU +pU +pU +pU +pU +pU +aj +aj +aj +pU +pU +pU +aj +aj pU aj "} @@ -55980,6 +55734,9 @@ pU pU pU pU +UI +pU +pU pU pU pU @@ -55988,21 +55745,18 @@ pU pU pU pU -Wk pU -ct -vr -NS -rj -Vd -NS -NS -NS -NS -ki pU aj aj +pU +pU +pU +pU +pU +aj +aj +aj "} (183,1,1) = {" aa @@ -56243,23 +55997,23 @@ pU pU pU pU -lt -lt -Wk pU pU -vr -il -NS -Vd -NS -NS -il -NS -ki pU pU pU +pU +pU +pU +pU +pU +pU +aj +aj +aj +aj +aj +pU "} (184,1,1) = {" aa @@ -56499,23 +56253,23 @@ pU pU pU pU -lt -Ns -lt -up -Pb pU -vr -sQ -NS -Vd -NS -NS -sQ -NS -CV pU pU +pU +pU +pU +pU +pU +pU +pU +pU +pU +aj +aj +pU +pU +aj aj "} (185,1,1) = {" @@ -56756,24 +56510,24 @@ pU pU pU pU -lt -lt -BP -Oo -ej -nO -CV -ki -ki -CV -CV -ki -ki -CV -CV +pU +pU +pU +pU +pU +pU +pU +pU +pU +pU +pU +pU +aj pU aj aj +aj +aj "} (186,1,1) = {" aa @@ -57015,12 +56769,6 @@ pU pU pU pU -ct -BP -pU -pU -pU -lt pU pU pU @@ -57031,6 +56779,12 @@ pU pU pU aj +aj +aj +aj +aj +aj +aj "} (187,1,1) = {" aa @@ -57273,13 +57027,8 @@ pU pU pU pU -lt pU pU -lt -Ns -lt -lt pU pU pU @@ -57288,6 +57037,11 @@ pU pU aj aj +aj +aj +aj +aj +aj "} (188,1,1) = {" aa @@ -57529,17 +57283,17 @@ pU pU pU pU -lt -lt -lt pU -lt -lt -lt -lt -lt pU pU +pU +pU +pU +pU +pU +pU +aj +aj aj aj aj @@ -57787,15 +57541,15 @@ pU pU pU pU -Ns pU pU -UI -lt -lt -Ns -lt pU +pU +pU +pU +pU +pU +aj aj aj aj @@ -58049,8 +57803,8 @@ pU pU pU pU -lt -lt +pU +pU pU aj aj diff --git a/_maps/map_files/NebulaStation/NebulaStation.dmm b/_maps/map_files/NebulaStation/NebulaStation.dmm index e7a68fd2f9719f..7ac250c073f871 100644 --- a/_maps/map_files/NebulaStation/NebulaStation.dmm +++ b/_maps/map_files/NebulaStation/NebulaStation.dmm @@ -335,7 +335,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/door/airlock/security/glass{ @@ -403,7 +403,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "adj" = ( /obj/effect/turf_decal/siding/thinplating_new/dark, /obj/machinery/light/small/directional/north, @@ -604,6 +604,7 @@ /obj/effect/turf_decal/siding/thinplating/dark/corner{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "aeG" = ( @@ -980,7 +981,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 4 }, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "agX" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/engineering/glass{ @@ -1745,7 +1746,7 @@ "amU" = ( /obj/machinery/porta_turret/ai, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "anh" = ( /obj/effect/turf_decal/siding, /obj/structure/chair/sofa/bench/right{ @@ -1972,7 +1973,7 @@ /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/command/minisat, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/equipment) +/area/station/ai/satellite/equipment) "aoQ" = ( /obj/structure/table/glass, /obj/effect/spawner/random/entertainment/cigarette_pack, @@ -2059,7 +2060,7 @@ network = list("minisat") }, /turf/open/floor/iron/dark/textured_corner, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "apz" = ( /obj/machinery/holopad/secure, /obj/effect/turf_decal/box/white{ @@ -2288,17 +2289,6 @@ /obj/effect/turf_decal/tile/neutral{ dir = 4 }, -/obj/structure/sign/directions/medical/directional/east{ - pixel_y = 8; - dir = 1 - }, -/obj/structure/sign/directions/science/directional/east{ - dir = 1 - }, -/obj/structure/sign/directions/supply/directional/east{ - pixel_y = -8; - dir = 1 - }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -2562,7 +2552,7 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/equipment) +/area/station/ai/satellite/equipment) "atR" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 1 @@ -2807,7 +2797,7 @@ /obj/machinery/power/apc/auto_name/directional/east, /obj/structure/cable, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "auK" = ( /turf/open/floor/glass/reinforced, /area/station/security/prison) @@ -3426,7 +3416,7 @@ /obj/machinery/vending/coffee, /obj/structure/sign/poster/official/random/directional/west, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "aAC" = ( /obj/machinery/shower/directional/north, /obj/effect/turf_decal/trimline/blue/end{ @@ -3732,7 +3722,7 @@ /obj/effect/turf_decal/trimline/dark/corner, /obj/machinery/light/small/directional/north, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "aCJ" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/security/maintenance, @@ -3975,9 +3965,7 @@ /turf/open/floor/plating, /area/station/maintenance/aft/greater) "aEz" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/glass/reinforced/airless, /area/space/nearstation) "aEC" = ( @@ -4071,6 +4059,11 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark, /area/station/science/xenobiology) +"aFi" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "aFm" = ( /obj/structure/table/reinforced, /obj/item/folder/red, @@ -4458,7 +4451,7 @@ }, /obj/item/gun/grenadelauncher, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "aID" = ( /obj/effect/landmark/event_spawn, /turf/open/floor/carpet, @@ -4659,7 +4652,7 @@ dir = 1 }, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "aKm" = ( /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/south, @@ -4677,7 +4670,7 @@ }, /obj/effect/turf_decal/delivery, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aKr" = ( /obj/effect/turf_decal/siding/wideplating_new/dark{ dir = 1 @@ -5288,7 +5281,7 @@ }, /obj/effect/decal/cleanable/rubble, /turf/open/floor/holofloor/wood, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "aOZ" = ( /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/south, @@ -5885,7 +5878,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "aUf" = ( /obj/effect/turf_decal/tile/dark/opposingcorners, /obj/effect/landmark/event_spawn, @@ -6380,7 +6373,7 @@ /obj/item/pen, /obj/machinery/status_display/evac/directional/north, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat/equipment) +/area/station/ai/satellite/equipment) "aXu" = ( /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/south, @@ -6580,7 +6573,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "aYC" = ( /obj/structure/cable, /obj/effect/turf_decal/siding/thinplating_new/dark{ @@ -6723,7 +6716,7 @@ "aZM" = ( /obj/effect/turf_decal/trimline/dark_blue, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aZQ" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -6790,11 +6783,9 @@ /area/station/maintenance/aft/lesser) "bat" = ( /obj/structure/hedge, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "baD" = ( /obj/machinery/atmospherics/pipe/smart/manifold/green/visible{ dir = 1 @@ -7352,7 +7343,7 @@ }, /obj/machinery/light/small/directional/south, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "beF" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 4 @@ -7404,10 +7395,11 @@ /obj/machinery/door/airlock/maintenance, /obj/structure/cable, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/fore) "bfk" = ( @@ -8138,7 +8130,7 @@ /obj/effect/turf_decal/siding/thinplating_new/dark, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "bmn" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible, /obj/machinery/meter, @@ -8334,7 +8326,7 @@ /obj/item/kirbyplants/random, /obj/machinery/airalarm/directional/west, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "bnD" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple/layer2, /turf/open/floor/iron/dark/airless, @@ -8536,7 +8528,7 @@ /obj/item/clothing/shoes/magboots, /obj/effect/turf_decal/bot, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "bpj" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -8762,7 +8754,7 @@ }, /obj/machinery/door/firedoor, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "brl" = ( /obj/structure/broken_flooring/singular/always_floorplane/directional/north, /obj/structure/chair/stool/bar/directional/west, @@ -8780,7 +8772,7 @@ dir = 9 }, /turf/open/floor/bamboo, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "brC" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 9 @@ -9005,7 +8997,7 @@ /obj/structure/cable/layer3, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "btQ" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 1 @@ -9044,7 +9036,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "bum" = ( /obj/effect/turf_decal/siding/yellow, /obj/effect/turf_decal/trimline/yellow/filled/line, @@ -9085,7 +9077,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/bot, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "buC" = ( /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/smart/simple/orange/visible/layer1{ @@ -9415,16 +9407,20 @@ /turf/open/floor/iron/white, /area/station/medical/treatment_center) "bxv" = ( -/obj/structure/hedge, -/obj/effect/turf_decal/siding/wood{ - dir = 1 +/obj/structure/sign/directions/upload/directional/south{ + pixel_y = -10; + dir = 9 }, -/obj/structure/sign/plaques/kiddie/library{ - pixel_y = 32 +/obj/structure/sign/directions/command/directional/south{ + dir = 9; + pixel_y = 0 }, -/obj/structure/railing, -/turf/open/floor/wood/large, -/area/station/service/library/upper) +/obj/structure/sign/directions/vault/directional/south{ + pixel_y = 10; + dir = 9 + }, +/turf/closed/wall/r_wall, +/area/station/hallway/secondary/command) "bxw" = ( /obj/effect/turf_decal/siding/thinplating_new/dark/corner{ dir = 8 @@ -9455,7 +9451,7 @@ dir = 8 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "bxA" = ( /obj/machinery/digital_clock/directional/north, /obj/structure/railing/corner{ @@ -9542,10 +9538,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) "bxV" = ( @@ -9704,6 +9700,7 @@ /obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/iron/white, /area/station/medical/treatment_center) "byI" = ( @@ -10003,7 +10000,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "bAz" = ( /obj/effect/turf_decal/tile/red/anticorner/contrasted{ dir = 1 @@ -10135,7 +10132,7 @@ dir = 8 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "bBh" = ( /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -10478,7 +10475,7 @@ }, /obj/effect/turf_decal/stripes/line, /obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -10840,7 +10837,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -11372,12 +11369,10 @@ /obj/effect/turf_decal/siding/thinplating/dark{ dir = 10 }, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/structure/railing{ dir = 1 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "bJR" = ( @@ -11762,7 +11757,8 @@ pixel_x = 24; pixel_y = 6; id = "radioroom"; - name = "Curtains" + name = "Curtains"; + dir = 4 }, /obj/machinery/button/door/directional/east{ pixel_y = -6; @@ -11933,10 +11929,10 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "bNG" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "bNI" = ( /obj/structure/chair/office/light{ dir = 1 @@ -12304,19 +12300,8 @@ /area/space/nearstation) "bQa" = ( /obj/structure/table/glass, -/obj/item/clothing/glasses/hud/health{ - pixel_y = 8 - }, -/obj/item/clothing/glasses/hud/health{ - pixel_y = 3 - }, -/obj/item/clothing/glasses/hud/health{ - pixel_y = -2 - }, -/obj/item/clothing/glasses/hud/health{ - pixel_y = 13 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/item/defibrillator/loaded, /turf/open/floor/iron/dark, /area/station/medical/storage) "bQd" = ( @@ -12329,6 +12314,23 @@ }, /turf/open/space/openspace, /area/station/solars/port/aft) +"bQm" = ( +/obj/structure/sign/directions/medical/directional/west{ + pixel_y = 8; + dir = 1; + pixel_x = 0 + }, +/obj/structure/sign/directions/science/directional/west{ + dir = 1; + pixel_x = 0 + }, +/obj/structure/sign/directions/supply/directional/west{ + pixel_y = -8; + dir = 1; + pixel_x = 0 + }, +/turf/closed/wall, +/area/station/security/checkpoint/customs) "bQp" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -12356,6 +12358,21 @@ }, /turf/open/floor/iron/dark, /area/station/command) +"bQy" = ( +/obj/structure/sign/directions/dorms/directional/west{ + pixel_y = 8; + pixel_x = 0 + }, +/obj/structure/sign/directions/evac/directional/west{ + pixel_x = 0 + }, +/obj/structure/sign/directions/engineering/directional/west{ + pixel_y = -8; + dir = 2; + pixel_x = 0 + }, +/turf/closed/wall, +/area/station/commons/vacant_room/office) "bQT" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -12530,7 +12547,7 @@ /obj/item/stack/spacecash/c1000, /obj/effect/turf_decal/bot, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "bRZ" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, @@ -13061,6 +13078,7 @@ /obj/effect/turf_decal/trimline/dark/corner{ dir = 8 }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron/dark/side{ dir = 6 }, @@ -13170,7 +13188,7 @@ }, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "bXi" = ( /obj/effect/turf_decal/tile/purple/fourcorners, /obj/structure/cable, @@ -13367,14 +13385,12 @@ /area/station/commons/fitness/recreation/lasertag) "bYK" = ( /obj/structure/hedge, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/effect/turf_decal/tile/dark_blue/anticorner/contrasted{ dir = 1 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "bYO" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -13712,7 +13728,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "caT" = ( /obj/effect/spawner/structure/window, /obj/structure/curtain/cloth{ @@ -13872,7 +13888,7 @@ /obj/item/toy/figure/borg, /obj/item/radio/intercom/directional/north, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat/equipment) +/area/station/ai/satellite/equipment) "ccj" = ( /obj/structure/flora/grass/brown/style_random, /obj/structure/flora/bush/snow/style_2, @@ -13909,7 +13925,7 @@ /area/station/science/xenobiology) "ccC" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "ccE" = ( /obj/effect/turf_decal/tile/yellow/half/contrasted{ dir = 1 @@ -14818,7 +14834,7 @@ /obj/machinery/status_display/ai/directional/north, /obj/machinery/firealarm/directional/east, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat/equipment) +/area/station/ai/satellite/equipment) "ckK" = ( /obj/effect/turf_decal/tile/purple{ dir = 4 @@ -14934,7 +14950,7 @@ pixel_y = -2 }, /turf/open/floor/grass, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "cmj" = ( /obj/structure/table/reinforced/rglass, /obj/item/storage/box/donkpockets/donkpocketpizza{ @@ -15270,7 +15286,7 @@ }, /obj/machinery/light/small/directional/south, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "coT" = ( /obj/machinery/door/airlock/medical/glass{ name = "Infirmary" @@ -15502,12 +15518,12 @@ /obj/structure/bookcase{ name = "Forbidden Knowledge" }, -/obj/structure/sign/painting/large/library_private{ - dir = 1 - }, /obj/item/poster/random_contraband{ pixel_y = 18 }, +/obj/structure/sign/painting/large/library_private{ + dir = 1 + }, /turf/open/floor/wood/large, /area/station/service/library/printer) "cqG" = ( @@ -15883,7 +15899,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "cti" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -16008,7 +16024,6 @@ /obj/structure/railing/corner{ dir = 1 }, -/obj/structure/sign/nanotrasen, /turf/closed/wall/r_wall/rust, /area/space/nearstation) "cuf" = ( @@ -16264,7 +16279,8 @@ id = "SecElevator" }, /obj/structure/noticeboard/hos{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/machinery/lift_indicator/directional/west{ pixel_x = -33; @@ -16842,25 +16858,20 @@ /turf/open/floor/wood/large, /area/station/service/chapel/office) "czJ" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/structure/sign/directions/medical/directional/west{ - pixel_y = 8; - dir = 1 +/obj/structure/sign/directions/upload/directional/south{ + pixel_y = -10; + dir = 4 }, -/obj/structure/sign/directions/science/directional/west{ - dir = 1 +/obj/structure/sign/directions/command/directional/south{ + dir = 4; + pixel_y = 10 }, -/obj/structure/sign/directions/supply/directional/west{ - pixel_y = -8; - dir = 1 +/obj/structure/sign/directions/security/directional/south{ + pixel_y = 0; + dir = 4 }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/hallway/primary/central) +/turf/closed/wall, +/area/station/service/barber) "czK" = ( /obj/machinery/atmospherics/components/binary/crystallizer{ dir = 4 @@ -16895,7 +16906,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "czS" = ( /obj/structure/closet/secure_closet/freezer/empty, /obj/item/reagent_containers/condiment/soymilk, @@ -16983,10 +16994,6 @@ /obj/structure/chair/sofa/corp/left{ dir = 1 }, -/obj/structure/sign/painting/large/library{ - pixel_y = -64; - dir = 1 - }, /turf/open/floor/stone, /area/station/commons/dorms) "cAp" = ( @@ -17004,9 +17011,7 @@ "cAu" = ( /obj/effect/turf_decal/bot, /obj/structure/closet/radiation, -/obj/machinery/camera/autoname/directional/north{ - dir = 9 - }, +/obj/machinery/camera/autoname/directional/north, /obj/machinery/duct, /turf/open/floor/iron/dark/textured, /area/station/engineering/atmos/project) @@ -17135,7 +17140,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "cBK" = ( /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -17479,7 +17484,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "cEV" = ( /obj/effect/turf_decal/trimline/dark/corner, /obj/structure/chair/office{ @@ -17587,6 +17592,7 @@ "cFQ" = ( /obj/structure/sign/warning/biohazard, /obj/effect/spawner/random/structure/grille, +/obj/effect/spawner/structure/window/reinforced, /turf/open/space/openspace, /area/space/nearstation) "cFT" = ( @@ -18499,15 +18505,13 @@ /turf/open/floor/iron, /area/station/cargo/storage) "cMm" = ( -/obj/structure/noticeboard/directional/east{ - dir = 8 - }, /obj/structure/cable, /obj/effect/turf_decal/siding/wood{ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/noticeboard/directional/east, /turf/open/floor/wood/tile, /area/station/service/minibar) "cMz" = ( @@ -18927,7 +18931,7 @@ /obj/structure/marker_beacon/lime, /obj/structure/flora/bush/lavendergrass/style_random, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "cPZ" = ( /turf/closed/wall/r_wall, /area/station/medical/morgue) @@ -19085,11 +19089,12 @@ /obj/machinery/door/airlock/maintenance{ name = "UndergroundCasino" }, -/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/central) "cRu" = ( @@ -19270,14 +19275,6 @@ /obj/effect/turf_decal/tile/neutral{ dir = 8 }, -/obj/structure/sign/directions/evac/directional/west, -/obj/structure/sign/directions/dorms/directional/west{ - pixel_y = 8 - }, -/obj/structure/sign/directions/engineering/directional/west{ - pixel_y = -8; - dir = 2 - }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -19302,7 +19299,7 @@ }, /obj/structure/cable/layer3, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "cSL" = ( /obj/structure/marker_beacon/bronze, /obj/structure/lattice/catwalk, @@ -19360,7 +19357,7 @@ dir = 5 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "cTe" = ( /obj/effect/turf_decal/siding/wideplating_new/dark{ dir = 4 @@ -19845,7 +19842,7 @@ }, /obj/item/toy/seashell, /turf/open/floor/bamboo, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "cXw" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 9 @@ -20324,6 +20321,7 @@ /obj/effect/turf_decal/trimline/dark/corner{ dir = 4 }, +/obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/iron/dark, /area/station/command) "dbh" = ( @@ -20443,18 +20441,16 @@ name = "AI Chamber Entrance Shutters Control"; req_access = list("ai_upload") }, -/obj/machinery/turretid{ - icon_state = "control_stun"; - name = "AI Chamber turret control"; - pixel_x = -29; - pixel_y = -6 - }, /obj/effect/landmark/start/ai, /obj/machinery/camera/autoname/directional/north{ network = list("minisat") }, +/obj/machinery/flasher/directional/east{ + pixel_y = -5; + id = "AI" + }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "dbO" = ( /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/south, @@ -20934,7 +20930,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "dfe" = ( /obj/item/kirbyplants/random, /obj/structure/plaque/static_plaque/golden{ @@ -21350,7 +21346,20 @@ id = "AIgarden2" }, /turf/open/floor/engine/hull/reinforced, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) +"div" = ( +/obj/effect/turf_decal/stripes/white/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/white/line{ + dir = 4 + }, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 8 + }, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "diw" = ( /turf/closed/wall/r_wall, /area/station/command/heads_quarters/ce) @@ -21723,7 +21732,7 @@ /obj/structure/flora/bush/flowers_br/style_random, /obj/structure/flora/bush/flowers_pp/style_random, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "dkY" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 4 @@ -21812,7 +21821,7 @@ /obj/effect/turf_decal/bot, /obj/machinery/computer/security/telescreen/minisat/directional/west, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "dlT" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 6 @@ -21826,7 +21835,7 @@ name = "Library Maintenance" }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -22011,7 +22020,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -22260,7 +22269,7 @@ "doN" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "doQ" = ( /obj/structure/water_source/puddle, /turf/open/floor/grass, @@ -22280,11 +22289,9 @@ dir = 8 }, /obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/effect/turf_decal/box/red, /obj/effect/decal/cleanable/dirt/dust, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron/dark, /area/station/security/execution/education) "dpj" = ( @@ -22744,7 +22751,7 @@ /turf/open/floor/iron/stairs{ color = "#3d3e42" }, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "dsE" = ( /obj/item/kirbyplants/random, /obj/effect/turf_decal/siding/dark{ @@ -22930,7 +22937,8 @@ /obj/effect/turf_decal/siding/wood/corner, /obj/item/kirbyplants/random, /obj/structure/sign/painting/library{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/machinery/airalarm/directional/west, /obj/machinery/light/small/directional/north, @@ -24022,9 +24030,7 @@ name = "Teleporter Shutters"; req_access = list("teleporter") }, -/obj/machinery/camera/autoname/directional/south{ - dir = 5 - }, +/obj/machinery/camera/autoname/directional/south, /turf/open/floor/iron/dark, /area/station/hallway/secondary/command) "dBT" = ( @@ -24130,7 +24136,7 @@ /obj/structure/cable/layer3, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "dCz" = ( /obj/structure/flora/rock/pile/jungle/style_random, /obj/effect/decal/cleanable/dirt, @@ -24293,7 +24299,7 @@ color = "#4874A2" }, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "dEt" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, @@ -24325,9 +24331,6 @@ /area/station/engineering/atmos/project) "dEG" = ( /obj/effect/turf_decal/siding/dark, -/obj/structure/noticeboard/directional/north{ - dir = 2 - }, /obj/effect/turf_decal/trimline/yellow/filled/line, /obj/effect/turf_decal/trimline/yellow/filled/mid_joiner, /obj/machinery/disposal/bin, @@ -24337,6 +24340,7 @@ /obj/machinery/camera/autoname/directional/north{ network = list("ss13","medbay") }, +/obj/structure/noticeboard/directional/north, /turf/open/floor/iron/dark/smooth_edge{ dir = 1 }, @@ -24454,7 +24458,7 @@ }, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "dFq" = ( /obj/effect/turf_decal/siding/dark{ dir = 4 @@ -24481,7 +24485,7 @@ }, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "dFw" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 5 @@ -24782,7 +24786,7 @@ "dIf" = ( /obj/structure/transit_tube, /obj/effect/turf_decal/trimline/dark_blue, -/obj/structure/window/reinforced/fulltile, +/obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/command) "dIj" = ( @@ -24990,7 +24994,7 @@ }, /obj/structure/marker_beacon/lime, /turf/open/floor/grass, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "dKA" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -25539,7 +25543,7 @@ /obj/structure/marker_beacon/lime, /obj/machinery/light/small/directional/south, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "dOT" = ( /obj/effect/turf_decal/trimline/yellow/corner, /obj/effect/turf_decal/siding/thinplating_new/dark/corner, @@ -26100,7 +26104,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "dTf" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 @@ -26261,7 +26265,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable/layer3, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "dUk" = ( /obj/effect/turf_decal/trimline/yellow, /obj/machinery/light/floor, @@ -26469,7 +26473,7 @@ dir = 6 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "dVD" = ( /obj/effect/turf_decal/siding/dark/end{ dir = 8 @@ -26650,7 +26654,7 @@ dir = 8 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "dWL" = ( /obj/structure/table/wood, /obj/structure/desk_bell{ @@ -26790,7 +26794,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "dXQ" = ( /obj/structure/table/reinforced, /obj/structure/reagent_dispensers/servingdish, @@ -27191,7 +27195,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/iron/dark, /area/station/service/janitor) "eaq" = ( @@ -27213,7 +27217,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "eav" = ( /obj/structure/flora/bush/lavendergrass/style_random, /obj/structure/flora/bush/grassy/style_random, @@ -27282,6 +27286,7 @@ }, /obj/effect/turf_decal/stripes/white/corner, /obj/effect/turf_decal/siding/thinplating/dark/corner, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "eaQ" = ( @@ -27353,7 +27358,7 @@ name = "Dormitory Maintenance" }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/machinery/duct, @@ -27487,7 +27492,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ecL" = ( /obj/effect/turf_decal/stripes/white/line{ dir = 4 @@ -27717,7 +27722,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 4 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "eel" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/sign/warning/explosives/alt/directional/south, @@ -27910,12 +27915,8 @@ /obj/effect/turf_decal/trimline/white/warning{ dir = 8 }, -/obj/machinery/flasher/directional/east{ - id = "AI"; - pixel_y = 26 - }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "efL" = ( /obj/machinery/door/airlock/public/glass{ name = "Starboard Primary Hallway" @@ -27935,7 +27936,7 @@ /obj/effect/turf_decal/bot_white, /obj/machinery/light/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "efX" = ( /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron/dark/small, @@ -27973,7 +27974,7 @@ pixel_y = -2 }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "egg" = ( /obj/effect/turf_decal/siding/dark/corner, /obj/effect/turf_decal/siding/dark{ @@ -28010,7 +28011,7 @@ network = list("aiupload") }, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "egn" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -28869,7 +28870,7 @@ /area/station/science/breakroom) "emU" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "emW" = ( /obj/effect/turf_decal/stripes/white/corner, /obj/effect/turf_decal/siding/thinplating/dark/corner, @@ -28988,6 +28989,7 @@ "enK" = ( /obj/effect/turf_decal/stripes/line, /obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible, +/obj/structure/sign/warning/radiation/directional/south, /turf/open/floor/engine, /area/station/engineering/supermatter/room) "enS" = ( @@ -29174,7 +29176,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "epf" = ( /obj/structure/chair/sofa/bench/left, /turf/open/floor/glass/reinforced, @@ -29270,7 +29272,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "eqb" = ( /turf/open/floor/iron/stairs/medium{ color = "#3d3e42" @@ -29565,7 +29567,7 @@ /obj/effect/turf_decal/bot/left, /obj/structure/rack, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "esg" = ( /obj/structure/cable, /turf/open/floor/iron/dark, @@ -29801,10 +29803,6 @@ /obj/structure/bed, /obj/item/bedsheet, /obj/effect/landmark/start/hangover, -/obj/machinery/flasher/directional/east{ - pixel_y = 24; - id = "Cell 1" - }, /turf/open/floor/iron/dark, /area/station/security/brig) "etT" = ( @@ -30057,7 +30055,7 @@ }, /obj/structure/hedge, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "ewF" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 10 @@ -30266,7 +30264,7 @@ dir = 1 }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "exV" = ( /obj/effect/landmark/start/cyborg, /obj/machinery/holopad/secure, @@ -30288,7 +30286,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "exW" = ( /obj/effect/turf_decal/stripes/white/corner{ dir = 4 @@ -30499,11 +30497,6 @@ /obj/structure/railing/corner/end/flip{ dir = 4 }, -/obj/structure/sign/directions/evac/directional/north{ - pixel_x = 0; - pixel_y = 26; - dir = 10 - }, /turf/open/floor/iron/dark, /area/station/hallway/primary/port) "eAc" = ( @@ -30513,7 +30506,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "eAi" = ( /turf/closed/wall, /area/station/medical/coldroom) @@ -30908,7 +30901,7 @@ /obj/structure/cable/layer3, /obj/structure/cable, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "eCK" = ( /obj/machinery/drone_dispenser, /turf/open/floor/plating, @@ -31170,16 +31163,13 @@ dir = 1 }, /obj/item/kirbyplants/random, -/obj/structure/sign/directions/evac/directional/north{ - dir = 8 - }, /turf/open/floor/iron/dark/herringbone, /area/station/commons/dorms) "eEA" = ( /obj/effect/turf_decal/stripes/line, /obj/effect/turf_decal/trimline/dark/warning, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "eEB" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/dark/corner{ @@ -31220,7 +31210,7 @@ /area/station/commons/fitness) "eFd" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "eFf" = ( /obj/effect/turf_decal/siding/thinplating_new/dark/corner{ dir = 1 @@ -31350,7 +31340,7 @@ /obj/structure/cable/layer3, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "eGu" = ( /obj/structure/cable, /obj/structure/broken_flooring/pile/directional/east, @@ -31471,13 +31461,13 @@ /obj/effect/turf_decal/caution/stand_clear{ dir = 8 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/box, /obj/machinery/door/poddoor/shutters{ dir = 8; id = "qm_warehouse"; name = "Warehouse Shutters" }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/box, /turf/open/floor/iron/dark/textured_half{ dir = 1 }, @@ -31671,7 +31661,7 @@ /area/station/maintenance/starboard/central) "eIE" = ( /turf/open/floor/bamboo, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "eIH" = ( /obj/structure/table/reinforced/rglass, /obj/item/reagent_containers/cup/glass/drinkingglass/shotglass{ @@ -31706,7 +31696,7 @@ name = "Private Channel" }, /turf/open/floor/carpet/neon/simple/lime, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "eIS" = ( /obj/effect/turf_decal/siding/dark, /obj/structure/sign/poster/official/random/directional/north, @@ -31745,7 +31735,7 @@ dir = 1 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "eJe" = ( /obj/effect/turf_decal/siding/wood, /obj/effect/turf_decal/siding/wood{ @@ -31796,7 +31786,7 @@ color = "#4874A2" }, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "eJT" = ( /obj/structure/table/wood/fancy, /obj/structure/sign/painting/library_secure{ @@ -32225,9 +32215,7 @@ dir = 8 }, /obj/item/kirbyplants/random, -/obj/machinery/camera/autoname/directional/south{ - dir = 5 - }, +/obj/machinery/camera/autoname/directional/south, /turf/open/floor/iron/dark/herringbone, /area/station/commons/dorms) "eMS" = ( @@ -32659,7 +32647,7 @@ /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/science/general, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/iron/white, @@ -32816,7 +32804,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "eSb" = ( /obj/effect/turf_decal/stripes/corner, /obj/structure/sign/poster/random/directional/north, @@ -32933,7 +32921,7 @@ dir = 8 }, /turf/open/floor/iron/dark/textured_corner, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "eTe" = ( /obj/effect/turf_decal/trimline/yellow/filled/warning, /obj/structure/railing, @@ -33054,7 +33042,7 @@ pixel_y = 2 }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "eTX" = ( /obj/machinery/atmospherics/pipe/layer_manifold/cyan/visible{ dir = 8 @@ -33178,7 +33166,7 @@ /obj/item/gun/energy/e_gun, /obj/item/gun/energy/e_gun, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "eUS" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 10 @@ -33799,7 +33787,7 @@ req_access = list("eva") }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "eZk" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/flora/rock/pile/jungle/style_2, @@ -34785,7 +34773,7 @@ uses = 10 }, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "fgG" = ( /obj/structure/fluff/paper/stack{ dir = 4 @@ -34822,7 +34810,7 @@ /obj/machinery/door/airlock/research/glass{ name = "Research Division Access" }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/door/poddoor/shutters/preopen{ id = "rdrnd"; name = "Research and Development Shutters" @@ -34995,7 +34983,7 @@ /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "fic" = ( /obj/effect/turf_decal/stripes/white/line{ dir = 4 @@ -35109,7 +35097,7 @@ name = "Library Maintenance" }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -35185,7 +35173,7 @@ /area/station/security/courtroom) "fjo" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "fjp" = ( /obj/structure/rack, /obj/item/clothing/gloves/color/fyellow, @@ -35226,7 +35214,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/landmark/navigate_destination, /turf/open/floor/plating, /area/station/maintenance/disposal) @@ -35427,6 +35415,7 @@ }, /obj/structure/flora/bush/lavendergrass/style_random, /obj/effect/decal/cleanable/dirt, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/misc/asteroid/airless, /area/space/nearstation) "flv" = ( @@ -36064,7 +36053,7 @@ "fqA" = ( /obj/structure/cable, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "fqC" = ( /obj/machinery/power/port_gen/pacman/pre_loaded, /obj/structure/sign/warning/electric_shock/directional/north, @@ -36342,7 +36331,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "fsY" = ( /obj/structure/sign/clock/directional/east, /obj/effect/turf_decal/siding/wideplating/dark{ @@ -36372,7 +36361,7 @@ dir = 6 }, /turf/open/water/beach, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "ftw" = ( /obj/structure/disposalpipe/segment{ dir = 6 @@ -36457,10 +36446,6 @@ }, /obj/structure/bed, /obj/item/bedsheet, -/obj/machinery/flasher/directional/east{ - pixel_y = 24; - id = "Cell 2" - }, /turf/open/floor/iron/dark, /area/station/security/brig) "fut" = ( @@ -36550,7 +36535,7 @@ network = list("minisat") }, /turf/open/misc/asteroid/airless, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "fuW" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -37136,7 +37121,7 @@ /obj/structure/sign/warning/electric_shock/directional/south, /obj/structure/cable, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "fyL" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -37379,7 +37364,7 @@ /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "fAT" = ( /obj/effect/spawner/random/structure/girder, /turf/open/floor/plating, @@ -37470,8 +37455,10 @@ /turf/open/floor/iron/dark, /area/station/engineering/atmos) "fBx" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall/rust, +/obj/structure/lattice/catwalk, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "fBL" = ( /obj/effect/turf_decal/trimline/brown/filled/corner{ @@ -37637,7 +37624,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 4 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "fDa" = ( /obj/effect/turf_decal/siding/wood{ dir = 5 @@ -37667,6 +37654,16 @@ }, /turf/open/floor/plating, /area/station/maintenance/fore/greater) +"fDh" = ( +/obj/effect/turf_decal/siding/wideplating_new/dark/corner{ + dir = 8 + }, +/obj/structure/railing/corner{ + dir = 8 + }, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "fDk" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper, /obj/machinery/door/airlock/external{ @@ -37691,7 +37688,7 @@ /obj/machinery/door/airlock/research/glass{ name = "Research Division Access" }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/door/poddoor/shutters/preopen{ id = "rdrnd"; name = "Research and Development Shutters" @@ -37938,7 +37935,7 @@ /obj/machinery/door/airlock/maintenance{ name = "Chapel Maintenance" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -38956,7 +38953,7 @@ dir = 9 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "fNd" = ( /obj/structure/cable, /obj/effect/spawner/random/trash, @@ -39855,7 +39852,7 @@ dir = 4 }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "fTH" = ( /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/south, @@ -40487,7 +40484,7 @@ /turf/open/floor/iron/stairs{ color = "#3d3e42" }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "fXQ" = ( /obj/effect/turf_decal/tile/brown/anticorner/contrasted{ dir = 4 @@ -40619,13 +40616,13 @@ color = "#4874A2" }, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "fZk" = ( /obj/effect/turf_decal/siding/thinplating_new/dark/end, /obj/machinery/holopad/secure, /obj/structure/cable, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "fZl" = ( /obj/structure/rack, /obj/item/reagent_containers/cup/bottle/acidic_buffer{ @@ -40887,6 +40884,16 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/hallway/primary/starboard) +"gbi" = ( +/obj/effect/turf_decal/siding/wideplating_new/dark{ + dir = 4 + }, +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/sign/nanotrasen/directional/west, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "gbm" = ( /obj/effect/turf_decal/siding/thinplating_new/dark, /obj/effect/turf_decal/siding/thinplating_new/dark/corner{ @@ -41259,7 +41266,7 @@ /turf/open/floor/iron/stairs{ color = "#3d3e42" }, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "gej" = ( /obj/effect/turf_decal/siding/thinplating_new/dark/corner, /obj/effect/spawner/random/vending/colavend, @@ -41450,7 +41457,7 @@ id = "AIgarden" }, /turf/open/floor/plating, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "gfH" = ( /obj/effect/turf_decal/trimline/red/filled/line, /obj/structure/chair/stool/directional/south, @@ -41557,7 +41564,7 @@ pixel_y = -10 }, /turf/open/misc/beach/sand, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "ggl" = ( /obj/machinery/door/airlock/maintenance_hatch{ name = "Education Chamber Maintenance" @@ -41597,7 +41604,7 @@ name = "Library Maintenance" }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -41803,6 +41810,7 @@ /obj/effect/turf_decal/siding/thinplating/dark/corner{ dir = 1 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "gih" = ( @@ -42020,7 +42028,8 @@ id = "holdingflash"; name = "Holding Cell Flasher"; req_access = list("security"); - pixel_x = 24 + pixel_x = 24; + dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -42738,7 +42747,7 @@ /obj/effect/turf_decal/box/red, /obj/structure/cable, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "goa" = ( /obj/effect/turf_decal/siding/thinplating_new/dark/corner{ dir = 4 @@ -42843,7 +42852,7 @@ "goO" = ( /obj/structure/grille, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "goU" = ( /obj/structure/railing/corner{ dir = 1 @@ -42973,7 +42982,7 @@ /obj/structure/cable/layer3, /obj/structure/cable, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "gpL" = ( /obj/structure/table/wood/fancy/blue, /obj/effect/spawner/random/aimodule/neutral, @@ -42988,7 +42997,7 @@ req_access = list("captain") }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "gqf" = ( /obj/effect/turf_decal/siding/wideplating_new/dark{ dir = 6 @@ -43168,7 +43177,7 @@ }, /obj/machinery/light/directional/north, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "grL" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 9 @@ -43215,6 +43224,7 @@ /obj/effect/turf_decal/siding/thinplating/dark/corner{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "gsi" = ( @@ -43395,7 +43405,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "guo" = ( /obj/structure/stairs/south, /obj/structure/railing{ @@ -43460,7 +43470,7 @@ dir = 1 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "guG" = ( /obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible, /obj/machinery/pipedispenser/disposal, @@ -43675,7 +43685,7 @@ /area/station/engineering/atmos) "gwv" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "gwz" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -44116,7 +44126,7 @@ /obj/effect/turf_decal/bot/right, /obj/machinery/light_switch/directional/south, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "gzE" = ( /turf/open/floor/glass/reinforced, /area/station/maintenance/department/cargo) @@ -44213,7 +44223,7 @@ /obj/machinery/light/small/directional/west, /obj/machinery/status_display/evac/directional/north, /turf/open/floor/carpet/neon/simple/lime, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "gAD" = ( /obj/effect/turf_decal/siding/wideplating_new/dark, /obj/structure/railing, @@ -44274,7 +44284,7 @@ /obj/structure/sign/poster/official/state_laws/directional/east, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "gBe" = ( /obj/effect/turf_decal/trimline/white/line, /obj/effect/turf_decal/trimline/white/line{ @@ -44364,7 +44374,7 @@ dir = 5 }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "gBD" = ( /obj/effect/turf_decal/siding/thinplating_new/dark/corner, /obj/structure/table/reinforced, @@ -44514,7 +44524,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "gCg" = ( /obj/item/clothing/shoes/workboots/mining, /turf/open/misc/asteroid/airless{ @@ -44548,7 +44558,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "gCB" = ( /obj/effect/turf_decal/tile/blue/anticorner/contrasted{ dir = 8 @@ -44558,8 +44568,7 @@ }, /obj/structure/tank_holder/extinguisher, /obj/machinery/camera/autoname/directional/south{ - network = list("ss13","medbay"); - dir = 5 + network = list("ss13","medbay") }, /turf/open/floor/iron/white, /area/station/medical/lower) @@ -45232,7 +45241,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -45540,7 +45549,7 @@ /obj/item/pillow, /obj/machinery/light/small/directional/south, /turf/open/floor/bamboo, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "gKD" = ( /obj/effect/turf_decal/stripes/white/box, /obj/machinery/computer/camera_advanced/xenobio{ @@ -46038,7 +46047,7 @@ color = "#3d3e42"; dir = 1 }, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "gNF" = ( /obj/structure/hedge, /obj/structure/railing{ @@ -46384,7 +46393,7 @@ /obj/structure/hedge, /obj/machinery/status_display/ai/directional/south, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "gQv" = ( /obj/effect/turf_decal/stripes/corner{ dir = 8 @@ -46473,7 +46482,7 @@ /obj/structure/extinguisher_cabinet/directional/west, /obj/structure/sign/poster/official/random/directional/north, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "gRg" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -46560,15 +46569,13 @@ /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 4 }, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/machinery/light/directional/north, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/multilayer/connected, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "gRR" = ( /obj/effect/turf_decal/stripes/line, /obj/effect/turf_decal/trimline/dark/corner{ @@ -47045,6 +47052,14 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/smooth_edge, /area/station/medical/pharmacy) +"gVK" = ( +/obj/machinery/door/poddoor/preopen{ + id = "medprivacy"; + name = "Privacy Shutter" + }, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/medical/treatment_center) "gVR" = ( /obj/effect/turf_decal/trimline/red/line, /obj/structure/closet/lasertag/red, @@ -47094,7 +47109,7 @@ /turf/open/floor/iron/white, /area/station/medical/abandoned) "gWm" = ( -/obj/machinery/computer/rdconsole, +/obj/machinery/computer/rdconsole/unlocked, /obj/machinery/button/door/directional/north{ id = "rdrnd"; name = "Research and Development Containment Control"; @@ -47146,7 +47161,7 @@ /obj/structure/disposalpipe/segment, /obj/effect/mapping_helpers/airlock/red_alert_access, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "gWz" = ( /obj/effect/turf_decal/siding/dark{ dir = 9 @@ -47213,7 +47228,7 @@ /obj/effect/turf_decal/bot, /obj/machinery/firealarm/directional/east, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "gXd" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 1 @@ -47997,7 +48012,7 @@ dir = 4 }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "hcA" = ( /obj/effect/turf_decal/tile/red/anticorner/contrasted{ dir = 1 @@ -48115,7 +48130,7 @@ /obj/structure/flora/bush/sparsegrass/style_random, /obj/structure/flora/bush/ferny/style_random, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "hdF" = ( /obj/effect/spawner/random/engineering/atmospherics_portable, /obj/effect/mapping_helpers/broken_floor, @@ -48227,7 +48242,6 @@ /obj/structure/flora/bush/fullgrass/style_random, /obj/structure/flora/bush/lavendergrass/style_random, /obj/structure/flora/bush/grassy/style_random, -/obj/machinery/light/small/directional/west, /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 8 }, @@ -48331,7 +48345,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 4 }, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "hfr" = ( /obj/structure/lattice, /obj/structure/railing{ @@ -48773,7 +48787,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -48848,8 +48862,13 @@ /obj/effect/turf_decal/trimline/white/warning{ dir = 8 }, +/obj/machinery/flasher/directional/east{ + id = "Cell 2"; + pixel_y = -5; + pixel_x = 24 + }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "hiF" = ( /obj/structure/broken_flooring/singular/always_floorplane/directional/east, /obj/structure/railing/corner/end/flip{ @@ -49161,7 +49180,7 @@ /obj/effect/turf_decal/bot, /obj/effect/spawner/random/armory/barrier_grenades, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "hkX" = ( /obj/effect/turf_decal/siding/wood/end{ dir = 1 @@ -49516,7 +49535,7 @@ }, /obj/structure/cable, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "hox" = ( /obj/effect/turf_decal/siding/dark, /obj/structure/cable, @@ -49550,7 +49569,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -49804,7 +49823,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 4 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "hqL" = ( /obj/effect/turf_decal/siding/wood, /obj/structure/cable, @@ -49888,9 +49907,7 @@ "hrj" = ( /obj/structure/railing/corner, /obj/effect/turf_decal/siding/wideplating_new/dark/corner, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "hrm" = ( @@ -50080,7 +50097,7 @@ /obj/machinery/airalarm/directional/north, /obj/machinery/light/directional/north, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "hsI" = ( /obj/effect/turf_decal/tile/purple/half/contrasted{ dir = 8 @@ -50100,7 +50117,7 @@ /obj/structure/flora/bush/lavendergrass/style_random, /obj/structure/flora/tree/jungle/style_6, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "hsL" = ( /obj/effect/turf_decal/bot, /obj/machinery/meter, @@ -50206,7 +50223,7 @@ /obj/effect/turf_decal/bot, /obj/item/radio/intercom/directional/north, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "htu" = ( /obj/effect/turf_decal/siding/thinplating_new/dark/corner{ dir = 4 @@ -50380,6 +50397,21 @@ }, /turf/open/floor/iron/dark/small, /area/station/command) +"huN" = ( +/obj/effect/turf_decal/stripes/white/line{ + dir = 8 + }, +/obj/effect/turf_decal/siding/dark{ + dir = 4 + }, +/obj/effect/turf_decal/trimline/dark_blue/filled/line{ + dir = 4 + }, +/obj/machinery/camera/autoname/directional/south{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/station/command/corporate_suite) "huQ" = ( /obj/machinery/door/airlock/maintenance{ name = "Security Maintenance" @@ -50694,7 +50726,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "hxj" = ( /obj/structure/chair/office/light{ dir = 8 @@ -50803,7 +50835,7 @@ network = list("minisat") }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "hyb" = ( /obj/effect/turf_decal/trimline/dark/corner{ dir = 1 @@ -50815,7 +50847,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "hyc" = ( /obj/effect/turf_decal/trimline/red/filled/line, /obj/effect/turf_decal/trimline/red/line{ @@ -51122,7 +51154,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "hAK" = ( /obj/effect/turf_decal/siding{ dir = 10 @@ -51287,6 +51319,12 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) +"hCG" = ( +/obj/effect/turf_decal/siding/wideplating_new/dark, +/obj/structure/railing, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "hCH" = ( /obj/structure/flora/grass/green/style_3, /obj/structure/flora/bush/flowers_br/style_random, @@ -51383,7 +51421,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "hDo" = ( /obj/effect/turf_decal/siding/wood/corner{ dir = 1 @@ -51653,7 +51691,7 @@ /obj/machinery/light_switch/directional/east, /obj/structure/sign/poster/official/random/directional/north, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "hFE" = ( /obj/effect/turf_decal/siding/thinplating_new/dark/corner{ dir = 4 @@ -51757,7 +51795,7 @@ uses = 10 }, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "hGO" = ( /obj/effect/turf_decal/tile/dark/diagonal_centre, /obj/structure/table/glass, @@ -51954,9 +51992,7 @@ /obj/item/clothing/under/misc/assistantformal, /obj/item/clothing/suit/hooded/wintercoat, /obj/item/clothing/shoes/winterboots, -/obj/machinery/camera/autoname/directional/south{ - dir = 5 - }, +/obj/machinery/camera/autoname/directional/south, /obj/effect/landmark/start/hangover, /turf/open/floor/iron/dark/herringbone, /area/station/commons/locker) @@ -52018,7 +52054,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "hIC" = ( /obj/structure/flora/rock/pile/style_random, /obj/structure/flora/grass/jungle/b/style_random, @@ -52344,7 +52380,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "hLu" = ( /obj/effect/turf_decal/trimline/dark/line{ dir = 6 @@ -52629,7 +52665,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "hNu" = ( /obj/effect/turf_decal/trimline/brown/filled/line, /obj/effect/turf_decal/trimline/dark/line, @@ -52653,16 +52689,6 @@ dir = 8 }, /obj/structure/hedge, -/obj/structure/sign/directions/engineering/directional/south{ - pixel_y = -40 - }, -/obj/structure/sign/directions/dorms/directional/south{ - pixel_y = -24; - dir = 8 - }, -/obj/structure/sign/directions/evac/directional/south{ - dir = 8 - }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -52909,6 +52935,9 @@ dir = 10 }, /obj/effect/decal/cleanable/dirt/dust, +/obj/structure/sign/warning/secure_area/directional/south{ + pixel_x = -32 + }, /turf/open/floor/plating/airless, /area/station/science/ordnance/bomb) "hOZ" = ( @@ -53167,7 +53196,7 @@ /obj/machinery/door/airlock/research/glass{ name = "Research Division Access" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/machinery/door/poddoor/shutters/preopen{ @@ -53314,7 +53343,7 @@ /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/cobweb/cobweb2, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "hRv" = ( /obj/effect/turf_decal/siding/wideplating_new/dark{ dir = 9 @@ -53409,7 +53438,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "hSt" = ( /obj/effect/turf_decal/trimline/blue/corner, /obj/effect/turf_decal/trimline/blue/corner{ @@ -53601,7 +53630,7 @@ }, /obj/effect/turf_decal/siding/dark, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "hTz" = ( /obj/structure/rack, /obj/item/emergency_bed, @@ -53816,7 +53845,7 @@ /obj/effect/turf_decal/tile/dark_blue/half/contrasted, /obj/structure/closet/crate/goldcrate, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "hVw" = ( /obj/effect/turf_decal/siding/wood{ dir = 6 @@ -53980,7 +54009,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "hWL" = ( /obj/structure/railing/corner{ dir = 8 @@ -54008,7 +54037,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "hWT" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 5 @@ -54019,7 +54048,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/structure/cable/layer3, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/equipment) +/area/station/ai/satellite/equipment) "hXa" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -54581,13 +54610,11 @@ /obj/effect/turf_decal/siding/thinplating/dark{ dir = 6 }, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/structure/railing{ dir = 1 }, /obj/structure/flora/rock/pile/jungle/style_random, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "ibp" = ( @@ -54733,7 +54760,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "icu" = ( /obj/effect/turf_decal/siding/dark/corner{ dir = 1 @@ -55253,9 +55280,6 @@ /turf/open/misc/asteroid/airless, /area/space/nearstation) "igS" = ( -/obj/structure/sign/departments/vault/directional/north{ - pixel_x = 32 - }, /obj/effect/turf_decal/tile/dark_blue/half/contrasted{ dir = 1 }, @@ -55442,7 +55466,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "iik" = ( /obj/effect/turf_decal/siding/dark_blue{ dir = 9 @@ -55566,7 +55590,7 @@ /obj/structure/reagent_dispensers/watertank/high, /obj/item/reagent_containers/cup/watering_can, /obj/machinery/camera/autoname/directional/south{ - dir = 5 + pixel_x = 20 }, /turf/open/floor/iron/dark/herringbone, /area/station/service/hydroponics) @@ -55948,7 +55972,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -55996,7 +56020,7 @@ /obj/structure/flora/rock/pile/jungle/style_random, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "imM" = ( /obj/effect/turf_decal/siding/thinplating_new/dark/corner{ dir = 4 @@ -56216,7 +56240,7 @@ /obj/structure/cable, /obj/machinery/power/apc/auto_name/directional/south, /turf/open/floor/carpet/blue, -/area/station/ai_monitored/turret_protected/aisat/equipment) +/area/station/ai/satellite/equipment) "ioq" = ( /obj/structure/broken_flooring/singular/directional/east, /obj/machinery/light/small/directional/west, @@ -56600,7 +56624,7 @@ name = "Tactical Gear Locker" }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "iqV" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt, @@ -56657,7 +56681,7 @@ /area/station/engineering/atmos/storage/gas) "irx" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "irB" = ( /obj/structure/cable, /turf/open/floor/plating, @@ -56770,10 +56794,8 @@ /obj/effect/turf_decal/trimline/brown/line{ dir = 1 }, -/obj/structure/noticeboard/directional/north{ - dir = 2 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/noticeboard/directional/north, /turf/open/floor/iron/dark, /area/station/commons/vacant_room/commissary) "isG" = ( @@ -57287,10 +57309,10 @@ /turf/open/floor/wood/large, /area/station/hallway/primary/port) "iwD" = ( -/obj/effect/turf_decal/siding/brown{ +/obj/effect/turf_decal/siding/brown/corner{ dir = 4 }, -/obj/effect/turf_decal/trimline/brown/filled/line{ +/obj/effect/turf_decal/trimline/brown/filled/corner{ dir = 4 }, /turf/open/floor/iron, @@ -57387,7 +57409,7 @@ }, /obj/structure/cable/layer3, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/equipment) +/area/station/ai/satellite/equipment) "ixf" = ( /obj/structure/cable, /obj/structure/railing/corner{ @@ -57422,7 +57444,7 @@ dir = 10 }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ixm" = ( /obj/effect/turf_decal/tile/neutral, /obj/machinery/vending/cigarette, @@ -57890,7 +57912,7 @@ }, /obj/machinery/light/floor, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "iBn" = ( /obj/structure/mop_bucket, /obj/item/mop, @@ -58163,7 +58185,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable/multilayer/connected, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "iDe" = ( /turf/open/floor/iron/dark/textured, /area/station/engineering/atmos) @@ -58186,9 +58208,7 @@ pixel_x = 9; pixel_y = 11 }, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "iDu" = ( @@ -58867,10 +58887,6 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark/smooth_edge, /area/station/service/hydroponics) -"iHK" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, -/area/station/ai_monitored/command/nuke_storage) "iHR" = ( /obj/structure/broken_flooring/singular/directional/north, /obj/structure/curtain/cloth{ @@ -59015,7 +59031,7 @@ /area/station/science/xenobiology) "iJc" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "iJd" = ( /obj/effect/turf_decal/siding/purple, /obj/structure/table/reinforced/rglass, @@ -59144,13 +59160,14 @@ /turf/open/floor/plating, /area/station/maintenance/port) "iKq" = ( -/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/door/airlock/maintenance{ name = "UndergroundCasino" }, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/central) "iKr" = ( @@ -59366,7 +59383,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -59603,7 +59620,7 @@ /area/station/science/ordnance/testlab) "iNm" = ( /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "iNo" = ( /obj/effect/turf_decal/siding/thinplating_new/light{ dir = 4 @@ -59838,7 +59855,7 @@ /obj/structure/table/reinforced, /obj/machinery/microwave, /turf/open/floor/iron/dark/textured_corner, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "iPF" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -59853,7 +59870,7 @@ /obj/machinery/door/firedoor, /obj/structure/cable, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "iPG" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 10 @@ -60233,6 +60250,23 @@ dir = 1 }, /area/station/hallway/primary/starboard) +"iSX" = ( +/obj/structure/sign/directions/medical/directional/east{ + pixel_y = 8; + dir = 1; + pixel_x = 0 + }, +/obj/structure/sign/directions/science/directional/east{ + dir = 1; + pixel_x = 0 + }, +/obj/structure/sign/directions/supply/directional/east{ + pixel_y = -8; + dir = 1; + pixel_x = 0 + }, +/turf/closed/wall, +/area/station/commons/storage/primary) "iSZ" = ( /obj/effect/turf_decal/siding/wood{ dir = 4 @@ -60271,7 +60305,7 @@ /obj/structure/cable/layer3, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "iTm" = ( /obj/effect/turf_decal/trimline/purple/filled/warning, /obj/effect/turf_decal/stripes/corner{ @@ -60306,7 +60340,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "iTt" = ( /obj/effect/turf_decal/siding/dark{ dir = 1 @@ -60548,6 +60582,7 @@ dir = 1 }, /obj/structure/flora/rock/pile/jungle/style_random, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "iVR" = ( @@ -60594,7 +60629,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable/layer3, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "iWl" = ( /obj/structure/railing{ dir = 4 @@ -60735,6 +60770,7 @@ /obj/effect/turf_decal/siding/thinplating_new/dark, /obj/effect/turf_decal/tile/red/half/contrasted, /obj/machinery/camera/autoname/directional/north, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark, /area/station/security/checkpoint/escape) "iWP" = ( @@ -60875,7 +60911,7 @@ name = "Auxiliry Dock Storage Room" }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -60966,7 +61002,7 @@ pixel_x = -6; pixel_y = 8 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = -6 }, /turf/open/floor/iron/dark, @@ -61178,7 +61214,7 @@ uses = 10 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "jbw" = ( /obj/structure/railing, /obj/structure/railing{ @@ -61190,7 +61226,7 @@ color = "#3d3e42"; dir = 4 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "jbD" = ( /obj/effect/turf_decal/trimline/brown/filled/corner{ dir = 8 @@ -61663,12 +61699,12 @@ /turf/closed/wall/r_wall, /area/station/maintenance/aft/greater) "jeA" = ( -/obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /obj/machinery/door/poddoor/preopen{ id = "cargosecprivacy"; name = "Privacy Shutter" }, +/obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/security/checkpoint/supply) "jeI" = ( @@ -61763,7 +61799,7 @@ /obj/structure/hedge, /obj/machinery/status_display/ai/directional/north, /turf/open/floor/iron/dark/textured_corner, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "jfw" = ( /obj/effect/turf_decal/siding/thinplating_new/light{ dir = 4 @@ -62003,7 +62039,7 @@ }, /obj/structure/cable, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "jhE" = ( /obj/effect/turf_decal/tile/dark_blue{ dir = 8 @@ -62196,7 +62232,8 @@ dir = 1 }, /obj/structure/sign/gym/right{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/effect/turf_decal/siding/thinplating_new/light{ dir = 9 @@ -62387,7 +62424,7 @@ req_access = list("ai_upload") }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "jkh" = ( /obj/effect/turf_decal/stripes/box, /obj/machinery/computer/gateway_control, @@ -62450,6 +62487,11 @@ }, /turf/open/floor/iron/dark/smooth_edge, /area/station/science/genetics) +"jkQ" = ( +/obj/structure/lattice/catwalk, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "jkW" = ( /obj/structure/flora/rock/pile/jungle/style_random, /turf/open/floor/engine/hull/reinforced, @@ -62587,7 +62629,7 @@ /obj/machinery/power/port_gen/pacman, /obj/effect/turf_decal/delivery, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "jmZ" = ( /obj/effect/turf_decal/tile/neutral{ dir = 4 @@ -62722,7 +62764,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "joJ" = ( /obj/structure/hedge, /obj/structure/railing{ @@ -62744,7 +62786,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "joT" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment, @@ -63012,14 +63054,14 @@ /obj/item/crowbar/red, /obj/item/wrench, /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/aisat/service"; + control_area = "/area/station/ai/satellite/service"; name = "Service Bay Turret Control"; req_access = list("minisat"); pixel_y = -27 }, /obj/machinery/digital_clock/directional/east, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/equipment) +/area/station/ai/satellite/equipment) "jqT" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 8 @@ -63477,7 +63519,7 @@ /obj/structure/flora/bush/flowers_pp/style_random, /obj/structure/flora/bush/flowers_yw/style_random, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "juB" = ( /obj/machinery/computer/order_console/mining, /turf/open/floor/iron/dark/textured_large, @@ -63572,10 +63614,10 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/central) "jvd" = ( @@ -63852,7 +63894,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/command/teleporter, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -63925,7 +63967,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -64317,7 +64359,7 @@ /obj/effect/turf_decal/siding/thinplating_new/dark, /obj/effect/turf_decal/trimline/red/filled/line, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "jAf" = ( /obj/machinery/airalarm/directional/north, /obj/structure/cable, @@ -64371,8 +64413,7 @@ dir = 4 }, /obj/machinery/camera/autoname/directional/south{ - network = list("ss13","medbay"); - dir = 5 + network = list("ss13","medbay") }, /turf/open/floor/iron/dark/small, /area/station/medical/cryo) @@ -64398,7 +64439,7 @@ dir = 8 }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "jAu" = ( /obj/structure/cable, /obj/effect/turf_decal/trimline/green/filled/line{ @@ -64420,7 +64461,7 @@ /obj/item/radio/intercom/directional/north, /obj/structure/window/spawner/directional/east, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "jAD" = ( /obj/structure/cable, /obj/effect/mapping_helpers/broken_floor, @@ -64644,7 +64685,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "jBA" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -64749,10 +64790,6 @@ /obj/machinery/computer/security/telescreen/rd/directional/north, /turf/open/floor/iron/dark/textured, /area/station/command/heads_quarters/rd) -"jCi" = ( -/obj/structure/sign/warning/radiation, -/turf/closed/wall/r_wall, -/area/station/engineering/supermatter) "jCl" = ( /obj/machinery/door/airlock/security/glass{ name = "Security Desk" @@ -64774,9 +64811,7 @@ dir = 5 }, /obj/item/kirbyplants/random, -/obj/machinery/camera/autoname/directional/south{ - dir = 5 - }, +/obj/machinery/camera/autoname/directional/south, /turf/open/floor/iron/dark/corner{ dir = 8 }, @@ -64945,6 +64980,13 @@ /obj/machinery/light/directional/south, /turf/open/floor/iron/dark, /area/station/hallway/secondary/exit/departure_lounge) +"jDr" = ( +/obj/structure/sign/directions/evac/directional/north{ + dir = 8; + pixel_y = 0 + }, +/turf/closed/wall, +/area/station/commons/dorms) "jDu" = ( /obj/structure/hedge, /obj/structure/railing{ @@ -65226,7 +65268,7 @@ dir = 1 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "jFD" = ( /obj/effect/turf_decal/siding/dark{ dir = 1 @@ -65839,7 +65881,7 @@ /obj/machinery/teleport/station, /obj/item/radio/intercom/directional/north, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "jKS" = ( /obj/effect/turf_decal/siding{ dir = 1 @@ -66074,7 +66116,8 @@ }, /obj/effect/turf_decal/siding/wood/corner, /obj/structure/sign/painting/library{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/structure/closet/secure_closet/personal/cabinet, /obj/structure/sign/poster/random/directional/west, @@ -66485,7 +66528,7 @@ /obj/structure/cable, /obj/machinery/status_display/ai/directional/north, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "jPK" = ( /obj/structure/railing/corner{ dir = 8 @@ -66516,7 +66559,7 @@ }, /obj/structure/cable, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "jQc" = ( /obj/effect/turf_decal/siding/brown{ dir = 1 @@ -66772,7 +66815,7 @@ "jRq" = ( /obj/structure/cable/multilayer/connected, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "jRr" = ( /obj/structure/table/reinforced/rglass, /obj/item/flashlight/lamp/green{ @@ -66938,7 +66981,7 @@ /obj/structure/hedge, /obj/effect/landmark/event_spawn, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "jTn" = ( /obj/effect/spawner/random/trash/graffiti{ random_icon = 0 @@ -67095,7 +67138,7 @@ /obj/machinery/power/apc/auto_name/directional/south, /obj/structure/cable, /turf/open/floor/carpet/blue, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "jUR" = ( /obj/structure/transit_tube/station/dispenser/reverse{ dir = 4 @@ -67110,7 +67153,8 @@ /obj/effect/turf_decal/siding/thinplating_new/light, /obj/effect/turf_decal/trimline/dark_red/line, /obj/structure/sign/gym/right{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/effect/turf_decal/trimline/dark_red/mid_joiner, /obj/machinery/light/directional/north, @@ -67145,7 +67189,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "jUZ" = ( /obj/effect/turf_decal/siding/wood/corner{ dir = 1 @@ -67386,7 +67430,7 @@ /obj/effect/turf_decal/siding/wideplating_new/dark/corner, /obj/structure/flora/bush/lavendergrass/style_random, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "jWT" = ( /obj/structure/sign/poster/contraband/wildcat/directional/east, /obj/structure/hedge, @@ -67939,14 +67983,12 @@ /obj/structure/cable, /obj/effect/turf_decal/bot_white, /obj/structure/chair, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/segment{ dir = 10 }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron/dark/textured_large, /area/station/maintenance/aft/lesser) "kbw" = ( @@ -69146,7 +69188,8 @@ /obj/structure/sign/map/left{ desc = "A framed picture of the station. Clockwise from security at the top (red), you see engineering (yellow), science (purple), escape (red and white), medbay (green), arrivals (blue and white), and finally cargo (brown)."; icon_state = "map-left-MS"; - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/effect/turf_decal/bot, /obj/machinery/light/directional/north, @@ -69167,7 +69210,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable/layer3, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "kjT" = ( /obj/effect/turf_decal/siding/dark{ dir = 1 @@ -69321,8 +69364,12 @@ /obj/effect/turf_decal/trimline/white/warning{ dir = 4 }, +/obj/machinery/flasher/directional/west{ + id = "AI"; + pixel_y = -5 + }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "kkZ" = ( /obj/effect/turf_decal/bot, /obj/structure/closet/cardboard, @@ -69707,9 +69754,7 @@ /obj/machinery/light_switch/directional/south{ pixel_x = -6 }, -/obj/machinery/camera/autoname/directional/south{ - dir = 5 - }, +/obj/machinery/camera/autoname/directional/south, /turf/open/floor/carpet, /area/station/command/meeting_room) "knt" = ( @@ -69801,7 +69846,7 @@ name = "Wine Storage" }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -69856,7 +69901,7 @@ /obj/effect/turf_decal/delivery, /obj/structure/closet/emcloset/anchored, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "koi" = ( /obj/effect/turf_decal/tile/dark/diagonal_centre, /obj/effect/turf_decal/siding/thinplating_new/light{ @@ -70015,7 +70060,7 @@ dir = 1 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "kpj" = ( /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 4 @@ -70038,12 +70083,12 @@ dir = 8 }, /obj/machinery/camera/autoname/directional/north{ - dir = 9; - network = list("aiupload") + network = list("aiupload"); + pixel_x = 22 }, /obj/effect/landmark/start/cyborg, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "kpo" = ( /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -70391,7 +70436,7 @@ dir = 4 }, /turf/open/floor/carpet/neon/simple/lime, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "krt" = ( /obj/effect/spawner/structure/window, /obj/structure/curtain/cloth{ @@ -70474,7 +70519,7 @@ "krS" = ( /obj/machinery/porta_turret/ai, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "krX" = ( /obj/effect/turf_decal/siding/wood{ dir = 10 @@ -70661,7 +70706,7 @@ dir = 1 }, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "ktO" = ( /obj/effect/turf_decal/siding/thinplating_new/light{ dir = 4 @@ -70842,7 +70887,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -71233,7 +71278,7 @@ /area/station/security/checkpoint/science) "kxn" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "kxp" = ( /obj/item/radio/intercom/directional/south, /obj/structure/table/reinforced, @@ -71312,17 +71357,6 @@ /obj/effect/turf_decal/trimline/dark_blue/filled/line{ dir = 1 }, -/obj/structure/sign/directions/vault/directional/south{ - pixel_y = -24; - dir = 9 - }, -/obj/structure/sign/directions/command/directional/south{ - dir = 9 - }, -/obj/structure/sign/directions/upload/directional/south{ - pixel_y = -40; - dir = 9 - }, /turf/open/floor/iron/dark, /area/station/hallway/secondary/command) "kxV" = ( @@ -71531,7 +71565,7 @@ dir = 8 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "kzh" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 6 @@ -71590,7 +71624,7 @@ "kzJ" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "kzM" = ( /obj/item/kirbyplants/random, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -71599,7 +71633,7 @@ }, /obj/machinery/newscaster/directional/south, /turf/open/floor/carpet/blue, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "kzQ" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -71861,7 +71895,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "kCd" = ( /obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ dir = 4 @@ -71909,18 +71943,9 @@ /obj/item/stack/medical/suture, /obj/item/stack/medical/suture, /obj/machinery/airalarm/directional/west, -/obj/machinery/camera/autoname/directional/north{ - network = list("ss13","medbay") - }, +/obj/machinery/camera/autoname/directional/west, /turf/open/floor/iron/white, /area/station/medical/medbay/lobby) -"kCp" = ( -/obj/structure/sign/warning/secure_area{ - desc = "A warning sign which reads 'SERVER ROOM'."; - name = "SERVER ROOM" - }, -/turf/closed/wall/r_wall, -/area/station/science/server) "kCq" = ( /obj/structure/grille, /obj/structure/lattice, @@ -72106,7 +72131,7 @@ }, /obj/machinery/door/firedoor, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "kDy" = ( /obj/structure/fireplace{ pixel_x = -32 @@ -72265,7 +72290,7 @@ uses = 10 }, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "kEj" = ( /obj/effect/turf_decal/siding/wood/corner{ dir = 4 @@ -72392,7 +72417,7 @@ /obj/machinery/light/floor, /obj/structure/cable, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "kEP" = ( /obj/effect/turf_decal/weather/snow/corner{ dir = 4 @@ -72899,6 +72924,22 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/iron/dark, /area/station/hallway/secondary/command) +"kIp" = ( +/obj/effect/turf_decal/siding/wideplating_new/dark{ + dir = 4 + }, +/obj/structure/railing{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/white/line{ + dir = 8 + }, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 8 + }, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "kIv" = ( /obj/structure/hedge, /turf/open/floor/plating, @@ -72916,7 +72957,7 @@ network = list("minisat") }, /turf/open/floor/engine/hull/reinforced, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "kII" = ( /obj/machinery/research/anomaly_refinery, /obj/effect/turf_decal/siding/purple, @@ -73225,7 +73266,7 @@ /area/station/maintenance/department/medical) "kLs" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "kLw" = ( /turf/open/floor/wood/large, /area/station/command/heads_quarters/cmo) @@ -73246,7 +73287,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "kLD" = ( /obj/effect/turf_decal/tile/purple/half/contrasted, /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, @@ -73317,7 +73358,7 @@ }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "kMe" = ( /obj/effect/turf_decal/bot_white/right, /obj/effect/turf_decal/stripes/line, @@ -73335,7 +73376,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "kMn" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -73447,13 +73488,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/small, /area/station/security/execution/transfer) -"kNp" = ( -/obj/structure/sign/warning/secure_area{ - desc = "A warning sign which reads 'BOMB RANGE"; - name = "BOMB RANGE" - }, -/turf/closed/wall, -/area/station/science/ordnance/bomb) "kNt" = ( /obj/effect/turf_decal/bot, /obj/effect/turf_decal/trimline/brown, @@ -73756,7 +73790,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "kQf" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 1 @@ -73886,12 +73920,12 @@ /obj/effect/landmark/event_spawn, /obj/effect/spawner/random/engineering/tracking_beacon, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "kQP" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "kQZ" = ( /obj/effect/mapping_helpers/burnt_floor, /obj/structure/chair/wood{ @@ -74069,7 +74103,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "kSE" = ( /obj/effect/mapping_helpers/broken_floor, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -74603,7 +74637,7 @@ }, /obj/machinery/light/directional/south, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "kXm" = ( /obj/structure/sign/poster/random/directional/north, /obj/effect/spawner/random/maintenance, @@ -74860,7 +74894,7 @@ /obj/effect/turf_decal/delivery, /obj/machinery/digital_clock/directional/north, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "laa" = ( /obj/effect/turf_decal/siding/wood{ dir = 5 @@ -75438,7 +75472,7 @@ /obj/structure/flora/bush/fullgrass/style_random, /obj/machinery/light/small/directional/south, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "lfD" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 1 @@ -75736,7 +75770,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/iron/dark, /area/station/maintenance/aft/greater) "lid" = ( @@ -75797,7 +75831,7 @@ pixel_y = 0 }, /turf/open/water, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "liG" = ( /obj/effect/spawner/structure/window, /obj/machinery/door/poddoor/shutters/preopen{ @@ -76145,7 +76179,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/mapping_helpers/airlock/red_alert_access, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "lkQ" = ( /obj/structure/sign/warning/secure_area/directional/south, /obj/effect/decal/cleanable/vomit/nebula, @@ -76399,7 +76433,7 @@ name = "Civil Rad Shelter" }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -76808,7 +76842,7 @@ /obj/effect/turf_decal/bot/right, /obj/machinery/newscaster/directional/north, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "lpK" = ( /obj/effect/turf_decal/tile/brown/opposingcorners{ dir = 1 @@ -77302,12 +77336,15 @@ /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 9 }, -/obj/item/canvas/twentythree_nineteen, +/obj/item/canvas/twentythree_nineteen{ + dir = 1 + }, /obj/structure/easel, /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/cobweb, /obj/structure/sign/painting/library{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/wood/tile, /area/station/maintenance/port) @@ -77889,6 +77926,11 @@ /obj/machinery/vending/security, /turf/open/floor/glass/reinforced, /area/station/security/lockers) +"lyI" = ( +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/nanotrasen/directional/east, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "lyM" = ( /obj/structure/reagent_dispensers/watertank, /obj/structure/sign/warning/no_smoking/directional/north, @@ -78105,12 +78147,10 @@ /obj/effect/turf_decal/tile/dark_blue/anticorner/contrasted{ dir = 4 }, -/obj/machinery/button/door/directional/south{ +/obj/machinery/button/door/directional/east{ id = "gateshutter"; name = "Gateway Shutter Control"; - req_access = list("gateway"); - pixel_y = 0; - pixel_x = 24 + req_access = list("gatweay") }, /turf/open/floor/iron/dark, /area/station/hallway/secondary/command) @@ -78318,7 +78358,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/segment, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "lBk" = ( /obj/effect/turf_decal/stripes/white/line{ dir = 5 @@ -78366,7 +78406,8 @@ /area/space/nearstation) "lBt" = ( /obj/structure/sign/painting/library{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/effect/turf_decal/siding/wood/corner{ dir = 1 @@ -78722,9 +78763,9 @@ "lEI" = ( /obj/structure/transit_tube, /obj/effect/turf_decal/trimline/dark_blue, -/obj/structure/window/reinforced/fulltile, +/obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "lEP" = ( /obj/effect/turf_decal/siding/dark/end{ dir = 4 @@ -79129,7 +79170,7 @@ }, /obj/structure/cable/multilayer/multiz, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "lII" = ( /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/glass, @@ -79186,7 +79227,7 @@ dir = 9 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "lJf" = ( /obj/structure/sign/poster/random/directional/north, /obj/structure/table/wood, @@ -79309,7 +79350,7 @@ /obj/structure/sign/warning/vacuum/external/directional/north, /obj/machinery/light/small/directional/north, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "lKl" = ( /obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ dir = 4 @@ -79531,7 +79572,7 @@ }, /obj/structure/hedge, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "lMe" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 10 @@ -79621,7 +79662,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable/layer3, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lMG" = ( /obj/effect/turf_decal/trimline/brown/filled/corner, /obj/effect/turf_decal/trimline/brown/filled/warning{ @@ -79712,7 +79753,7 @@ pixel_x = 7; pixel_y = 14 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 7; pixel_y = 7 }, @@ -79805,7 +79846,7 @@ dir = 1 }, /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/aisat_interior"; + control_area = "/area/station/ai/satellite/interior"; name = "Antechamber Turret Control"; req_access = list("minisat"); pixel_y = -30 @@ -79817,7 +79858,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "lND" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 4 @@ -80010,7 +80051,7 @@ }, /obj/structure/cable/layer3, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lPA" = ( /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -80028,7 +80069,7 @@ }, /obj/structure/cable, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lPG" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -80218,7 +80259,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "lRC" = ( /obj/effect/decal/cleanable/dirt, /turf/open/misc/asteroid/airless, @@ -80747,7 +80788,7 @@ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/command/teleporter, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/door/airlock/external{ @@ -80788,7 +80829,7 @@ color = "#4874A2" }, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "lWJ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -80864,7 +80905,7 @@ /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, /turf/open/floor/iron/dark/textured_corner, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "lXF" = ( /obj/structure/closet/emcloset, /obj/effect/decal/cleanable/dirt, @@ -81153,7 +81194,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "lZu" = ( /obj/structure/hedge, /obj/machinery/newscaster/directional/south, @@ -81368,7 +81409,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "mbl" = ( /obj/effect/turf_decal/tile/red/anticorner/contrasted, /obj/structure/sink/directional/west, @@ -82071,6 +82112,7 @@ dir = 6 }, /obj/structure/sign/gym{ + dir = 1; pixel_y = 32 }, /obj/machinery/status_display/evac/directional/west, @@ -82154,7 +82196,7 @@ /obj/effect/turf_decal/bot, /obj/structure/safe/vault, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "mhQ" = ( /obj/effect/turf_decal/bot, /obj/effect/spawner/random/maintenance, @@ -82188,7 +82230,7 @@ /obj/machinery/door/firedoor, /obj/structure/cable, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "mij" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -83209,7 +83251,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, /area/station/maintenance/port/aft) "mqG" = ( @@ -83268,7 +83310,7 @@ /turf/open/floor/iron/dark/textured, /area/station/security/checkpoint/medical) "mqY" = ( -/obj/structure/no_effect_signpost, +/obj/structure/signpost, /turf/open/misc/asteroid/airless, /area/space/nearstation) "mqZ" = ( @@ -83352,7 +83394,7 @@ }, /obj/structure/flora/rock/pile/style_random, /turf/open/water, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "mrU" = ( /obj/structure/sign/departments/security/directional/south, /obj/effect/turf_decal/trimline/red/filled/corner{ @@ -83438,7 +83480,7 @@ }, /obj/structure/flora/rock/pile/style_random, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "msl" = ( /obj/machinery/defibrillator_mount/directional/south, /obj/structure/table/glass, @@ -83542,7 +83584,7 @@ pixel_x = 8 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "msS" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -83551,7 +83593,7 @@ color = "#3d3e42"; dir = 1 }, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "msT" = ( /obj/machinery/vending/cigarette, /obj/effect/turf_decal/bot_white, @@ -83602,8 +83644,8 @@ /area/station/maintenance/port) "mtj" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/aft) "mty" = ( @@ -83669,7 +83711,7 @@ /obj/structure/rack, /obj/machinery/camera/autoname/motion/directional/east, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "muq" = ( /obj/item/kirbyplants/random, /obj/effect/turf_decal/trimline/green/filled/line{ @@ -83874,9 +83916,7 @@ dir = 8 }, /obj/item/kirbyplants/random, -/obj/machinery/camera/autoname/directional/south{ - dir = 5 - }, +/obj/machinery/camera/autoname/directional/south, /turf/open/floor/iron/dark/side{ dir = 8 }, @@ -84541,7 +84581,8 @@ /obj/machinery/button/flasher{ id = "visitorflash"; pixel_x = -24; - pixel_y = -6 + pixel_y = -6; + dir = 8 }, /turf/open/floor/iron/dark/side{ dir = 9 @@ -84592,7 +84633,7 @@ color = "#3d3e42"; dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "mBg" = ( /obj/structure/chair/comfy/brown{ buildstackamount = 0; @@ -84612,7 +84653,6 @@ /obj/structure/fence{ dir = 4 }, -/obj/structure/sign/warning/secure_area, /turf/open/floor/plating, /area/station/maintenance/aft/greater) "mBl" = ( @@ -84640,7 +84680,7 @@ dir = 8 }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "mBn" = ( /obj/structure/flora/bush/grassy/style_3, /obj/effect/turf_decal/siding/wood, @@ -84763,17 +84803,9 @@ /turf/open/floor/iron/dark/textured, /area/station/engineering/atmos/project) "mCn" = ( -/obj/effect/turf_decal/stripes/white/line{ - dir = 8 - }, -/obj/effect/turf_decal/siding/dark{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/dark_blue/filled/line{ - dir = 4 - }, -/obj/machinery/camera/autoname/directional/south, -/turf/open/floor/iron/dark, +/obj/structure/cable, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, /area/station/command/corporate_suite) "mCr" = ( /obj/effect/spawner/random/structure/crate, @@ -84893,16 +84925,14 @@ /obj/effect/turf_decal/trimline/dark_blue/filled/line{ dir = 10 }, -/obj/machinery/button/door/directional/south{ - id = "gateshutter"; - name = "Gateway Shutter Control"; - req_access = list("gateway"); - pixel_y = 0; - pixel_x = -24 - }, /obj/effect/turf_decal/trimline/dark_blue/corner{ dir = 4 }, +/obj/machinery/button/door/directional/west{ + id = "gateshutter"; + name = "Gatway Shutter Control"; + req_access = list("gateway") + }, /turf/open/floor/iron/dark, /area/station/command/gateway) "mDe" = ( @@ -85054,7 +85084,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "mFk" = ( /obj/effect/turf_decal/siding/dark{ dir = 1 @@ -85180,8 +85210,11 @@ /turf/open/floor/iron/white/textured, /area/station/commons/fitness/recreation/pool) "mGv" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, +/obj/structure/railing, +/obj/structure/marker_beacon/burgundy, +/obj/structure/lattice/catwalk, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/misc/asteroid/airless, /area/space/nearstation) "mGG" = ( /obj/effect/turf_decal/siding/wood{ @@ -85753,7 +85786,7 @@ /obj/machinery/newscaster/directional/north, /obj/machinery/camera/autoname/motion/directional/north, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "mKS" = ( /obj/machinery/door/airlock/mining{ name = "Drone Bay" @@ -85973,7 +86006,7 @@ color = "#4874A2" }, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "mNi" = ( /obj/machinery/atmospherics/pipe/smart/simple/orange/visible/layer1{ dir = 4 @@ -86803,7 +86836,7 @@ dir = 8 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "mSl" = ( /obj/machinery/door/airlock/external{ name = "Arrival Airlock"; @@ -87013,6 +87046,16 @@ }, /turf/open/floor/iron/dark/textured, /area/station/engineering/atmos/storage/gas) +"mTU" = ( +/obj/effect/turf_decal/siding/wideplating_new/dark{ + dir = 1 + }, +/obj/structure/railing{ + dir = 1 + }, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "mTY" = ( /obj/machinery/atmospherics/pipe/smart/simple/cyan/visible/layer5, /obj/machinery/door/firedoor/heavy, @@ -87180,9 +87223,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/camera/autoname/directional/south{ - dir = 5 - }, +/obj/machinery/camera/autoname/directional/south, /turf/open/floor/carpet/red, /area/station/service/library) "mVd" = ( @@ -87615,7 +87656,7 @@ /obj/structure/flora/bush/grassy/style_random, /obj/structure/flora/bush/style_random, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "mZd" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 10 @@ -88147,6 +88188,7 @@ /obj/structure/flora/rock/pile/jungle/style_random, /obj/structure/bed/dogbed, /obj/structure/marker_beacon/lime, +/obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/grass, /area/station/maintenance/aft/greater) "ndj" = ( @@ -88180,7 +88222,7 @@ dir = 9 }, /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ndD" = ( /obj/structure/railing/corner{ dir = 8 @@ -88514,7 +88556,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "nho" = ( /obj/structure/table/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -88528,11 +88570,9 @@ /area/station/service/bar) "nhu" = ( /obj/structure/hedge, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "nhw" = ( /obj/effect/turf_decal/siding/dark/corner{ dir = 1 @@ -88576,6 +88616,7 @@ /obj/effect/turf_decal/siding/thinplating/dark/corner{ dir = 1 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "nhR" = ( @@ -88687,7 +88728,7 @@ /obj/machinery/door/airlock/medical/glass{ name = "Primary Treatment Centre" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/turf_decal/tile/blue/fourcorners, @@ -88724,7 +88765,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "njl" = ( /turf/open/floor/plating, /area/station/construction/mining/aux_base) @@ -88898,10 +88939,10 @@ /obj/machinery/door/airlock/maintenance{ name = "Abandoned Project Room" }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/central) "nkU" = ( @@ -89247,8 +89288,17 @@ /turf/open/floor/iron/dark, /area/station/cargo/miningoffice) "nnZ" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/rust, +/obj/effect/turf_decal/stripes/white/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/white/line{ + dir = 8 + }, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 4 + }, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "noc" = ( /obj/effect/turf_decal/siding/wideplating_new/dark/corner{ @@ -89257,9 +89307,7 @@ /obj/structure/railing/corner{ dir = 1 }, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "noe" = ( @@ -89441,11 +89489,11 @@ /obj/machinery/door/airlock/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/maintenance/central) "npk" = ( @@ -89564,7 +89612,7 @@ }, /obj/effect/turf_decal/trimline/red/corner, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "npI" = ( /obj/effect/turf_decal/trimline/red/line{ dir = 4 @@ -90495,13 +90543,13 @@ }, /obj/machinery/light/small/directional/east, /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/aisat/exterior"; + control_area = "/area/station/ai/satellite/exterior"; name = "Zen Garden Turret Control"; req_access = list("minisat"); pixel_y = 27 }, /turf/open/floor/engine/hull/reinforced, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "nwC" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 @@ -90558,11 +90606,11 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/fore) "nxa" = ( @@ -90676,7 +90724,7 @@ /area/station/science/xenobiology) "nxR" = ( /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "nym" = ( /obj/structure/table/wood, /obj/structure/cable, @@ -90930,7 +90978,7 @@ dir = 10 }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "nAd" = ( /obj/effect/turf_decal/siding/wideplating_new/dark/corner{ dir = 1 @@ -91402,7 +91450,7 @@ /obj/structure/cable/layer3, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "nDR" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/abandoned, @@ -91501,9 +91549,7 @@ /obj/effect/turf_decal/trimline/dark/line{ dir = 1 }, -/obj/machinery/camera/autoname/directional/south{ - dir = 5 - }, +/obj/machinery/camera/autoname/directional/south, /turf/open/floor/iron, /area/station/cargo/storage) "nEz" = ( @@ -91756,7 +91802,8 @@ pixel_y = -6; pixel_x = -24; id = "ldorm1"; - name = "Curtains" + name = "Curtains"; + dir = 8 }, /turf/open/floor/wood/large, /area/station/commons/dorms) @@ -91831,7 +91878,8 @@ }, /obj/machinery/button/crematorium{ id = "crematoriumchapel"; - pixel_x = -25 + pixel_x = -25; + dir = 8 }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 @@ -91868,6 +91916,9 @@ dir = 6 }, /obj/effect/decal/cleanable/glass, +/obj/structure/sign/warning/secure_area/directional/south{ + pixel_x = 32 + }, /turf/open/floor/plating/airless, /area/station/science/ordnance/bomb) "nHv" = ( @@ -92309,7 +92360,7 @@ "nKQ" = ( /obj/machinery/nuclearbomb/selfdestruct, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "nKS" = ( /obj/effect/turf_decal/siding/wood/corner{ dir = 4 @@ -92496,6 +92547,9 @@ /obj/effect/turf_decal/trimline/dark_red/filled/warning{ dir = 5 }, +/obj/structure/sign/warning/secure_area/directional/north{ + pixel_x = 32 + }, /turf/open/floor/plating/airless, /area/station/science/ordnance/bomb) "nMM" = ( @@ -92891,6 +92945,7 @@ /obj/effect/turf_decal/siding/thinplating/dark{ dir = 9 }, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "nPK" = ( @@ -93107,11 +93162,10 @@ /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/rubble, /turf/open/floor/stone, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "nQT" = ( /obj/structure/closet/secure_closet/medical3, /obj/effect/turf_decal/box, -/obj/item/defibrillator/loaded, /obj/item/clothing/gloves/latex/nitrile, /obj/item/clothing/gloves/latex/nitrile, /obj/effect/turf_decal/siding/dark{ @@ -93122,6 +93176,9 @@ }, /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, +/obj/item/clothing/glasses/hud/health{ + pixel_y = 3 + }, /turf/open/floor/iron/dark/small, /area/station/medical/storage) "nRd" = ( @@ -93396,14 +93453,14 @@ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/command/eva, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/door/airlock/external{ name = "EVA Airlock" }, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "nSV" = ( /obj/structure/railing, /obj/item/shell/bot, @@ -93954,7 +94011,7 @@ /area/station/maintenance/port) "nXA" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/equipment) +/area/station/ai/satellite/equipment) "nXE" = ( /obj/effect/turf_decal/tile/dark_blue/half/contrasted{ dir = 4 @@ -94067,10 +94124,11 @@ /obj/structure/hedge, /obj/machinery/status_display/ai/directional/south, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "nYG" = ( /obj/structure/sign/gym{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/structure/hedge, /obj/structure/railing{ @@ -94461,7 +94519,7 @@ dir = 4 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "obe" = ( /obj/structure/cable, /obj/effect/spawner/random/maintenance, @@ -94699,7 +94757,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ocH" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 6 @@ -95524,11 +95582,11 @@ /area/station/security/checkpoint/customs) "oil" = ( /obj/structure/rack, -/obj/effect/spawner/random/armory/laser_gun, +/obj/effect/spawner/random/armory/pick_laser_loadout, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "oit" = ( /obj/effect/turf_decal/stripes/corner, /obj/effect/turf_decal/trimline/dark/corner{ @@ -96309,7 +96367,7 @@ /obj/machinery/digital_clock/directional/north, /obj/effect/landmark/firealarm_sanity, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "onN" = ( /obj/effect/turf_decal/trimline/dark_blue/filled/line{ dir = 10 @@ -96453,7 +96511,7 @@ }, /obj/machinery/newscaster/directional/south, /turf/open/floor/carpet/blue, -/area/station/ai_monitored/turret_protected/aisat/equipment) +/area/station/ai/satellite/equipment) "ooA" = ( /obj/structure/cable, /obj/structure/broken_flooring/singular/directional/north, @@ -97442,7 +97500,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "owE" = ( /obj/structure/flora/bush/grassy/style_random, /obj/structure/flora/bush/lavendergrass/style_random, @@ -97525,7 +97583,7 @@ }, /obj/machinery/light/small/directional/south, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "oxd" = ( /obj/structure/table/reinforced/plastitaniumglass, /obj/structure/chem_separator{ @@ -97672,7 +97730,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "oyb" = ( /obj/effect/turf_decal/trimline/blue/filled/warning{ dir = 1 @@ -97705,14 +97763,12 @@ /obj/structure/cable, /obj/effect/turf_decal/bot_white, /obj/structure/chair, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/segment{ dir = 6 }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron/dark/textured_large, /area/station/maintenance/aft/lesser) "oyl" = ( @@ -97775,7 +97831,7 @@ dir = 4 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "oyQ" = ( /obj/machinery/door/airlock/external{ name = "Escape Pod Two"; @@ -98298,7 +98354,7 @@ }, /obj/structure/flora/grass/jungle/b/style_5, /turf/open/water, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "oDe" = ( /obj/effect/turf_decal/siding/dark{ dir = 1 @@ -98382,9 +98438,7 @@ /obj/structure/railing/corner{ dir = 4 }, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "oDZ" = ( @@ -98465,7 +98519,7 @@ /obj/structure/cable/layer3, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/equipment) +/area/station/ai/satellite/equipment) "oEB" = ( /obj/effect/turf_decal/siding{ dir = 10 @@ -98689,7 +98743,7 @@ /obj/effect/turf_decal/delivery, /obj/structure/window/spawner/directional/east, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "oGA" = ( /obj/effect/turf_decal/trimline/dark_green/warning{ dir = 4 @@ -98743,6 +98797,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) +"oGQ" = ( +/obj/effect/turf_decal/trimline/blue, +/obj/machinery/hydroponics/constructable, +/obj/machinery/light/small/directional/west, +/turf/open/floor/iron/dark, +/area/station/service/hydroponics) "oGW" = ( /obj/structure/plasticflaps/opaque, /obj/machinery/navbeacon{ @@ -98786,9 +98846,7 @@ }, /obj/effect/turf_decal/trimline/yellow/corner, /obj/item/radio/intercom/directional/west, -/obj/machinery/camera/autoname/directional/west{ - dir = 10 - }, +/obj/machinery/camera/autoname/directional/west, /turf/open/floor/iron/dark/textured_edge{ dir = 8 }, @@ -98893,7 +98951,7 @@ /obj/machinery/computer/monitor, /obj/structure/cable, /turf/open/floor/iron/dark/textured_corner, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "oIK" = ( /obj/structure/table/reinforced, /obj/effect/spawner/surgery_tray/full, @@ -98933,7 +98991,7 @@ }, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "oIU" = ( /obj/structure/stairs/west, /obj/structure/railing, @@ -99461,7 +99519,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "oMi" = ( /obj/effect/turf_decal/siding/thinplating_new/dark/corner{ dir = 4 @@ -99519,7 +99577,7 @@ /obj/structure/cable, /obj/machinery/light_switch/directional/south, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "oMO" = ( /obj/effect/turf_decal/siding/thinplating_new/dark/corner{ dir = 1 @@ -99685,7 +99743,8 @@ /area/station/science/lab) "oOa" = ( /obj/structure/sign/departments/botany/botany/alt3{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/effect/turf_decal/trimline/green/corner{ dir = 8 @@ -99896,7 +99955,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "oOZ" = ( /obj/structure/flora/rock/pile/style_random, /obj/effect/spawner/random/trash, @@ -100062,7 +100121,8 @@ pixel_y = -6; pixel_x = -24; id = "ldorm2"; - name = "Curtains" + name = "Curtains"; + dir = 8 }, /obj/structure/railing{ color = "#36373a"; @@ -100103,6 +100163,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/general/hidden, /obj/effect/mapping_helpers/airlock/access/all/science/rd, /obj/structure/plasticflaps/kitchen, +/obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/iron/dark, /area/station/science/server) "oQc" = ( @@ -100131,7 +100192,7 @@ /obj/structure/cable, /obj/effect/turf_decal/delivery, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "oQi" = ( /obj/effect/turf_decal/siding/wideplating_new/dark{ dir = 4 @@ -100559,7 +100620,7 @@ /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/rubble, /turf/open/floor/stone, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "oSQ" = ( /obj/effect/turf_decal/tile/dark_blue/half/contrasted{ dir = 1 @@ -100904,13 +100965,6 @@ /obj/effect/turf_decal/trimline/dark/filled/line{ dir = 1 }, -/obj/machinery/button/door/directional/west{ - id = "main_surgery"; - name = "Privacy Shutters Control"; - req_access = list("surgery"); - pixel_x = -56; - pixel_y = 6 - }, /turf/open/floor/iron/showroomfloor, /area/station/medical/surgery/theatre) "oVD" = ( @@ -101344,7 +101398,7 @@ /obj/machinery/door/firedoor, /obj/structure/cable, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/equipment) +/area/station/ai/satellite/equipment) "oYY" = ( /obj/structure/cable, /obj/effect/mapping_helpers/broken_floor, @@ -101363,7 +101417,7 @@ /obj/effect/turf_decal/bot_white, /obj/machinery/status_display/evac/directional/west, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "oZj" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 4 @@ -101438,7 +101492,7 @@ /obj/machinery/door/airlock/maintenance, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, /area/station/maintenance/starboard/aft) "oZy" = ( @@ -101566,7 +101620,7 @@ /obj/machinery/door/airlock/maintenance{ name = "Dormitory Maintenance" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -101684,7 +101738,7 @@ /obj/machinery/holopad/secure, /obj/effect/spawner/random/engineering/tracking_beacon, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "pbd" = ( /obj/effect/turf_decal/trimline/purple/filled/corner{ dir = 4 @@ -102026,6 +102080,24 @@ /obj/structure/sign/poster/official/plasma_effects/directional/north, /turf/open/floor/iron/smooth, /area/station/maintenance/department/bridge) +"pdx" = ( +/obj/machinery/button/door/directional/east{ + id = "qm_warehouse"; + name = "Warehouse Door Control"; + req_access = list("cargo"); + pixel_y = -8 + }, +/obj/effect/turf_decal/siding/brown{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/corner, +/obj/effect/turf_decal/trimline/brown/filled/line{ + dir = 1 + }, +/turf/open/floor/iron/dark/side{ + dir = 4 + }, +/area/station/cargo/storage) "pdz" = ( /obj/structure/chair/wood/wings, /obj/structure/fluff/paper/stack{ @@ -102042,11 +102114,12 @@ "pdE" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/central) "pdF" = ( @@ -102128,7 +102201,7 @@ id = "AIgarden2" }, /turf/open/floor/engine/hull/reinforced, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "pdW" = ( /obj/machinery/portable_atmospherics/canister, /obj/effect/turf_decal/bot{ @@ -102195,7 +102268,7 @@ dir = 9 }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "peB" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/general/hidden, /obj/effect/turf_decal/stripes/line{ @@ -103145,7 +103218,7 @@ /obj/machinery/status_display/ai/directional/east, /obj/machinery/light/directional/east, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "plp" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/table/glass, @@ -103688,7 +103761,7 @@ }, /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/service/general, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/structure/cable, @@ -103786,7 +103859,7 @@ dir = 1 }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "pqv" = ( /obj/machinery/door/airlock/maintenance{ name = "Courtroom Maintenance" @@ -103895,7 +103968,7 @@ /obj/machinery/holopad/secure, /obj/structure/cable, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "prn" = ( /obj/effect/turf_decal/trimline/yellow/warning{ dir = 10 @@ -105143,6 +105216,13 @@ /obj/machinery/duct, /turf/open/floor/iron/dark/textured, /area/station/commons/dorms) +"pzo" = ( +/obj/structure/sign/directions/engineering/directional/east{ + dir = 2; + pixel_x = 0 + }, +/turf/closed/wall, +/area/station/maintenance/port/aft) "pzp" = ( /obj/effect/turf_decal/tile/red/fourcorners, /obj/effect/turf_decal/bot, @@ -105228,7 +105308,7 @@ dir = 1 }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "pzR" = ( /obj/structure/closet/emcloset, /obj/effect/turf_decal/delivery, @@ -105257,7 +105337,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/iron/dark, /area/station/maintenance/aft/greater) "pAa" = ( @@ -105282,7 +105362,7 @@ }, /obj/effect/turf_decal/trimline/red, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "pAe" = ( /obj/machinery/status_display/ai, /turf/closed/wall/r_wall, @@ -105429,7 +105509,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -105583,7 +105663,7 @@ /obj/effect/turf_decal/siding/thinplating_new/dark, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "pCn" = ( /obj/effect/turf_decal/weather/snow/corner{ dir = 6 @@ -106139,7 +106219,7 @@ }, /obj/structure/marker_beacon/yellow, /turf/open/floor/bamboo, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "pHa" = ( /obj/structure/table/reinforced, /obj/item/stack/sheet/iron/fifty, @@ -106213,6 +106293,7 @@ dir = 4 }, /obj/effect/decal/cleanable/dirt, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "pHv" = ( @@ -106778,7 +106859,7 @@ }, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "pLG" = ( /obj/effect/spawner/random/medical/two_percent_xeno_egg_spawner, /turf/open/floor/circuit/green, @@ -107013,7 +107094,7 @@ /obj/item/gun/ballistic/shotgun/riot, /obj/item/gun/ballistic/shotgun/riot, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "pNP" = ( /turf/closed/wall, /area/station/service/lawoffice) @@ -107224,7 +107305,7 @@ /obj/item/storage/lockbox/loyalty, /obj/effect/turf_decal/bot, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "pPe" = ( /obj/structure/chair/comfy/black{ dir = 1 @@ -107237,10 +107318,11 @@ /area/station/science/breakroom) "pPh" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/structure/cable, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/central) "pPi" = ( @@ -107623,13 +107705,26 @@ dir = 8 }, /obj/machinery/camera/autoname/directional/south{ - dir = 5; network = list("interrogation") }, /turf/open/floor/iron/dark/textured_corner{ dir = 4 }, /area/station/security/interrogation) +"pRL" = ( +/obj/structure/sign/directions/evac/directional/south{ + dir = 8; + pixel_y = 10 + }, +/obj/structure/sign/directions/dorms/directional/south{ + pixel_y = -10; + dir = 8 + }, +/obj/structure/sign/directions/engineering/directional/south{ + pixel_y = 0 + }, +/turf/closed/wall, +/area/station/service/boutique) "pRP" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 6 @@ -107860,7 +107955,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/door/firedoor, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "pTD" = ( /obj/effect/turf_decal/siding/brown{ dir = 1 @@ -107939,7 +108034,7 @@ }, /obj/machinery/status_display/evac/directional/north, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "pUf" = ( /turf/closed/wall, /area/station/medical/break_room) @@ -108033,7 +108128,7 @@ }, /obj/structure/extinguisher_cabinet/directional/south, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "pUZ" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 6 @@ -108229,7 +108324,7 @@ req_access = list("captain") }, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "pWS" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/effect/turf_decal/siding/thinplating_new/dark{ @@ -108248,7 +108343,7 @@ name = "Chapel Maintenance" }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/plating, @@ -108412,7 +108507,7 @@ color = "#4874A2" }, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "pYq" = ( /obj/structure/chair, /obj/effect/turf_decal/bot_white, @@ -108460,7 +108555,7 @@ /turf/open/floor/iron/dark, /area/station/medical/storage) "pYN" = ( -/obj/machinery/computer/rdconsole, +/obj/machinery/computer/rdconsole/unlocked, /obj/effect/turf_decal/stripes/line{ dir = 1 }, @@ -108565,7 +108660,7 @@ dir = 4 }, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "pZs" = ( /obj/effect/turf_decal/stripes/line{ dir = 10 @@ -108700,7 +108795,7 @@ dir = 9 }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "qaB" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 1 @@ -109090,6 +109185,7 @@ dir = 1 }, /obj/effect/turf_decal/siding/thinplating/dark/corner, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "qeJ" = ( @@ -109235,7 +109331,7 @@ /obj/effect/turf_decal/bot_white, /obj/machinery/status_display/ai/directional/east, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "qfB" = ( /obj/effect/turf_decal/siding/thinplating_new/dark/end{ dir = 1 @@ -109257,7 +109353,7 @@ name = "Private Channel" }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "qfC" = ( /obj/machinery/atmospherics/pipe/smart/simple/cyan/visible, /obj/structure/cable, @@ -109594,7 +109690,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable/layer3, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "qih" = ( /obj/effect/turf_decal/tile/blue/full, /obj/machinery/defibrillator_mount/mobile{ @@ -110011,9 +110107,7 @@ /obj/effect/turf_decal/siding/wideplating_new/dark/corner{ dir = 8 }, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "qlW" = ( @@ -110610,7 +110704,7 @@ /obj/structure/cable, /obj/machinery/firealarm/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "qqk" = ( /obj/machinery/firealarm/directional/north, /turf/open/floor/carpet/neon/simple/red/nodots, @@ -111355,7 +111449,7 @@ /obj/item/restraints/handcuffs, /obj/item/assembly/flash/handheld, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "qwT" = ( /obj/machinery/light/floor, /obj/effect/turf_decal/trimline/green, @@ -111466,17 +111560,6 @@ dir = 4 }, /obj/structure/hedge, -/obj/structure/sign/directions/security/directional/north{ - pixel_y = 40; - dir = 4 - }, -/obj/structure/sign/directions/command/directional/north{ - dir = 4 - }, -/obj/structure/sign/directions/evac/directional/north{ - pixel_y = 24; - dir = 8 - }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -111586,7 +111669,7 @@ /obj/effect/turf_decal/bot, /obj/item/radio/intercom/directional/east, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "qyy" = ( /turf/open/floor/glass/reinforced, /area/station/commons/fitness) @@ -111666,9 +111749,7 @@ }, /obj/machinery/power/apc/auto_name/directional/east, /obj/structure/cable, -/obj/machinery/camera/autoname/directional/east{ - dir = 6 - }, +/obj/machinery/camera/autoname/directional/east, /turf/open/floor/iron/dark/smooth_edge{ dir = 8 }, @@ -111820,7 +111901,7 @@ pixel_x = -8 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "qAi" = ( /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -111831,14 +111912,12 @@ /area/station/medical/coldroom) "qAl" = ( /obj/structure/hedge, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, /obj/effect/turf_decal/tile/dark_blue/anticorner/contrasted{ dir = 8 }, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "qAt" = ( /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -111868,10 +111947,11 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/fore) "qAG" = ( @@ -111895,7 +111975,7 @@ /obj/effect/spawner/random/armory/riot_helmet, /obj/effect/spawner/random/armory/riot_shield, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "qBb" = ( /obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible, /obj/structure/cable, @@ -112423,7 +112503,7 @@ }, /obj/structure/sign/poster/official/random/directional/east, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/equipment) +/area/station/ai/satellite/equipment) "qEO" = ( /obj/machinery/holopad, /obj/effect/turf_decal/box/white{ @@ -112653,7 +112733,7 @@ /obj/effect/turf_decal/bot/right, /obj/machinery/airalarm/directional/north, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "qGL" = ( /obj/item/reagent_containers/cup/beaker/cryoxadone{ pixel_x = -6; @@ -113336,7 +113416,7 @@ "qKN" = ( /mob/living/simple_animal/bot/secbot/beepsky/armsky, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "qKS" = ( /obj/effect/turf_decal/trimline/yellow, /obj/machinery/light/floor, @@ -113349,7 +113429,8 @@ dir = 1 }, /obj/structure/sign/painting/library_private{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/item/kirbyplants/organic/plant10, /turf/open/floor/carpet/green, @@ -113685,7 +113766,7 @@ pixel_x = 3 }, /turf/open/misc/beach/sand, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "qNb" = ( /turf/closed/wall, /area/station/medical/pharmacy) @@ -113734,7 +113815,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "qNs" = ( /obj/effect/turf_decal/trimline/yellow, /obj/machinery/light/floor, @@ -113811,7 +113892,7 @@ dir = 5 }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "qOs" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 9 @@ -113916,7 +113997,7 @@ /obj/effect/turf_decal/siding/thinplating_new/dark/corner, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "qPS" = ( /obj/effect/spawner/random/maintenance, /obj/structure/cable, @@ -113957,7 +114038,7 @@ }, /obj/machinery/door/firedoor, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "qQa" = ( /obj/structure/closet/crate/coffin, /obj/effect/turf_decal/tile/dark/diagonal_centre, @@ -114032,7 +114113,7 @@ pixel_y = -32 }, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "qQC" = ( /obj/structure/flora/bush/fullgrass, /obj/structure/flora/bush/grassy/style_random, @@ -114199,6 +114280,9 @@ /obj/structure/broken_flooring/singular{ dir = 4 }, +/obj/structure/sign/warning/secure_area/directional/north{ + pixel_x = -32 + }, /turf/open/floor/plating/airless, /area/station/science/ordnance/bomb) "qSi" = ( @@ -114376,12 +114460,10 @@ /obj/effect/turf_decal/siding/wood{ dir = 8 }, -/obj/structure/noticeboard/directional/west{ - dir = 4 - }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/noticeboard/directional/west, /turf/open/floor/wood/tile, /area/station/service/cafeteria) "qTF" = ( @@ -114489,7 +114571,7 @@ }, /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/service/general, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/structure/disposalpipe/segment{ @@ -114569,7 +114651,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "qVC" = ( /obj/effect/turf_decal/siding/thinplating_new/dark/corner{ dir = 1 @@ -114843,7 +114925,7 @@ dir = 10 }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "qYk" = ( /obj/structure/rack, /obj/item/clothing/suit/hazardvest, @@ -114971,7 +115053,7 @@ network = list("minisat") }, /turf/open/misc/asteroid/airless, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "qZc" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/window/reinforced/spawner/directional/east, @@ -115304,7 +115386,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/iron/dark, @@ -115330,7 +115412,7 @@ /obj/structure/cable, /obj/machinery/holopad/secure, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "rbJ" = ( /obj/structure/rack, /obj/item/clothing/gloves/color/fyellow, @@ -115746,12 +115828,8 @@ /obj/effect/turf_decal/trimline/white/warning{ dir = 4 }, -/obj/machinery/flasher/directional/west{ - id = "AI"; - pixel_y = 26 - }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "rfe" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 8 @@ -116978,7 +117056,7 @@ req_access = list("ai_upload") }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "rot" = ( /obj/effect/turf_decal/siding/wideplating_new/dark{ dir = 4 @@ -117168,7 +117246,7 @@ /obj/structure/table/reinforced, /obj/machinery/recharger, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "rpr" = ( /obj/effect/turf_decal/tile/brown/fourcorners, /obj/machinery/mineral/ore_redemption{ @@ -117549,7 +117627,7 @@ network = list("minisat") }, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "rrD" = ( /obj/structure/flora/bush/lavendergrass/style_random, /obj/structure/flora/bush/sparsegrass/style_random, @@ -117887,6 +117965,18 @@ }, /turf/open/floor/engine, /area/station/engineering/supermatter) +"rub" = ( +/obj/structure/hedge, +/obj/effect/turf_decal/siding/wood{ + dir = 1 + }, +/obj/structure/sign/plaques/kiddie/library{ + pixel_y = 32; + dir = 1 + }, +/obj/structure/railing, +/turf/open/floor/wood/large, +/area/station/service/library/upper) "ruh" = ( /obj/effect/turf_decal/siding/wood{ dir = 4 @@ -118010,6 +118100,17 @@ /obj/machinery/hydroponics/soil/rich, /turf/open/floor/grass, /area/station/service/hydroponics/garden) +"rvq" = ( +/obj/effect/turf_decal/siding/wideplating_new/dark{ + dir = 8 + }, +/obj/structure/railing{ + dir = 8 + }, +/obj/structure/marker_beacon/burgundy, +/obj/structure/sign/nanotrasen/directional/east, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "rvu" = ( /obj/item/kirbyplants/organic/plant10, /obj/effect/decal/cleanable/dirt/dust, @@ -118075,10 +118176,10 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) "rwe" = ( @@ -118264,7 +118365,7 @@ /obj/machinery/teleport/hub, /obj/machinery/status_display/ai/directional/north, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "rxz" = ( /obj/machinery/atmospherics/components/binary/pump{ dir = 1; @@ -118557,10 +118658,11 @@ /obj/machinery/door/airlock/maintenance/glass, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/cargo) "rAw" = ( @@ -118747,7 +118849,7 @@ "rBm" = ( /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "rBC" = ( /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -118818,7 +118920,7 @@ "rCf" = ( /obj/effect/turf_decal/trimline/dark/corner, /turf/open/floor/iron/dark/textured_corner, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "rCi" = ( /obj/effect/turf_decal/bot, /obj/machinery/digital_clock/directional/south, @@ -119259,10 +119361,10 @@ /area/station/command/heads_quarters/qm) "rEV" = ( /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/ai_upload"; - icon_state = "control_stun"; + control_area = "/area/station/ai/upload/chamber"; name = "AI Upload Turret Control"; - pixel_y = 28 + pixel_y = 28; + dir = 1 }, /obj/effect/turf_decal/siding/dark{ dir = 6 @@ -119277,7 +119379,7 @@ }, /obj/effect/landmark/start/cyborg, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "rEX" = ( /obj/effect/turf_decal/siding/wood{ dir = 5 @@ -119669,7 +119771,7 @@ name = "Research Division Access" }, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/machinery/door/poddoor/shutters/preopen{ @@ -119972,7 +120074,7 @@ /obj/effect/spawner/structure/window/reinforced/tinted, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "rKH" = ( /obj/structure/railing/corner, /obj/effect/turf_decal/siding/purple, @@ -120014,9 +120116,7 @@ /obj/effect/turf_decal/trimline/red/corner{ dir = 8 }, -/obj/machinery/camera/autoname/directional/east{ - dir = 6 - }, +/obj/machinery/camera/autoname/directional/east, /obj/machinery/firealarm/directional/east{ pixel_x = 26; pixel_y = 6 @@ -120155,7 +120255,7 @@ }, /obj/machinery/light/small/directional/south, /turf/open/floor/holofloor/wood, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "rLH" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 10 @@ -120901,7 +121001,7 @@ /obj/item/kirbyplants/random, /obj/machinery/airalarm/directional/west, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "rRE" = ( /obj/effect/turf_decal/tile/yellow, /turf/open/floor/iron/white, @@ -120934,14 +121034,14 @@ pixel_y = 11 }, /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/aisat/atmos"; + control_area = "/area/station/ai/satellite/atmos"; name = "Atmospherics Turret Control"; req_access = list("minisat"); pixel_y = -27 }, /obj/machinery/digital_clock/directional/west, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "rSd" = ( /obj/effect/turf_decal/siding/wood{ dir = 10 @@ -121476,9 +121576,6 @@ /turf/open/floor/iron/smooth, /area/station/maintenance/port/central) "rWS" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /turf/open/space/basic, /area/space/nearstation) "rWW" = ( @@ -121582,6 +121679,13 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/wood/large, /area/station/service/kitchen/diner) +"rXp" = ( +/obj/machinery/turretid{ + pixel_y = -5; + name = "AI Chamber turret control" + }, +/turf/closed/wall/r_wall, +/area/station/ai/satellite/chamber) "rXs" = ( /obj/structure/closet/radiation, /obj/effect/turf_decal/stripes/line{ @@ -121770,7 +121874,7 @@ /area/station/science/lower) "rYP" = ( /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "rYR" = ( /turf/closed/wall/r_wall, /area/station/tcommsat/server) @@ -121868,6 +121972,13 @@ pixel_x = -26; pixel_y = -6 }, +/obj/machinery/button/door/directional/west{ + id = "main_surgery"; + name = "Privacy Shutters Control"; + req_access = list("surgery"); + pixel_x = -26; + pixel_y = 6 + }, /turf/open/floor/iron/showroomfloor, /area/station/medical/surgery/theatre) "rZu" = ( @@ -122263,7 +122374,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "sbL" = ( /obj/effect/turf_decal/weather/snow, /obj/structure/cable, @@ -122308,7 +122419,7 @@ name = "E.V.A. Storage Shutter" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "scx" = ( /obj/effect/turf_decal/tile/dark/diagonal_centre, /obj/machinery/oven/range, @@ -122898,6 +123009,15 @@ /obj/structure/flora/grass/jungle/b/style_4, /turf/open/floor/grass, /area/station/hallway/secondary/exit/departure_lounge) +"sgP" = ( +/obj/structure/railing{ + dir = 1 + }, +/obj/structure/marker_beacon/burgundy, +/obj/structure/lattice/catwalk, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/misc/asteroid/airless, +/area/space/nearstation) "sgS" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/engineering/glass{ @@ -122938,7 +123058,7 @@ /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "shg" = ( /obj/structure/frame/machine, /turf/open/floor/iron/smooth_large, @@ -123182,7 +123302,7 @@ pixel_y = -24 }, /turf/open/floor/stone, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "sjI" = ( /obj/structure/cable, /obj/machinery/light/small/red/directional/west, @@ -123973,6 +124093,19 @@ dir = 6 }, /area/station/maintenance/department/security) +"sqU" = ( +/obj/effect/turf_decal/stripes/white/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/white/line{ + dir = 8 + }, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 4 + }, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "srd" = ( /obj/structure/flora/bush/fullgrass/style_random, /obj/structure/flora/bush/lavendergrass/style_random, @@ -124146,7 +124279,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ssw" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 5 @@ -124770,7 +124903,8 @@ /area/station/security/brig) "sxx" = ( /obj/structure/sign/departments/botany/botany/alt3{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/effect/turf_decal/trimline/green/corner, /obj/effect/turf_decal/siding/dark{ @@ -125056,7 +125190,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -125362,7 +125496,7 @@ dir = 8 }, /turf/open/floor/carpet/neon/simple/lime, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "sCy" = ( /obj/structure/railing{ dir = 4 @@ -125594,7 +125728,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/engine/hull/reinforced, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "sEh" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -125649,8 +125783,17 @@ /turf/open/floor/wood/tile, /area/station/service/minibar) "sEF" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/r_wall, +/obj/effect/turf_decal/stripes/white/line{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/white/line{ + dir = 4 + }, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 8 + }, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "sEG" = ( /obj/machinery/oven/range, @@ -126099,7 +126242,7 @@ }, /obj/machinery/airalarm/directional/west, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "sHT" = ( /obj/effect/turf_decal/trimline/blue, /obj/machinery/light/floor, @@ -126277,9 +126420,7 @@ /area/station/maintenance/fore/lesser) "sJY" = ( /obj/effect/turf_decal/tile/green/anticorner/contrasted, -/obj/structure/noticeboard/directional/south{ - dir = 1 - }, +/obj/structure/noticeboard/directional/south, /turf/open/floor/iron/dark, /area/station/service/hydroponics/garden) "sJZ" = ( @@ -126297,7 +126438,7 @@ /obj/effect/mapping_helpers/airlock/access/all/science/general, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/iron/white, @@ -126403,7 +126544,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "sKF" = ( /obj/structure/cable, /obj/effect/mapping_helpers/broken_floor, @@ -126708,6 +126849,20 @@ "sMC" = ( /turf/closed/wall/r_wall, /area/station/science/lower) +"sMP" = ( +/obj/effect/turf_decal/stripes/white/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/white/line{ + dir = 8 + }, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "sMS" = ( /obj/effect/turf_decal/siding/thinplating_new/dark, /obj/effect/turf_decal/trimline/yellow/warning, @@ -127272,7 +127427,7 @@ }, /obj/structure/marker_beacon/lime, /turf/open/floor/grass, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "sSe" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -127722,7 +127877,8 @@ /obj/effect/turf_decal/siding/purple, /obj/structure/cable, /obj/structure/noticeboard/rd{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron/white, /area/station/science/lower) @@ -127790,7 +127946,7 @@ dir = 1 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "sVU" = ( /obj/machinery/door/airlock/grunge{ name = "Cell 1"; @@ -127898,6 +128054,9 @@ /obj/effect/spawner/random/structure/closet_maintenance, /obj/effect/spawner/random/maintenance, /obj/effect/decal/cleanable/dirt/dust, +/obj/structure/sign/painting/large/library{ + dir = 1 + }, /turf/open/floor/plating, /area/station/maintenance/radshelter/civil) "sWO" = ( @@ -128331,7 +128490,8 @@ dir = 1 }, /obj/structure/noticeboard/cmo{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/effect/turf_decal/siding/blue{ dir = 1 @@ -128360,7 +128520,7 @@ /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/command/minisat, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "sZP" = ( /obj/structure/chair/office{ dir = 4 @@ -128426,6 +128586,7 @@ /obj/effect/turf_decal/trimline/dark/corner{ dir = 1 }, +/obj/structure/sign/departments/vault/directional/north, /turf/open/floor/iron/dark, /area/station/command) "tao" = ( @@ -128697,6 +128858,22 @@ }, /turf/open/floor/iron/dark/small, /area/station/engineering/gravity_generator) +"tcG" = ( +/obj/effect/turf_decal/stripes/white/line{ + dir = 8 + }, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 8 + }, +/obj/effect/turf_decal/siding/wideplating_new/dark{ + dir = 4 + }, +/obj/structure/railing{ + dir = 4 + }, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "tcI" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/smart/simple/dark/visible{ @@ -128794,7 +128971,7 @@ /obj/machinery/light/small/directional/south, /obj/structure/cable, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "tdd" = ( /obj/machinery/holopad, /turf/open/floor/iron/dark/textured, @@ -129171,7 +129348,7 @@ }, /obj/structure/hedge, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "tgm" = ( /obj/machinery/atmospherics/components/trinary/mixer/flipped{ dir = 8 @@ -129217,7 +129394,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "tgF" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -129393,7 +129570,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/bot, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "thP" = ( /obj/effect/turf_decal/stripes/white/line{ dir = 10 @@ -129496,7 +129673,7 @@ /area/station/maintenance/port/fore) "tip" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "tiq" = ( /obj/effect/turf_decal/trimline/blue/line{ dir = 1 @@ -129606,7 +129783,7 @@ /obj/machinery/firealarm/directional/west, /obj/machinery/status_display/ai/directional/north, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "tjx" = ( /obj/effect/turf_decal/trimline/blue, /obj/effect/turf_decal/trimline/blue/mid_joiner{ @@ -130115,13 +130292,15 @@ "tnz" = ( /obj/structure/closet/secure_closet/medical3, /obj/effect/turf_decal/box, -/obj/item/defibrillator/loaded, /obj/item/clothing/gloves/latex/nitrile, /obj/item/clothing/gloves/latex/nitrile, /obj/machinery/requests_console/auto_name/directional/north{ name = "Medbay Requests Console" }, /obj/effect/mapping_helpers/requests_console/assistance, +/obj/item/clothing/glasses/hud/health{ + pixel_y = 3 + }, /turf/open/floor/iron/dark/small, /area/station/medical/storage) "tnR" = ( @@ -130311,7 +130490,7 @@ /obj/effect/turf_decal/tile/purple/half/contrasted{ dir = 4 }, -/obj/machinery/computer/rdconsole{ +/obj/machinery/computer/rdconsole/unlocked{ dir = 8 }, /obj/effect/turf_decal/trimline/purple/line{ @@ -130374,6 +130553,19 @@ /obj/effect/spawner/random/maintenance/two, /turf/open/floor/plating, /area/station/maintenance/port/aft) +"tpN" = ( +/obj/effect/turf_decal/stripes/white/corner{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/white/line{ + dir = 9 + }, +/obj/effect/turf_decal/siding/thinplating/dark/corner{ + dir = 1 + }, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "tpQ" = ( /obj/effect/turf_decal/siding/wideplating_new/dark{ dir = 10 @@ -130388,14 +130580,12 @@ /area/space/nearstation) "tpS" = ( /obj/structure/hedge, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/effect/turf_decal/tile/dark_blue/anticorner/contrasted{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "tpZ" = ( /obj/machinery/power/smes{ charge = 5e+006 @@ -130438,7 +130628,7 @@ /obj/structure/flora/bush/lavendergrass/style_random, /obj/structure/flora/bush/ferny/style_random, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "tqo" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -130895,11 +131085,11 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/command/eva, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ttz" = ( /obj/machinery/light_switch/directional/west, /obj/effect/turf_decal/siding/blue{ @@ -130953,7 +131143,7 @@ /obj/machinery/light/small/directional/east, /obj/machinery/status_display/evac/directional/north, /turf/open/floor/carpet/neon/simple/lime, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ttO" = ( /obj/effect/turf_decal/siding/dark{ dir = 4 @@ -131129,7 +131319,7 @@ "tvt" = ( /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/carpet/neon/simple/lime, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "tvw" = ( /obj/machinery/door/airlock/maintenance{ name = "Security Maintenance" @@ -131914,12 +132104,6 @@ /obj/effect/turf_decal/trimline/brown/filled/corner{ dir = 8 }, -/obj/effect/turf_decal/siding/brown/corner{ - dir = 4 - }, -/obj/effect/turf_decal/trimline/brown/filled/corner{ - dir = 4 - }, /obj/effect/turf_decal/trimline/dark/corner{ dir = 8 }, @@ -132388,7 +132572,7 @@ /area/station/security/prison) "tDF" = ( /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "tDJ" = ( /obj/effect/mapping_helpers/broken_floor, /obj/effect/turf_decal/trimline/blue/filled/corner{ @@ -132438,7 +132622,7 @@ dir = 4 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "tDR" = ( /obj/structure/flora/bush/sparsegrass/style_random, /obj/structure/flora/grass/jungle/b/style_random, @@ -132796,7 +132980,7 @@ /area/station/service/chapel) "tGr" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "tGx" = ( /obj/effect/mapping_helpers/broken_floor, /obj/effect/turf_decal/siding/thinplating_new/dark{ @@ -132979,7 +133163,7 @@ }, /obj/effect/turf_decal/caution/red, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "tHw" = ( /obj/structure/railing{ dir = 6 @@ -133550,7 +133734,7 @@ dir = 1 }, /turf/open/floor/iron/dark/textured_half, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "tLz" = ( /obj/structure/bookcase/random, /obj/effect/turf_decal/siding/wood{ @@ -134053,7 +134237,7 @@ /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/rubble, /turf/open/floor/stone, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "tPc" = ( /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -134467,7 +134651,7 @@ network = list("vault") }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "tSs" = ( /obj/structure/cable, /turf/open/floor/iron/dark/small, @@ -134661,7 +134845,6 @@ /obj/machinery/airalarm/directional/south, /obj/effect/mapping_helpers/airalarm/engine_access, /obj/machinery/camera/autoname/directional/south{ - dir = 5; network = list("ss13","engine") }, /obj/effect/mapping_helpers/airalarm/link{ @@ -134693,7 +134876,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "tTV" = ( /obj/structure/sign/warning/vacuum/directional/north, /obj/effect/turf_decal/stripes/line{ @@ -134899,7 +135082,6 @@ "tVO" = ( /obj/structure/closet/secure_closet/medical3, /obj/effect/turf_decal/box, -/obj/item/defibrillator/loaded, /obj/item/clothing/gloves/latex/nitrile, /obj/item/clothing/gloves/latex/nitrile, /obj/effect/turf_decal/siding/dark{ @@ -134913,6 +135095,9 @@ network = list("ss13","medbay"); dir = 9 }, +/obj/item/clothing/glasses/hud/health{ + pixel_y = 3 + }, /turf/open/floor/iron/dark/small, /area/station/medical/storage) "tVT" = ( @@ -134956,7 +135141,7 @@ /obj/machinery/digital_clock/directional/north, /obj/effect/landmark/firealarm_sanity, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "tWk" = ( /obj/effect/spawner/structure/window/reinforced, /obj/effect/landmark/atmospheric_sanity/ignore_area, @@ -135053,7 +135238,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "tXg" = ( /obj/effect/spawner/structure/window, /obj/structure/curtain/cloth/fancy/mechanical{ @@ -135399,7 +135584,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "tZm" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 10 @@ -135832,7 +136017,7 @@ }, /obj/effect/turf_decal/delivery, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "udz" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 8 @@ -136175,7 +136360,7 @@ /obj/item/kirbyplants/random, /obj/machinery/firealarm/directional/east, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "ugO" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/general/visible, /obj/machinery/meter, @@ -136332,7 +136517,7 @@ /area/station/medical/paramedic) "uhM" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "uhP" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -136401,9 +136586,7 @@ dir = 4 }, /obj/structure/table/reinforced/rglass, -/obj/machinery/camera/autoname/directional/east{ - dir = 6 - }, +/obj/machinery/camera/autoname/directional/east, /turf/open/floor/iron/dark, /area/station/command/bridge) "uiG" = ( @@ -136463,7 +136646,7 @@ /obj/machinery/newscaster/directional/north, /obj/structure/window/spawner/directional/west, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "uiL" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 8 @@ -136494,7 +136677,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "uiZ" = ( /turf/open/floor/glass, /area/station/commons/lounge) @@ -136535,7 +136718,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "ujm" = ( /obj/effect/turf_decal/siding/wood{ dir = 9 @@ -136710,7 +136893,7 @@ /obj/machinery/suit_storage_unit/standard_unit, /obj/effect/turf_decal/delivery, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ula" = ( /obj/structure/cable, /obj/effect/spawner/random/trash/caution_sign, @@ -136765,7 +136948,7 @@ /obj/structure/cable/layer3, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ulJ" = ( /obj/structure/cable, /obj/structure/curtain/cloth{ @@ -137299,7 +137482,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -137881,7 +138064,7 @@ /obj/machinery/portable_atmospherics/canister/air, /obj/effect/turf_decal/delivery, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "uuG" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 8 @@ -138073,16 +138256,12 @@ name = "Primary AI Core Access"; req_access = list("ai_upload") }, -/obj/machinery/flasher/directional/north{ - pixel_x = 26; - id = "AI" - }, /obj/machinery/power/apc/auto_name/directional/west, /obj/effect/mapping_helpers/apc/cell_5k, /obj/machinery/light_switch/directional/east, /obj/structure/cable, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "uwF" = ( /obj/structure/table/glass, /obj/item/reagent_containers/cup/glass/coffee, @@ -138619,6 +138798,11 @@ }, /turf/open/floor/iron/dark/small, /area/station/engineering/main) +"uAz" = ( +/obj/structure/cable, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/engine, +/area/station/science/xenobiology) "uAA" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/shutters/preopen{ @@ -138914,7 +139098,7 @@ /area/station/maintenance/port/central) "uCV" = ( /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "uCW" = ( /obj/structure/hedge, /obj/structure/window/reinforced/spawner/directional/west, @@ -138932,7 +139116,8 @@ dir = 1 }, /obj/structure/sign/painting/library_private{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/item/kirbyplants/random, /obj/machinery/camera/autoname/directional/north, @@ -138974,6 +139159,7 @@ /obj/effect/turf_decal/siding/thinplating/dark/corner{ dir = 8 }, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "uDB" = ( @@ -139017,7 +139203,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/door/firedoor, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "uEd" = ( /obj/effect/spawner/random/entertainment/money_small, /obj/structure/table, @@ -139201,7 +139387,8 @@ }, /obj/machinery/button/flasher{ id = "IsolationFlash"; - pixel_x = -24 + pixel_x = -24; + dir = 8 }, /turf/open/floor/iron/dark/textured, /area/station/security/execution/education) @@ -139699,7 +139886,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "uKz" = ( /obj/effect/turf_decal/siding/dark/corner{ dir = 8 @@ -139740,13 +139927,13 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "uKL" = ( /obj/machinery/porta_turret/ai, /obj/effect/turf_decal/bot, /obj/machinery/computer/security/telescreen/minisat/directional/east, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "uKZ" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 1 @@ -140132,7 +140319,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "uNI" = ( /obj/structure/railing{ dir = 9 @@ -140421,9 +140608,11 @@ /turf/open/floor/grass, /area/station/hallway/secondary/entry) "uPS" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/station/security/checkpoint/escape) +/obj/structure/lattice/catwalk, +/obj/structure/marker_beacon/bronze, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/space/openspace, +/area/space/nearstation) "uPX" = ( /obj/machinery/door/poddoor/preopen{ id = "bridge blast"; @@ -140659,6 +140848,7 @@ pixel_y = -4 }, /obj/structure/sign/warning/yes_smoking/circle/directional/south, +/obj/machinery/barsign/directional/south, /turf/open/floor/grass, /area/station/service/bar) "uSf" = ( @@ -140690,7 +140880,7 @@ network = list("minisat") }, /turf/open/misc/asteroid/airless, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "uSn" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 1 @@ -140844,9 +141034,7 @@ /area/station/commons/lounge) "uTL" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "uTM" = ( @@ -140882,7 +141070,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/stone, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "uTS" = ( /obj/structure/chair/sofa/corp{ dir = 1 @@ -140932,7 +141120,7 @@ dir = 1 }, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "uUi" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 6 @@ -141007,7 +141195,7 @@ }, /obj/machinery/light/floor, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "uUI" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 9 @@ -141169,7 +141357,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "uVH" = ( /obj/effect/turf_decal/tile/purple/fourcorners, /obj/machinery/door/firedoor, @@ -141415,7 +141603,7 @@ }, /obj/structure/marker_beacon/lime, /turf/open/floor/grass, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "uXm" = ( /obj/machinery/door/airlock/maintenance, /obj/structure/cable, @@ -141478,7 +141666,7 @@ dir = 1 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "uXN" = ( /obj/structure/table/reinforced/rglass, /obj/item/storage/box/monkeycubes{ @@ -141628,7 +141816,7 @@ dir = 4 }, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "uZi" = ( /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -141664,7 +141852,7 @@ /obj/structure/flora/bush/fullgrass/style_random, /obj/structure/flora/bush/sunny/style_random, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "uZr" = ( /obj/structure/chair/office{ dir = 8 @@ -141704,7 +141892,7 @@ /obj/structure/marker_beacon/lime, /obj/structure/cable, /turf/open/floor/grass, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "uZJ" = ( /obj/structure/disposaloutlet{ dir = 4 @@ -141840,7 +142028,7 @@ }, /obj/machinery/firealarm/directional/west, /turf/open/floor/carpet/neon/simple/lime, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "vaz" = ( /obj/machinery/atmospherics/pipe/smart/simple/green/visible{ dir = 10 @@ -142058,7 +142246,7 @@ dir = 8 }, /turf/open/misc/dirt/dark/station, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "vbG" = ( /obj/machinery/door/airlock/public/glass{ name = "Library" @@ -142100,7 +142288,7 @@ /obj/machinery/door/airlock/security/glass{ name = "Permabrig Visitation" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/turf_decal/stripes/line{ @@ -142202,17 +142390,6 @@ "vcy" = ( /obj/effect/turf_decal/tile/neutral, /obj/structure/hedge, -/obj/structure/sign/directions/security/directional/south{ - pixel_y = -24; - dir = 4 - }, -/obj/structure/sign/directions/command/directional/south{ - dir = 4 - }, -/obj/structure/sign/directions/upload/directional/south{ - pixel_y = -40; - dir = 4 - }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -142391,7 +142568,7 @@ /obj/structure/cable, /obj/machinery/computer/security/telescreen/aiupload/directional/north, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "vdA" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 8 @@ -142632,7 +142809,7 @@ req_access = list("armory") }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "veT" = ( /obj/machinery/atmospherics/components/trinary/filter/atmos/flipped{ dir = 4 @@ -142991,7 +143168,7 @@ dir = 6 }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "vhR" = ( /obj/effect/turf_decal/siding/thinplating_new/dark/corner{ dir = 1 @@ -143491,10 +143668,8 @@ /turf/open/misc/asteroid/airless, /area/space/nearstation) "vkH" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/structure/flora/rock/pile/jungle/style_random, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/glass/reinforced/airless, /area/space/nearstation) "vkK" = ( @@ -143637,9 +143812,22 @@ /turf/open/floor/wood/large, /area/station/command/heads_quarters/cmo) "vlt" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall, -/area/station/hallway/secondary/exit/departure_lounge) +/obj/effect/turf_decal/stripes/white/line{ + dir = 4 + }, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 4 + }, +/obj/effect/turf_decal/siding/wideplating_new/dark{ + dir = 8 + }, +/obj/structure/railing{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "vlu" = ( /obj/effect/turf_decal/siding/thinplating_new/dark/corner{ dir = 1 @@ -143696,7 +143884,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "vlP" = ( /obj/structure/hedge, /obj/structure/railing{ @@ -144230,7 +144418,7 @@ }, /obj/structure/flora/bush/grassy/style_random, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "vqa" = ( /obj/structure/flora/bush/lavendergrass/style_random, /obj/structure/flora/rock/pile/jungle/style_random, @@ -144379,7 +144567,7 @@ pixel_x = -32 }, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "vrO" = ( /obj/effect/turf_decal/siding/wood, /obj/structure/railing{ @@ -144968,7 +145156,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "vvQ" = ( /obj/effect/turf_decal/tile/dark_blue/half/contrasted{ dir = 8 @@ -145306,7 +145494,7 @@ }, /obj/structure/flora/rock/pile/jungle/style_random, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "vyb" = ( /obj/machinery/duct, /obj/structure/cable, @@ -145546,7 +145734,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/iron/white, @@ -145711,22 +145899,10 @@ /turf/open/floor/iron/dark, /area/station/maintenance/starboard/fore) "vBA" = ( -/obj/machinery/button/door/directional/east{ - id = "qm_warehouse"; - name = "Warehouse Door Control"; - req_access = list("cargo"); - pixel_y = 24 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/trimline/brown/filled/corner{ - dir = 1 - }, /obj/effect/turf_decal/stripes/line{ dir = 4 }, -/obj/effect/turf_decal/siding/brown{ - dir = 1 - }, /turf/open/floor/iron/dark/side{ dir = 4 }, @@ -145980,7 +146156,7 @@ color = "#4874A2" }, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "vDE" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 5 @@ -146182,6 +146358,7 @@ dir = 4 }, /obj/machinery/camera/autoname/directional/south, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron/dark/side{ dir = 2 }, @@ -146595,10 +146772,10 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/port) "vIJ" = ( @@ -146771,6 +146948,13 @@ /obj/effect/turf_decal/trimline/red/corner, /turf/open/floor/iron/dark, /area/station/command/bridge) +"vJQ" = ( +/obj/effect/turf_decal/siding/wideplating_new/dark, +/obj/structure/railing, +/obj/effect/decal/cleanable/dirt, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "vKc" = ( /obj/effect/turf_decal/siding/wood/corner, /obj/item/kirbyplants/organic/plant22, @@ -146829,9 +147013,6 @@ }, /obj/item/kirbyplants/random, /obj/machinery/camera/autoname/directional/north, -/obj/structure/sign/directions/evac/directional/north{ - dir = 8 - }, /turf/open/floor/iron/dark/herringbone, /area/station/commons/dorms) "vKB" = ( @@ -147144,6 +147325,7 @@ }, /obj/effect/turf_decal/trimline/dark/corner, /obj/machinery/digital_clock/directional/south, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron/dark/side{ dir = 10 }, @@ -147298,7 +147480,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "vPe" = ( /obj/machinery/computer/mechpad, /obj/structure/cable, @@ -147327,7 +147509,7 @@ /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "vPm" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -147381,7 +147563,7 @@ "vPH" = ( /obj/effect/spawner/structure/window/reinforced/tinted, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "vPU" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 9 @@ -147736,7 +147918,7 @@ dir = 8 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "vSy" = ( /obj/effect/turf_decal/trimline/dark_green, /obj/structure/disposalpipe/segment, @@ -147787,7 +147969,8 @@ /obj/structure/sign/map/right{ desc = "A framed picture of the station. Clockwise from security at the top (red), you see engineering (yellow), science (purple), escape (red and white), medbay (green), arrivals (blue and white), and finally cargo (brown)."; icon_state = "map-right-MS"; - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/effect/turf_decal/bot, /turf/open/floor/iron/dark, @@ -148200,7 +148383,7 @@ dir = 6 }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "vWs" = ( /obj/machinery/power/apc/auto_name/directional/south, /obj/effect/turf_decal/siding/thinplating_new/dark{ @@ -148325,9 +148508,7 @@ /obj/effect/turf_decal/stripes/corner{ dir = 1 }, -/obj/machinery/camera/autoname/directional/north{ - dir = 9 - }, +/obj/machinery/camera/autoname/directional/north, /obj/structure/railing/corner{ dir = 4 }, @@ -148371,11 +148552,9 @@ /obj/item/kirbyplants/organic/plant10, /obj/effect/turf_decal/stripes/corner, /obj/effect/turf_decal/trimline/dark/corner, -/obj/machinery/camera/autoname/directional/south{ - dir = 5 - }, +/obj/machinery/camera/autoname/directional/south, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "vXL" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -148894,7 +149073,8 @@ /area/station/science/lower) "wbI" = ( /obj/structure/sign/painting/library{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/effect/turf_decal/siding/wood/corner{ dir = 4 @@ -148974,7 +149154,7 @@ dir = 8 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "wcg" = ( /obj/machinery/airalarm/directional/south, /obj/structure/chair/sofa/bench/right{ @@ -148995,7 +149175,7 @@ /obj/machinery/holopad, /obj/structure/flora/bush/sparsegrass/style_3, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "wcq" = ( /obj/structure/chair/sofa/corp, /obj/machinery/incident_display/delam/directional/north, @@ -149504,7 +149684,6 @@ dir = 8 }, /obj/machinery/camera/autoname/directional/south{ - dir = 5; network = list("prison") }, /obj/machinery/processor, @@ -149838,6 +150017,10 @@ /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/plating/airless, /area/station/solars/port/aft) +"wjl" = ( +/obj/structure/window/reinforced/plasma/fulltile, +/turf/open/floor/plating, +/area/station/engineering/supermatter/room) "wjr" = ( /obj/machinery/destructive_scanner, /obj/effect/turf_decal/delivery, @@ -149939,7 +150122,7 @@ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -150273,7 +150456,7 @@ dir = 8 }, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "wmO" = ( /turf/open/floor/iron, /area/station/maintenance/fore/lesser) @@ -150419,7 +150602,7 @@ network = list("minisat") }, /turf/open/floor/engine/hull/reinforced, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "wnQ" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 1 @@ -150523,7 +150706,7 @@ }, /obj/machinery/porta_turret/ai, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "woH" = ( /obj/machinery/holopad, /obj/effect/turf_decal/box/white{ @@ -150878,7 +151061,7 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/cobweb, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "wsY" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 1 @@ -150975,7 +151158,7 @@ dir = 6 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "wtR" = ( /obj/structure/curtain/cloth{ color = "#666666" @@ -151040,7 +151223,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "wup" = ( /obj/effect/turf_decal/tile/dark_blue/half/contrasted, /obj/effect/turf_decal/trimline/dark_blue/filled/warning{ @@ -151287,7 +151470,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "wvS" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -151430,13 +151613,13 @@ /turf/open/floor/wood, /area/station/maintenance/port/fore) "wwX" = ( -/obj/structure/cable, -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/directions/engineering/directional/east{ - dir = 2 +/obj/structure/sign/directions/evac/directional/north{ + pixel_x = 0; + pixel_y = -5; + dir = 10 }, -/turf/open/floor/plating, -/area/station/maintenance/port/aft) +/turf/closed/wall, +/area/station/service/kitchen/diner) "wwY" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/chair/sofa/bench/right{ @@ -151612,7 +151795,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 4 }, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "wyn" = ( /obj/machinery/door/window/brigdoor/left/directional/west{ req_access = list("security"); @@ -151819,6 +152002,22 @@ dir = 5 }, /area/station/commons/dorms) +"wzw" = ( +/obj/effect/turf_decal/siding/wideplating_new/dark{ + dir = 8 + }, +/obj/structure/railing{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/white/line{ + dir = 4 + }, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 4 + }, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "wzI" = ( /obj/effect/turf_decal/trimline/dark/corner{ dir = 1 @@ -151829,7 +152028,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 1 }, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "wzL" = ( /obj/structure/railing{ dir = 1 @@ -152206,7 +152405,7 @@ dir = 8 }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "wCr" = ( /obj/effect/mapping_helpers/broken_floor, /obj/machinery/atmospherics/components/unary/portables_connector/visible, @@ -152851,7 +153050,7 @@ /obj/structure/cable/layer3, /obj/structure/cable, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "wHS" = ( /obj/structure/chair/wood/wings{ dir = 1 @@ -153201,7 +153400,7 @@ dir = 4 }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "wKM" = ( /obj/effect/turf_decal/siding/brown, /obj/effect/turf_decal/trimline/brown/filled/corner, @@ -153346,7 +153545,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "wLX" = ( /obj/machinery/dna_scannernew, /turf/open/floor/iron/dark/textured, @@ -153556,7 +153755,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 4 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "wNP" = ( /obj/effect/spawner/random/structure/table_or_rack, /obj/item/clothing/mask/gas, @@ -153926,7 +154125,7 @@ dir = 1 }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "wQQ" = ( /obj/structure/railing/corner{ dir = 1 @@ -154293,6 +154492,7 @@ /obj/effect/turf_decal/siding/thinplating/dark/corner{ dir = 8 }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/engine/hull/reinforced, /area/space/nearstation) "wUK" = ( @@ -154640,16 +154840,14 @@ /obj/effect/turf_decal/siding/dark{ dir = 1 }, +/obj/machinery/camera/autoname/directional/south, /obj/machinery/barsign/directional/south, -/obj/machinery/camera/autoname/directional/south{ - dir = 5 - }, /turf/open/floor/iron/dark/herringbone, /area/station/service/bar) "wXm" = ( /obj/structure/cable, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "wXo" = ( /obj/structure/table, /obj/item/reagent_containers/spray/pestspray{ @@ -154667,6 +154865,19 @@ /obj/effect/turf_decal/tile/green/half/contrasted, /turf/open/floor/iron/dark, /area/station/service/hydroponics/garden) +"wXs" = ( +/obj/effect/turf_decal/stripes/white/line{ + dir = 4 + }, +/obj/effect/turf_decal/stripes/white/line{ + dir = 8 + }, +/obj/effect/turf_decal/siding/thinplating/dark{ + dir = 8 + }, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "wXu" = ( /obj/effect/turf_decal/trimline/yellow/warning{ dir = 10 @@ -155715,6 +155926,21 @@ }, /turf/open/floor/plating, /area/station/maintenance/starboard/fore) +"xgM" = ( +/obj/structure/sign/directions/evac/directional/north{ + pixel_y = 10; + dir = 8 + }, +/obj/structure/sign/directions/command/directional/north{ + dir = 4; + pixel_y = -10 + }, +/obj/structure/sign/directions/security/directional/north{ + pixel_y = 0; + dir = 4 + }, +/turf/closed/wall, +/area/station/service/cafeteria) "xgP" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 @@ -155991,7 +156217,7 @@ }, /obj/structure/cable/layer3, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "xji" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/preopen{ @@ -156269,7 +156495,7 @@ /obj/structure/cable/layer3, /obj/structure/cable, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/turret_protected/aisat/service) +/area/station/ai/satellite/service) "xla" = ( /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -156286,7 +156512,7 @@ /turf/open/floor/iron/dark/textured_corner{ dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "xlf" = ( /obj/machinery/door/airlock{ name = "Unisex Showers" @@ -156474,7 +156700,7 @@ /obj/structure/cable/layer3, /obj/structure/cable, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "xmv" = ( /obj/effect/turf_decal/delivery, /obj/structure/rack, @@ -156886,7 +157112,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "xpq" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 1 @@ -157308,7 +157534,7 @@ }, /obj/structure/flora/grass/jungle/b/style_2, /turf/open/water, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "xsP" = ( /obj/effect/turf_decal/trimline/brown, /obj/machinery/light/floor, @@ -157706,7 +157932,7 @@ }, /obj/structure/marker_beacon/jade, /turf/open/floor/holofloor/wood, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "xvH" = ( /obj/item/kirbyplants/organic/plant22{ pixel_y = 9 @@ -157764,6 +157990,7 @@ /obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/machinery/duct, /obj/structure/disposalpipe/segment, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/iron/white, /area/station/medical/treatment_center) "xwg" = ( @@ -157851,7 +158078,7 @@ /obj/item/kirbyplants/random, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "xwW" = ( /obj/machinery/door/poddoor/preopen{ id = "Prison Gate"; @@ -158147,7 +158374,7 @@ dir = 6 }, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "xzH" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 1 @@ -158601,7 +158828,7 @@ "xDe" = ( /obj/machinery/porta_turret/ai, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "xDi" = ( /obj/effect/turf_decal/siding/wood/corner{ dir = 8 @@ -158946,12 +159173,10 @@ /area/station/maintenance/port/fore) "xGg" = ( /obj/structure/hedge, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, /obj/effect/turf_decal/tile/dark_blue/anticorner/contrasted, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "xGh" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 8 @@ -159663,7 +159888,7 @@ /obj/machinery/firealarm/directional/west, /obj/machinery/status_display/evac/directional/north, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "xLb" = ( /obj/effect/turf_decal/siding/dark{ dir = 4 @@ -159782,7 +160007,7 @@ dir = 8 }, /turf/open/floor/iron/dark/textured, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "xLX" = ( /turf/open/floor/carpet/red, /area/station/security/detectives_office) @@ -159956,7 +160181,7 @@ dir = 5 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "xMI" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, @@ -160115,7 +160340,7 @@ dir = 1 }, /turf/open/floor/iron/dark/textured_half, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "xNP" = ( /obj/structure/rack, /obj/effect/spawner/random/techstorage/tcomms_all, @@ -160194,11 +160419,19 @@ }, /turf/open/floor/carpet/orange, /area/station/command/heads_quarters/ce) +"xON" = ( +/obj/structure/railing{ + dir = 1 + }, +/obj/structure/marker_beacon/burgundy, +/obj/structure/lattice/catwalk, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/engine/hull/reinforced, +/area/space/nearstation) "xOP" = ( /obj/structure/railing/corner{ dir = 4 }, -/obj/structure/sign/nanotrasen, /turf/closed/wall/r_wall, /area/space/nearstation) "xOV" = ( @@ -160287,7 +160520,7 @@ /obj/machinery/door/airlock/medical/glass{ name = "Primary Treatment Centre" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/turf_decal/tile/blue/fourcorners, @@ -160610,7 +160843,7 @@ /obj/machinery/status_display/ai/directional/west, /obj/machinery/light/directional/west, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/atmos) +/area/station/ai/satellite/atmos) "xRE" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt, @@ -161014,10 +161247,11 @@ network = list("minisat") }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "xVs" = ( /obj/structure/noticeboard/qm{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/effect/turf_decal/trimline/brown/filled/corner{ dir = 4 @@ -161300,7 +161534,7 @@ /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "xXR" = ( /obj/structure/table/wood, /obj/structure/cable, @@ -161678,7 +161912,7 @@ }, /obj/structure/chair/sofa/bench/solo, /turf/open/floor/iron/dark/herringbone, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "yaR" = ( /obj/machinery/light/floor, /obj/effect/turf_decal/trimline/brown, @@ -162457,7 +162691,7 @@ /obj/effect/turf_decal/delivery, /obj/structure/window/spawner/directional/west, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ygY" = ( /obj/effect/turf_decal/tile/neutral{ dir = 4 @@ -162640,7 +162874,7 @@ }, /obj/structure/flora/bush/grassy/style_random, /turf/open/floor/grass, -/area/station/ai_monitored/aisat/exterior) +/area/station/ai/satellite/exterior) "yiu" = ( /obj/effect/turf_decal/siding/dark{ dir = 4 @@ -163001,12 +163235,12 @@ /obj/effect/turf_decal/caution/stand_clear{ dir = 8 }, +/obj/effect/turf_decal/box, /obj/machinery/door/poddoor/shutters{ dir = 8; id = "qm_warehouse"; name = "Warehouse Shutters" }, -/obj/effect/turf_decal/box, /turf/open/floor/iron/dark/textured_half{ dir = 1 }, @@ -163254,7 +163488,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark/small, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ylW" = ( /obj/structure/table/reinforced/rglass, /obj/item/paper_bin{ @@ -178353,7 +178587,7 @@ qgY wvm uYI vFA -vlt +fdz cZB qSw cZB @@ -181941,7 +182175,7 @@ chn ptU fem ejn -uPS +bZT iWM kwY ldl @@ -182980,7 +183214,7 @@ fNC eMP ejn ejn -ejn +jDr eEx gOa tcM @@ -184522,7 +184756,7 @@ eRi tda ejn ejn -ejn +jDr vKu gOa oCL @@ -192261,7 +192495,7 @@ ukX lxu lcj enK -jCi +bdQ bdQ iHt rAE @@ -194833,7 +195067,7 @@ tOw ild tOw ukX -tOw +wjl vky ukX vky @@ -198590,7 +198824,7 @@ gym kFj kFj kFj -jsi +pif ciG sho ciG @@ -199378,7 +199612,7 @@ hFb cWB hrq wRM -kCp +pzy oQa pzy pzy @@ -199925,7 +200159,7 @@ kqn puv xrx cii -ird +uAz ird dPx dPx @@ -209695,10 +209929,10 @@ vjj rye hBv wYE -tiv +mCn +huN eDF eDF -mCn sWH wBq pem @@ -212774,7 +213008,7 @@ eJN mMZ pZo lMc -iHK +gwv dbg mfR mxG @@ -212838,7 +213072,7 @@ wKB uCV qig uhM -uhM +rXp uhM eJb jRq @@ -216847,11 +217081,11 @@ gym gym gym gJT -kNp +eoO hJX faj hJX -kNp +eoO gJT gym gym @@ -218389,11 +218623,11 @@ gym gym gym gym -kNp +eoO hJX kvJ hJX -kNp +eoO gym gym gym @@ -242073,7 +242307,7 @@ qvg kiX vLs joK -vLs +oGQ bLu bLu lng @@ -242834,8 +243068,8 @@ txW kaB pCa pCa -nnZ -uty +lAM +aEz hzt uty dya @@ -245142,8 +245376,8 @@ txW kaB pCa pCa -mGv -gxe +ewt +tpN pIn uty uty @@ -246423,7 +246657,7 @@ txW txW txW txW -mGv +ewt grZ jyx pSJ @@ -249507,7 +249741,7 @@ txW txW txW txW -mGv +ewt ghV oOw vLi @@ -249796,7 +250030,7 @@ rXt bbr dhB tLT -dMW +wwX eAb mrW byU @@ -250542,9 +250776,9 @@ kaB txW txW txW +lAM nnZ kLH -kLH akB dtb dtb @@ -252849,7 +253083,7 @@ pCa pCa rVd rVd -rVd +gVK rVd rVd pCa @@ -252871,7 +253105,7 @@ ugP jyh kGK hCZ -bxv +rub xbv cho kpP @@ -254619,7 +254853,7 @@ txW lAM aqt aqt -mGv +ewt aec aec lAM @@ -254876,7 +255110,7 @@ itE gxe aNh jjf -sLa +gbi sLa dtn xKy @@ -255127,8 +255361,8 @@ txW txW ewt keO -vIx -nnZ +wXs +lAM gxe dtb pIn @@ -255441,7 +255675,7 @@ hCZ htH tTl bwC -bxv +rub sbp cho lNb @@ -255472,7 +255706,7 @@ opa vCS jWv oth -wwX +qLk sSt irB naa @@ -255729,7 +255963,7 @@ naa jck naa jJw -naa +pzo naa veW ygk @@ -256535,7 +256769,7 @@ txW nzu txW nPJ -fBx +nuy tod txW nzu @@ -256667,8 +256901,8 @@ txW kaB pCa pCa -nnZ -sJF +lAM +fDh wPS wPS wPS @@ -257301,7 +257535,7 @@ gKy dtb dtb txW -sEF +aXd iVN vSW gAD @@ -257311,7 +257545,7 @@ cXz uJk okv uDx -sEF +aXd txW txW txW @@ -257949,8 +258183,8 @@ txW txW txW txW -mGv -tGj +ewt +tcG tGj vcY dtb @@ -258279,11 +258513,11 @@ fDJ fDJ xzR fDJ -fDJ +bQm aTh oJr tKp -fYi +bQy fYi aAN fYi @@ -258536,7 +258770,7 @@ iVK yck duV xIs -czJ +bna bna fub eAL @@ -258977,8 +259211,8 @@ txW txW txW txW -nnZ -sFS +lAM +vlt sFS xpG ukF @@ -259357,7 +259591,7 @@ gKy dtb dtb txW -fBx +nuy aeD eUh ukb @@ -259367,7 +259601,7 @@ cXz xYz eUh qeC -sEF +aXd txW txW txW @@ -260138,8 +260372,8 @@ eVR aqt aqt aqt -aqt sEF +aXd txW txW txW @@ -260641,8 +260875,8 @@ txW txW txW txW -sEF -aqt +aXd +div gxe dtb smB @@ -260771,8 +261005,8 @@ txW txW txW txW -opN -mGv +uPS +ewt pCa pCa gJT @@ -261172,7 +261406,7 @@ dtb dtb rfP oWn -oWn +kIp xOP txW txW @@ -261632,7 +261866,7 @@ jRA rdQ bUw hNz -uBc +pRL mgT tvU wwY @@ -262440,8 +262674,8 @@ cAe txW txW txW -fBx -kLH +nuy +nnZ uPq dtb lje @@ -262640,7 +262874,7 @@ sQm pHi dCI muG -gOV +xgM qxw mZk vSF @@ -262660,7 +262894,7 @@ lro iKL mkx vcy -nVN +czJ kwd dre mlp @@ -262714,7 +262948,7 @@ kLH kLH oOw uxn -uxn +wzw cud txW txW @@ -262965,8 +263199,8 @@ ukF ukF iWP kLH -kLH -sEF +sqU +aXd txW txW txW @@ -263341,8 +263575,8 @@ txW txW txW txW -opN -mGv +uPS +ewt pCa pCa gJT @@ -263725,8 +263959,8 @@ txW txW txW txW -sEF -aqt +aXd +div gxe dtb smB @@ -264247,8 +264481,8 @@ eiF uty hzt uty -nrR -fBx +sgP +nuy pCa hFK uty @@ -264641,7 +264875,7 @@ aGm aGm eIs aGm -qze +pdx vBA pAj wvp @@ -265989,7 +266223,7 @@ uIV uIV nix uIV -uIV +iSX vQP vGu cNH @@ -266303,8 +266537,8 @@ dBE mKY hzt uty -cff -sEF +xON +aXd pCa hFK uty @@ -267464,8 +267698,8 @@ txW txW txW txW -nnZ -pIn +lAM +hCG uty mKY hzt @@ -267473,8 +267707,8 @@ mKY hzt mKY uty -dya -nnZ +mTU +lAM txW txW txW @@ -268753,8 +268987,8 @@ ewt kLH kLH kLH -kLH -nnZ +sqU +lAM kLH kLH kLH @@ -269284,7 +269518,7 @@ vwR aqt aqt mzt -nnZ +lAM pCa pCa pCa @@ -271862,8 +272096,8 @@ ewt kLH kLH kLH -kLH -nnZ +sqU +lAM pCa pCa txW @@ -272622,7 +272856,7 @@ fEZ jyK sJF wPS -vwd +rvq wPS ndj pIn @@ -272879,7 +273113,7 @@ kHR fev uXh bSB -nnZ +lAM kLH kLH odY @@ -273677,12 +273911,12 @@ txW txW txW txW -sEF +aXd nhJ sLa feq flp -fBx +nuy rJW rJW lMp @@ -275219,12 +275453,12 @@ txW txW txW txW -fBx +nuy pHn gFv wPS eaO -sEF +aXd dtb rJW xKy @@ -276052,7 +276286,7 @@ dRZ txW lHF aqt -fBx +nuy wBM mpS txW @@ -276309,7 +276543,7 @@ aXd aqt cyB ukF -ukF +uTL ukF oKZ aqt @@ -276573,8 +276807,8 @@ dtb vwK dtb erl -aqt -fBx +sEF +nuy aqt uzU txW @@ -277058,8 +277292,8 @@ qvg pdG aqt oFa -aqt -fBx +sEF +nuy kaB pCa pCa @@ -277073,8 +277307,8 @@ pCa pCa pCa dRZ -fBx -pIn +nuy +hCG uty dUu vvn @@ -277350,8 +277584,8 @@ omF igQ xKy pdG -aqt -fBx +sEF +nuy dRZ txW txW @@ -278079,7 +278313,7 @@ aoX sXi ghk kxQ -vSH +bxv vSH vSH vSH @@ -278561,13 +278795,13 @@ txW txW txW txW -fBx -eiF +nuy +mGv uty hzt mKY -cff -sEF +xON +aXd jHP uty uty @@ -278637,8 +278871,8 @@ xDe cPU gfC omF -ukF -sEF +aFi +aXd dRZ txW txW @@ -279920,8 +280154,8 @@ omF dtb dtb sAF -fic -fBx +sMP +nuy dRZ txW txW @@ -280142,8 +280376,8 @@ qpJ ecL kLH nHW -kLH -sEF +sqU +aXd kaB pCa pCa @@ -280157,8 +280391,8 @@ pCa pCa pCa dRZ -sEF -bwF +aXd +vJQ uty gvK vBu @@ -280685,8 +280919,8 @@ ukF cWI ukF iLt -kLH -sEF +sqU +aXd kLH nMg txW @@ -280935,7 +281169,7 @@ nuy kLH qnv ukF -ukF +lyI ukF iWP fic @@ -281135,15 +281369,15 @@ txW txW txW txW -sEF -omF +aXd +jkQ eiF uty hzt uty cff -eLm fBx +nuy qvg iJc eZi @@ -281192,7 +281426,7 @@ dRZ txW thP kLH -sEF +aXd kLH nMg txW diff --git a/_maps/map_files/Pubbystation/pubbystation.dmm b/_maps/map_files/Pubbystation/pubbystation.dmm index 6d5bbabe15c563..139cde7ec6f0a2 100644 --- a/_maps/map_files/Pubbystation/pubbystation.dmm +++ b/_maps/map_files/Pubbystation/pubbystation.dmm @@ -139,7 +139,7 @@ }, /obj/structure/closet/l3closet, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aaF" = ( /obj/machinery/computer/exodrone_control_console, /obj/effect/turf_decal/siding/thinplating_new/dark, @@ -187,7 +187,7 @@ }, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "aaO" = ( /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, @@ -328,33 +328,33 @@ /area/station/solars/aisat) "abO" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "abV" = ( /obj/effect/turf_decal/stripes/corner, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "abW" = ( /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "abY" = ( /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "acc" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 }, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "acd" = ( /obj/machinery/porta_turret/ai{ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "ace" = ( /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "acf" = ( /obj/machinery/camera/motion/directional/south{ c_tag = "MiniSat AI Chamber North"; @@ -368,24 +368,24 @@ /obj/machinery/holopad/secure, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "acg" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 }, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "ach" = ( /obj/effect/turf_decal/stripes/corner{ dir = 4 }, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "ack" = ( /obj/machinery/power/smes/super/full, /obj/structure/cable, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "acm" = ( /obj/machinery/camera/motion/directional/east{ c_tag = "MiniSat External Port"; @@ -403,13 +403,13 @@ }, /obj/machinery/light/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "aco" = ( /turf/open/floor/plating, /area/station/cargo/drone_bay) "acq" = ( /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/ai"; + control_area = "/area/station/ai/upload/foyer"; name = "AI Chamber turret control"; pixel_x = 5; pixel_y = -24 @@ -423,13 +423,13 @@ }, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "acr" = ( /obj/machinery/ai_slipper{ uses = 8 }, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "acu" = ( /obj/machinery/porta_turret/ai{ dir = 4 @@ -440,7 +440,7 @@ }, /obj/machinery/light/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "acv" = ( /obj/machinery/camera/motion/directional/west{ c_tag = "MiniSat External Starboard"; @@ -453,7 +453,7 @@ dir = 1 }, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "acy" = ( /obj/effect/landmark/start/ai, /obj/machinery/newscaster/directional/south, @@ -464,14 +464,14 @@ pixel_y = -43 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "acC" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ dir = 8 }, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "acD" = ( /obj/machinery/light/directional/north, /obj/machinery/flasher{ @@ -488,11 +488,11 @@ }, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "acF" = ( /obj/effect/landmark/start/ai/secondary, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "acI" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -500,7 +500,7 @@ /obj/item/radio/intercom/directional/west, /obj/structure/closet/l3closet, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "acJ" = ( /obj/effect/turf_decal/trimline/brown/filled/corner, /obj/structure/chair/office{ @@ -531,7 +531,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "acN" = ( /turf/closed/wall/r_wall, /area/station/engineering/storage_shared) @@ -547,28 +547,28 @@ /area/station/salvage_bay) "acP" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "acT" = ( /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "acU" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "acV" = ( /turf/closed/wall, /area/station/engineering/storage_shared) "acW" = ( /obj/machinery/computer/station_alert, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "acX" = ( /obj/machinery/computer/monitor, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "acY" = ( /obj/machinery/computer/atmos_alert, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "adb" = ( /obj/machinery/door/airlock/command/glass{ name = "AI Core" @@ -581,12 +581,12 @@ }, /obj/effect/mapping_helpers/airlock/access/any/science/minisat, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "add" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "ade" = ( /obj/structure/table/glass, /obj/item/stack/sheet/glass{ @@ -602,16 +602,16 @@ pixel_y = 4 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "adf" = ( /obj/machinery/light/small/directional/north, /obj/machinery/modular_computer/preset/civilian, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "adg" = ( /obj/machinery/mecha_part_fabricator, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "adh" = ( /obj/machinery/camera/directional/north{ c_tag = "MiniSat AI Chamber Center"; @@ -621,19 +621,19 @@ /obj/structure/cable, /obj/machinery/power/solar_control, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "adi" = ( /obj/structure/chair/office{ dir = 1 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "adj" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ dir = 8 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "adk" = ( /obj/structure/table, /obj/machinery/recharger, @@ -642,7 +642,7 @@ dir = 8 }, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "adl" = ( /obj/structure/chair/office{ dir = 1 @@ -652,7 +652,7 @@ dir = 8 }, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "adn" = ( /obj/structure/chair/office{ dir = 4 @@ -662,7 +662,7 @@ dir = 8 }, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ado" = ( /obj/structure/table, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -672,13 +672,13 @@ /obj/machinery/power/apc/auto_name/directional/east, /obj/structure/cable, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "adq" = ( /obj/structure/chair/office{ dir = 1 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "ads" = ( /obj/machinery/light/directional/west, /obj/machinery/camera/directional/west{ @@ -689,7 +689,7 @@ }, /obj/machinery/suit_storage_unit/standard_unit, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "adt" = ( /obj/machinery/camera/directional/south{ c_tag = "MiniSat Maintenance Port Fore"; @@ -701,13 +701,13 @@ uses = 8 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "adu" = ( /obj/structure/disposalpipe/segment, /obj/structure/tank_dispenser/oxygen, /obj/effect/turf_decal/stripes/end, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "adv" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ @@ -722,7 +722,7 @@ /obj/effect/mapping_helpers/airlock/access/any/science/minisat, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "adx" = ( /obj/machinery/light/small/directional/south, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -730,7 +730,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "adz" = ( /obj/machinery/light/small/directional/south, /obj/machinery/camera/motion/directional/south{ @@ -742,7 +742,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "adB" = ( /obj/machinery/door/airlock/maintenance_hatch{ name = "MiniSat Maintenance" @@ -757,7 +757,7 @@ }, /obj/effect/mapping_helpers/airlock/access/any/science/minisat, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "adC" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -782,7 +782,7 @@ uses = 8 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "adF" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 9 @@ -814,7 +814,7 @@ }, /obj/effect/mapping_helpers/airlock/access/any/science/minisat, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "adO" = ( /obj/effect/turf_decal/stripes/line, /turf/open/floor/plating, @@ -822,7 +822,7 @@ "adT" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "adU" = ( /obj/structure/closet/secure_closet/security/sec, /obj/effect/turf_decal/delivery, @@ -838,10 +838,10 @@ /obj/effect/turf_decal/arrows/red, /obj/structure/sign/semiotic/warning/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "adX" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "adY" = ( /obj/machinery/door/firedoor, /turf/open/floor/iron, @@ -855,7 +855,7 @@ /obj/effect/turf_decal/arrows/red, /obj/structure/sign/semiotic/warning/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "aec" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -863,7 +863,7 @@ /obj/structure/extinguisher_cabinet/directional/west, /obj/machinery/suit_storage_unit/standard_unit, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aed" = ( /obj/structure/lattice, /obj/structure/grille/broken, @@ -872,11 +872,11 @@ "aee" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "aef" = ( /obj/structure/table/reinforced/titaniumglass, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "aeh" = ( /obj/machinery/light/small/directional/west, /obj/structure/cable, @@ -884,22 +884,22 @@ uses = 8 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "aej" = ( /obj/machinery/porta_turret/ai{ dir = 4 }, /obj/effect/turf_decal/bot_white, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "aek" = ( /obj/structure/table/reinforced/titaniumglass, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "ael" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "aem" = ( /obj/machinery/light/directional/south, /turf/open/floor/iron, @@ -943,7 +943,7 @@ }, /obj/structure/sign/semiotic/warning/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "aeB" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ dir = 8 @@ -985,7 +985,7 @@ }, /obj/effect/mapping_helpers/airlock/access/any/science/minisat, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "aeT" = ( /obj/machinery/power/tracker, /obj/structure/cable, @@ -997,14 +997,14 @@ /obj/structure/cable, /obj/machinery/airalarm/directional/north, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "aeZ" = ( /obj/machinery/atmospherics/pipe/layer_manifold/supply/visible{ dir = 4 }, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "afa" = ( /obj/machinery/camera/directional/north{ c_tag = "MiniSat Maintenance Port Aft"; @@ -1020,7 +1020,7 @@ uses = 8 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "afb" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -1028,7 +1028,7 @@ /obj/machinery/suit_storage_unit/standard_unit, /obj/machinery/status_display/evac/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "afc" = ( /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -1041,7 +1041,7 @@ /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/any/science/minisat, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "afd" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -1058,7 +1058,7 @@ /obj/structure/cable, /obj/machinery/firealarm/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "aff" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ @@ -1067,7 +1067,7 @@ /obj/structure/cable, /obj/effect/turf_decal/caution/red, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "afg" = ( /obj/item/kirbyplants/random, /obj/machinery/camera/directional/north{ @@ -1080,7 +1080,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "afh" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -1105,7 +1105,7 @@ /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/any/science/minisat, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "afj" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -1136,7 +1136,7 @@ uses = 8 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "afl" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -1154,7 +1154,7 @@ /obj/machinery/power/port_gen/pacman/pre_loaded, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "afp" = ( /obj/machinery/camera/autoname/directional/south, /turf/open/floor/engine/air, @@ -1166,7 +1166,7 @@ name = "Air Out" }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "afu" = ( /turf/closed/wall, /area/station/service/kitchen/coldroom) @@ -1177,13 +1177,13 @@ /obj/structure/chair/stool/bar/directional/south, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "afw" = ( /obj/machinery/light/small/directional/west, /obj/item/radio/intercom/directional/west, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "afy" = ( /obj/effect/landmark/start/cyborg, /obj/item/beacon, @@ -1191,7 +1191,7 @@ uses = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "afA" = ( /obj/machinery/light/small/directional/east, /obj/machinery/airalarm/directional/east, @@ -1199,14 +1199,14 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "afB" = ( /obj/structure/table, /obj/machinery/cell_charger, /obj/machinery/light/small/directional/east, /obj/item/stack/cable_coil, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "afE" = ( /obj/machinery/light/small/directional/east, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -1226,24 +1226,24 @@ "afH" = ( /obj/machinery/flasher/portable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "afK" = ( /obj/machinery/atmospherics/components/tank/air{ dir = 1 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "afL" = ( /obj/structure/table, /obj/item/wrench, /obj/item/tank/internals/emergency_oxygen, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "afM" = ( /obj/structure/table, /obj/item/crowbar, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "afN" = ( /obj/machinery/teleport/hub, /obj/effect/turf_decal/stripes/line{ @@ -1251,7 +1251,7 @@ }, /obj/structure/sign/departments/aisat/directional/west, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "afO" = ( /obj/machinery/door/airlock/mining{ name = "Drone Bay" @@ -1274,7 +1274,7 @@ /obj/machinery/holopad/secure, /mob/living/simple_animal/bot/secbot/pingsky, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "afQ" = ( /obj/machinery/power/apc/auto_name/directional/east, /obj/structure/cable, @@ -1286,11 +1286,11 @@ }, /obj/structure/sign/departments/aisat/directional/east, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "afS" = ( /obj/machinery/recharge_station, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "afT" = ( /obj/structure/rack, /obj/item/storage/toolbox/electrical{ @@ -1299,7 +1299,7 @@ }, /obj/item/storage/toolbox/mechanical, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "afU" = ( /obj/effect/turf_decal/tile/yellow/half/contrasted, /obj/machinery/plumbing/receiver, @@ -1314,10 +1314,10 @@ dir = 4 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "agf" = ( /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "agg" = ( /obj/machinery/requests_console/directional/south{ department = "AI"; @@ -1325,7 +1325,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "agh" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -1336,7 +1336,7 @@ }, /obj/structure/sign/semiotic/pressure/directional/east, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "agi" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden/layer4, @@ -1359,7 +1359,7 @@ /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "agr" = ( /obj/machinery/computer/teleporter{ dir = 4 @@ -1369,11 +1369,11 @@ }, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ags" = ( /obj/machinery/light/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "agu" = ( /obj/structure/transit_tube, /obj/effect/turf_decal/stripes/line{ @@ -1381,19 +1381,19 @@ }, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "agD" = ( /obj/machinery/light/small/directional/west, /obj/structure/sign/semiotic/vacuum_ahead/directional/west, /obj/structure/sign/semiotic/warning/directional/east, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "agE" = ( /obj/structure/window/reinforced/fulltile, /obj/structure/transit_tube, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "agP" = ( /turf/closed/wall, /area/station/security/office) @@ -1411,7 +1411,7 @@ }, /obj/effect/mapping_helpers/airlock/access/any/science/minisat, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "agS" = ( /obj/structure/transit_tube, /obj/structure/lattice/catwalk, @@ -1514,7 +1514,7 @@ /area/station/security/eva) "ahL" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ahM" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ dir = 8 @@ -1619,8 +1619,8 @@ "aih" = ( /obj/structure/table, /obj/structure/extinguisher_cabinet/directional/east, -/obj/item/tank/jetpack/oxygen/security, -/obj/item/tank/jetpack/oxygen/security, +/obj/item/tank/jetpack/security, +/obj/item/tank/jetpack/security, /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/iron, @@ -1629,7 +1629,7 @@ /obj/structure/table, /obj/item/clothing/suit/hooded/ablative, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "aik" = ( /obj/effect/turf_decal/tile/red/half/contrasted, /turf/open/floor/iron, @@ -1637,13 +1637,13 @@ "ail" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "aim" = ( /obj/structure/chair/office{ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "aio" = ( /obj/effect/turf_decal/delivery, /obj/machinery/light_switch/directional/south, @@ -1722,8 +1722,8 @@ /obj/structure/table, /obj/machinery/airalarm/directional/east, /obj/effect/turf_decal/tile/red/half/contrasted, -/obj/item/tank/jetpack/oxygen/security, -/obj/item/tank/jetpack/oxygen/security, +/obj/item/tank/jetpack/security, +/obj/item/tank/jetpack/security, /obj/machinery/door/window/brigdoor/security/cell/left/directional/west, /turf/open/floor/iron, /area/station/security/eva) @@ -1739,7 +1739,7 @@ pixel_y = 6 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "aiO" = ( /obj/structure/rack, /obj/structure/sign/warning/no_smoking/directional/east, @@ -1747,7 +1747,7 @@ /obj/effect/spawner/random/armory/slug, /obj/effect/spawner/random/armory/slug, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "aiR" = ( /obj/structure/sign/warning/electric_shock, /turf/closed/wall, @@ -1815,18 +1815,18 @@ /obj/effect/spawner/random/armory/bulletproof_armor, /obj/effect/spawner/random/armory/bulletproof_helmet, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ajh" = ( /obj/structure/table, /obj/item/gun/energy/temperature/security, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ajj" = ( /obj/structure/rack, /obj/effect/spawner/random/armory/rubbershot, /obj/effect/spawner/random/armory/rubbershot, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ajk" = ( /obj/effect/landmark/start/security_officer, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ @@ -2026,7 +2026,7 @@ /obj/effect/spawner/random/armory/riot_helmet, /obj/effect/spawner/random/armory/riot_helmet, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ajQ" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -2039,7 +2039,7 @@ /obj/effect/spawner/random/armory/riot_shield, /obj/effect/spawner/random/armory/riot_shield, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ajS" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -2053,7 +2053,7 @@ /obj/effect/spawner/random/armory/buckshot, /obj/effect/spawner/random/armory/buckshot, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ajW" = ( /obj/effect/landmark/start/security_officer, /obj/structure/chair/stool/bar/directional/north, @@ -2334,10 +2334,10 @@ /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "akM" = ( /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "akO" = ( /obj/structure/table/reinforced, /obj/item/hand_labeler{ @@ -2677,7 +2677,7 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /obj/structure/sign/semiotic/bulkhead/directional/east, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "ame" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -3766,7 +3766,7 @@ /area/space/nearstation) "apT" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "apX" = ( /turf/closed/wall, /area/station/commons/dorms) @@ -3782,7 +3782,7 @@ "aqg" = ( /obj/effect/turf_decal/caution/red, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "aqh" = ( /obj/effect/spawner/random/engineering/tank, /turf/open/floor/plating, @@ -3849,7 +3849,7 @@ /obj/machinery/power/apc/auto_name/directional/east, /obj/effect/mapping_helpers/apc/cell_10k, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "aqx" = ( /obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ dir = 4 @@ -3914,18 +3914,18 @@ /obj/item/piggy_bank/vault, /obj/structure/table/glass, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "aqM" = ( /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "aqN" = ( /obj/machinery/light/directional/north, /obj/machinery/newscaster/directional/north, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "aqO" = ( /obj/effect/turf_decal/stripes/line, /obj/machinery/light/directional/south, @@ -3936,7 +3936,7 @@ /obj/structure/filingcabinet, /obj/item/folder/documents, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "aqR" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, @@ -4190,11 +4190,11 @@ "arU" = ( /obj/machinery/nuclearbomb/selfdestruct, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "arW" = ( /obj/machinery/ore_silo, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "arX" = ( /obj/machinery/camera/directional/west{ c_tag = "Gateway" @@ -4444,11 +4444,11 @@ /obj/structure/closet/crate/goldcrate, /obj/machinery/light_switch/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "asX" = ( /obj/machinery/holopad, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "asY" = ( /obj/machinery/atmospherics/pipe/smart/simple/dark/visible{ dir = 4 @@ -4462,7 +4462,7 @@ "asZ" = ( /obj/structure/closet/crate/silvercrate, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "ata" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ dir = 8 @@ -4736,18 +4736,18 @@ /obj/item/reagent_containers/cup/glass/drinkingglass/shotglass, /obj/item/clothing/head/costume/bearpelt, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "aub" = ( /obj/machinery/light/directional/south, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "auc" = ( /obj/machinery/computer/bank_machine{ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "aud" = ( /obj/machinery/camera/motion/directional/south{ c_tag = "Vault"; @@ -4758,14 +4758,14 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "aue" = ( /obj/structure/safe, /obj/item/blueprints, /obj/item/skillchip/disk_verifier, /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "auf" = ( /obj/machinery/requests_console/directional/west{ department = "Gateway"; @@ -5040,7 +5040,7 @@ }, /obj/effect/mapping_helpers/airlock/access/any/supply/vault, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "auZ" = ( /obj/effect/turf_decal/tile/red{ dir = 4 @@ -5449,7 +5449,7 @@ "awt" = ( /obj/machinery/airalarm/directional/north, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "awu" = ( /obj/machinery/holopad, /obj/structure/disposalpipe/segment{ @@ -6137,7 +6137,7 @@ /area/station/command/bridge) "azk" = ( /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/ai_upload"; + control_area = "/area/station/ai/upload/chamber"; name = "AI Upload turret control"; pixel_y = -25 }, @@ -6240,7 +6240,7 @@ }, /obj/item/storage/belt/grenade, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "azN" = ( /obj/effect/turf_decal/box/white{ color = "#52B4E9" @@ -6429,7 +6429,7 @@ /area/station/command/bridge) "aAB" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aAC" = ( /obj/machinery/door/airlock/highsecurity{ name = "AI Upload Access" @@ -6444,7 +6444,7 @@ /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/any/command/ai_upload, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aAD" = ( /obj/machinery/power/apc/auto_name/directional/east, /obj/structure/cable, @@ -6636,7 +6636,7 @@ }, /obj/effect/turf_decal/tile/dark/diagonal_edge, /turf/open/floor/iron/white/diagonal, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aBy" = ( /obj/machinery/door/firedoor, /turf/open/floor/wood/large, @@ -6890,7 +6890,7 @@ }, /obj/effect/turf_decal/tile/dark/diagonal_edge, /turf/open/floor/iron/white/diagonal, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aCM" = ( /obj/machinery/camera/motion/directional/east{ c_tag = "AI Upload Starboard"; @@ -6908,7 +6908,7 @@ /obj/effect/turf_decal/siding/green, /obj/effect/turf_decal/tile/dark/diagonal_edge, /turf/open/floor/iron/white/diagonal, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aCP" = ( /obj/machinery/keycard_auth{ pixel_x = -26; @@ -7196,7 +7196,7 @@ dir = 8 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aDM" = ( /obj/machinery/camera/motion/directional/south{ c_tag = "AI Upload Center"; @@ -7210,7 +7210,7 @@ /obj/effect/mapping_helpers/apc/cell_10k, /obj/effect/mapping_helpers/apc/cut_AI_wire, /turf/open/floor/iron/white/diagonal, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aDN" = ( /obj/machinery/porta_turret/ai{ dir = 8 @@ -7219,7 +7219,7 @@ pixel_x = 32 }, /turf/open/floor/iron/white/smooth_large, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aDO" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ dir = 8 @@ -7321,7 +7321,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "aEc" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/public/glass{ @@ -7505,7 +7505,7 @@ /obj/structure/table/wood/fancy/green, /obj/effect/turf_decal/tile/dark/diagonal_edge, /turf/open/floor/iron/white/diagonal, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aEE" = ( /obj/machinery/light/directional/south, /obj/effect/turf_decal/siding/green/corner{ @@ -7513,26 +7513,26 @@ }, /obj/effect/turf_decal/tile/dark/diagonal_edge, /turf/open/floor/iron/white/diagonal, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aEF" = ( /obj/machinery/computer/upload/ai{ dir = 1 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aEG" = ( /obj/machinery/flasher{ id = "AI"; pixel_y = -6 }, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aEH" = ( /obj/machinery/computer/upload/borg{ dir = 1 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aEI" = ( /obj/structure/window/reinforced/spawner/directional/north, /obj/machinery/flasher{ @@ -7550,7 +7550,7 @@ }, /obj/effect/turf_decal/tile/dark/diagonal_edge, /turf/open/floor/iron/white/diagonal, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aEJ" = ( /obj/machinery/light/directional/west, /obj/machinery/camera/directional/west{ @@ -7663,7 +7663,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/structure/sign/semiotic/bulkhead/directional/west, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "aFe" = ( /obj/machinery/light/directional/east, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -8797,12 +8797,12 @@ /area/station/maintenance/department/engine) "aKY" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aKZ" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aLa" = ( /obj/machinery/door/poddoor/shutters{ id = "evashutter"; @@ -8812,7 +8812,7 @@ /obj/effect/turf_decal/delivery, /obj/structure/cable, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aLb" = ( /obj/machinery/door/airlock/command/glass{ name = "EVA Storage"; @@ -8827,7 +8827,7 @@ /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/any/command/eva, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aLc" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -8972,13 +8972,13 @@ dir = 1 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aLS" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aLU" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -9003,10 +9003,10 @@ req_access = list("eva") }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aLV" = ( /turf/closed/wall, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aLW" = ( /obj/item/kirbyplants/organic/plant14, /obj/machinery/requests_console/directional/west{ @@ -9280,7 +9280,7 @@ }, /obj/structure/closet/radiation, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aNt" = ( /obj/structure/rack, /obj/item/tank/jetpack/carbondioxide, @@ -9297,7 +9297,7 @@ }, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aNu" = ( /obj/effect/turf_decal/stripes/line, /obj/machinery/firealarm/directional/west, @@ -9472,7 +9472,7 @@ /obj/item/clothing/under/frontier_colonist/casual, /obj/item/clothing/under/frontier_colonist/casual, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aOE" = ( /obj/machinery/light/directional/west, /obj/machinery/camera/directional/west{ @@ -9716,7 +9716,7 @@ dir = 4 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aPJ" = ( /obj/structure/disposalpipe/segment{ dir = 10 @@ -9727,10 +9727,10 @@ }, /obj/structure/cable, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aPK" = ( /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aPL" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -9754,7 +9754,7 @@ /obj/item/clothing/under/frontier_colonist/casual, /obj/item/clothing/under/frontier_colonist/casual, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aPM" = ( /obj/structure/table, /obj/item/beacon, @@ -10055,12 +10055,12 @@ /obj/structure/cable, /obj/machinery/power/apc/auto_name/directional/south, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aQZ" = ( /obj/machinery/firealarm/directional/south, /obj/structure/cable, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aRa" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -10069,11 +10069,11 @@ dir = 4 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aRb" = ( /obj/machinery/airalarm/directional/south, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aRc" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -10094,7 +10094,7 @@ /obj/item/clothing/under/frontier_colonist/casual, /obj/machinery/wall_healer/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aRd" = ( /obj/effect/turf_decal/tile/brown{ dir = 1 @@ -11712,7 +11712,7 @@ "aYh" = ( /obj/machinery/holopad, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aYi" = ( /obj/structure/disposalpipe/segment, /obj/machinery/door/firedoor, @@ -11888,7 +11888,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "aYR" = ( /obj/structure/sink/kitchen/directional/south{ pixel_x = -1; @@ -13333,7 +13333,7 @@ "bfm" = ( /obj/structure/sign/warning/electric_shock, /turf/closed/wall/r_wall, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "bfn" = ( /obj/structure/reagent_dispensers/watertank/high, /obj/effect/turf_decal/tile/green, @@ -14747,7 +14747,7 @@ "blS" = ( /obj/structure/table/reinforced/titaniumglass, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "blX" = ( /turf/open/floor/engine, /area/station/science/xenobiology) @@ -19480,7 +19480,7 @@ "bJq" = ( /obj/machinery/computer/security/telescreen/entertainment, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "bJD" = ( /obj/structure/sign/departments/engineering/directional/south, /obj/machinery/door/firedoor, @@ -22066,7 +22066,7 @@ /obj/structure/cable, /obj/machinery/airalarm/directional/west, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "bUC" = ( /obj/structure/flora/bush/ferny/style_random, /turf/open/misc/asteroid, @@ -22726,7 +22726,7 @@ }, /obj/effect/mapping_helpers/airlock/access/any/science/minisat, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "bXi" = ( /obj/structure/disposalpipe/segment{ dir = 6 @@ -24214,7 +24214,7 @@ /obj/structure/cable, /obj/machinery/firealarm/directional/north, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "cff" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -25564,14 +25564,14 @@ /area/space/nearstation) "cnC" = ( /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/aisat_interior"; + control_area = "/area/station/ai/satellite/interior"; name = "AI Satellite turret control"; pixel_x = -5; pixel_y = -24 }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "cnD" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ @@ -25583,12 +25583,12 @@ uses = 8 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "cnE" = ( /obj/effect/turf_decal/arrows/red, /obj/machinery/holopad/secure, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "cnJ" = ( /obj/effect/turf_decal/delivery, /obj/machinery/vending/wardrobe/sec_wardrobe, @@ -27651,7 +27651,7 @@ /obj/structure/cable, /obj/machinery/firealarm/directional/south, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "cCP" = ( /obj/effect/turf_decal/bot/right, /turf/open/floor/iron/white, @@ -28117,7 +28117,7 @@ dir = 1 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "dbI" = ( /obj/machinery/airalarm/directional/east, /obj/effect/turf_decal/siding/wood{ @@ -28352,7 +28352,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "dnR" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -28521,7 +28521,7 @@ }, /obj/effect/turf_decal/tile/dark/diagonal_edge, /turf/open/floor/iron/white/diagonal, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "dsv" = ( /obj/structure/table, /obj/machinery/reagentgrinder, @@ -29350,7 +29350,7 @@ /obj/structure/cable, /obj/machinery/firealarm/directional/north, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "eaB" = ( /obj/machinery/requests_console/auto_name/directional/north, /obj/effect/turf_decal/tile/office_blue{ @@ -29962,7 +29962,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "ezx" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/flora/bush/large/style_random{ @@ -30954,7 +30954,7 @@ uses = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "fkH" = ( /obj/machinery/light/directional/south, /obj/machinery/camera/directional/south{ @@ -31104,7 +31104,7 @@ /obj/structure/cable, /obj/machinery/holopad/secure, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "fqJ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4{ dir = 4 @@ -31164,7 +31164,7 @@ uses = 8 }, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "fsA" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -31391,7 +31391,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "fBp" = ( /turf/closed/wall/r_wall, /area/station/engineering/atmos) @@ -31412,7 +31412,7 @@ "fBZ" = ( /obj/machinery/holopad, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "fCa" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/electric_yellow, @@ -31736,7 +31736,7 @@ /obj/structure/cable, /obj/effect/turf_decal/tile/dark/diagonal_edge, /turf/open/floor/iron/white/diagonal, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "fQd" = ( /obj/machinery/conveyor{ id = "CargoLoad" @@ -32050,7 +32050,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden/layer4, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "gfe" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4{ dir = 4 @@ -32619,7 +32619,7 @@ }, /obj/machinery/power/apc/auto_name/directional/east, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "gBb" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ @@ -33036,7 +33036,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "gRU" = ( /obj/effect/turf_decal/siding/dark_blue, /obj/effect/turf_decal/tile/office_blue/half/contrasted, @@ -33278,7 +33278,7 @@ /obj/effect/mapping_helpers/airlock/access/any/science/minisat, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "hhs" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -33534,7 +33534,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "hpp" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 @@ -33844,7 +33844,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "hDu" = ( /turf/closed/wall, /area/station/hallway/secondary/command) @@ -34169,14 +34169,14 @@ /obj/machinery/light/directional/south, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "hQd" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "hQh" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -34387,7 +34387,7 @@ /obj/effect/spawner/random/contraband/armory, /obj/item/epic_loot/plasma_explosive, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "hWW" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -34540,7 +34540,7 @@ dir = 8 }, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ifr" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ dir = 8 @@ -34801,7 +34801,7 @@ dir = 8 }, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "ipH" = ( /obj/effect/turf_decal/caution, /obj/effect/turf_decal/stripes/line{ @@ -35369,7 +35369,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "iLl" = ( /obj/structure/sink{ pixel_y = 29 @@ -35460,7 +35460,7 @@ uses = 8 }, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "iOf" = ( /obj/effect/landmark/start/hangover, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ @@ -35538,7 +35538,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "iTa" = ( /obj/machinery/newscaster/directional/south, /obj/effect/turf_decal/tile/red/half/contrasted, @@ -35559,7 +35559,7 @@ "iVA" = ( /obj/machinery/firealarm/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "iVJ" = ( /obj/effect/spawner/random/medical/memeorgans, /obj/effect/mapping_helpers/broken_floor, @@ -35742,7 +35742,7 @@ /obj/effect/mapping_helpers/airlock/access/any/science/minisat, /obj/structure/cable, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "jcc" = ( /obj/machinery/chem_mass_spec, /turf/open/floor/iron/white/textured_large, @@ -36926,7 +36926,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/sign/semiotic/bulkhead/directional/west, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "jZC" = ( /obj/machinery/atmospherics/components/unary/airlock_pump, /obj/machinery/camera/autoname/directional/east, @@ -36983,7 +36983,7 @@ }, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "kdb" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/machinery/camera/directional/north{ @@ -37029,7 +37029,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "kfA" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/smart/simple/green/visible{ @@ -37175,7 +37175,7 @@ /obj/effect/mapping_helpers/airlock/access/any/science/minisat, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "kkk" = ( /obj/structure/table, /obj/item/reagent_containers/cup/glass/shaker, @@ -37657,7 +37657,7 @@ uses = 8 }, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "kAD" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -37980,7 +37980,7 @@ "kPc" = ( /obj/machinery/firealarm/directional/south, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "kPM" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ dir = 8 @@ -38090,7 +38090,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "kUw" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/machinery/vending/wardrobe/coroner_wardrobe, @@ -38117,7 +38117,7 @@ /obj/structure/table, /obj/item/gun/energy/ionrifle, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "kVt" = ( /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable, @@ -38571,7 +38571,7 @@ "lmI" = ( /obj/machinery/computer/security/telescreen/entertainment, /turf/closed/wall/r_wall, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "lmU" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ dir = 8 @@ -38686,7 +38686,7 @@ dir = 8 }, /turf/open/floor/plating/airless, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "lqc" = ( /obj/effect/decal/cleanable/blood/oil, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, @@ -38816,7 +38816,7 @@ }, /obj/structure/cable, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ltJ" = ( /obj/structure/statue/petrified, /turf/open/floor/plating, @@ -39052,7 +39052,7 @@ /obj/machinery/cell_charger, /obj/effect/turf_decal/stripes/end, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "lFh" = ( /obj/machinery/holopad, /obj/structure/cable, @@ -39377,7 +39377,7 @@ }, /obj/effect/turf_decal/tile/dark/diagonal_edge, /turf/open/floor/iron/white/diagonal, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "lUC" = ( /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, @@ -39426,7 +39426,7 @@ /obj/machinery/door/firedoor, /obj/item/storage/fancy/donut_box, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "lWv" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/orange/visible, /turf/open/floor/engine, @@ -39600,7 +39600,7 @@ dir = 8 }, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "mdr" = ( /obj/effect/turf_decal/siding/dark_blue{ dir = 4 @@ -39642,7 +39642,7 @@ uses = 8 }, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "meu" = ( /obj/effect/turf_decal/tile/red{ dir = 4 @@ -39856,7 +39856,7 @@ /obj/structure/cable, /obj/structure/sign/semiotic/warning/directional/north, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "mnr" = ( /obj/machinery/light/small/directional/east, /obj/machinery/camera/directional/east{ @@ -39915,7 +39915,7 @@ /obj/machinery/light/small/directional/south, /obj/structure/sign/semiotic/warning/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "mpc" = ( /obj/structure/rack, /obj/structure/cable, @@ -40084,7 +40084,7 @@ }, /obj/effect/turf_decal/tile/dark/diagonal_edge, /turf/open/floor/iron/white/diagonal, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "mtC" = ( /obj/structure/disposalpipe/segment{ dir = 5 @@ -40701,7 +40701,7 @@ "mTO" = ( /obj/effect/turf_decal/tile/dark/diagonal_edge, /turf/open/floor/iron/white/diagonal, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "mUc" = ( /obj/structure/table/wood, /obj/structure/cable, @@ -41135,7 +41135,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "nlW" = ( /obj/machinery/airalarm/directional/west, /turf/open/floor/iron/dark, @@ -41289,7 +41289,7 @@ /obj/effect/turf_decal/siding/green, /obj/effect/turf_decal/tile/dark/diagonal_edge, /turf/open/floor/iron/white/diagonal, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "nsy" = ( /obj/structure/table, /obj/item/stack/sheet/iron/fifty, @@ -41528,7 +41528,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/holopad/secure, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "nDP" = ( /obj/item/radio/intercom/directional/south, /turf/open/floor/iron, @@ -41714,7 +41714,7 @@ dir = 1 }, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "nLS" = ( /obj/effect/turf_decal/tile/brown{ dir = 1 @@ -41767,7 +41767,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "nOt" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/window/reinforced/spawner/directional/north, @@ -42403,7 +42403,7 @@ "olO" = ( /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "olV" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4{ @@ -42603,7 +42603,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/sign/semiotic/warning/directional/north, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "orZ" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -43170,7 +43170,7 @@ name = "Armory Shutter" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "oNE" = ( /obj/structure/disposalpipe/trunk, /obj/machinery/light/directional/west, @@ -43549,7 +43549,7 @@ uses = 8 }, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "paB" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -44028,7 +44028,7 @@ network = list("minisat") }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "pqw" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ dir = 8 @@ -44227,7 +44227,7 @@ "pxU" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "pyn" = ( /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/siding, @@ -44858,7 +44858,7 @@ /obj/structure/rack, /obj/item/gun/ballistic/automatic/battle_rifle, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "pWy" = ( /obj/effect/turf_decal/stripes/line, /obj/machinery/firealarm/directional/south, @@ -45557,7 +45557,7 @@ /obj/structure/cable, /obj/structure/sign/semiotic/bulkhead/directional/east, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "qsk" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -46209,7 +46209,7 @@ }, /obj/effect/mapping_helpers/airlock/access/any/science/minisat, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "qVd" = ( /obj/machinery/atmospherics/pipe/smart/simple/general{ dir = 6 @@ -46792,7 +46792,7 @@ "rrt" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "rry" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -46978,7 +46978,7 @@ "rvS" = ( /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "rwx" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -47096,7 +47096,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "rAm" = ( /obj/effect/turf_decal/tile/blue/half/contrasted{ dir = 8 @@ -47172,7 +47172,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "rBP" = ( /obj/structure/cable, /obj/effect/turf_decal/siding/dark_blue, @@ -47247,7 +47247,7 @@ dir = 8 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "rDf" = ( /obj/structure/cable, /obj/effect/landmark/start/hangover, @@ -47299,7 +47299,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "rFv" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 @@ -47563,7 +47563,7 @@ pixel_y = 0 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "rPu" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 @@ -47975,7 +47975,7 @@ "sdY" = ( /obj/structure/sign/semiotic/warning/directional/south, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "sea" = ( /obj/effect/spawner/random/medical/patient_stretcher, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -48429,7 +48429,7 @@ }, /obj/effect/turf_decal/tile/dark/diagonal_edge, /turf/open/floor/iron/white/diagonal, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "suU" = ( /obj/machinery/door/firedoor, /obj/effect/turf_decal/tile/pine_green/half/contrasted{ @@ -48636,7 +48636,7 @@ }, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "szh" = ( /obj/structure/maintenance_loot_structure/military_case/random, /turf/open/floor/plating, @@ -48720,7 +48720,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "sDk" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ dir = 8 @@ -48792,7 +48792,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "sGc" = ( /obj/structure/cable, /obj/effect/turf_decal/siding/blue/corner{ @@ -48958,7 +48958,7 @@ "sPa" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap) +/area/station/ai/satellite/exterior) "sPb" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/heat_exchanging/simple{ @@ -49259,7 +49259,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "sZb" = ( /obj/effect/turf_decal/tile/brown{ dir = 1 @@ -49359,7 +49359,7 @@ /obj/structure/table, /obj/effect/spawner/random/armory/dragnet, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "tcm" = ( /obj/effect/turf_decal/tile/pine_green/half/contrasted{ dir = 1 @@ -49606,7 +49606,7 @@ pixel_y = -40 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "tir" = ( /obj/structure/chair/sofa/left/maroon{ dir = 4 @@ -49884,7 +49884,7 @@ }, /obj/effect/turf_decal/tile/dark/diagonal_edge, /turf/open/floor/iron/white/diagonal, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "tsq" = ( /obj/structure/cable, /obj/structure/table, @@ -50267,7 +50267,7 @@ }, /obj/structure/cable, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "tCJ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ @@ -50779,7 +50779,7 @@ /obj/structure/cable, /obj/machinery/firealarm/directional/west, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "uaC" = ( /obj/structure/chair/comfy/black{ dir = 8 @@ -51209,7 +51209,7 @@ /obj/effect/landmark/event_spawn, /mob/living/simple_animal/bot/secbot/beepsky/armsky, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "umd" = ( /obj/effect/spawner/random/trash/mess, /turf/open/floor/plating, @@ -51555,7 +51555,7 @@ "uyY" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "uzn" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -52367,7 +52367,7 @@ "vdB" = ( /obj/structure/cable, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "vdC" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -53747,7 +53747,7 @@ /obj/machinery/holopad/secure, /obj/effect/turf_decal/tile/dark/diagonal_edge, /turf/open/floor/iron/white/diagonal, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "weL" = ( /obj/structure/railing{ dir = 4 @@ -54283,7 +54283,7 @@ }, /obj/effect/turf_decal/tile/dark/diagonal_edge, /turf/open/floor/iron/white/diagonal, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "wxa" = ( /obj/structure/rack, /obj/item/storage/box/teargas{ @@ -54295,7 +54295,7 @@ pixel_y = 0 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "wxn" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2{ dir = 8 @@ -54485,7 +54485,7 @@ /obj/structure/rack, /obj/effect/spawner/random/armory/shotgun, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "wEl" = ( /obj/structure/disposalpipe/segment, /obj/structure/extinguisher_cabinet/directional/east, @@ -54516,7 +54516,7 @@ /area/station/hallway/secondary/exit) "wEJ" = ( /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "wFr" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4{ @@ -54677,7 +54677,7 @@ /obj/effect/turf_decal/tile/dark/diagonal_edge, /obj/machinery/firealarm/directional/north, /turf/open/floor/iron/white/diagonal, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "wKP" = ( /obj/machinery/airalarm/directional/east, /turf/open/floor/iron/white/corner{ @@ -54795,7 +54795,7 @@ uses = 8 }, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/upload/foyer) "wPw" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -56074,7 +56074,7 @@ dir = 8 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai_sat_ext_as) +/area/station/ai/satellite/exterior) "xEI" = ( /obj/structure/disposalpipe/segment{ dir = 9 diff --git a/_maps/map_files/debug/multiz.dmm b/_maps/map_files/debug/multiz.dmm index a856336cb46fe8..ba848218d2c4aa 100644 --- a/_maps/map_files/debug/multiz.dmm +++ b/_maps/map_files/debug/multiz.dmm @@ -1022,8 +1022,8 @@ dir = 8 }, /obj/structure/table, -/obj/item/tank/jetpack/oxygen/captain, -/obj/item/storage/belt/utility/chief/full, +/obj/item/tank/jetpack/captain, +/obj/item/storage/belt/utility/full/powertools, /obj/item/clothing/gloves/color/yellow{ pixel_y = 10 }, diff --git a/_maps/map_files/debug/runtimestation.dmm b/_maps/map_files/debug/runtimestation.dmm index 1d0269d8cb1409..f7bdd8885160fe 100644 --- a/_maps/map_files/debug/runtimestation.dmm +++ b/_maps/map_files/debug/runtimestation.dmm @@ -159,7 +159,7 @@ /obj/structure/table, /obj/item/weldingtool/experimental, /obj/item/inducer, -/obj/item/storage/belt/utility/chief/full, +/obj/item/storage/belt/utility/full/powertools, /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable, /turf/open/floor/iron, @@ -254,7 +254,7 @@ /turf/open/floor/iron, /area/station/hallway/primary/central) "bF" = ( -/obj/machinery/computer/rdconsole, +/obj/machinery/computer/rdconsole/unlocked, /turf/open/floor/iron, /area/station/science) "bI" = ( @@ -905,9 +905,8 @@ /turf/open/floor/iron, /area/station/cargo/storage) "fn" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/structure/sign/warning/vacuum/external, -/turf/open/floor/plating, +/obj/structure/sign/warning/vacuum/external/directional/west, +/turf/open/floor/iron, /area/station/hallway/secondary/entry) "fo" = ( /obj/machinery/conveyor_switch/oneway{ @@ -960,21 +959,18 @@ /turf/open/floor/iron, /area/station/cargo/bitrunning/den) "fM" = ( -/obj/structure/sign/directions/supply{ - dir = 4; - pixel_x = 32 - }, /obj/structure/sign/directions/engineering{ dir = 1; - pixel_x = 32; pixel_y = 7 }, +/obj/structure/sign/directions/supply{ + dir = 4 + }, /obj/structure/sign/directions/evac{ - pixel_x = 32; pixel_y = -7 }, -/turf/open/floor/iron, -/area/station/hallway/secondary/entry) +/turf/closed/wall/r_wall, +/area/station/commons/storage/primary) "fO" = ( /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) @@ -985,9 +981,7 @@ /area/station/hallway/secondary/exit/departure_lounge) "fQ" = ( /obj/machinery/computer/communications, -/obj/machinery/status_display/evac{ - pixel_y = 32 - }, +/obj/machinery/status_display/evac/directional/north, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) "fS" = ( @@ -996,21 +990,18 @@ /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) "fX" = ( -/obj/structure/sign/directions/supply{ - dir = 4; - pixel_x = -32 - }, /obj/structure/sign/directions/engineering{ dir = 1; - pixel_x = -32; pixel_y = 7 }, +/obj/structure/sign/directions/supply{ + dir = 4 + }, /obj/structure/sign/directions/evac{ - pixel_x = -32; pixel_y = -7 }, -/turf/open/floor/plating, -/area/station/commons/storage/primary) +/turf/closed/wall/r_wall, +/area/station/construction) "fY" = ( /obj/machinery/light/directional/west, /obj/structure/cable, @@ -1035,19 +1026,7 @@ /turf/open/floor/plating, /area/station/hallway/secondary/exit/departure_lounge) "gg" = ( -/obj/structure/sign/directions/supply{ - dir = 4; - pixel_x = 32 - }, -/obj/structure/sign/directions/engineering{ - dir = 1; - pixel_x = 32; - pixel_y = 7 - }, -/obj/structure/sign/directions/evac{ - pixel_x = 32; - pixel_y = -7 - }, +/obj/machinery/camera/autoname/directional/east, /turf/open/floor/plating, /area/station/commons/storage/primary) "gi" = ( @@ -1817,7 +1796,7 @@ /area/station/command/bridge) "BG" = ( /obj/structure/table, -/obj/item/ammo_box/c10mm, +/obj/item/ammo_box/c9mm, /obj/item/gun/ballistic/automatic/pistol, /turf/open/floor/iron, /area/station/command/bridge) @@ -2154,7 +2133,6 @@ /turf/open/floor/iron, /area/station/commons/storage/primary) "JV" = ( -/obj/machinery/camera/autoname/directional/east, /obj/effect/turf_decal/stripes/line{ dir = 1 }, @@ -5736,7 +5714,7 @@ ax eh dY dY -fn +en fs en dY @@ -5828,7 +5806,7 @@ ax eh eh eV -eh +fn eh eh eV @@ -6007,7 +5985,7 @@ eh eh eF HW -fM +eh eh eh eh @@ -6099,7 +6077,7 @@ cN cN cN cN -cN +fX ef ef cN @@ -7295,7 +7273,7 @@ cS cS cS cS -cS +fM dG dG cS @@ -7387,7 +7365,7 @@ Zz dp dl dl -fX +dl dE dB dl @@ -8583,7 +8561,7 @@ cS cS cS cS -cS +fM Is Jd tz diff --git a/_maps/map_files/generic/CentCom.dmm b/_maps/map_files/generic/CentCom.dmm index 11fb4bc5caaeac..c63c1c091cef6e 100644 --- a/_maps/map_files/generic/CentCom.dmm +++ b/_maps/map_files/generic/CentCom.dmm @@ -719,7 +719,7 @@ pixel_x = 6; pixel_y = 6 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 3; pixel_y = 3 }, @@ -866,6 +866,7 @@ /obj/effect/turf_decal/tile/red{ dir = 8 }, +/obj/structure/sign/warning/secure_area/directional/south, /turf/open/floor/iron, /area/centcom/central_command_areas/control) "dG" = ( @@ -877,6 +878,12 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/centcom/tdome/observation) +"dI" = ( +/obj/item/kirbyplants/organic/plant21, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/iron/dark, +/area/centcom/central_command_areas/courtroom) "dJ" = ( /obj/machinery/button/door/indestructible{ id = "thunderdomehea"; @@ -993,6 +1000,7 @@ /obj/effect/turf_decal/tile/green{ dir = 4 }, +/obj/structure/sign/warning/secure_area/directional/east, /turf/open/floor/iron, /area/centcom/central_command_areas/control) "ev" = ( @@ -1019,6 +1027,7 @@ "eB" = ( /obj/structure/bookcase/random, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron/dark, /area/centcom/central_command_areas/admin) "eD" = ( @@ -1027,7 +1036,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /obj/effect/turf_decal/stripes/line, -/obj/effect/mapping_helpers/airlock/access/all/admin/captain, +/obj/effect/mapping_helpers/airlock/access/all/admin/officer, /turf/open/floor/iron, /area/centcom/central_command_areas/admin) "eE" = ( @@ -1127,7 +1136,7 @@ id = "tdomeflash"; name = "Thunderdome Flash" }, -/turf/open/floor/circuit/green, +/turf/closed/wall, /area/centcom/tdome/arena) "fc" = ( /obj/effect/turf_decal/delivery, @@ -1249,7 +1258,7 @@ name = "Bathroom" }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, -/obj/effect/mapping_helpers/airlock/access/all/admin/captain, +/obj/effect/mapping_helpers/airlock/access/all/admin/officer, /turf/open/floor/iron/white, /area/centcom/central_command_areas/admin) "fI" = ( @@ -1490,9 +1499,10 @@ /turf/open/floor/iron/dark, /area/centcom/central_command_areas/courtroom) "gS" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/indestructible/riveted, -/area/centcom/central_command_areas/ferry) +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/warning/secure_area/directional/east, +/turf/open/floor/iron/dark, +/area/centcom/central_command_areas/armory) "gU" = ( /obj/effect/turf_decal/tile/neutral/anticorner/contrasted{ dir = 8 @@ -1673,6 +1683,7 @@ "hP" = ( /obj/structure/extinguisher_cabinet/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark, /area/centcom/central_command_areas/courtroom) "hT" = ( @@ -1737,8 +1748,11 @@ /turf/open/floor/iron, /area/centcom/central_command_areas/prison) "in" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/indestructible/riveted, +/obj/effect/turf_decal/tile/green{ + dir = 1 + }, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/iron, /area/centcom/central_command_areas/control) "io" = ( /turf/closed/indestructible/riveted, @@ -1767,6 +1781,7 @@ /obj/item/tank/internals/emergency_oxygen/engi, /obj/item/clothing/mask/gas, /obj/effect/turf_decal/stripes/line, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/centcom/central_command_areas/prison) "iu" = ( @@ -1816,6 +1831,7 @@ /obj/item/restraints/handcuffs/cable/zipties, /obj/item/assembly/flash/handheld, /obj/effect/turf_decal/stripes/line, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/centcom/central_command_areas/prison) "iz" = ( @@ -1874,9 +1890,10 @@ }, /area/centcom/central_command_areas/supply) "iH" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/indestructible/riveted, -/area/centcom/central_command_areas/prison) +/obj/effect/turf_decal/tile/green, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/iron, +/area/centcom/central_command_areas/ferry) "iK" = ( /obj/effect/turf_decal/stripes/line{ dir = 5 @@ -1977,11 +1994,6 @@ }, /turf/open/floor/iron, /area/centcom/central_command_areas/courtroom) -"jb" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/structure/sign/warning/vacuum/external, -/turf/open/floor/plating, -/area/centcom/central_command_areas/supply) "jc" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -2038,6 +2050,7 @@ dir = 4; id = "XCCQMLoad2" }, +/obj/structure/sign/warning/vacuum/external/directional/north, /turf/open/floor/iron, /area/centcom/central_command_areas/supply) "jm" = ( @@ -2128,13 +2141,15 @@ id = "XCCQMLoaddoor"; name = "Loading Doors"; pixel_x = -27; - pixel_y = -5 + pixel_y = -5; + dir = 8 }, /obj/machinery/button/door/indestructible{ id = "XCCQMLoaddoor2"; name = "Loading Doors"; pixel_x = -27; - pixel_y = 5 + pixel_y = 5; + dir = 8 }, /obj/machinery/computer/cargo{ dir = 4 @@ -2200,6 +2215,7 @@ id = "XCCQMLoad" }, /obj/effect/turf_decal/stripes/line, +/obj/structure/sign/warning/vacuum/external/directional/south, /turf/open/floor/iron, /area/centcom/central_command_areas/supply) "jK" = ( @@ -2265,6 +2281,21 @@ /obj/machinery/computer, /turf/open/floor/iron, /area/centcom/central_command_areas/prison) +"ka" = ( +/obj/effect/landmark/thunderdome/one, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/light_emitter/thunderdome, +/obj/machinery/camera/directional/north{ + c_tag = "Green Team"; + network = list("thunder"); + pixel_x = 12; + pixel_y = -10; + resistance_flags = 64 + }, +/turf/open/floor/iron, +/area/centcom/tdome/arena) "kd" = ( /obj/structure/table/reinforced, /obj/machinery/button/showtime{ @@ -2321,6 +2352,13 @@ /obj/machinery/status_display/ai/directional/north, /turf/open/floor/iron/grimy, /area/centcom/central_command_areas/admin) +"ku" = ( +/obj/machinery/button/door/indestructible{ + id = "CCcustoms1"; + name = "CC Emergency Docks Control" + }, +/turf/closed/indestructible/riveted, +/area/centcom/central_command_areas/evacuation) "kv" = ( /obj/item/kirbyplants/organic/plant21, /obj/effect/turf_decal/tile/red{ @@ -2349,7 +2387,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/structure/table/wood, /turf/open/floor/iron/grimy, /area/centcom/central_command_areas/courtroom) @@ -2394,9 +2432,12 @@ /turf/open/floor/iron/dark, /area/centcom/central_command_areas/briefing) "kR" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/indestructible/riveted, -/area/centcom/central_command_areas/admin/storage) +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/structure/sign/warning/secure_area/directional/west, +/turf/open/floor/iron, +/area/centcom/central_command_areas/prison) "kS" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -3073,6 +3114,21 @@ }, /turf/open/floor/iron, /area/centcom/central_command_areas/prison) +"ob" = ( +/obj/structure/sign/directions/medical{ + dir = 1; + pixel_y = -2 + }, +/obj/structure/sign/directions/engineering{ + pixel_y = 4; + dir = 1 + }, +/obj/structure/sign/directions/command{ + pixel_y = 10; + dir = 1 + }, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/centcom/central_command_areas/evacuation/ship) "oe" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -3222,6 +3278,7 @@ "oL" = ( /obj/machinery/light/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/warning/secure_area/directional/east, /turf/open/floor/iron/dark, /area/centcom/central_command_areas/armory) "oM" = ( @@ -3315,8 +3372,9 @@ /turf/open/floor/iron, /area/centcom/tdome/arena) "pc" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/indestructible/riveted, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/west, +/turf/open/floor/iron/dark, /area/centcom/central_command_areas/courtroom) "pd" = ( /obj/item/clipboard{ @@ -3327,7 +3385,7 @@ pixel_x = -2; pixel_y = 12 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_y = 7 }, /obj/structure/table/reinforced, @@ -3502,6 +3560,7 @@ /obj/item/taperecorder, /obj/structure/table/wood, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark, /area/centcom/central_command_areas/courtroom) "qd" = ( @@ -3566,7 +3625,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/effect/turf_decal/stripes/line{ dir = 1 }, @@ -3700,9 +3759,10 @@ /turf/open/floor/iron, /area/centcom/tdome/arena) "qR" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/indestructible/riveted, -/area/centcom/central_command_areas/ferry) +/obj/effect/turf_decal/tile/red/fourcorners, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/iron, +/area/centcom/tdome/observation) "qS" = ( /obj/machinery/door/airlock/centcom{ name = "CentCom Security" @@ -3908,7 +3968,8 @@ /area/centcom/central_command_areas/courtroom) "rN" = ( /obj/machinery/newscaster{ - pixel_x = -32 + pixel_x = -32; + dir = 8 }, /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 8 @@ -3951,9 +4012,12 @@ /turf/open/floor/grass, /area/centcom/central_command_areas/evacuation) "rY" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/indestructible/riveted, -/area/centcom/central_command_areas/armory) +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/structure/sign/warning/secure_area/directional/east, +/turf/open/floor/iron, +/area/centcom/central_command_areas/prison) "rZ" = ( /obj/machinery/shower/directional/west, /obj/effect/turf_decal/tile/red/anticorner/contrasted{ @@ -4413,6 +4477,10 @@ /obj/structure/sign/poster/contraband/syndicate_recruitment/directional/north, /turf/open/indestructible/dark, /area/centcom/central_command_areas/admin) +"ub" = ( +/obj/structure/sign/directions/command, +/turf/closed/indestructible/riveted, +/area/centcom/central_command_areas/ferry) "uc" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, @@ -4540,6 +4608,11 @@ }, /turf/open/floor/iron, /area/centcom/central_command_areas/evacuation) +"uB" = ( +/obj/effect/turf_decal/tile/bar/opposingcorners, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/iron, +/area/centcom/tdome/observation) "uE" = ( /obj/effect/light_emitter/thunderdome, /turf/closed/indestructible/fakeglass, @@ -4919,9 +4992,6 @@ /area/centcom/tdome/observation) "wg" = ( /obj/structure/closet/secure_closet/ert_com, -/obj/structure/sign/directions/command{ - pixel_y = 24 - }, /obj/effect/turf_decal/stripes/line, /obj/machinery/status_display/ai/directional/east, /turf/open/floor/iron, @@ -4929,6 +4999,7 @@ "wh" = ( /obj/structure/cable, /obj/effect/turf_decal/tile/green, +/obj/structure/sign/warning/secure_area/directional/south, /turf/open/floor/iron, /area/centcom/central_command_areas/ferry) "wj" = ( @@ -4940,6 +5011,14 @@ /obj/structure/flora/bush/pointy/style_random, /turf/open/floor/grass, /area/centcom/tdome/administration) +"wk" = ( +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/iron, +/area/centcom/central_command_areas/control) "wl" = ( /obj/machinery/modular_computer/preset/id/centcom{ dir = 1 @@ -5000,12 +5079,6 @@ /turf/open/floor/iron, /area/centcom/central_command_areas/ferry) "ww" = ( -/obj/machinery/button/door/indestructible{ - id = "CCFerry"; - name = "Hanger Bay Shutters"; - pixel_y = 24; - req_access = list("cent_general") - }, /obj/effect/turf_decal/stripes/line{ dir = 5 }, @@ -5319,7 +5392,8 @@ /area/centcom/central_command_areas/control) "xX" = ( /obj/machinery/newscaster{ - pixel_x = 32 + pixel_x = 32; + dir = 4 }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, @@ -5415,21 +5489,6 @@ dir = 4 }, /obj/effect/turf_decal/tile/neutral/full, -/obj/structure/sign/directions/medical{ - pixel_x = 32; - pixel_y = -2; - dir = 1 - }, -/obj/structure/sign/directions/command{ - pixel_x = 32; - pixel_y = 10; - dir = 1 - }, -/obj/structure/sign/directions/engineering{ - pixel_x = 32; - pixel_y = 4; - dir = 1 - }, /obj/structure/closet/firecloset, /turf/open/floor/iron/dark/textured_large, /area/centcom/central_command_areas/evacuation/ship) @@ -5472,9 +5531,8 @@ /obj/effect/turf_decal/siding/wood{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/components/unary/vent_pump/on{ - dir = 1 + dir = 8 }, /turf/open/floor/iron/dark, /area/centcom/central_command_areas/evacuation/ship) @@ -5508,7 +5566,7 @@ pixel_x = 6; pixel_y = 6 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 3; pixel_y = 3 }, @@ -5662,34 +5720,16 @@ /turf/open/floor/iron, /area/centcom/tdome/observation) "zw" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/indestructible/riveted, -/area/centcom/tdome/observation) +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/stripes/line, +/obj/structure/sign/nanotrasen/directional/east, +/turf/open/floor/iron, +/area/centcom/central_command_areas/prison) "zx" = ( -/obj/effect/turf_decal/siding/wideplating_new/dark{ - dir = 8 - }, -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral/full, -/obj/effect/decal/cleanable/dirt, -/obj/structure/sign/directions/command{ - pixel_x = 32; - pixel_y = 10; - dir = 1 - }, -/obj/structure/sign/directions/engineering{ - pixel_x = 32; - pixel_y = 4; - dir = 1 - }, -/obj/structure/sign/directions/medical{ - pixel_x = 32; - pixel_y = -2; - dir = 1 +/obj/machinery/defibrillator_mount/loaded{ + pixel_y = null }, -/turf/open/floor/iron/dark/textured_large, +/turf/closed/wall/mineral/titanium/nodiagonal, /area/centcom/central_command_areas/evacuation/ship) "zz" = ( /obj/structure/table/reinforced, @@ -5778,6 +5818,11 @@ /turf/open/floor/iron, /area/centcom/central_command_areas/supplypod/loading/two) "zO" = ( +/obj/effect/landmark/thunderdome/two, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/effect/light_emitter/thunderdome, /obj/machinery/camera/directional/north{ c_tag = "Red Team"; network = list("thunder"); @@ -5785,9 +5830,6 @@ pixel_y = -9; resistance_flags = 64 }, -/obj/effect/landmark/thunderdome/two, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/obj/effect/light_emitter/thunderdome, /turf/open/floor/iron, /area/centcom/tdome/arena) "zR" = ( @@ -5879,11 +5921,13 @@ /obj/effect/turf_decal/tile/green{ dir = 8 }, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron, /area/centcom/central_command_areas/control) "Ao" = ( /obj/machinery/light/directional/south, /obj/effect/turf_decal/tile/green, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron, /area/centcom/central_command_areas/control) "Aq" = ( @@ -6296,9 +6340,10 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/structure/table/wood, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark, /area/centcom/central_command_areas/courtroom) "BW" = ( @@ -6365,6 +6410,23 @@ }, /turf/open/floor/iron, /area/centcom/central_command_areas/supplypod/loading/four) +"Cp" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 6 + }, +/obj/structure/sign/warning/secure_area/directional/north, +/turf/open/floor/iron, +/area/centcom/central_command_areas/ferry) +"Cq" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/item/radio/intercom/syndicate{ + pixel_x = -32; + dir = 8 + }, +/turf/open/floor/iron/grimy, +/area/centcom/central_command_areas/courtroom) "Cx" = ( /obj/structure/table/reinforced, /obj/item/storage/box/handcuffs, @@ -6403,7 +6465,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/structure/table/reinforced, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, @@ -6428,6 +6490,7 @@ /obj/effect/turf_decal/tile/green/anticorner/contrasted{ dir = 1 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/centcom/central_command_areas/control) "CJ" = ( @@ -6453,6 +6516,7 @@ /obj/effect/turf_decal/tile/green/anticorner/contrasted{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/centcom/central_command_areas/control) "CO" = ( @@ -6534,8 +6598,10 @@ /turf/closed/indestructible/riveted, /area/centcom/ai_multicam_room) "Dj" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/indestructible/riveted, +/obj/effect/landmark/prisonwarp, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/indestructible/dark, /area/centcom/central_command_areas/prison/cells) "Dk" = ( /obj/structure/cable, @@ -6673,6 +6739,10 @@ /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron, /area/centcom/central_command_areas/evacuation) +"DW" = ( +/obj/machinery/newscaster, +/turf/closed/indestructible/riveted, +/area/centcom/central_command_areas/armory) "Eb" = ( /obj/item/kirbyplants/organic/plant21, /obj/structure/extinguisher_cabinet/directional/south, @@ -6885,9 +6955,6 @@ /turf/open/floor/iron/white, /area/centcom/tdome/observation) "Ff" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ - dir = 8 - }, /turf/open/floor/carpet/red, /area/centcom/central_command_areas/evacuation/ship) "Fg" = ( @@ -6936,9 +7003,12 @@ /turf/open/floor/plating, /area/centcom/central_command_areas/prison) "Fq" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/indestructible/riveted, -/area/centcom/central_command_areas/control) +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/sign/warning/secure_area/directional/west, +/turf/open/floor/iron, +/area/centcom/central_command_areas/prison) "Fs" = ( /obj/machinery/door/poddoor/shutters{ id = "CCsec1"; @@ -7047,6 +7117,12 @@ /obj/effect/light_emitter/thunderdome, /turf/closed/indestructible/fakeglass, /area/centcom/tdome/observation) +"Ge" = ( +/obj/structure/bookcase/random, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/iron/dark, +/area/centcom/central_command_areas/briefing) "Gf" = ( /obj/machinery/firealarm/directional/east, /obj/machinery/atmospherics/components/unary/vent_pump{ @@ -7214,6 +7290,12 @@ /obj/machinery/light/small/directional/east, /turf/open/floor/iron/smooth_edge, /area/centcom/central_command_areas/evacuation/ship) +"He" = ( +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/light/floor, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/indestructible/dark, +/area/centcom/central_command_areas/prison/cells) "Hi" = ( /obj/effect/turf_decal/tile/green, /obj/machinery/light/directional/south, @@ -7224,6 +7306,7 @@ /obj/effect/turf_decal/tile/green/anticorner/contrasted{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/centcom/tdome/observation) "Hl" = ( @@ -7341,34 +7424,53 @@ /obj/machinery/light/directional/west, /turf/open/floor/iron/white, /area/centcom/central_command_areas/evacuation/ship) +"HS" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/structure/sign/warning/secure_area/directional/east, +/turf/open/floor/iron, +/area/centcom/central_command_areas/prison) "HV" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/structure/closet/secure_closet/quartermaster, /turf/open/floor/iron/dark, /area/centcom/central_command_areas/supply) +"HW" = ( +/obj/structure/chair/comfy/brown{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/iron/dark, +/area/centcom/central_command_areas/courtroom) "HY" = ( /obj/machinery/button/door/indestructible{ id = "CCsec3"; name = "CC Shutter 3 Control"; - pixel_y = 24 + pixel_y = 24; + dir = 1 }, /obj/machinery/button/door/indestructible{ id = "CCcustoms2"; name = "CC Shutter 2 Control"; pixel_x = 9; - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/machinery/button/door/indestructible{ id = "CCsec1"; name = "CC Shutter 1 Control"; - pixel_y = 40 + pixel_y = 40; + dir = 1 }, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/button/door/indestructible{ id = "CCsec4"; name = "CC Shutter 4 Control"; pixel_x = -9; - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/machinery/photocopier/gratis/prebuilt, /turf/open/floor/iron/dark, @@ -7417,7 +7519,8 @@ /area/centcom/central_command_areas/supply) "If" = ( /obj/machinery/newscaster{ - pixel_x = -32 + pixel_x = -32; + dir = 8 }, /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -7529,10 +7632,11 @@ /turf/open/floor/iron, /area/centcom/tdome/observation) "Jq" = ( +/obj/effect/light_emitter/thunderdome, /obj/machinery/camera/motion/thunderdome{ pixel_x = 10 }, -/turf/open/floor/circuit/green, +/turf/open/floor/iron, /area/centcom/tdome/arena) "JC" = ( /obj/machinery/modular_computer/preset/command{ @@ -7565,6 +7669,21 @@ /obj/machinery/modular_computer/preset/id/centcom, /turf/open/floor/iron/grimy, /area/centcom/central_command_areas/admin) +"JS" = ( +/obj/structure/sign/directions/command{ + pixel_y = 10; + dir = 1 + }, +/obj/structure/sign/directions/engineering{ + pixel_y = 4; + dir = 1 + }, +/obj/structure/sign/directions/medical{ + pixel_y = -2; + dir = 1 + }, +/turf/closed/wall/mineral/titanium/nodiagonal, +/area/centcom/central_command_areas/evacuation/ship) "JU" = ( /obj/structure/chair{ dir = 4 @@ -7610,7 +7729,7 @@ dir = 8 }, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/admin/captain, +/obj/effect/mapping_helpers/airlock/access/all/admin/officer, /turf/open/floor/iron, /area/centcom/central_command_areas/admin) "Kg" = ( @@ -8005,9 +8124,6 @@ /area/space) "LN" = ( /obj/structure/table/optable, -/obj/machinery/defibrillator_mount/loaded{ - pixel_y = 28 - }, /obj/effect/turf_decal/stripes/line, /obj/effect/decal/cleanable/blood, /obj/effect/decal/cleanable/dirt, @@ -8075,6 +8191,7 @@ /obj/structure/bed, /obj/item/bedsheet/black, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron/dark, /area/centcom/central_command_areas/admin) "Mp" = ( @@ -8187,6 +8304,7 @@ "ML" = ( /obj/machinery/vending/cigarette, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron/dark, /area/centcom/central_command_areas/courtroom) "MM" = ( @@ -8226,9 +8344,12 @@ /turf/open/floor/iron/smooth_edge, /area/centcom/central_command_areas/evacuation/ship) "MY" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/indestructible/riveted, -/area/centcom/central_command_areas/briefing) +/obj/effect/turf_decal/tile/green{ + dir = 4 + }, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/iron, +/area/centcom/central_command_areas/control) "Ne" = ( /obj/structure/table/wood, /obj/item/reagent_containers/cup/glass/trophy/gold_cup, @@ -8434,8 +8555,8 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/access/all/admin/captain, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/effect/mapping_helpers/airlock/access/all/admin/officer, /turf/open/floor/iron/dark, /area/centcom/central_command_areas/admin) "Od" = ( @@ -8448,7 +8569,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/structure/table/reinforced, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, @@ -8590,6 +8711,11 @@ /obj/item/kirbyplants/organic/plant21, /turf/open/floor/iron/dark/herringbone, /area/centcom/central_command_areas/evacuation/ship) +"OK" = ( +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/warning/secure_area/directional/west, +/turf/open/floor/iron/dark, +/area/centcom/central_command_areas/armory) "OM" = ( /obj/structure/table/reinforced, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -8831,16 +8957,19 @@ /turf/open/floor/iron, /area/centcom/central_command_areas/fore) "PE" = ( -/obj/machinery/newscaster{ - pixel_x = 32 +/obj/machinery/button/door/indestructible{ + id = "CCFerry"; + name = "Hanger Bay Shutters"; + req_access = list("cent_general") }, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/turf/open/floor/iron/dark, -/area/centcom/central_command_areas/armory) -"PF" = ( -/obj/structure/sign/nanotrasen, /turf/closed/indestructible/riveted, -/area/centcom/central_command_areas/admin) +/area/centcom/central_command_areas/ferry) +"PF" = ( +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/stripes/line, +/obj/structure/sign/nanotrasen/directional/west, +/turf/open/floor/iron, +/area/centcom/central_command_areas/prison) "PG" = ( /obj/effect/turf_decal/tile/dark_blue/fourcorners, /obj/effect/turf_decal/tile/dark_blue/fourcorners, @@ -8990,7 +9119,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/structure/table/reinforced, /obj/machinery/status_display/ai/directional/west, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -9164,6 +9293,7 @@ "Rd" = ( /obj/structure/bookcase/random, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark, /area/centcom/central_command_areas/briefing) "Rf" = ( @@ -9352,18 +9482,11 @@ /turf/open/floor/iron/dark, /area/centcom/central_command_areas/courtroom) "RQ" = ( -/obj/machinery/camera/directional/north{ - c_tag = "Green Team"; - network = list("thunder"); - pixel_x = 12; - pixel_y = -10; - resistance_flags = 64 +/obj/structure/sign/directions/medical{ + dir = 1 }, -/obj/effect/landmark/thunderdome/one, -/obj/effect/turf_decal/tile/neutral/fourcorners, -/obj/effect/light_emitter/thunderdome, -/turf/open/floor/iron, -/area/centcom/tdome/arena) +/turf/closed/indestructible/riveted, +/area/centcom/central_command_areas/armory) "RR" = ( /obj/machinery/light/directional/north, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -9474,9 +9597,13 @@ /turf/open/floor/iron, /area/centcom/central_command_areas/supplypod) "Sx" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/indestructible/riveted, -/area/centcom/central_command_areas/admin/storage) +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/tile/green/half/contrasted, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/iron, +/area/centcom/central_command_areas/fore) "Sy" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ dir = 8 @@ -9500,6 +9627,13 @@ /obj/structure/window/reinforced/survival_pod/spawner/directional/west, /turf/open/floor/iron/smooth_large, /area/centcom/central_command_areas/evacuation/ship) +"SD" = ( +/obj/item/kirbyplants/organic/plant21, +/obj/machinery/firealarm/directional/south, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/west, +/turf/open/floor/iron/dark, +/area/centcom/central_command_areas/courtroom) "SE" = ( /obj/effect/turf_decal/delivery, /obj/effect/light_emitter/podbay, @@ -9612,6 +9746,7 @@ "Th" = ( /obj/structure/filingcabinet/white, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron/dark, /area/centcom/central_command_areas/supply) "Tj" = ( @@ -9937,6 +10072,7 @@ dir = 1 }, /obj/machinery/firealarm/directional/south, +/obj/structure/sign/warning/secure_area/directional/east, /turf/open/floor/iron, /area/centcom/central_command_areas/admin/storage) "UK" = ( @@ -10035,9 +10171,6 @@ pixel_y = 3 }, /obj/item/gun/energy/e_gun, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/effect/turf_decal/stripes/line{ dir = 10 }, @@ -10172,10 +10305,6 @@ /area/centcom/central_command_areas/admin) "VM" = ( /obj/structure/closet/secure_closet/ert_sec, -/obj/structure/sign/directions/security{ - dir = 1; - pixel_y = -24 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, @@ -10209,21 +10338,11 @@ /obj/machinery/computer/records/security{ dir = 8 }, -/obj/machinery/button/door/indestructible{ - id = "CCcustoms1"; - name = "CC Emergency Docks Control"; - pixel_x = 24; - pixel_y = 24 - }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/centcom/central_command_areas/evacuation) "VZ" = ( /obj/structure/closet/secure_closet/ert_med, -/obj/structure/sign/directions/medical{ - dir = 1; - pixel_y = -24 - }, /obj/effect/turf_decal/stripes/line{ dir = 1 }, @@ -10235,6 +10354,13 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/centcom/central_command_areas/briefing) +"Wb" = ( +/obj/effect/turf_decal/tile/green{ + dir = 8 + }, +/obj/structure/sign/warning/secure_area/directional/south, +/turf/open/floor/iron, +/area/centcom/central_command_areas/ferry) "Wc" = ( /obj/machinery/door/airlock/centcom{ name = "CentCom Security" @@ -10326,9 +10452,6 @@ /area/centcom/central_command_areas/evacuation) "WG" = ( /obj/structure/closet/secure_closet/ert_engi, -/obj/structure/sign/directions/engineering{ - pixel_y = 24 - }, /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron, /area/centcom/central_command_areas/armory) @@ -10344,8 +10467,13 @@ /obj/effect/turf_decal/tile/green{ dir = 1 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/centcom/tdome/observation) +"WM" = ( +/obj/structure/sign/directions/engineering, +/turf/closed/indestructible/riveted, +/area/centcom/central_command_areas/ferry) "WN" = ( /obj/structure/table/wood, /obj/item/storage/box/drinkingglasses, @@ -10394,7 +10522,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /obj/effect/turf_decal/stripes/line, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/admin/captain, +/obj/effect/mapping_helpers/airlock/access/all/admin/officer, /turf/open/floor/iron, /area/centcom/central_command_areas/admin) "WX" = ( @@ -10430,6 +10558,7 @@ "Xc" = ( /obj/structure/noticeboard/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark, /area/centcom/central_command_areas/courtroom) "Xd" = ( @@ -10557,6 +10686,11 @@ /obj/machinery/status_display/evac/directional/east, /turf/open/floor/iron/grimy, /area/centcom/central_command_areas/courtroom) +"XG" = ( +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/iron/dark, +/area/centcom/tdome/observation) "XJ" = ( /obj/structure/flora/bush/lavendergrass/style_random, /obj/structure/flora/bush/sparsegrass/style_random, @@ -10654,6 +10788,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /turf/open/floor/iron/grimy, /area/centcom/central_command_areas/admin) +"Yt" = ( +/obj/structure/sign/directions/security{ + dir = 1 + }, +/turf/closed/indestructible/riveted, +/area/centcom/central_command_areas/armory) "Yx" = ( /turf/open/floor/iron/white/herringbone, /area/centcom/central_command_areas/evacuation/ship) @@ -10754,9 +10894,10 @@ /turf/open/floor/iron/dark/herringbone, /area/centcom/central_command_areas/evacuation/ship) "YX" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/indestructible/riveted, -/area/centcom/central_command_areas/prison/cells) +/obj/machinery/light/small/directional/east, +/obj/structure/sign/warning/secure_area/directional/east, +/turf/open/floor/iron/dark, +/area/centcom/central_command_areas/briefing) "YY" = ( /obj/item/storage/medkit/toxin, /obj/item/storage/medkit/o2{ @@ -10771,9 +10912,10 @@ /turf/open/floor/iron/white, /area/centcom/central_command_areas/control) "Za" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/indestructible/riveted, -/area/centcom/central_command_areas/fore) +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/iron/dark, +/area/centcom/tdome/observation) "Ze" = ( /obj/effect/turf_decal/tile/red, /turf/open/floor/iron, @@ -10952,7 +11094,7 @@ pixel_x = 3; pixel_y = 3 }, -/obj/item/stamp, +/obj/item/stamp/granted, /obj/structure/table/reinforced, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, @@ -38196,7 +38338,7 @@ aL Lt Lt aa -Lt +zx LN OW yX @@ -39241,7 +39383,7 @@ KO LA nb Lp -zx +Lp ZA Lp Lp @@ -39498,7 +39640,7 @@ Lt LP Lt Lt -Lt +JS LP Lt Lt @@ -39508,7 +39650,7 @@ Lt Lt Lt LP -Lt +ob KH aa aa @@ -47914,20 +48056,20 @@ On On On On -PF -mD +On +PE ww Fh wz -qR +mD Rd eF hx TE az eF -Rd -MY +Ge +gO aa aa aa @@ -48432,8 +48574,8 @@ oh mD ss fw -tr -gS +Wb +mD kO WR RH @@ -49200,8 +49342,8 @@ dz Nr Xq Hw -gS -wz +mD +Cp TK xR OQ @@ -49461,7 +49603,7 @@ mD su fw wh -gS +mD Fz MJ TI @@ -49974,14 +50116,14 @@ On mD su fw -ts -qR +iH +mD Mp Pd RH NC RH -Pd +YX dW gO aa @@ -50234,11 +50376,11 @@ fw ne mD Ya -rY +Ya ST VO ST -rY +Ya Ya Ya aa @@ -50457,13 +50599,13 @@ aa aa aa aa -jb +iX jl js iX js jJ -jb +iX aa aa aa @@ -50479,7 +50621,7 @@ EJ QV QV Mo -Sx +YU Gs Ow aD @@ -50489,15 +50631,15 @@ oe su fw ts -mD +WM WG -sE +OK sE bH sE Zv VZ -Ya +RQ aa aa aa @@ -50996,7 +51138,7 @@ On YU YU Rj -kR +YU YU oe oe @@ -51507,7 +51649,7 @@ mi pj nm Th -Sx +YU Nn yi cL @@ -51516,7 +51658,7 @@ vb oe su xk -ts +iH mD Vg bH @@ -51545,11 +51687,11 @@ OO VT BY QC -bR -HK zO HK HK +HK +HK pb Ic Zk @@ -51774,15 +51916,15 @@ oe wB Fh xS -mD +ub wg oL fj RM -PE sE +gS VM -Ya +Yt aa aa aa @@ -52033,11 +52175,11 @@ xh ds mD Ya -rY Ya Ya Ya -rY +DW +Ya Ya Ya Dq @@ -52309,8 +52451,8 @@ bz QC Zj bi -eI -zw +qR +QC Id Bs vW @@ -52806,7 +52948,7 @@ Dp mR zF dC -Fq +io iu io yC @@ -53317,8 +53459,8 @@ wC iu iu iu -in -tL +io +wk tL io iu @@ -53585,7 +53727,7 @@ iu Dt DH iu -in +io Sl RW Sl @@ -53819,11 +53961,11 @@ Ox Ox Ox Ox -qs -Za +Sx Vx -Za -tK +Vx +Vx +in gL io HY @@ -53834,9 +53976,9 @@ hc iu Ab An -in io -in +io +io CI CY wH @@ -54108,8 +54250,8 @@ aB DF BW BW -BW -zw +Za +QC yY Kd yY @@ -54375,10 +54517,10 @@ Ef NY NY fb -Jq +Ji NY NY -Ef +Jq uE mE qk @@ -54619,8 +54761,8 @@ Mu Mu Mu aB -zw -BW +QC +XG BW BW QC @@ -54847,11 +54989,11 @@ Ox Ox Ox Ox -qs -Za +Sx Vx -Za -tN +Vx +Vx +MY gL io SQ @@ -54862,9 +55004,9 @@ Oh iu Ab Ao -in io -in +io +io CL CZ wH @@ -55127,7 +55269,7 @@ iu Xa DI iu -in +io Sl RW Sl @@ -55373,8 +55515,8 @@ wC iu iu iu -in -tL +io +wk tL io iu @@ -55594,19 +55736,19 @@ aa Jb rs am +Jb Dj -rs -am -Dj -rs am +Jb Dj -rs am +Jb Dj -rs am +Jb Dj +He +Jb rs am Jb @@ -55851,7 +55993,7 @@ aa Jb ir IF -YX +Jb ir IF Jb @@ -55863,11 +56005,11 @@ IF Jb ir IF -YX +Jb ir IF Jb -iH +il il Mz GC @@ -56108,7 +56250,7 @@ aa il is lL -iL +kR iT iT SL @@ -56120,11 +56262,11 @@ iT If iT iT -iT +Fq ls lL Ra -kB +PF nD iL iT @@ -56136,7 +56278,7 @@ io io io io -Fq +io UO io io @@ -56362,7 +56504,7 @@ aa aa aa aa -iH +il it lL im @@ -56421,8 +56563,8 @@ bz QC dV cS -cS -zw +uB +QC Ot Ot di @@ -57199,9 +57341,9 @@ ym TV fg QC -dj +ka +Mf Mf -RQ Mf Mf Zi @@ -57904,7 +58046,7 @@ aa aa aa aa -iH +il iy lL ip @@ -58164,7 +58306,7 @@ aa il iz lL -iK +rY iU iU OB @@ -58176,11 +58318,11 @@ iU sI iU iU -iU +HS lt lL Ra -kB +zw rg iK iU @@ -58421,7 +58563,7 @@ aa Jb ir IF -YX +Jb ir IF Jb @@ -58433,11 +58575,11 @@ IF Jb ir IF -YX +Jb ir IF Jb -pc +Hv Hv RI ja @@ -58678,19 +58820,19 @@ aa Jb rs am +Jb Dj -rs -am -Dj -rs am +Jb Dj -rs am +Jb Dj -rs am +Jb Dj +He +Jb rs am Jb @@ -58957,8 +59099,8 @@ rM rM rM rM -zc -pc +HW +Hv cg PL fm @@ -59982,10 +60124,10 @@ Hv Hv Hv Hv -pc +Hv ja ja -pc +Hv Hv qA qy @@ -60232,17 +60374,17 @@ Hv bB ps tQ -pc +Hv hP lR ml mW rN bP +pc ps ps -ps -aU +SD Hv qy qz @@ -61256,7 +61398,7 @@ aa aa aa aa -pc +Hv qc rk kE @@ -61770,8 +61912,8 @@ aa aa aa aa -pc -bC +Hv +dI rk kG ld @@ -62042,7 +62184,7 @@ MV mY rM ML -pc +Hv qz qy cg @@ -62059,7 +62201,7 @@ zm xt vZ AZ -cg +ku fm cg cg @@ -62284,7 +62426,7 @@ aa aa aa aa -pc +Hv BU rk kE @@ -63061,7 +63203,7 @@ rM rM ct ps -lV +Cq lW lW lV @@ -63316,7 +63458,7 @@ Hv Wp xX QX -pc +Hv Xc KD rc diff --git a/_maps/map_files/generic/CentCom_minimal.dmm b/_maps/map_files/generic/CentCom_minimal.dmm index bab075b8627097..0537923543259a 100644 --- a/_maps/map_files/generic/CentCom_minimal.dmm +++ b/_maps/map_files/generic/CentCom_minimal.dmm @@ -11,6 +11,8 @@ /area/centcom/central_command_areas/control) "x" = ( /obj/effect/landmark/error, +/obj/effect/landmark/observer_start, +/obj/effect/landmark/latejoin, /turf/open/floor/iron, /area/centcom/central_command_areas/control) "A" = ( diff --git a/_maps/map_files/tramstation/maintenance_modules/arrivalsecupper_3.dmm b/_maps/map_files/tramstation/maintenance_modules/arrivalsecupper_3.dmm index 085542568ac849..557804df81567a 100644 --- a/_maps/map_files/tramstation/maintenance_modules/arrivalsecupper_3.dmm +++ b/_maps/map_files/tramstation/maintenance_modules/arrivalsecupper_3.dmm @@ -83,7 +83,7 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Security Maintenance Hatch" }, -/obj/effect/mapping_helpers/airlock/access/any/security/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/security/brig, /turf/open/floor/iron/smooth, /area/station/maintenance/department/eva) "L" = ( @@ -115,7 +115,7 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Security Maintenance Hatch" }, -/obj/effect/mapping_helpers/airlock/access/any/security/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/security/brig, /turf/open/floor/plating, /area/station/maintenance/department/eva) "Y" = ( diff --git a/_maps/map_files/tramstation/maintenance_modules/atmoscilower_2.dmm b/_maps/map_files/tramstation/maintenance_modules/atmoscilower_2.dmm index 63b01e5ed5ad0f..05fb51b60ac96c 100644 --- a/_maps/map_files/tramstation/maintenance_modules/atmoscilower_2.dmm +++ b/_maps/map_files/tramstation/maintenance_modules/atmoscilower_2.dmm @@ -204,7 +204,7 @@ pixel_x = -7; pixel_y = -10 }, -/obj/item/food/sandwich/cheese/grilled{ +/obj/item/food/sandwich/grilled_cheese{ pixel_x = -5; pixel_y = -9 }, diff --git a/_maps/map_files/tramstation/maintenance_modules/barcargoupper_2.dmm b/_maps/map_files/tramstation/maintenance_modules/barcargoupper_2.dmm index 0901318e301430..b19a77c30230e0 100644 --- a/_maps/map_files/tramstation/maintenance_modules/barcargoupper_2.dmm +++ b/_maps/map_files/tramstation/maintenance_modules/barcargoupper_2.dmm @@ -191,11 +191,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/obj/structure/sign/warning/secure_area{ - desc = "A warning sign which reads 'MULE CROSSING - LOOK BOTH WAYS"; - name = "MULE CROSSING - LOOK BOTH WAYS"; - pixel_x = -32 - }, +/obj/structure/sign/warning/secure_area/directional/west, /turf/open/floor/catwalk_floor, /area/station/maintenance/department/cargo) "tI" = ( diff --git a/_maps/map_files/tramstation/maintenance_modules/dormenginelower_attachment_b_1.dmm b/_maps/map_files/tramstation/maintenance_modules/dormenginelower_attachment_b_1.dmm index bfe095561311a6..81bb18c3d899a0 100644 --- a/_maps/map_files/tramstation/maintenance_modules/dormenginelower_attachment_b_1.dmm +++ b/_maps/map_files/tramstation/maintenance_modules/dormenginelower_attachment_b_1.dmm @@ -307,7 +307,7 @@ T B B B -C +m a a a @@ -324,7 +324,7 @@ L K B B -m +C V D O diff --git a/_maps/map_files/tramstation/maintenance_modules/medsciupper_1.dmm b/_maps/map_files/tramstation/maintenance_modules/medsciupper_1.dmm index bed44b8895c9a6..45a0e429f0d319 100644 --- a/_maps/map_files/tramstation/maintenance_modules/medsciupper_1.dmm +++ b/_maps/map_files/tramstation/maintenance_modules/medsciupper_1.dmm @@ -324,7 +324,7 @@ /obj/machinery/door/airlock/grunge{ name = "Medical Maintenance Access" }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/medical/morgue, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, /obj/modular_map_connector, @@ -398,6 +398,9 @@ /obj/structure/flora/bush/flowers_yw/style_random, /turf/open/floor/grass, /area/station/asteroid) +"YV" = ( +/turf/closed/wall, +/area/station/asteroid) "Zs" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/rack, @@ -1273,7 +1276,7 @@ XJ fd rJ hs -jx +YV nm nm gV diff --git a/_maps/map_files/tramstation/maintenance_modules/medsciupper_2.dmm b/_maps/map_files/tramstation/maintenance_modules/medsciupper_2.dmm index 9e76b86ee64001..f0401a50d7e9cd 100644 --- a/_maps/map_files/tramstation/maintenance_modules/medsciupper_2.dmm +++ b/_maps/map_files/tramstation/maintenance_modules/medsciupper_2.dmm @@ -117,7 +117,7 @@ /obj/machinery/door/airlock/grunge{ name = "Medical Maintenance Access" }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/medical/morgue, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, /obj/modular_map_connector, @@ -292,6 +292,9 @@ "II" = ( /turf/open/floor/plating, /area/station/maintenance/department/science) +"IV" = ( +/turf/closed/wall, +/area/station/asteroid) "Kw" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/smooth, @@ -369,7 +372,7 @@ name = "Medical Maintenance Hatch" }, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/catwalk_floor, @@ -1300,7 +1303,7 @@ nm cn vr Vh -tD +IV tD tD Mf diff --git a/_maps/map_files/tramstation/maintenance_modules/medsciupper_3.dmm b/_maps/map_files/tramstation/maintenance_modules/medsciupper_3.dmm index 5e40d0ac4f60a8..c921b68dbb9131 100644 --- a/_maps/map_files/tramstation/maintenance_modules/medsciupper_3.dmm +++ b/_maps/map_files/tramstation/maintenance_modules/medsciupper_3.dmm @@ -271,7 +271,7 @@ /obj/machinery/door/airlock/grunge{ name = "Medical Maintenance Access" }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/medical/morgue, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, /obj/modular_map_connector, @@ -468,6 +468,9 @@ /obj/effect/spawner/random/contraband/narcotics, /turf/open/floor/iron/smooth, /area/station/maintenance/department/medical) +"MY" = ( +/turf/closed/wall, +/area/station/asteroid) "Ny" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt, @@ -1466,7 +1469,7 @@ Pu gZ hQ JY -wP +MY wP LV wP diff --git a/_maps/map_files/tramstation/maintenance_modules/secbarupper_1.dmm b/_maps/map_files/tramstation/maintenance_modules/secbarupper_1.dmm index 6c18e97d1378f2..127b72c632bb07 100644 --- a/_maps/map_files/tramstation/maintenance_modules/secbarupper_1.dmm +++ b/_maps/map_files/tramstation/maintenance_modules/secbarupper_1.dmm @@ -172,7 +172,7 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Security Maintenance Hatch" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -346,11 +346,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/duct, -/obj/structure/sign/warning/secure_area{ - desc = "A warning sign which reads 'MULE CROSSING - LOOK BOTH WAYS"; - name = "MULE CROSSING - LOOK BOTH WAYS"; - pixel_y = 32 - }, +/obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/catwalk_floor, /area/station/maintenance/department/security) "Uo" = ( @@ -399,8 +395,8 @@ /turf/open/floor/catwalk_floor, /area/station/maintenance/department/security) "XI" = ( -/obj/machinery/light/small/directional/south, -/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/sand/plating, +/obj/machinery/light/small/directional/north, /turf/open/floor/plating, /area/station/maintenance/department/security) "Yj" = ( @@ -758,7 +754,7 @@ eg (9,1,1) = {" eg Fc -XI +pH eg eg eg @@ -798,7 +794,7 @@ eg (10,1,1) = {" ZA bW -Rh +XI eg eg eg diff --git a/_maps/map_files/tramstation/maintenance_modules/secbarupper_2.dmm b/_maps/map_files/tramstation/maintenance_modules/secbarupper_2.dmm index 6b0093caccd283..d7cba70ef2fd75 100644 --- a/_maps/map_files/tramstation/maintenance_modules/secbarupper_2.dmm +++ b/_maps/map_files/tramstation/maintenance_modules/secbarupper_2.dmm @@ -30,11 +30,7 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/warning/secure_area{ - desc = "A warning sign which reads 'MULE CROSSING - LOOK BOTH WAYS"; - name = "MULE CROSSING - LOOK BOTH WAYS"; - pixel_y = 32 - }, +/obj/structure/sign/warning/secure_area/directional/north, /obj/effect/decal/cleanable/cobweb/cobweb2, /turf/open/floor/catwalk_floor, /area/station/maintenance/department/security) @@ -207,7 +203,7 @@ /obj/effect/turf_decal/trimline/yellow/arrow_ccw{ dir = 1 }, -/obj/machinery/light/small/directional/south, +/obj/machinery/light/small/directional/north, /turf/open/floor/iron/smooth, /area/station/maintenance/department/security) "CA" = ( @@ -308,7 +304,7 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Security Maintenance Hatch" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, diff --git a/_maps/map_files/tramstation/maintenance_modules/secbarupper_3.dmm b/_maps/map_files/tramstation/maintenance_modules/secbarupper_3.dmm index 9291070132b97e..be69dfb9e70181 100644 --- a/_maps/map_files/tramstation/maintenance_modules/secbarupper_3.dmm +++ b/_maps/map_files/tramstation/maintenance_modules/secbarupper_3.dmm @@ -221,7 +221,7 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Security Maintenance Hatch" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -468,8 +468,8 @@ /turf/open/misc/asteroid, /area/station/maintenance/department/security) "VW" = ( -/obj/machinery/light/small/directional/south, -/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/sand/plating, +/obj/machinery/light/small/directional/north, /turf/open/floor/plating, /area/station/maintenance/department/security) "Wo" = ( @@ -823,7 +823,7 @@ Py (9,1,1) = {" Py Wo -VW +uw Py Py Py @@ -863,7 +863,7 @@ Py (10,1,1) = {" Sc RO -fV +VW Py Py Py diff --git a/_maps/map_files/tramstation/maintenance_modules/secservicelower_1.dmm b/_maps/map_files/tramstation/maintenance_modules/secservicelower_1.dmm index ccd28eb4b312e0..7a44cf6394bac4 100644 --- a/_maps/map_files/tramstation/maintenance_modules/secservicelower_1.dmm +++ b/_maps/map_files/tramstation/maintenance_modules/secservicelower_1.dmm @@ -157,14 +157,9 @@ /obj/structure/cable, /turf/open/floor/catwalk_floor, /area/station/maintenance/port/central) -"kD" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/directional/south, -/turf/open/floor/iron/smooth, -/area/station/maintenance/central/greater) "lS" = ( /obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -261,7 +256,7 @@ }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/duct, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/structure/cable, @@ -411,6 +406,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 }, +/obj/machinery/light/small/directional/north, /turf/open/floor/iron/smooth, /area/station/maintenance/central/greater) "Bz" = ( @@ -2627,7 +2623,7 @@ TQ vR Ip VO -kD +PM nk nk nk diff --git a/_maps/map_files/tramstation/maintenance_modules/secservicelower_2.dmm b/_maps/map_files/tramstation/maintenance_modules/secservicelower_2.dmm index 9ba614bb78214f..2a805eacb74d2d 100644 --- a/_maps/map_files/tramstation/maintenance_modules/secservicelower_2.dmm +++ b/_maps/map_files/tramstation/maintenance_modules/secservicelower_2.dmm @@ -105,7 +105,7 @@ /area/station/maintenance/central/greater) "gc" = ( /obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -159,7 +159,7 @@ }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/duct, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/structure/cable, diff --git a/_maps/map_files/tramstation/maintenance_modules/secservicelower_3.dmm b/_maps/map_files/tramstation/maintenance_modules/secservicelower_3.dmm index 3695915478abed..7af7a378d1419a 100644 --- a/_maps/map_files/tramstation/maintenance_modules/secservicelower_3.dmm +++ b/_maps/map_files/tramstation/maintenance_modules/secservicelower_3.dmm @@ -105,7 +105,7 @@ }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/duct, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/structure/cable, @@ -311,7 +311,7 @@ /area/station/maintenance/port/central) "xH" = ( /obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, diff --git a/_maps/map_files/tramstation/tramstation.dmm b/_maps/map_files/tramstation/tramstation.dmm index bc0c649584fc91..d5153099e4ae2c 100644 --- a/_maps/map_files/tramstation/tramstation.dmm +++ b/_maps/map_files/tramstation/tramstation.dmm @@ -41,7 +41,8 @@ "aah" = ( /obj/machinery/power/smes/engineering, /obj/structure/sign/warning/electric_shock{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/effect/decal/cleanable/dirt, /obj/structure/cable, @@ -90,15 +91,6 @@ /obj/structure/marker_beacon/burgundy, /turf/open/misc/asteroid/airless, /area/station/asteroid) -"aar" = ( -/obj/structure/railing{ - dir = 8 - }, -/obj/structure/chair/plastic{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/salvage_bay) "aat" = ( /obj/item/stack/cable_coil, /turf/open/misc/asteroid/airless, @@ -1506,7 +1498,7 @@ dir = 6 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "aeT" = ( /obj/effect/turf_decal/siding/wideplating{ dir = 10 @@ -1516,7 +1508,7 @@ c_tag = "Secure - Nuclear Storage" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "aeV" = ( /obj/effect/turf_decal/sand/plating, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible, @@ -1538,7 +1530,7 @@ /obj/effect/turf_decal/stripes/line, /obj/structure/cable, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "aeY" = ( /obj/effect/turf_decal/trimline/white/warning{ dir = 9 @@ -1608,7 +1600,7 @@ "afn" = ( /obj/machinery/nuclearbomb/selfdestruct, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "afo" = ( /obj/structure/flora/bush/flowers_br/style_random, /turf/open/floor/grass, @@ -1934,9 +1926,7 @@ /turf/open/floor/iron, /area/station/security/checkpoint/supply) "agK" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/misc/asteroid/airless, /area/station/asteroid) "agL" = ( @@ -2305,7 +2295,8 @@ pixel_y = -9; id = "private_j"; specialfunctions = 4; - normaldoorcontrol = 1 + normaldoorcontrol = 1; + dir = 4 }, /turf/open/floor/wood, /area/station/commons/dorms) @@ -2398,7 +2389,8 @@ pixel_y = -9; id = "private_k"; specialfunctions = 4; - normaldoorcontrol = 1 + normaldoorcontrol = 1; + dir = 4 }, /turf/open/floor/carpet, /area/station/commons/dorms) @@ -2535,13 +2527,11 @@ /area/station/commons/dorms) "alb" = ( /obj/structure/chair/stool/directional/north, -/obj/machinery/button/door/directional/west{ +/obj/machinery/button/door/directional/east{ name = "Privacy Bolts"; - pixel_x = 24; - pixel_y = -9; id = "private_l"; - specialfunctions = 4; - normaldoorcontrol = 1 + normaldoorcontrol = 1; + specialfunctions = 4 }, /turf/open/floor/wood, /area/station/commons/dorms) @@ -2767,7 +2757,7 @@ }, /obj/machinery/light/floor, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "anr" = ( /obj/effect/turf_decal/stripes/corner{ dir = 4 @@ -2835,9 +2825,7 @@ /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 4 }, -/obj/structure/sign/warning/secure_area{ - pixel_x = 32 - }, +/obj/structure/sign/warning/secure_area/directional/east, /obj/machinery/atmospherics/pipe/smart/simple/cyan/hidden, /turf/open/floor/iron, /area/station/engineering/atmos) @@ -2880,7 +2868,7 @@ "aoh" = ( /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "aor" = ( /obj/effect/landmark/start/station_engineer, /obj/effect/turf_decal/trimline/yellow/arrow_cw, @@ -3247,7 +3235,7 @@ /obj/machinery/cell_charger, /obj/item/stock_parts/power_store/cell/high, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "asQ" = ( /obj/structure/sign/warning/no_smoking, /turf/closed/wall, @@ -3385,7 +3373,7 @@ "aur" = ( /obj/effect/spawner/random/engineering/tracking_beacon, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "auz" = ( /turf/closed/wall, /area/station/commons/vacant_room) @@ -3460,7 +3448,7 @@ dir = 6 }, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "avj" = ( /obj/structure/table, /obj/machinery/syndicatebomb/training, @@ -3631,7 +3619,7 @@ dir = 4 }, /obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/security/brig, @@ -3843,7 +3831,7 @@ "ayI" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ayJ" = ( /obj/effect/turf_decal/stripes/corner{ dir = 8 @@ -3913,9 +3901,6 @@ /obj/machinery/airalarm/directional/west, /turf/open/floor/iron, /area/station/hallway/secondary/command) -"azR" = ( -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) "azU" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 10 @@ -3998,9 +3983,6 @@ /turf/open/floor/glass, /area/station/cargo/sorting) "aBq" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, /obj/effect/turf_decal/stripes/white/full, /obj/machinery/door/firedoor, /obj/effect/turf_decal/trimline/neutral/filled/line{ @@ -4221,12 +4203,6 @@ /obj/machinery/smartfridge/petri/preloaded, /turf/open/floor/iron/white, /area/station/science/xenobiology) -"aDs" = ( -/obj/effect/turf_decal/sand, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/salvage_bay) "aDu" = ( /obj/effect/turf_decal/arrows/white{ dir = 8 @@ -4390,9 +4366,7 @@ /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 1 }, -/obj/structure/sign/departments/cargo{ - pixel_y = 32 - }, +/obj/structure/sign/departments/cargo/directional/north, /obj/effect/turf_decal/trimline/neutral/filled/warning{ dir = 1 }, @@ -4646,13 +4620,6 @@ }, /turf/open/floor/catwalk_floor, /area/station/hallway/primary/tram/center) -"aHg" = ( -/obj/structure/railing{ - dir = 8 - }, -/obj/effect/turf_decal/sand, -/turf/open/floor/plating, -/area/station/salvage_bay) "aHl" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/door_buttons/airlock_controller{ @@ -4724,10 +4691,6 @@ /obj/effect/turf_decal/trimline/neutral/corner{ dir = 8 }, -/obj/structure/sign/departments/science{ - pixel_x = -32; - pixel_y = -32 - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, @@ -5017,7 +4980,7 @@ dir = 1 }, /obj/effect/landmark/event_spawn, -/obj/machinery/computer/rdconsole, +/obj/machinery/computer/rdconsole/unlocked, /turf/open/floor/iron, /area/station/science/lab) "aKA" = ( @@ -5065,7 +5028,6 @@ /obj/machinery/door/airlock/medical/glass{ name = "Treatment Center" }, -/obj/effect/mapping_helpers/airlock/unres, /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 4 }, @@ -5075,6 +5037,7 @@ /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/structure/cable, +/obj/effect/mapping_helpers/airlock/unres, /turf/open/floor/iron/white, /area/station/medical/treatment_center) "aKU" = ( @@ -5249,7 +5212,6 @@ /turf/open/floor/iron, /area/station/commons/storage/art) "aMt" = ( -/obj/structure/sign/warning/electric_shock, /obj/effect/turf_decal/stripes/end{ dir = 4 }, @@ -5367,7 +5329,7 @@ /area/station/command/bridge) "aNq" = ( /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "aNr" = ( /obj/effect/turf_decal/trimline/blue/filled/line, /obj/machinery/power/apc/auto_name/directional/south, @@ -5406,14 +5368,6 @@ dir = 6 }, /area/station/service/chapel) -"aNT" = ( -/obj/structure/railing{ - dir = 9 - }, -/obj/structure/sign/semiotic/vacuum_ahead/directional/east, -/obj/effect/turf_decal/sand, -/turf/open/floor/plating, -/area/station/salvage_bay) "aNU" = ( /obj/machinery/airalarm/directional/north, /obj/structure/cable, @@ -5505,7 +5459,7 @@ "aOH" = ( /obj/machinery/airalarm/directional/north, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "aOJ" = ( /obj/machinery/computer/crew{ dir = 8 @@ -5681,7 +5635,7 @@ dir = 8 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "aQf" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 10 @@ -5840,11 +5794,6 @@ }, /turf/open/floor/iron/dark/smooth_large, /area/station/service/chapel/monastery) -"aRH" = ( -/obj/structure/girder/reinforced, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating/airless, -/area/space/nearstation) "aRI" = ( /turf/open/floor/iron/dark/smooth_large, /area/station/service/chapel/monastery) @@ -5947,11 +5896,7 @@ /obj/effect/turf_decal/siding/thinplating/dark/corner{ dir = 1 }, -/obj/structure/sign/warning/secure_area{ - name = "BOMB RANGE"; - desc = "A warning sign which reads 'BOMB RANGE"; - pixel_y = 32 - }, +/obj/structure/sign/warning/secure_area/directional/north, /obj/structure/disposalpipe/segment{ dir = 4 }, @@ -6026,7 +5971,7 @@ /obj/machinery/status_display/ai/directional/north, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "aUC" = ( /obj/machinery/camera/directional/south{ c_tag = "Civilian - Chapel South" @@ -6077,9 +6022,6 @@ }, /turf/open/floor/iron, /area/station/maintenance/tram/mid) -"aVR" = ( -/turf/closed/wall/rock, -/area/station/salvage_bay) "aVT" = ( /obj/effect/turf_decal/stripes/line, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -6189,7 +6131,7 @@ dir = 4 }, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "aYA" = ( /turf/open/floor/iron, /area/station/hallway/primary/tram/right) @@ -6322,11 +6264,11 @@ }, /obj/machinery/status_display/ai/directional/east, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "bcI" = ( /obj/item/kirbyplants/photosynthetic, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bcL" = ( /obj/effect/turf_decal/trimline/neutral/filled/corner{ dir = 1 @@ -6343,7 +6285,7 @@ }, /obj/effect/turf_decal/trimline/yellow/corner, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bcV" = ( /obj/effect/turf_decal/trimline/white/filled/corner{ dir = 1 @@ -6371,7 +6313,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bej" = ( /obj/machinery/newscaster/directional/north, /obj/effect/turf_decal/trimline/green/filled/line, @@ -6547,7 +6489,7 @@ /obj/effect/mapping_helpers/airlock/access/any/command/ai_upload, /obj/effect/mapping_helpers/airlock/access/any/engineering/tcoms, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bhG" = ( /obj/machinery/door/airlock/centcom{ name = "Syndicate Secure Airlock System"; @@ -6556,13 +6498,6 @@ /obj/effect/mapping_helpers/airlock/access/all/syndicate/general, /turf/open/floor/iron/grimy, /area/station/commons/vacant_room) -"bhQ" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/railing{ - dir = 1 - }, -/turf/open/floor/plating/reinforced/airless, -/area/space/nearstation) "bhY" = ( /obj/effect/turf_decal/trimline/neutral/filled/line{ dir = 1 @@ -6590,7 +6525,7 @@ }, /obj/item/radio/intercom/directional/west, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "bio" = ( /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable, @@ -6943,7 +6878,7 @@ }, /obj/effect/turf_decal/trimline/yellow/filled/warning, /turf/open/floor/iron/dark/side, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "bqU" = ( /obj/machinery/portable_atmospherics/canister/carbon_dioxide, /turf/open/floor/iron/dark, @@ -7332,7 +7267,7 @@ /area/station/service/janitor) "bya" = ( /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "byh" = ( /obj/structure/table/glass, /obj/effect/turf_decal/trimline/red/filled/line{ @@ -7346,7 +7281,7 @@ dir = 8 }, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "byw" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 8 @@ -7373,11 +7308,6 @@ }, /turf/open/openspace, /area/station/asteroid) -"byD" = ( -/obj/effect/turf_decal/sand/plating, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/salvage_bay) "byF" = ( /obj/machinery/ai_slipper{ uses = 10 @@ -7388,7 +7318,7 @@ c_tag = "Secure - AI Antechamber North" }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "byH" = ( /obj/structure/lattice/catwalk, /obj/structure/railing/corner{ @@ -7450,7 +7380,7 @@ }, /obj/machinery/status_display/evac/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "bzN" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 8 @@ -7474,7 +7404,7 @@ name = "Tram Mechanical Room" }, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/structure/cable, @@ -7505,7 +7435,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bBl" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -7636,7 +7566,7 @@ /obj/effect/turf_decal/bot_white/right, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "bEM" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 10 @@ -7669,7 +7599,7 @@ pixel_y = 2 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "bFo" = ( /obj/effect/turf_decal/trimline/red/filled/line, /obj/machinery/camera/directional/south{ @@ -7710,7 +7640,7 @@ name = "Theatre Maintenance Hatch" }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/structure/cable, @@ -7734,7 +7664,7 @@ /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -7931,7 +7861,7 @@ dir = 10 }, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "bKb" = ( /obj/effect/turf_decal/trimline/green/filled/corner{ dir = 4 @@ -7988,7 +7918,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "bKM" = ( /turf/open/floor/iron/dark, /area/station/commons/lounge) @@ -8107,12 +8037,11 @@ "bLO" = ( /obj/machinery/light/directional/north, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "bLQ" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 }, -/obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/secondary/exit) "bLS" = ( @@ -8157,7 +8086,7 @@ }, /obj/machinery/bluespace_beacon, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "bME" = ( /obj/structure/lattice/catwalk, /obj/structure/cable, @@ -8196,7 +8125,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/iron/white, /area/station/science/research) "bNi" = ( @@ -8238,7 +8167,7 @@ /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "bNx" = ( /obj/structure/railing, /obj/machinery/door/firedoor/border_only, @@ -8472,11 +8401,6 @@ /obj/effect/turf_decal/siding/wood, /turf/open/floor/wood/large, /area/station/service/library) -"bSn" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/plating, -/area/station/salvage_bay) "bSr" = ( /obj/structure/chair{ name = "Judge"; @@ -8545,13 +8469,6 @@ }, /turf/open/floor/iron, /area/station/commons/dorms) -"bTQ" = ( -/obj/structure/table/reinforced, -/obj/item/paper_bin/carbon, -/obj/item/pen/fourcolor, -/obj/machinery/newscaster/directional/north, -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) "bUh" = ( /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -8663,7 +8580,7 @@ dir = 4 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "bVL" = ( /obj/structure/chair{ dir = 8 @@ -8935,10 +8852,6 @@ }, /turf/open/floor/iron, /area/station/service/janitor) -"bYJ" = ( -/obj/machinery/electrolyzer/co2_cracker, -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) "bYP" = ( /obj/effect/turf_decal/trimline/purple/filled/corner{ dir = 1 @@ -8972,13 +8885,6 @@ /obj/structure/sign/warning/test_chamber/directional/north, /turf/open/floor/iron/white, /area/station/science/lower) -"bZg" = ( -/obj/machinery/conveyor{ - id = "SalvageProcess" - }, -/obj/structure/sign/semiotic/vacuum_ahead/directional/east, -/turf/open/floor/plating, -/area/station/salvage_bay) "bZh" = ( /obj/machinery/requests_console/directional/south{ name = "Law Office Requests Console"; @@ -9025,7 +8931,7 @@ }, /obj/structure/cable, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "bZI" = ( /obj/machinery/door/window/brigdoor/left/directional/south{ name = "Secure Morgue Trays"; @@ -9096,15 +9002,6 @@ }, /turf/open/floor/iron/kitchen_coldroom, /area/station/service/kitchen/coldroom) -"caA" = ( -/obj/machinery/suit_storage_unit/engine, -/obj/item/mod/paint{ - pixel_y = 20; - pixel_x = -3 - }, -/obj/effect/turf_decal/bot, -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) "caH" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 6 @@ -9132,7 +9029,8 @@ dir = 4 }, /obj/structure/sign/departments/psychology{ - pixel_x = 32 + pixel_x = 32; + dir = 4 }, /turf/open/floor/iron/white, /area/station/medical/medbay/central) @@ -9392,7 +9290,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "cey" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, @@ -9459,7 +9357,7 @@ dir = 6 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "cfp" = ( /obj/structure/lattice/catwalk, /obj/structure/railing/corner, @@ -9533,7 +9431,7 @@ /turf/open/floor/iron/dark/corner{ dir = 4 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "cgw" = ( /obj/machinery/computer/operating{ dir = 8 @@ -9607,7 +9505,7 @@ /obj/effect/turf_decal/stripes/corner, /obj/machinery/light/floor, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "cht" = ( /obj/effect/turf_decal/bot, /obj/machinery/atmospherics/components/unary/portables_connector/visible{ @@ -9666,11 +9564,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/white, /area/station/security/execution/education) -"cjC" = ( -/obj/effect/turf_decal/sand/plating, -/obj/effect/turf_decal/stripes/asteroid/box, -/turf/open/space/openspace, -/area/space/nearstation) "cjG" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden, /turf/closed/wall/r_wall, @@ -9780,11 +9673,6 @@ "clT" = ( /turf/closed/wall, /area/station/security/checkpoint/medical) -"clV" = ( -/obj/machinery/suit_storage_unit/engine, -/obj/effect/turf_decal/bot, -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) "cmo" = ( /obj/effect/turf_decal/siding/thinplating/end, /obj/machinery/atmospherics/pipe/multiz/supply/hidden/layer4{ @@ -9794,7 +9682,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "cmH" = ( /obj/effect/turf_decal/trimline/red/filled/corner{ dir = 4 @@ -10177,7 +10065,7 @@ name = "Maintenance Hatch" }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/catwalk_floor, @@ -10594,21 +10482,10 @@ name = "HoP Arrival Procedure Enforcement Shutters"; id = "papersplease" }, -/obj/machinery/button/door/directional/south{ - name = "Arrival Checkpoint Enforcement Override"; - pixel_x = 24; - pixel_y = 0; - id = "papersplease"; - req_access = list("kitchen") - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/hallway/secondary/entry) -"czS" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/plating, -/area/station/salvage_bay) "czX" = ( /obj/effect/turf_decal/tile/blue/half/contrasted{ dir = 8 @@ -10811,7 +10688,7 @@ dir = 5 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "cEg" = ( /obj/effect/turf_decal/trimline/neutral/filled/line, /obj/effect/turf_decal/trimline/neutral/filled/corner{ @@ -10875,10 +10752,6 @@ "cFs" = ( /turf/open/openspace, /area/station/hallway/primary/tram/left) -"cFt" = ( -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, -/area/station/salvage_bay) "cFF" = ( /obj/effect/turf_decal/trimline/neutral/filled/line{ dir = 8 @@ -10982,11 +10855,6 @@ }, /turf/open/floor/iron, /area/station/science/robotics/mechbay) -"cGM" = ( -/obj/structure/lattice/catwalk, -/obj/structure/marker_beacon/teal, -/turf/open/space/openspace, -/area/space/nearstation) "cGN" = ( /obj/structure/table/wood, /obj/item/pai_card{ @@ -11069,7 +10937,7 @@ "cHZ" = ( /obj/structure/railing, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "cIm" = ( /obj/structure/closet/radiation, /obj/effect/turf_decal/bot, @@ -11339,21 +11207,6 @@ /obj/effect/landmark/event_spawn, /turf/open/floor/iron/white, /area/station/medical/surgery/aft) -"cNt" = ( -/obj/effect/turf_decal/stripes{ - dir = 4 - }, -/obj/structure/rack, -/obj/item/gps/mining{ - pixel_x = -5; - pixel_y = -2 - }, -/obj/item/gps/mining{ - pixel_x = -2; - pixel_y = 1 - }, -/turf/open/floor/iron, -/area/station/hallway/secondary/exit) "cNy" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -11390,7 +11243,7 @@ }, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "cOg" = ( /obj/machinery/door/airlock/command/glass{ name = "EVA Storage" @@ -11402,7 +11255,7 @@ /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/red_alert_access, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "cOl" = ( /obj/machinery/computer/prisoner/management{ dir = 8 @@ -11473,7 +11326,7 @@ dir = 4 }, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "cPx" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 5 @@ -11576,6 +11429,7 @@ dir = 1 }, /obj/structure/cable/layer1, +/obj/structure/sign/warning/radiation/directional/south, /turf/open/floor/engine, /area/station/engineering/supermatter/room) "cQD" = ( @@ -11789,7 +11643,7 @@ }, /obj/machinery/status_display/ai/directional/west, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "cUB" = ( /obj/effect/landmark/start/shaft_miner, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -11819,6 +11673,11 @@ dir = 1 }, /obj/machinery/light/cold/directional/north, +/obj/machinery/button/door/directional/north{ + id = "papersplease"; + name = "Arrival Checkpoint Enforcement Override"; + req_access = list("kitchen") + }, /turf/open/floor/iron, /area/station/commons/fitness/recreation) "cVd" = ( @@ -11860,8 +11719,13 @@ "cVr" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, +/obj/machinery/flasher/directional/west{ + id = "AI"; + pixel_y = 5; + pixel_x = -22 + }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "cVs" = ( /obj/effect/turf_decal/weather/snow, /obj/machinery/gibber, @@ -11918,7 +11782,7 @@ /obj/machinery/power/apc/auto_name/directional/south, /obj/structure/cable, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "cWl" = ( /obj/machinery/computer/shuttle/mining{ dir = 1 @@ -11952,14 +11816,6 @@ /obj/item/clothing/shoes/clown_shoes, /turf/open/floor/plating/airless, /area/station/science/ordnance/bomb) -"cWW" = ( -/obj/structure/girder/reinforced, -/obj/structure/shuttle_decoration/wall_plate/armor{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating/airless, -/area/space/nearstation) "cWZ" = ( /turf/closed/wall, /area/station/service/bar/backroom) @@ -11977,7 +11833,7 @@ }, /obj/machinery/status_display/evac/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "cXy" = ( /obj/machinery/igniter/incinerator_ordmix, /turf/open/floor/engine/vacuum, @@ -12020,7 +11876,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/catwalk_floor, @@ -12150,11 +12006,6 @@ /obj/machinery/light/directional/east, /turf/open/floor/iron, /area/station/cargo/miningdock) -"dab" = ( -/obj/structure/tank_holder/extinguisher/advanced, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) "dai" = ( /obj/structure/chair/sofa/corp/corner{ dir = 4 @@ -12216,7 +12067,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/item/storage/toolbox/drone, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "dbr" = ( /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 @@ -12507,7 +12358,7 @@ "dgd" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -12633,7 +12484,7 @@ /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "diN" = ( /obj/machinery/computer/slot_machine{ pixel_y = 2 @@ -12728,7 +12579,7 @@ }, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "dkl" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table, @@ -12757,10 +12608,6 @@ "dkO" = ( /turf/open/floor/iron, /area/station/security/brig) -"dlf" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/iron/stairs/left, -/area/station/salvage_bay) "dlg" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -12887,7 +12734,8 @@ /area/station/science/breakroom) "dmX" = ( /obj/structure/sign/warning/radiation/rad_area{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/effect/turf_decal/bot_white, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -12932,7 +12780,7 @@ dir = 10 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "doa" = ( /obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, /obj/effect/spawner/structure/window/reinforced, @@ -13074,7 +12922,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "dqW" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 4 @@ -13176,7 +13024,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "dsw" = ( /obj/machinery/modular_computer/preset/id{ dir = 8 @@ -13238,12 +13086,21 @@ /turf/open/floor/wood, /area/station/command/meeting_room) "dtz" = ( -/obj/machinery/flasher/directional/east{ - pixel_y = 26; - id = "AI" +/obj/structure/sign/directions/upload{ + dir = 4; + pixel_y = -7 }, -/turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/obj/structure/sign/directions/engineering{ + pixel_y = 7 + }, +/obj/structure/sign/directions/medical{ + pixel_y = 14 + }, +/obj/structure/sign/directions/evac{ + dir = 4 + }, +/turf/closed/wall, +/area/station/hallway/primary/tram/center) "dtA" = ( /turf/open/openspace, /area/station/security/courtroom/holding) @@ -13323,7 +13180,6 @@ /area/station/service/hydroponics) "dvj" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/secondary/exit) "dvn" = ( @@ -13637,7 +13493,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/dim/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "dAR" = ( /obj/structure/closet/firecloset, /obj/effect/turf_decal/bot, @@ -13667,7 +13523,7 @@ "dBj" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "dBM" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/white/line{ @@ -13814,7 +13670,7 @@ /area/station/hallway/primary/tram/right) "dEv" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "dEH" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/door/airlock/external{ @@ -13939,7 +13795,7 @@ name = "Tunnel Access Hatch" }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -14197,10 +14053,10 @@ /obj/effect/landmark/event_spawn, /obj/structure/cable, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "dKV" = ( /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "dLp" = ( /obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ dir = 4 @@ -14256,14 +14112,13 @@ "dLS" = ( /obj/machinery/turretid{ name = "AI Chamber turret control"; - icon_state = "control_stun"; pixel_x = 3; pixel_y = -23 }, /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/west, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "dMg" = ( /turf/open/openspace, /area/station/maintenance/solars/starboard/fore) @@ -14308,7 +14163,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "dNp" = ( /obj/machinery/newscaster/directional/north, /obj/effect/turf_decal/trimline/neutral/filled/line{ @@ -14366,7 +14221,7 @@ req_access = list("captain") }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "dNY" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/neutral/filled/line{ @@ -14453,12 +14308,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/office) -"dPG" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/door/firedoor, -/turf/open/floor/iron/stairs/medium, -/area/station/salvage_bay) "dPI" = ( /obj/effect/turf_decal/trimline/neutral/filled/line{ dir = 1 @@ -14516,7 +14365,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "dQn" = ( /obj/machinery/power/supermatter_crystal/engine, /turf/open/floor/engine, @@ -14554,7 +14403,7 @@ pixel_y = -2 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "dQI" = ( /obj/machinery/disposal/bin, /obj/machinery/airalarm/directional/south, @@ -14868,7 +14717,7 @@ /area/station/cargo/storage) "dVM" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "dWd" = ( /obj/effect/turf_decal/stripes/white/line{ dir = 1 @@ -15060,6 +14909,7 @@ }, /obj/effect/turf_decal/trimline/red/filled/line, /obj/item/radio/intercom/directional/south, +/obj/effect/landmark/start/depsec/science, /turf/open/floor/iron, /area/station/security/checkpoint/science) "eaq" = ( @@ -15173,7 +15023,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "ecg" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -15391,7 +15241,7 @@ req_one_access = list("teleporter","minisat") }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "egK" = ( /obj/effect/turf_decal/trimline/purple/filled/corner{ dir = 1 @@ -15430,7 +15280,7 @@ /obj/structure/cable, /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ehS" = ( /obj/effect/turf_decal/trimline/white/line{ dir = 1 @@ -15438,7 +15288,7 @@ /obj/effect/turf_decal/trimline/yellow/line, /obj/machinery/status_display/ai/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "eiy" = ( /obj/structure/table/reinforced, /obj/machinery/atmospherics/pipe/smart/manifold4w/dark/visible, @@ -15576,7 +15426,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ekh" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -15621,7 +15471,7 @@ /obj/effect/turf_decal/bot, /obj/structure/rack, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "elM" = ( /obj/structure/cable, /obj/effect/turf_decal/tile/blue/opposingcorners, @@ -15637,18 +15487,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"ema" = ( -/obj/structure/shelf, -/obj/item/gun/energy/plasmacutter{ - pixel_y = -2 - }, -/obj/item/gun/energy/plasmacutter{ - pixel_y = 4; - pixel_x = -3 - }, -/obj/effect/turf_decal/bot, -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) "emn" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -15825,13 +15663,6 @@ /obj/effect/landmark/navigate_destination/tcomms, /turf/open/floor/iron, /area/station/tcommsat/computer) -"eql" = ( -/obj/machinery/mech_bay_recharge_port{ - dir = 2 - }, -/obj/effect/turf_decal/sand, -/turf/open/floor/plating, -/area/station/salvage_bay) "eqK" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, @@ -15930,7 +15761,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "esA" = ( /obj/machinery/iv_drip, /obj/effect/turf_decal/trimline/blue/filled/line{ @@ -16020,7 +15851,8 @@ name = "AI Upload Turret Control"; pixel_x = 25; req_access = list("minisat"); - control_area = "/area/station/ai_monitored/turret_protected/ai_upload" + control_area = "/area/station/ai/upload/chamber"; + dir = 4 }, /turf/open/floor/iron/dark, /area/station/science/lower) @@ -16030,12 +15862,6 @@ }, /turf/open/floor/glass/reinforced, /area/station/security/warden) -"eul" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/delivery, -/obj/structure/marker_beacon/yellow, -/turf/open/floor/plating/airless, -/area/station/asteroid) "euC" = ( /turf/open/floor/wood/parquet, /area/station/medical/psychology) @@ -16181,7 +16007,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "exF" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 8 @@ -16261,7 +16087,8 @@ /obj/structure/sign/warning/docking{ name = "KEEP CLEAR: TRAM DOCKING AREA sign"; desc = "A warning sign which reads 'KEEP CLEAR OF TRAM DOCKING AREA'."; - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/effect/turf_decal/siding/thinplating, /obj/structure/disposalpipe/segment{ @@ -16472,7 +16299,7 @@ /obj/machinery/space_heater, /obj/effect/turf_decal/bot, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "eBF" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 1 @@ -16513,7 +16340,6 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/secondary/exit) "eCp" = ( @@ -16548,7 +16374,7 @@ /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 4 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = -3; pixel_y = 3 }, @@ -16695,15 +16521,6 @@ }, /turf/open/floor/iron/dark, /area/station/cargo/miningdock/oresilo) -"eFB" = ( -/obj/structure/chair/office{ - dir = 4 - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/turf/open/floor/iron/grimy, -/area/station/salvage_bay) "eFJ" = ( /obj/effect/turf_decal/stripes/white/line{ dir = 1 @@ -16721,13 +16538,6 @@ }, /turf/open/floor/iron, /area/station/commons/fitness/recreation) -"eFX" = ( -/obj/machinery/conveyor{ - dir = 1; - id = "SalvageProcess" - }, -/turf/open/floor/plating, -/area/station/salvage_bay) "eGe" = ( /obj/effect/turf_decal/sand/plating, /obj/effect/turf_decal/stripes/asteroid/line{ @@ -16795,13 +16605,6 @@ "eHN" = ( /turf/closed/wall, /area/station/medical/paramedic) -"eHO" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/loading_area/white{ - dir = 8 - }, -/turf/open/floor/plating/airless, -/area/station/asteroid) "eHR" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -16855,14 +16658,6 @@ }, /turf/open/floor/iron, /area/station/security/checkpoint/escape) -"eIX" = ( -/obj/structure/girder/reinforced, -/obj/structure/shuttle_decoration/wall_plate/armor{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating/airless, -/area/space/nearstation) "eIZ" = ( /obj/machinery/atmospherics/pipe/heat_exchanging/simple/layer2{ dir = 9 @@ -16880,7 +16675,7 @@ /obj/effect/spawner/random/armory/riot_helmet, /obj/effect/spawner/random/armory/riot_shield, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "eJI" = ( /obj/structure/closet/secure_closet/miner, /obj/effect/turf_decal/trimline/brown/filled/line{ @@ -17024,23 +16819,6 @@ /obj/machinery/computer/pandemic, /turf/open/floor/iron/white, /area/station/medical/virology) -"eNM" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible, -/obj/machinery/status_display/ai/directional/east{ - pixel_y = -32 - }, -/obj/structure/cable/layer1, -/obj/effect/turf_decal/trimline/yellow/arrow_cw{ - dir = 8 - }, -/obj/effect/turf_decal/trimline/yellow/arrow_ccw{ - dir = 4 - }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) "eNP" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/neutral/filled/line{ @@ -17196,28 +16974,23 @@ /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) "eQL" = ( -/obj/structure/sign/directions/evac{ - dir = 4; - pixel_y = 28 - }, -/obj/structure/sign/directions/medical{ - pixel_y = 34 - }, -/obj/structure/sign/directions/engineering{ - pixel_y = 40 +/obj/structure/sign/directions/vault{ + dir = 8; + pixel_y = 7 }, -/obj/structure/sign/directions/upload{ - dir = 4; - pixel_y = 22 +/obj/structure/sign/directions/command{ + dir = 8; + pixel_y = -7 }, -/obj/effect/turf_decal/trimline/tram/filled/line{ - dir = 1 +/obj/structure/sign/directions/security{ + dir = 8; + pixel_y = 14 }, -/obj/effect/turf_decal/trimline/tram/filled/warning{ +/obj/structure/sign/directions/supply{ dir = 1 }, -/turf/open/floor/iron, -/area/station/hallway/primary/tram/center) +/turf/closed/wall, +/area/station/hallway/primary/tram/right) "eQN" = ( /obj/effect/turf_decal/sand/plating, /obj/machinery/airalarm/directional/west, @@ -17303,11 +17076,6 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/tram/right) -"eRZ" = ( -/obj/structure/closet/secure_closet/engineering_electrical, -/obj/machinery/light/dim/directional/east, -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) "eSj" = ( /obj/structure/table, /obj/item/storage/box/firingpins, @@ -17315,7 +17083,7 @@ /obj/item/key/security, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "eSs" = ( /obj/effect/turf_decal/trimline/neutral/filled/line{ dir = 8 @@ -17341,10 +17109,10 @@ /area/station/hallway/primary/tram/center) "eSH" = ( /obj/structure/window/reinforced/spawner/directional/south, +/obj/effect/turf_decal/tile/green/half/contrasted, /obj/machinery/computer/records/medical{ dir = 1 }, -/obj/effect/turf_decal/tile/green/half/contrasted, /turf/open/floor/iron, /area/station/command/bridge) "eSI" = ( @@ -17538,7 +17306,7 @@ freerange = 1 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "eVn" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -17836,10 +17604,6 @@ /obj/structure/table, /turf/open/floor/iron, /area/station/commons/dorms) -"faP" = ( -/obj/structure/sign/semiotic/arrow, -/turf/closed/wall, -/area/station/hallway/secondary/exit) "fbj" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 8 @@ -17892,10 +17656,6 @@ }, /turf/open/floor/iron, /area/station/cargo/miningfoundry) -"fdi" = ( -/obj/structure/shuttle_decoration/headlight/directional/east, -/turf/closed/wall/r_wall, -/area/space/nearstation) "fdr" = ( /obj/machinery/duct, /obj/structure/cable, @@ -17993,16 +17753,12 @@ /turf/open/floor/iron, /area/station/commons/fitness/recreation) "ffe" = ( -/obj/machinery/flasher/directional/south{ - pixel_x = 20; - id = "AI" - }, /obj/machinery/door/window/brigdoor/right/directional/north{ name = "Primary AI Core Access"; req_access = list("ai_upload") }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ffh" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 1 @@ -18089,7 +17845,7 @@ dir = 8 }, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "fhv" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 6 @@ -18174,7 +17930,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "fhM" = ( /obj/machinery/door/airlock/public/glass{ name = "Library" @@ -18226,7 +17982,7 @@ }, /obj/machinery/light/directional/west, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "fiS" = ( /obj/machinery/door/airlock/maintenance_hatch{ name = "Public Garden Maintenance Hatch" @@ -18539,6 +18295,7 @@ /turf/open/floor/engine, /area/station/engineering/supermatter/room) "fnZ" = ( +/obj/effect/landmark/start/depsec/science, /turf/open/floor/iron, /area/station/security/checkpoint/science) "fof" = ( @@ -18572,7 +18329,7 @@ dir = 8 }, /obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/security/brig, @@ -19355,7 +19112,7 @@ }, /obj/machinery/firealarm/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "fEZ" = ( /obj/structure/noticeboard/directional/north, /obj/item/fish_tank/lawyer, @@ -19446,7 +19203,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "fFO" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/landmark/navigate_destination/disposals, @@ -19541,7 +19298,7 @@ freerange = 1 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "fHV" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/neutral/filled/line{ @@ -19722,11 +19479,9 @@ anchored = 1 }, /obj/effect/turf_decal/bot, -/obj/structure/sign/warning/vacuum/external{ - pixel_y = 32 - }, +/obj/structure/sign/warning/vacuum/external/directional/north, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "fLE" = ( /obj/structure/table, /obj/machinery/camera/directional/north{ @@ -19817,7 +19572,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "fMQ" = ( /obj/machinery/air_sensor/ordnance_burn_chamber, /turf/open/floor/engine/vacuum, @@ -20233,7 +19988,7 @@ dir = 1 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "fVN" = ( /obj/machinery/door/airlock/hatch{ name = "Emergency Exit" @@ -20338,10 +20093,7 @@ /turf/open/floor/wood/large, /area/station/service/barber) "fXf" = ( -/obj/structure/sign/warning/vacuum/external{ - pixel_y = 32 - }, -/obj/effect/spawner/structure/window/reinforced, +/obj/structure/sign/warning/vacuum/external/directional/west, /turf/open/floor/plating, /area/station/hallway/secondary/entry) "fXl" = ( @@ -20422,7 +20174,7 @@ }, /obj/machinery/status_display/ai/directional/east, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "fYB" = ( /obj/effect/turf_decal/sand/plating, /turf/open/floor/catwalk_floor, @@ -20771,7 +20523,7 @@ /obj/effect/spawner/round_default_module, /obj/machinery/camera/motion/directional/east, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "gfX" = ( /obj/structure/fluff/iced_abductor, /turf/open/misc/asteroid/airless, @@ -20808,7 +20560,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/spawner/random/armory/barrier_grenades, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ggH" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 1 @@ -20919,6 +20671,7 @@ /obj/effect/turf_decal/trimline/neutral/corner{ dir = 1 }, +/obj/structure/sign/departments/cargo/directional/north, /turf/open/floor/iron, /area/station/hallway/primary/tram/right) "giT" = ( @@ -21077,9 +20830,6 @@ /obj/machinery/door/airlock/medical/glass{ name = "Treatment Center" }, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 }, @@ -21088,6 +20838,9 @@ /obj/machinery/duct, /obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 4 + }, /turf/open/floor/iron/white, /area/station/medical/treatment_center) "glc" = ( @@ -21108,30 +20861,9 @@ /turf/open/floor/plating, /area/station/science/xenobiology) "glv" = ( -/obj/structure/sign/directions/supply{ - dir = 1; - pixel_y = -28 - }, -/obj/structure/sign/directions/security{ - dir = 8; - pixel_y = -34 - }, -/obj/structure/sign/directions/command{ - dir = 8; - pixel_y = -40 - }, -/obj/structure/sign/directions/vault{ - dir = 8; - pixel_y = -22 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/trimline/tram/filled/line, -/obj/effect/turf_decal/trimline/tram/filled/warning, -/turf/open/floor/iron, -/area/station/hallway/primary/tram/right) +/obj/structure/sign/warning/electric_shock, +/turf/closed/wall/r_wall, +/area/station/maintenance/tram/right) "glP" = ( /obj/structure/chair/plastic, /turf/open/floor/eighties/red, @@ -21262,27 +20994,22 @@ /turf/open/floor/carpet, /area/station/medical/psychology) "gnK" = ( -/obj/structure/sign/directions/evac{ - dir = 4; - pixel_y = -28 - }, -/obj/structure/sign/directions/medical{ - pixel_y = -34 +/obj/structure/sign/directions/vault{ + dir = 8; + pixel_y = 7 }, -/obj/structure/sign/directions/engineering{ - pixel_y = -40 +/obj/structure/sign/directions/command{ + dir = 8; + pixel_y = 14 }, -/obj/structure/sign/directions/upload{ - dir = 4; - pixel_y = -22 +/obj/structure/sign/directions/security{ + dir = 8; + pixel_y = -7 }, -/obj/structure/disposalpipe/segment{ +/obj/structure/sign/directions/supply{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/trimline/tram/filled/line, -/obj/effect/turf_decal/trimline/tram/filled/warning, -/turf/open/floor/iron, +/turf/closed/wall, /area/station/hallway/primary/tram/center) "gnL" = ( /obj/effect/turf_decal/trimline/red/filled/line, @@ -21480,7 +21207,7 @@ dir = 5 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "gsu" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -21581,7 +21308,7 @@ c_tag = "Secure - AI Lower Ring Access" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "gul" = ( /obj/structure/disposalpipe/segment{ dir = 9 @@ -21679,7 +21406,8 @@ /area/station/hallway/primary/tram/left) "gwy" = ( /obj/structure/sign/warning/no_smoking{ - pixel_x = -28 + pixel_x = -28; + dir = 8 }, /obj/effect/decal/cleanable/dirt, /obj/machinery/computer/atmos_control/nocontrol/incinerator{ @@ -21733,7 +21461,7 @@ /obj/machinery/flasher/portable, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "gxm" = ( /obj/effect/turf_decal/trimline/neutral/filled/corner{ dir = 8 @@ -21818,9 +21546,6 @@ dir = 1 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, -/obj/machinery/status_display/ai/directional/west{ - pixel_y = 32 - }, /turf/open/floor/engine, /area/station/engineering/supermatter/room) "gyN" = ( @@ -21860,7 +21585,7 @@ }, /obj/effect/mapping_helpers/airlock/access/all/command/minisat, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "gzY" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 10 @@ -21874,7 +21599,8 @@ dir = 8 }, /obj/structure/sign/warning/engine_safety{ - pixel_x = -32 + pixel_x = -32; + dir = 8 }, /turf/open/floor/iron, /area/station/engineering/break_room) @@ -22176,7 +21902,7 @@ /area/station/science/research) "gFf" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "gFk" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 4 @@ -22357,6 +22083,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/orange/visible, /obj/machinery/light/directional/east, +/obj/machinery/status_display/evac/directional/east, /turf/open/floor/engine, /area/station/engineering/supermatter/room) "gJs" = ( @@ -22528,7 +22255,7 @@ /area/station/medical/medbay/central) "gNm" = ( /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "gNn" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -22639,7 +22366,7 @@ dir = 8 }, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "gOA" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 @@ -22674,7 +22401,7 @@ /obj/effect/mapping_helpers/airlock/access/all/science/general, /obj/effect/mapping_helpers/airlock/cyclelink_helper, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/iron/white/side, /area/station/science/research) "gOX" = ( @@ -22983,7 +22710,7 @@ c_tag = "Secure - AI Upper Ring North" }, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "gVu" = ( /obj/effect/turf_decal/trimline/red/filled/line, /obj/structure/table, @@ -23068,7 +22795,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "gWD" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment{ @@ -23212,7 +22939,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "hae" = ( /obj/machinery/duct, /obj/structure/cable, @@ -23435,7 +23162,7 @@ /turf/open/floor/iron/dark/side{ dir = 8 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "heS" = ( /obj/machinery/holopad, /obj/effect/turf_decal/bot, @@ -23479,7 +23206,7 @@ c_tag = "Secure - AI Upper Ring West" }, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "hft" = ( /obj/structure/bed{ dir = 8 @@ -23526,7 +23253,7 @@ "hgn" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "hgG" = ( /obj/structure/sign/warning/secure_area/directional/north, /obj/structure/disposalpipe/segment{ @@ -23552,7 +23279,7 @@ /obj/machinery/power/smes/super/full, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "hht" = ( /obj/effect/landmark/event_spawn, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -23606,7 +23333,7 @@ dir = 4 }, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "hif" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 1 @@ -23867,7 +23594,7 @@ pixel_y = -1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "hlB" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/neutral/filled/line, @@ -24186,7 +23913,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "htr" = ( /obj/effect/turf_decal/delivery, /obj/machinery/door/poddoor/preopen{ @@ -24344,15 +24071,6 @@ }, /turf/open/floor/iron/showroomfloor, /area/station/security/warden) -"hwA" = ( -/obj/machinery/conveyor_switch/oneway{ - id = "SalvageProcess"; - name = "Salvage Processor"; - pixel_x = 2; - pixel_y = 2 - }, -/turf/open/floor/plating, -/area/station/salvage_bay) "hwM" = ( /obj/effect/turf_decal/bot, /obj/machinery/requests_console/directional/west{ @@ -24409,7 +24127,7 @@ /area/station/command/teleporter) "hzN" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "hzQ" = ( /obj/structure/closet/firecloset, /obj/effect/turf_decal/stripes/line{ @@ -24424,10 +24142,6 @@ /obj/machinery/airalarm/directional/south, /turf/open/floor/iron, /area/station/command/gateway) -"hAy" = ( -/obj/effect/turf_decal/sand, -/turf/open/floor/iron, -/area/station/salvage_bay) "hAD" = ( /turf/open/floor/iron/freezer, /area/station/commons/toilet) @@ -24511,7 +24225,7 @@ c_tag = "Secure - AI Upper Ring South" }, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "hBK" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 10 @@ -24536,11 +24250,6 @@ /obj/machinery/vending/cigarette, /turf/open/floor/iron/cafeteria, /area/station/science/breakroom) -"hCx" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/railing, -/turf/open/floor/plating/reinforced/airless, -/area/space/nearstation) "hCA" = ( /obj/machinery/chem_master/condimaster{ name = "HoochMaster Deluxe"; @@ -24765,7 +24474,17 @@ /obj/item/pen, /obj/machinery/firealarm/directional/north, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) +"hGc" = ( +/obj/effect/turf_decal/delivery, +/obj/machinery/door/poddoor/preopen{ + name = "Bridge Blast Door"; + id = "bunkermodeactivated" + }, +/obj/machinery/door/firedoor, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/iron, +/area/station/command/bridge) "hGd" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 8 @@ -24951,7 +24670,7 @@ /area/station/engineering/main) "hJl" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "hJA" = ( /obj/machinery/atmospherics/pipe/smart/simple/purple/visible, /obj/machinery/meter, @@ -25065,7 +24784,7 @@ /obj/structure/window/reinforced/spawner/directional/south, /obj/effect/spawner/random/armory/shotgun, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "hMs" = ( /obj/machinery/holopad, /obj/effect/turf_decal/bot, @@ -25105,15 +24824,12 @@ /turf/open/floor/iron, /area/station/engineering/engine_smes) "hMQ" = ( -/obj/structure/sign/warning/secure_area{ - name = "HIGH SECURITY STORAGE"; - pixel_y = 32 - }, +/obj/structure/sign/warning/secure_area/directional/north, /obj/effect/turf_decal/tile/neutral/half/contrasted{ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "hNb" = ( /obj/structure/table/wood, /obj/item/papercutter{ @@ -25261,15 +24977,12 @@ }, /turf/open/floor/iron, /area/station/hallway/secondary/exit) -"hPp" = ( -/turf/open/misc/asteroid, -/area/station/salvage_bay) "hPs" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "hPA" = ( /obj/structure/chair/office{ dir = 1 @@ -25564,7 +25277,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "hUQ" = ( /obj/machinery/teleport/station, /obj/structure/cable, @@ -25653,7 +25366,7 @@ /obj/machinery/status_display/ai/directional/north, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "hXK" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 1 @@ -25839,7 +25552,7 @@ freerange = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "hZL" = ( /obj/machinery/disposal/bin, /obj/effect/turf_decal/trimline/yellow/filled/line{ @@ -26021,7 +25734,7 @@ dir = 10 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "idg" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 1 @@ -26029,12 +25742,6 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron, /area/station/engineering/atmos) -"idu" = ( -/obj/effect/turf_decal/sand/plating, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/salvage_bay) "idz" = ( /obj/effect/turf_decal/trimline/green/corner, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -26102,15 +25809,6 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/security/checkpoint/science) -"ife" = ( -/obj/structure/railing, -/obj/structure/railing{ - dir = 1 - }, -/turf/open/floor/iron/stairs{ - dir = 8 - }, -/area/station/salvage_bay) "ifg" = ( /obj/structure/railing{ dir = 4 @@ -26138,7 +25836,7 @@ name = "Dormatories Maintenance Hatch" }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, @@ -26243,7 +25941,7 @@ /obj/machinery/status_display/evac/directional/north, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ihl" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 5 @@ -26503,7 +26201,7 @@ name = "Recreation Area Maintenance Access" }, /obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -26654,7 +26352,7 @@ pixel_y = 20 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "iqZ" = ( /obj/structure/railing, /obj/machinery/door/window/right/directional/north{ @@ -26683,7 +26381,7 @@ pixel_y = -8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "irv" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 9 @@ -26831,7 +26529,7 @@ dir = 10 }, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "iue" = ( /obj/structure/table/glass, /obj/item/radio/intercom, @@ -26986,7 +26684,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "iwV" = ( /obj/effect/turf_decal/trimline/white/filled/line{ dir = 4 @@ -27016,7 +26714,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/decal/cleanable/dirt, @@ -27049,7 +26747,7 @@ }, /obj/machinery/status_display/evac/directional/east, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "ixK" = ( /obj/machinery/airalarm/directional/north, /obj/machinery/duct, @@ -27513,7 +27211,7 @@ dir = 6 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "iHI" = ( /obj/machinery/door/airlock/public/glass{ name = "Courtroom" @@ -27574,21 +27272,6 @@ /turf/open/floor/iron, /area/station/engineering/engine_smes) "iIS" = ( -/obj/structure/sign/directions/evac{ - dir = 4; - pixel_y = -28 - }, -/obj/structure/sign/directions/medical{ - dir = 8; - pixel_y = -34 - }, -/obj/structure/sign/directions/engineering{ - dir = 8; - pixel_y = -40 - }, -/obj/structure/sign/directions/upload{ - pixel_y = -22 - }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/trimline/tram/filled/line, @@ -27624,7 +27307,7 @@ /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "iKg" = ( /obj/effect/turf_decal/trimline/green/filled/corner{ dir = 1 @@ -27849,16 +27532,6 @@ }, /turf/open/floor/iron, /area/station/security/processing) -"iOa" = ( -/obj/structure/railing{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/salvage_bay) "iOc" = ( /obj/machinery/stasis{ dir = 8 @@ -27876,7 +27549,8 @@ /obj/machinery/button/flasher{ pixel_x = 23; pixel_y = -10; - id = "hopflash" + id = "hopflash"; + dir = 4 }, /turf/open/floor/wood, /area/station/command/heads_quarters/hop) @@ -28090,7 +27764,7 @@ }, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "iSt" = ( /obj/structure/table/wood, /obj/item/staff/broom, @@ -28175,7 +27849,7 @@ }, /obj/item/kirbyplants/photosynthetic, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "iTO" = ( /obj/structure/window/spawner/directional/east, /obj/structure/window/spawner/directional/west, @@ -28256,7 +27930,6 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/secondary/exit) "iUE" = ( @@ -28275,7 +27948,7 @@ /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "iVj" = ( /obj/effect/turf_decal/trimline/red/filled/corner{ dir = 1 @@ -28382,12 +28055,12 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "iWQ" = ( /obj/structure/chair/office{ dir = 4 }, -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /turf/open/floor/carpet, /area/station/commons/vacant_room/office) "iXx" = ( @@ -28442,6 +28115,14 @@ }, /turf/open/floor/plating/airless, /area/station/asteroid) +"iYD" = ( +/obj/machinery/flasher/directional/east{ + id = "AI"; + pixel_x = 22; + pixel_y = -5 + }, +/turf/open/floor/circuit, +/area/station/ai/satellite/chamber) "iYO" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -28735,7 +28416,7 @@ name = "Vacant Office A" }, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -28755,7 +28436,7 @@ /obj/machinery/power/apc/auto_name/directional/east, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "jdt" = ( /obj/machinery/airalarm/directional/north, /obj/effect/turf_decal/trimline/red/filled/line{ @@ -28852,7 +28533,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "jeS" = ( /obj/effect/turf_decal/trimline/neutral/filled/line{ dir = 6 @@ -28892,7 +28573,7 @@ "jfu" = ( /obj/structure/cable, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "jfD" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/yellow/visible, /turf/open/floor/engine, @@ -28936,7 +28617,7 @@ "jgq" = ( /obj/structure/railing/corner, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "jgs" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -28948,11 +28629,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/station/science/robotics/lab) -"jgv" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/bot, -/turf/open/floor/plating/airless, -/area/station/asteroid) "jgy" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt, @@ -29056,7 +28732,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "jim" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/smart/simple/green/visible{ @@ -29099,9 +28775,6 @@ dir = 1 }, /area/station/security/execution/transfer) -"jiO" = ( -/turf/closed/mineral/random/stationside/asteroid/porus, -/area/station/salvage_bay) "jiQ" = ( /turf/closed/wall, /area/station/science/xenobiology) @@ -29182,7 +28855,7 @@ }, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "jkn" = ( /obj/machinery/door/airlock{ name = "Custodial Closet" @@ -29263,7 +28936,7 @@ /obj/effect/turf_decal/stripes/end, /obj/structure/cable/multilayer/multiz, /turf/open/floor/plating, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "jlo" = ( /obj/machinery/conveyor/inverted{ dir = 9; @@ -29283,7 +28956,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/spawner/random/armory/dragnet, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "jlX" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 @@ -29362,7 +29035,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "jnq" = ( /turf/closed/wall, /area/station/maintenance/central/lesser) @@ -29550,16 +29223,12 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron/white, /area/station/science/ordnance/office) -"jpZ" = ( -/obj/machinery/door/firedoor, -/turf/open/floor/iron/stairs/right, -/area/station/salvage_bay) "jqs" = ( /obj/effect/turf_decal/trimline/yellow/warning{ dir = 8 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "jqv" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, @@ -29676,13 +29345,13 @@ }, /obj/effect/mapping_helpers/airlock/access/all/command/minisat, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "jrR" = ( /obj/effect/turf_decal/trimline/white/line{ dir = 5 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "jst" = ( /obj/machinery/airalarm/directional/east, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -29807,9 +29476,6 @@ /obj/effect/landmark/event_spawn, /turf/open/floor/iron, /area/station/escapepodbay) -"jum" = ( -/turf/closed/wall/r_wall, -/area/station/salvage_bay) "jur" = ( /obj/effect/turf_decal/trimline/brown/filled/line, /obj/effect/turf_decal/siding/thinplating{ @@ -29820,13 +29486,9 @@ "jus" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/flasher/directional/west{ - pixel_y = -26; - id = "AI" - }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "juw" = ( /obj/effect/turf_decal/trimline/neutral/filled/line{ dir = 8 @@ -29853,9 +29515,9 @@ /obj/structure/window/reinforced/spawner/directional/west, /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/cable, -/obj/effect/spawner/random/armory/laser_gun, +/obj/effect/spawner/random/armory/pick_laser_loadout, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "juV" = ( /obj/structure/chair{ dir = 8 @@ -30074,7 +29736,7 @@ name = "Science Maintenance Hatch" }, /obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -30283,13 +29945,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/command/heads_quarters/qm) -"jBf" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "SalvageProcess" - }, -/turf/open/floor/plating, -/area/station/salvage_bay) "jBk" = ( /obj/effect/turf_decal/trimline/neutral/filled/corner, /obj/structure/cable, @@ -30546,10 +30201,10 @@ dir = 1 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "jFR" = ( /turf/open/floor/iron/grimy, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "jGi" = ( /obj/effect/turf_decal/siding/thinplating, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -30623,7 +30278,7 @@ "jHc" = ( /obj/structure/rack, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "jHd" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/trimline/neutral/filled/line{ @@ -30676,7 +30331,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "jIy" = ( /obj/structure/rack, /obj/effect/spawner/random/techstorage/rnd_all, @@ -30724,7 +30379,7 @@ /area/station/cargo/sorting) "jJv" = ( /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "jJz" = ( /obj/structure/chair{ dir = 8 @@ -30781,7 +30436,7 @@ /area/station/cargo/storage) "jJX" = ( /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/machinery/door/airlock/maintenance_hatch{ @@ -30877,7 +30532,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "jLy" = ( /obj/effect/turf_decal/trimline/yellow/filled/corner{ dir = 4 @@ -30911,14 +30566,12 @@ /area/station/engineering/atmos) "jMe" = ( /obj/effect/turf_decal/trimline/red/filled/line, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, /obj/machinery/camera/directional/south{ network = list("ss13","Security"); c_tag = "Civilian - Security Outpost" }, /obj/machinery/light/directional/south, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron, /area/station/security/checkpoint/arrivals) "jMo" = ( @@ -31136,14 +30789,6 @@ }, /turf/open/floor/plating, /area/station/science/lab) -"jRA" = ( -/obj/structure/girder/reinforced, -/obj/structure/shuttle_decoration/wall_plate/armor{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating/airless, -/area/station/asteroid) "jRS" = ( /obj/structure/closet/secure_closet/chemical, /obj/effect/turf_decal/tile/yellow/fourcorners, @@ -31281,7 +30926,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/any/command/minisat, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "jUW" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/bridge_pipe/green/visible{ @@ -31307,15 +30952,12 @@ /turf/open/floor/iron/white, /area/station/medical/medbay/central) "jVG" = ( -/obj/structure/sign/warning/secure_area{ - name = "HIGH SECURITY STORAGE"; - pixel_y = 32 - }, +/obj/structure/sign/warning/secure_area/directional/north, /obj/effect/turf_decal/tile/neutral/half/contrasted{ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "jVT" = ( /obj/structure/table, /obj/effect/turf_decal/trimline/neutral/filled/line{ @@ -31347,7 +30989,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "jWg" = ( /obj/effect/turf_decal/trimline/neutral/filled/line, /obj/machinery/camera/directional/south{ @@ -31384,7 +31026,7 @@ dir = 5 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "jWs" = ( /turf/closed/wall/r_wall, /area/station/security/execution/transfer) @@ -31554,7 +31196,7 @@ /area/station/service/chapel/office) "jYf" = ( /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "jYj" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 8 @@ -31569,7 +31211,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "jYr" = ( /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/door/airlock/maintenance_hatch{ @@ -31577,7 +31219,7 @@ }, /obj/machinery/duct, /obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/structure/cable, @@ -31765,14 +31407,6 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/station/security/execution/transfer) -"kba" = ( -/obj/effect/turf_decal/sand/plating, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/light/red/dim/directional/east, -/obj/machinery/firealarm/directional/east, -/turf/open/floor/plating, -/area/station/salvage_bay) "kbc" = ( /obj/effect/turf_decal/trimline/white/line{ dir = 10 @@ -31784,7 +31418,7 @@ pixel_y = 20 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "kbi" = ( /obj/effect/turf_decal/siding/thinplating{ dir = 4 @@ -32102,7 +31736,7 @@ "keJ" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "keN" = ( /obj/item/radio/intercom/directional/east, /turf/open/floor/iron, @@ -32240,7 +31874,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "kgG" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -32330,6 +31964,9 @@ name = "Secure Medical Storage"; req_access = list("medical") }, +/obj/item/defibrillator/loaded{ + pixel_y = 6 + }, /obj/item/clothing/glasses/blindfold, /obj/item/clothing/glasses/blindfold, /obj/item/clothing/ears/earmuffs, @@ -32417,7 +32054,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/floor, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "kjH" = ( /obj/machinery/door/firedoor, /obj/effect/turf_decal/stripes/white/full, @@ -32480,7 +32117,8 @@ pixel_y = 9; id = "private_a"; specialfunctions = 4; - normaldoorcontrol = 1 + normaldoorcontrol = 1; + dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -32555,7 +32193,7 @@ /obj/machinery/suit_storage_unit/security, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "kli" = ( /obj/effect/turf_decal/tile/red/opposingcorners, /obj/effect/turf_decal/tile/blue/opposingcorners{ @@ -32596,7 +32234,7 @@ }, /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/structure/cable, /turf/open/floor/catwalk_floor, /area/station/hallway/primary/tram/center) @@ -32736,6 +32374,15 @@ /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 10 }, +/obj/structure/rack, +/obj/item/gps/mining{ + pixel_x = -5; + pixel_y = -2 + }, +/obj/item/gps/mining{ + pixel_x = -2; + pixel_y = 1 + }, /turf/open/floor/iron, /area/station/hallway/secondary/exit) "kpd" = ( @@ -33116,12 +32763,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/commons/fitness/recreation) -"ktP" = ( -/obj/machinery/computer/mech_bay_power_console{ - dir = 4 - }, -/turf/open/floor/plating, -/area/station/salvage_bay) "kum" = ( /obj/effect/landmark/event_spawn, /obj/structure/cable, @@ -33199,7 +32840,7 @@ "kwe" = ( /obj/structure/ladder, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "kwk" = ( /obj/effect/turf_decal/trimline/green/filled/corner{ dir = 4 @@ -33238,7 +32879,7 @@ /obj/structure/window/reinforced/spawner/directional/south, /obj/effect/spawner/random/armory/disablers, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "kwD" = ( /obj/effect/landmark/start/cargo_technician, /turf/open/floor/glass, @@ -33287,12 +32928,6 @@ /obj/machinery/light/small/dim/directional/south, /turf/open/floor/iron, /area/station/maintenance/tram/left) -"kxU" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, -/turf/open/misc/asteroid, -/area/station/salvage_bay) "kxV" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/effect/turf_decal/stripes/line{ @@ -33423,7 +33058,7 @@ /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "kzT" = ( /obj/effect/spawner/structure/window/reinforced/tinted, /turf/open/floor/plating, @@ -33626,7 +33261,7 @@ /turf/open/floor/iron/dark/corner{ dir = 8 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "kDF" = ( /obj/structure/closet/wardrobe/miner, /obj/structure/disposalpipe/segment, @@ -34131,9 +33766,6 @@ /obj/effect/mapping_helpers/airlock/access/all/service/lawyer, /turf/open/floor/wood, /area/station/service/lawoffice) -"kKT" = ( -/turf/open/floor/iron, -/area/station/salvage_bay) "kKV" = ( /obj/machinery/atmospherics/components/trinary/filter/atmos/flipped/co2, /turf/open/floor/iron/dark, @@ -34152,10 +33784,6 @@ "kLz" = ( /turf/closed/wall/r_wall, /area/station/security/prison/work) -"kLF" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/catwalk_floor, -/area/station/salvage_bay) "kLI" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 @@ -34442,7 +34070,7 @@ /turf/open/floor/iron/dark/side{ dir = 4 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "kPC" = ( /turf/closed/wall/rust, /area/station/security/prison/workout) @@ -34497,7 +34125,7 @@ /obj/machinery/cell_charger, /obj/item/stock_parts/power_store/cell/high, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "kQR" = ( /obj/structure/flora/bush/lavendergrass/style_random, /obj/item/food/grown/banana/bunch{ @@ -35056,7 +34684,7 @@ /obj/effect/mapping_helpers/airlock/access/any/engineering/tcoms, /obj/effect/mapping_helpers/airlock/access/any/command/ai_upload, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "kZB" = ( /obj/effect/landmark/start/hangover, /obj/structure/cable, @@ -35105,7 +34733,7 @@ c_tag = "Secure - AI Antechamber East" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "kZM" = ( /obj/machinery/holopad, /obj/effect/turf_decal/box/white{ @@ -35263,13 +34891,6 @@ }, /turf/open/floor/plating, /area/station/cargo/warehouse) -"ldP" = ( -/obj/machinery/light/dim/directional/north, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 - }, -/turf/open/floor/plating, -/area/station/salvage_bay) "lej" = ( /obj/effect/turf_decal/trimline/tram/filled/line{ dir = 1 @@ -35319,14 +34940,17 @@ }, /obj/machinery/button/door/incinerator_vent_ordmix{ pixel_x = 24; - pixel_y = 8 + pixel_y = 8; + dir = 4 }, /obj/machinery/button/ignition/incinerator/ordmix{ pixel_x = 24; - pixel_y = -6 + pixel_y = -6; + dir = 4 }, /obj/machinery/airlock_controller/incinerator_ordmix{ - pixel_x = -24 + pixel_x = -24; + dir = 4 }, /obj/effect/mapping_helpers/airlock/locked, /turf/open/floor/engine, @@ -35402,8 +35026,8 @@ "lgP" = ( /obj/effect/turf_decal/stripes/corner, /obj/structure/rack, -/obj/item/tank/jetpack/oxygen, -/obj/item/tank/jetpack/oxygen{ +/obj/item/tank/jetpack, +/obj/item/tank/jetpack{ pixel_x = 3; pixel_y = 3 }, @@ -35474,7 +35098,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "liN" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron, @@ -35487,7 +35111,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "lje" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, @@ -35788,7 +35412,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "lns" = ( /obj/effect/turf_decal/trimline/neutral/filled/warning{ dir = 8 @@ -35889,7 +35513,7 @@ }, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "loG" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 9 @@ -36010,7 +35634,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "lqS" = ( /obj/structure/table/wood, /obj/item/book/bible, @@ -36081,13 +35705,13 @@ /obj/effect/mapping_helpers/requests_console/assistance, /obj/structure/cable/multilayer/connected, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lry" = ( /obj/effect/turf_decal/tile/neutral/half/contrasted{ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "lrA" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 8 @@ -36404,7 +36028,7 @@ /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lxm" = ( /obj/effect/spawner/structure/window, /turf/open/floor/plating, @@ -36549,7 +36173,7 @@ /obj/effect/spawner/random/armory/bulletproof_armor, /obj/effect/spawner/random/armory/bulletproof_helmet, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "lyK" = ( /obj/machinery/atmospherics/pipe/smart/simple/dark/visible{ dir = 4 @@ -36657,7 +36281,7 @@ /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, /turf/open/floor/plating, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "lAO" = ( /obj/machinery/atmospherics/pipe/smart/manifold/violet/visible{ dir = 4 @@ -36785,12 +36409,6 @@ }, /turf/open/floor/iron/kitchen_coldroom, /area/station/medical/coldroom) -"lDn" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/hallway/secondary/exit) "lDo" = ( /obj/structure/table, /obj/item/storage/box/prisoner, @@ -36989,12 +36607,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/service/bar) -"lGi" = ( -/obj/structure/railing{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/salvage_bay) "lGp" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -37042,10 +36654,10 @@ /obj/machinery/turretid{ name = "AI Antechamber turret control"; pixel_y = -25; - control_area = "/area/station/ai_monitored/turret_protected/aisat_interior" + control_area = "/area/station/ai/satellite/interior" }, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "lHp" = ( /obj/effect/turf_decal/sand/plating, /obj/machinery/light/small/directional/north, @@ -37177,9 +36789,7 @@ /turf/open/floor/iron, /area/station/cargo/miningdock) "lJu" = ( -/obj/structure/sign/warning/vacuum/external{ - pixel_x = -32 - }, +/obj/structure/sign/warning/vacuum/external/directional/west, /obj/effect/turf_decal/trimline/red/filled/line{ dir = 9 }, @@ -37225,7 +36835,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "lKE" = ( /obj/structure/table, /obj/item/storage/box/donkpockets, @@ -37590,15 +37200,6 @@ "lQM" = ( /turf/closed/wall/r_wall, /area/station/maintenance/port/central) -"lQO" = ( -/obj/machinery/door/airlock/grunge{ - name = "Salvage Oversight" - }, -/obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) "lQT" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 6 @@ -37659,11 +37260,6 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/service/hydroponics/garden) -"lRV" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/salvage_bay) "lSo" = ( /turf/open/floor/glass/reinforced, /area/station/security/brig) @@ -37701,7 +37297,7 @@ dir = 1 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lSI" = ( /obj/machinery/newscaster/directional/east, /obj/machinery/conveyor_switch/oneway{ @@ -37907,13 +37503,6 @@ }, /turf/open/floor/catwalk_floor, /area/station/hallway/primary/tram/right) -"lVf" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/stairs{ - dir = 1 - }, -/area/station/salvage_bay) "lVi" = ( /turf/closed/wall, /area/station/maintenance/department/science) @@ -38190,10 +37779,6 @@ /obj/structure/sign/tram_plate/directional/south, /turf/open/openspace, /area/station/hallway/primary/tram/center) -"maw" = ( -/obj/structure/shuttle_decoration/headlight/directional/west, -/turf/closed/wall/r_wall, -/area/space/nearstation) "max" = ( /obj/effect/turf_decal/trimline/red/filled/corner, /obj/effect/turf_decal/trimline/red/filled/line{ @@ -38203,7 +37788,8 @@ pixel_x = 9; pixel_y = 27; id = "permafrontdoor"; - req_access = list("brig") + req_access = list("brig"); + dir = 1 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -38320,10 +37906,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/showroomfloor, /area/station/security/warden) -"mcd" = ( -/obj/structure/lattice/catwalk, -/turf/open/space/openspace, -/area/space/nearstation) "mcg" = ( /obj/machinery/vending/boozeomat, /turf/open/floor/wood, @@ -38349,7 +37931,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "mcX" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -38382,13 +37964,13 @@ dir = 9 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "mdr" = ( /obj/effect/turf_decal/trimline/yellow/warning{ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "mdD" = ( /obj/effect/turf_decal/siding/thinplating, /obj/effect/turf_decal/siding/thinplating{ @@ -38418,7 +38000,7 @@ /area/station/maintenance/tram/left) "mdV" = ( /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "meb" = ( /obj/effect/landmark/carpspawn, /turf/open/space/openspace, @@ -38571,7 +38153,6 @@ listening = 0; freerange = 1 }, -/obj/effect/landmark/start/ai, /obj/machinery/button/door/directional/south{ name = "AI Core Shutters Control"; pixel_x = 24; @@ -38579,8 +38160,9 @@ req_access = list("ai_upload") }, /obj/structure/cable, +/obj/effect/landmark/start/ai, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "mgj" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 @@ -38671,11 +38253,6 @@ }, /turf/open/floor/iron, /area/station/command/heads_quarters/qm) -"mie" = ( -/obj/effect/spawner/random/structure/grille, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating/airless, -/area/station/asteroid) "min" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 4 @@ -38781,10 +38358,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood, /area/station/commons/dorms) -"mky" = ( -/obj/structure/lattice/catwalk, -/turf/open/space/basic, -/area/space/nearstation) "mkA" = ( /obj/structure/sign/poster/official/random/directional/south, /turf/open/floor/wood/large, @@ -38794,11 +38367,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood/large, /area/station/service/library) -"mkZ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/catwalk_floor, -/area/station/salvage_bay) "mld" = ( /obj/effect/landmark/navigate_destination/dockescpod2, /obj/structure/cable, @@ -38920,11 +38488,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/cargo/miningdock) -"mnQ" = ( -/obj/structure/table, -/obj/item/storage/cans/sixbeer, -/turf/open/floor/iron, -/area/station/salvage_bay) "mon" = ( /mob/living/basic/sloth/paperwork, /turf/open/floor/glass, @@ -39136,10 +38699,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"mrD" = ( -/obj/effect/turf_decal/recharge, -/turf/open/floor/plating, -/area/station/salvage_bay) "mrF" = ( /obj/effect/turf_decal/siding/thinplating{ dir = 4 @@ -39153,7 +38712,7 @@ c_tag = "Secure - AI Upper Ring Access" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "mrS" = ( /obj/structure/chair{ dir = 8 @@ -39356,7 +38915,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "mxf" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 10 @@ -39370,7 +38929,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "mxw" = ( /obj/machinery/door/airlock/research{ name = "Chemical Storage" @@ -39733,7 +39292,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "mEd" = ( /obj/structure/railing{ dir = 1 @@ -39836,7 +39395,7 @@ "mGl" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "mGo" = ( /obj/structure/railing, /obj/machinery/door/firedoor/border_only, @@ -39896,7 +39455,7 @@ c_tag = "Secure - AI Antechamber West" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "mHc" = ( /turf/open/floor/iron/checker, /area/station/commons/lounge) @@ -39915,7 +39474,7 @@ }, /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/iron/smooth, @@ -40148,7 +39707,7 @@ /obj/vehicle/ridden/secway, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "mKQ" = ( /obj/machinery/dna_infuser, /obj/structure/extinguisher_cabinet/directional/east, @@ -40347,7 +39906,7 @@ dir = 8 }, /obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/security/brig, @@ -40677,7 +40236,7 @@ dir = 4 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "mYw" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, @@ -40690,7 +40249,7 @@ }, /obj/machinery/newscaster/directional/north, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "mYI" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -40849,7 +40408,7 @@ /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "nbI" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/preopen{ @@ -40858,10 +40417,6 @@ }, /turf/open/floor/plating, /area/station/science/xenobiology) -"nbL" = ( -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating/reinforced/airless, -/area/space/nearstation) "nca" = ( /turf/open/openspace, /area/station/security/brig) @@ -40897,12 +40452,6 @@ "ncF" = ( /turf/closed/wall, /area/station/maintenance/tram/left) -"ncI" = ( -/obj/effect/turf_decal/tile/dark/half{ - dir = 4 - }, -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) "ncT" = ( /obj/structure/cable, /obj/structure/disposalpipe/junction/flip{ @@ -40940,8 +40489,12 @@ /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/east, /obj/structure/cable, +/obj/machinery/flasher/directional/south{ + id = "AI"; + pixel_x = -10 + }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ndz" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -41151,19 +40704,13 @@ /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/unres, /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/airlock/unres, /turf/open/floor/iron/white, /area/station/medical/medbay/lobby) -"nhf" = ( -/obj/effect/turf_decal/sand/plating, -/obj/structure/cable, -/obj/machinery/firealarm/directional/north, -/turf/open/floor/plating, -/area/station/salvage_bay) "nhj" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -41313,7 +40860,7 @@ /area/station/solars/starboard/fore) "njC" = ( /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "njI" = ( /obj/effect/turf_decal/siding/thinplating/corner{ dir = 1 @@ -41359,7 +40906,8 @@ dir = 4 }, /obj/structure/sign/departments/security{ - pixel_x = -32 + pixel_x = -32; + dir = 8 }, /obj/machinery/light/directional/west, /turf/open/floor/iron, @@ -41489,7 +41037,7 @@ /turf/open/floor/iron, /area/station/hallway/secondary/service) "nlF" = ( -/obj/machinery/computer/rdconsole{ +/obj/machinery/computer/rdconsole/unlocked{ dir = 8 }, /obj/structure/window/reinforced/spawner/directional/east, @@ -41640,13 +41188,6 @@ /obj/structure/lattice, /turf/open/openspace, /area/station/hallway/primary/tram/center) -"nnM" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/turf_decal/loading_area/red{ - dir = 8 - }, -/turf/open/floor/plating/airless, -/area/station/asteroid) "nnQ" = ( /obj/effect/turf_decal/siding/thinplating{ dir = 8 @@ -41800,7 +41341,7 @@ req_access = list("captain") }, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "nrh" = ( /obj/structure/table/glass, /obj/item/storage/fancy/coffee_cart_rack{ @@ -41836,11 +41377,6 @@ /obj/effect/turf_decal/tile/dark_blue/fourcorners, /turf/open/floor/iron/dark, /area/station/command/heads_quarters/captain/private) -"nrE" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/salvage_bay) "nrM" = ( /obj/machinery/door/airlock/mining/glass{ name = "Cargo Office" @@ -41900,7 +41436,7 @@ }, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "nsv" = ( /obj/machinery/camera/directional/north{ network = list("test","rd"); @@ -42038,7 +41574,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/light/floor, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "nwd" = ( /obj/effect/turf_decal/trimline/neutral/filled/line{ dir = 4 @@ -42447,7 +41983,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "nCe" = ( /turf/open/floor/iron, /area/station/security/courtroom) @@ -42536,32 +42072,22 @@ /turf/open/floor/plating, /area/station/hallway/primary/tram/center) "nEu" = ( -/obj/structure/sign/directions/supply{ - dir = 4; - pixel_y = 28 - }, -/obj/structure/sign/directions/security{ +/obj/structure/sign/directions/vault{ dir = 1; - pixel_y = 34 + pixel_y = 7 }, /obj/structure/sign/directions/command{ dir = 1; - pixel_y = 40 + pixel_y = -7 }, -/obj/structure/sign/directions/vault{ +/obj/structure/sign/directions/security{ dir = 1; - pixel_y = 22 + pixel_y = 14 }, -/obj/structure/disposalpipe/segment{ +/obj/structure/sign/directions/supply{ dir = 4 }, -/obj/effect/turf_decal/trimline/tram/filled/line{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/tram/filled/warning{ - dir = 1 - }, -/turf/open/floor/iron, +/turf/closed/wall, /area/station/hallway/primary/tram/left) "nEB" = ( /obj/effect/turf_decal/trimline/purple/filled/corner{ @@ -42822,22 +42348,6 @@ /turf/open/floor/iron, /area/station/hallway/secondary/command) "nKo" = ( -/obj/structure/sign/directions/evac{ - dir = 4; - pixel_y = -28 - }, -/obj/structure/sign/directions/medical{ - dir = 4; - pixel_y = -34 - }, -/obj/structure/sign/directions/engineering{ - dir = 4; - pixel_y = -40 - }, -/obj/structure/sign/directions/upload{ - dir = 4; - pixel_y = -22 - }, /obj/structure/disposalpipe/segment{ dir = 4 }, @@ -42868,6 +42378,7 @@ dir = 4 }, /obj/machinery/light/directional/east, +/obj/machinery/status_display/ai/directional/east, /turf/open/floor/engine, /area/station/engineering/supermatter/room) "nKU" = ( @@ -42960,10 +42471,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/smooth, /area/station/maintenance/central/greater) -"nMz" = ( -/obj/structure/sign/semiotic/storage, -/turf/closed/wall/r_wall, -/area/station/salvage_bay) "nMB" = ( /turf/open/floor/iron, /area/station/science/ordnance/testlab) @@ -43004,7 +42511,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "nNl" = ( /obj/structure/holosign/barrier/atmos/tram, /obj/structure/disposalpipe/segment{ @@ -43064,7 +42571,7 @@ name = "Tram Mechanical Room" }, /obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/iron/smooth, @@ -43073,14 +42580,6 @@ /obj/effect/landmark/event_spawn, /turf/open/floor/iron, /area/station/engineering/engine_smes) -"nOv" = ( -/obj/machinery/door/airlock/external, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 8 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) "nOB" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/structure/reagent_dispensers/watertank, @@ -43639,22 +43138,6 @@ /turf/open/floor/iron, /area/station/maintenance/disposal/incinerator) "nYq" = ( -/obj/structure/sign/directions/supply{ - dir = 4; - pixel_y = -28 - }, -/obj/structure/sign/directions/security{ - dir = 1; - pixel_y = -34 - }, -/obj/structure/sign/directions/command{ - dir = 1; - pixel_y = -40 - }, -/obj/structure/sign/directions/vault{ - dir = 1; - pixel_y = -22 - }, /obj/structure/disposalpipe/segment{ dir = 4 }, @@ -43694,7 +43177,7 @@ name = "Recreation Area Maintenance Hatch" }, /obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -43857,7 +43340,7 @@ /obj/structure/cable, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "obz" = ( /obj/machinery/door/firedoor, /obj/machinery/door/poddoor/preopen{ @@ -43948,7 +43431,7 @@ "odF" = ( /obj/machinery/airalarm/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "odH" = ( /obj/effect/turf_decal/siding/white{ dir = 1 @@ -44138,31 +43621,10 @@ /turf/open/floor/wood, /area/station/commons/dorms) "oiv" = ( -/obj/structure/sign/directions/supply{ - dir = 1; - pixel_y = 28 - }, -/obj/structure/sign/directions/security{ - dir = 8; - pixel_y = 34 - }, -/obj/structure/sign/directions/command{ - dir = 8; - pixel_y = 40 - }, -/obj/structure/sign/directions/vault{ - dir = 8; - pixel_y = 22 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/trimline/tram/filled/line{ - dir = 1 - }, -/obj/effect/turf_decal/trimline/tram/filled/warning{ - dir = 1 - }, -/obj/structure/disposalpipe/segment{ - dir = 4 +/obj/effect/turf_decal/trimline/purple/filled/line, +/obj/effect/turf_decal/trimline/neutral/filled/warning, +/obj/structure/sign/departments/science{ + pixel_y = -32 }, /turf/open/floor/iron, /area/station/hallway/primary/tram/right) @@ -44505,13 +43967,6 @@ }, /turf/open/space/openspace, /area/station/solars/port) -"ope" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/salvage_bay) "opT" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 4 @@ -44543,10 +43998,10 @@ "oqi" = ( /obj/machinery/airalarm/directional/west, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "oqp" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "oqy" = ( /obj/machinery/conveyor{ id = "cargolower" @@ -44752,7 +44207,7 @@ dir = 9 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ouE" = ( /obj/effect/turf_decal/trimline/brown/filled/corner{ dir = 4 @@ -44780,7 +44235,7 @@ dir = 8 }, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ouQ" = ( /obj/effect/turf_decal/siding/wood/corner, /turf/open/floor/wood, @@ -44944,11 +44399,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/catwalk_floor/iron, /area/station/security/prison) -"oxV" = ( -/obj/structure/girder/reinforced, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating/airless, -/area/station/asteroid) "oys" = ( /turf/closed/wall/r_wall, /area/station/maintenance/starboard/central) @@ -44975,13 +44425,6 @@ "oyR" = ( /turf/closed/mineral/random/stationside/asteroid/porus, /area/station/science/explab) -"oyX" = ( -/obj/structure/shuttle_decoration/wall_plate/armor{ - dir = 8 - }, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating/airless, -/area/space/nearstation) "ozd" = ( /obj/effect/turf_decal/trimline/yellow/filled/corner{ dir = 8 @@ -45023,7 +44466,6 @@ }, /obj/structure/table, /obj/item/folder/yellow, -/obj/item/radio/intercom/directional/south, /turf/open/floor/iron, /area/station/hallway/secondary/exit) "oAV" = ( @@ -45060,7 +44502,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "oCe" = ( /obj/structure/disposalpipe/segment{ dir = 10 @@ -45093,12 +44535,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/security/prison) -"oCm" = ( -/obj/effect/turf_decal/sand/plating, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/salvage_bay) "oCt" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/segment, @@ -45339,9 +44775,6 @@ }, /turf/open/floor/iron/white, /area/station/science/lab) -"oHf" = ( -/turf/closed/wall/r_wall, -/area/space/nearstation) "oHp" = ( /obj/structure/bookcase/random/nonfiction, /turf/open/floor/wood/large, @@ -45416,12 +44849,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/white, /area/station/medical/surgery/fore) -"oJD" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/sand, -/turf/open/floor/plating, -/area/station/salvage_bay) "oKe" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, @@ -45456,7 +44883,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "oLn" = ( /obj/effect/turf_decal/trimline/neutral/filled/line, /obj/effect/turf_decal/siding/thinplating{ @@ -45501,13 +44928,13 @@ /area/station/science/research) "oMI" = ( /turf/open/openspace, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "oMK" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "oMP" = ( /obj/machinery/firealarm/directional/south{ pixel_x = 3 @@ -45545,7 +44972,7 @@ }, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "oNp" = ( /obj/structure/sink{ pixel_y = 15 @@ -45705,9 +45132,6 @@ /obj/structure/cable, /turf/open/floor/wood, /area/station/command/meeting_room) -"oPI" = ( -/turf/open/floor/iron/grimy, -/area/station/salvage_bay) "oQf" = ( /obj/structure/lattice/catwalk, /turf/open/space/basic, @@ -45733,12 +45157,6 @@ /obj/effect/turf_decal/trimline/yellow/filled/warning, /turf/open/floor/iron, /area/station/construction/mining/aux_base) -"oQJ" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, -/turf/open/misc/asteroid, -/area/station/salvage_bay) "oQO" = ( /obj/structure/safe/vault, /obj/item/clothing/head/costume/bearpelt, @@ -45748,7 +45166,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/dim/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "oQU" = ( /obj/structure/window/reinforced/spawner/directional/north, /turf/open/misc/grass/jungle/station, @@ -45787,9 +45205,6 @@ }, /turf/open/floor/iron, /area/station/maintenance/tram/left) -"oRN" = ( -/turf/open/floor/plating/aluminum, -/area/station/salvage_bay) "oRV" = ( /obj/machinery/firealarm/directional/north, /obj/effect/turf_decal/trimline/green/filled/line, @@ -45880,7 +45295,7 @@ dir = 9 }, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "oTc" = ( /obj/machinery/conveyor{ dir = 6; @@ -46072,7 +45487,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "oWZ" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 8 @@ -46102,7 +45517,7 @@ id = "teledoor" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "oXz" = ( /obj/machinery/iv_drip, /obj/effect/turf_decal/trimline/blue/filled/line{ @@ -46276,7 +45691,7 @@ /obj/structure/cable, /obj/effect/spawner/random/armory/e_gun, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "pbr" = ( /obj/structure/closet/emcloset, /obj/effect/turf_decal/stripes/line{ @@ -46917,7 +46332,7 @@ /obj/item/folder/documents, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "pnD" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 @@ -46944,7 +46359,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "pnU" = ( /obj/effect/turf_decal/trimline/blue/filled/corner{ dir = 8 @@ -47082,7 +46497,8 @@ dir = 1 }, /obj/structure/sign/departments/security{ - pixel_x = 32 + pixel_x = 32; + dir = 4 }, /obj/machinery/light/directional/east, /turf/open/floor/iron, @@ -47155,16 +46571,6 @@ }, /turf/open/floor/wood/large, /area/station/service/library) -"pru" = ( -/obj/machinery/atmos_shield_gen/active{ - dir = 1 - }, -/obj/machinery/conveyor{ - dir = 8; - id = "SalvageProcess" - }, -/turf/open/floor/plating, -/area/station/salvage_bay) "prI" = ( /obj/machinery/door/airlock/research/glass{ name = "Testing Lab" @@ -47236,7 +46642,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "pth" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible, /obj/structure/sign/warning/secure_area/directional/north, @@ -47324,7 +46730,7 @@ dir = 9 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "puL" = ( /obj/machinery/door/airlock/research/glass/incinerator/ordmix_exterior{ name = "Burn Chamber Exterior Airlock" @@ -47369,7 +46775,7 @@ /obj/structure/cable, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "pvp" = ( /obj/effect/turf_decal/trimline/yellow/filled/end{ dir = 1 @@ -47394,32 +46800,23 @@ /turf/open/floor/iron, /area/station/engineering/atmos) "pvI" = ( -/obj/structure/sign/directions/evac{ +/obj/structure/sign/directions/upload{ dir = 4; - pixel_y = 28 - }, -/obj/structure/sign/directions/medical{ - dir = 8; - pixel_y = 34 + pixel_y = -7 }, /obj/structure/sign/directions/engineering{ - dir = 8; - pixel_y = 40 - }, -/obj/structure/sign/directions/upload{ - pixel_y = 22 + dir = 4; + pixel_y = 7 }, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/trimline/tram/filled/line{ - dir = 1 +/obj/structure/sign/directions/medical{ + dir = 4; + pixel_y = 14 }, -/obj/effect/turf_decal/trimline/tram/filled/warning{ - dir = 1 +/obj/structure/sign/directions/evac{ + dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/hallway/primary/tram/right) +/turf/closed/wall, +/area/station/hallway/primary/tram/left) "pvL" = ( /obj/structure/railing/corner, /obj/effect/turf_decal/trimline/yellow/filled/corner, @@ -47514,7 +46911,8 @@ "pxf" = ( /obj/structure/closet/secure_closet/hos, /obj/structure/secure_safe/hos{ - pixel_x = 35 + pixel_x = 35; + dir = 1 }, /obj/structure/sign/poster/official/space_cops/directional/north, /turf/open/floor/carpet, @@ -47640,7 +47038,7 @@ req_access = list("security") }, /turf/open/floor/plating, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "pyG" = ( /obj/machinery/atmospherics/components/binary/tank_compressor{ dir = 8 @@ -47739,7 +47137,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "pAv" = ( /obj/structure/curtain, /obj/machinery/shower/directional/north, @@ -47756,7 +47154,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/landmark/navigate_destination/vault, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "pAC" = ( /obj/effect/turf_decal/siding/thinplating/end, /obj/machinery/atmospherics/pipe/multiz/supply/hidden/layer4{ @@ -47766,7 +47164,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "pAD" = ( /obj/machinery/atmospherics/pipe/bridge_pipe/cyan/visible{ dir = 1 @@ -47796,7 +47194,7 @@ dir = 1 }, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/iron/white, /area/station/science/research) "pAT" = ( @@ -47811,13 +47209,6 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/commons/fitness/recreation) -"pBn" = ( -/obj/structure/table/reinforced, -/obj/item/radio, -/obj/item/radio/intercom/directional/north, -/obj/machinery/light/red/dim/directional/north, -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) "pBp" = ( /obj/structure/table/wood/poker, /obj/effect/spawner/random/entertainment/deck, @@ -47962,13 +47353,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/catwalk_floor, /area/station/maintenance/solars/starboard/fore) -"pDU" = ( -/obj/structure/sign/semiotic/vacuum_ahead/directional/east, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, -/turf/open/floor/plating, -/area/station/salvage_bay) "pEa" = ( /obj/machinery/atmospherics/components/unary/passive_vent{ name = "killroom vent"; @@ -48018,7 +47402,7 @@ /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/science/general, /obj/effect/mapping_helpers/airlock/cyclelink_helper, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/iron/white/side, /area/station/science/research) "pFm" = ( @@ -48026,7 +47410,7 @@ dir = 4 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "pFu" = ( /obj/item/experi_scanner{ pixel_x = 5 @@ -48244,7 +47628,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "pIt" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 1 @@ -48291,7 +47675,7 @@ "pIQ" = ( /obj/structure/cable, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "pIS" = ( /obj/structure/lattice/catwalk, /obj/structure/railing/corner{ @@ -48457,7 +47841,7 @@ "pMi" = ( /obj/machinery/airalarm/directional/north, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "pMk" = ( /turf/closed/wall/r_wall, /area/station/science/research) @@ -48489,7 +47873,7 @@ /obj/effect/turf_decal/siding/thinplating/corner, /obj/structure/ladder, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "pMS" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 9 @@ -48577,10 +47961,6 @@ }, /turf/open/floor/iron, /area/station/security/brig) -"pOe" = ( -/obj/structure/lattice, -/turf/open/misc/asteroid/airless, -/area/station/asteroid) "pOg" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -48776,7 +48156,7 @@ dir = 8 }, /turf/open/floor/plating/airless, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "pRm" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -48889,7 +48269,7 @@ "pUz" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "pUC" = ( /obj/machinery/portable_atmospherics/pump{ name = "Lil Pump" @@ -49025,13 +48405,13 @@ /turf/open/floor/iron, /area/station/service/hydroponics/garden) "pWN" = ( -/obj/structure/plaque/static_plaque/golden/commission/tram, /obj/structure/disposalpipe/segment{ dir = 5 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, +/obj/structure/plaque/static_plaque/golden/commission/tram, /turf/open/floor/iron/dark, /area/station/command/bridge) "pWO" = ( @@ -49079,7 +48459,7 @@ }, /obj/item/kirbyplants/photosynthetic, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "pXq" = ( /mob/living/simple_animal/bot/mulebot, /obj/effect/turf_decal/delivery, @@ -49100,7 +48480,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/any/command/minisat, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "pXG" = ( /obj/structure/railing{ dir = 8 @@ -49178,13 +48558,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor, /area/station/maintenance/starboard/greater) -"pZp" = ( -/obj/machinery/conveyor{ - id = "SalvageProcess" - }, -/obj/machinery/airalarm/directional/east, -/turf/open/floor/plating, -/area/station/salvage_bay) "pZr" = ( /mob/living/basic/mouse/brown/tom, /turf/open/misc/asteroid, @@ -49285,7 +48658,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "qaN" = ( /obj/structure/cable, /turf/open/floor/carpet, @@ -49671,9 +49044,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/station/hallway/primary/tram/left) "qib" = ( @@ -49692,7 +49063,6 @@ /turf/open/floor/iron/kitchen_coldroom/freezerfloor, /area/station/medical/coldroom) "qik" = ( -/obj/structure/sign/warning/radiation, /obj/effect/baseturf_helper/space, /turf/closed/wall/r_wall, /area/station/engineering/supermatter) @@ -49747,12 +49117,6 @@ /obj/machinery/digital_clock, /turf/closed/wall/r_wall, /area/station/command/bridge) -"qiY" = ( -/obj/machinery/conveyor{ - id = "SalvageProcess" - }, -/turf/open/floor/plating, -/area/station/salvage_bay) "qjp" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -49878,7 +49242,7 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Tunnel Access Hatch" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/iron/smooth, @@ -49953,7 +49317,7 @@ }, /obj/effect/turf_decal/trimline/yellow/filled/corner, /turf/open/floor/iron/dark/corner, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "qnd" = ( /obj/structure/rack, /obj/item/reagent_containers/cup/bottle/iron{ @@ -50141,15 +49505,12 @@ /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "qrg" = ( /obj/effect/turf_decal/stripes/corner{ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/orange/visible, -/obj/machinery/status_display/evac/directional/east{ - pixel_y = 32 - }, /turf/open/floor/engine, /area/station/engineering/supermatter/room) "qrl" = ( @@ -50219,6 +49580,7 @@ "qsm" = ( /obj/effect/turf_decal/trimline/red/filled/line, /obj/structure/sign/poster/official/safety_report/directional/south, +/obj/effect/landmark/start/depsec/science, /turf/open/floor/iron, /area/station/security/checkpoint/science) "qsJ" = ( @@ -50284,10 +49646,6 @@ /obj/effect/turf_decal/trimline/neutral/filled/corner{ dir = 1 }, -/obj/structure/sign/departments/cargo{ - pixel_x = -32; - pixel_y = 32 - }, /turf/open/floor/iron, /area/station/hallway/primary/tram/right) "qtM" = ( @@ -50323,7 +49681,7 @@ /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "qug" = ( /obj/machinery/duct, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -50611,7 +49969,7 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Tunnel Access Hatch" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/structure/disposalpipe/segment, @@ -50789,33 +50147,23 @@ /turf/open/floor/engine, /area/station/engineering/supermatter/room) "qCJ" = ( -/obj/structure/sign/directions/evac{ - dir = 4; - pixel_y = 28 - }, -/obj/structure/sign/directions/medical{ - dir = 4; - pixel_y = 34 - }, -/obj/structure/sign/directions/engineering{ - dir = 4; - pixel_y = 40 - }, -/obj/structure/sign/directions/upload{ - dir = 4; - pixel_y = 22 +/obj/structure/sign/directions/vault{ + dir = 8; + pixel_y = 7 }, -/obj/structure/disposalpipe/segment{ - dir = 4 +/obj/structure/sign/directions/command{ + dir = 8; + pixel_y = 14 }, -/obj/effect/turf_decal/trimline/tram/filled/line{ - dir = 1 +/obj/structure/sign/directions/security{ + dir = 8; + pixel_y = -7 }, -/obj/effect/turf_decal/trimline/tram/filled/warning{ +/obj/structure/sign/directions/supply{ dir = 1 }, -/turf/open/floor/iron, -/area/station/hallway/primary/tram/left) +/turf/closed/wall, +/area/station/hallway/primary/tram/right) "qCP" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -51089,6 +50437,7 @@ "qIq" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, /obj/machinery/light/directional/west, +/obj/machinery/status_display/ai/directional/west, /turf/open/floor/engine, /area/station/engineering/supermatter/room) "qIs" = ( @@ -51153,7 +50502,7 @@ dir = 1 }, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "qJs" = ( /obj/structure/table/glass, /obj/effect/turf_decal/trimline/red/filled/line{ @@ -51491,7 +50840,7 @@ /obj/machinery/power/apc/auto_name/directional/south, /obj/structure/cable, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "qPX" = ( /obj/structure/table, /obj/item/analyzer, @@ -51525,7 +50874,8 @@ "qQW" = ( /obj/structure/reagent_dispensers/water_cooler, /obj/structure/sign/flag{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/iron/cafeteria, /area/station/science/breakroom) @@ -51557,13 +50907,6 @@ /obj/structure/railing, /turf/open/floor/plating/elevatorshaft, /area/station/maintenance/tram/left) -"qRq" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/machinery/docking_clamp{ - dir = 4 - }, -/turf/open/floor/plating/reinforced/airless, -/area/space/nearstation) "qRC" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -51827,14 +51170,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/hallway/primary/tram/left) -"qVJ" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "SalvageProcess" - }, -/obj/machinery/light/dim/directional/south, -/turf/open/floor/plating, -/area/station/salvage_bay) "qVN" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -51970,14 +51305,6 @@ /obj/machinery/atmospherics/pipe/smart/simple/cyan/visible, /turf/open/floor/iron, /area/station/engineering/atmos) -"qXE" = ( -/obj/structure/railing{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/salvage_bay) "qXS" = ( /obj/structure/disposalpipe/segment{ dir = 5 @@ -52020,16 +51347,7 @@ id = "AI" }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) -"qYL" = ( -/obj/machinery/conveyor{ - dir = 8; - id = "SalvageProcess" - }, -/obj/machinery/door/firedoor, -/obj/structure/plasticflaps, -/turf/open/floor/plating, -/area/station/salvage_bay) +/area/station/ai/satellite/chamber) "qYQ" = ( /obj/machinery/computer/message_monitor{ dir = 1 @@ -52047,9 +51365,7 @@ /obj/machinery/door/airlock/external{ name = "Escape Airlock" }, -/obj/structure/sign/warning/vacuum/external{ - pixel_y = 32 - }, +/obj/structure/sign/warning/vacuum/external/directional/north, /turf/open/floor/plating, /area/station/hallway/secondary/exit/departure_lounge) "qYV" = ( @@ -52075,12 +51391,12 @@ /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/unres, /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/medical/general, /obj/structure/cable, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/unres, /turf/open/floor/iron/white, /area/station/medical/medbay/lobby) "qZj" = ( @@ -52169,7 +51485,8 @@ dir = 8 }, /obj/structure/sign/departments/restroom{ - pixel_x = -32 + pixel_x = -32; + dir = 8 }, /turf/open/floor/iron, /area/station/commons/dorms) @@ -52227,7 +51544,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "rbM" = ( /obj/machinery/computer/security/telescreen/entertainment/directional/north, /obj/effect/turf_decal/tile/bar/opposingcorners, @@ -52403,7 +51720,7 @@ /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /obj/effect/landmark/navigate_destination/aiupload, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "reU" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/camera/directional/south{ @@ -52415,9 +51732,7 @@ /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/layer_manifold/supply/hidden, -/obj/machinery/light/small/directional/south{ - dir = 4 - }, +/obj/machinery/light/small/directional/east, /turf/open/floor/plating, /area/station/maintenance/disposal/incinerator) "rfi" = ( @@ -52658,12 +51973,6 @@ /obj/effect/turf_decal/tile/red/anticorner/contrasted, /turf/open/floor/iron, /area/station/command/bridge) -"rjb" = ( -/obj/machinery/computer/salvage_bay_controller{ - dir = 8 - }, -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) "rjs" = ( /obj/machinery/medical_kiosk, /obj/effect/turf_decal/trimline/blue/filled/line{ @@ -52701,7 +52010,7 @@ dir = 4 }, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "rkd" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 8 @@ -52930,10 +52239,6 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/catwalk_floor, /area/station/hallway/primary/tram/left) -"rnX" = ( -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating/airless, -/area/station/asteroid) "rnY" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/atmospherics/pipe/smart/simple/yellow/visible, @@ -53068,20 +52373,13 @@ /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, /area/station/engineering/atmos) -"rpl" = ( -/obj/structure/shuttle_decoration/wall_plate/armor{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating/airless, -/area/station/asteroid) "rpp" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/door/airlock/maintenance_hatch{ name = "Tunnel Access Hatch" }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/catwalk_floor, @@ -53192,10 +52490,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/hallway/secondary/service) -"rrI" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/salvage_bay) "rrL" = ( /obj/machinery/disposal/bin, /obj/structure/cable, @@ -53232,7 +52526,8 @@ /area/station/engineering/break_room) "rsH" = ( /obj/structure/sign/warning/radiation/rad_area{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/effect/turf_decal/siding/wideplating{ dir = 10 @@ -53241,11 +52536,11 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "rsZ" = ( /obj/machinery/holopad/secure, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "rti" = ( /obj/structure/disposalpipe/segment{ dir = 5 @@ -53293,9 +52588,7 @@ /obj/effect/turf_decal/trimline/red/filled/line{ dir = 8 }, -/obj/structure/sign/warning/secure_area{ - pixel_x = -32 - }, +/obj/structure/sign/warning/secure_area/directional/west, /obj/structure/disposalpipe/segment, /turf/open/floor/iron, /area/station/security/office) @@ -53768,7 +53061,7 @@ }, /obj/effect/turf_decal/trimline/yellow/line, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "rDT" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/cafeteria, @@ -53917,12 +53210,12 @@ "rHC" = ( /obj/machinery/teleport/hub, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "rIa" = ( /obj/machinery/porta_turret/ai, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "rIg" = ( /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -54336,7 +53629,7 @@ c_tag = "Secure - AI Core South" }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "rOV" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 @@ -54574,6 +53867,7 @@ /obj/item/mod/module/signlang_radio, /obj/item/mod/module/thermal_regulator, /obj/item/gun/syringe, +/obj/item/gun/syringe, /turf/open/floor/iron/dark, /area/station/medical/storage) "rSb" = ( @@ -54635,11 +53929,11 @@ /turf/open/floor/iron/dark/side{ dir = 4 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "rSB" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "rSC" = ( /obj/machinery/modular_computer/preset/civilian, /obj/effect/turf_decal/trimline/yellow/filled/line{ @@ -54656,9 +53950,7 @@ /turf/open/floor/iron/white, /area/station/commons/vacant_room) "rTm" = ( -/obj/structure/sign/warning/vacuum/external{ - pixel_x = 32 - }, +/obj/structure/sign/warning/vacuum/external/directional/east, /obj/machinery/computer/security/labor, /obj/effect/turf_decal/trimline/red/filled/line{ dir = 5 @@ -54704,12 +53996,6 @@ }, /turf/open/floor/iron/white, /area/station/science/xenobiology) -"rUi" = ( -/obj/effect/turf_decal/sand, -/obj/machinery/light/red/dim/directional/east, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/salvage_bay) "rUr" = ( /obj/machinery/module_duplicator, /obj/machinery/light/directional/south, @@ -54721,7 +54007,7 @@ /area/station/hallway/secondary/exit/departure_lounge) "rUR" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "rUX" = ( /obj/structure/cable/multilayer/multiz, /obj/effect/turf_decal/stripes/box, @@ -54871,19 +54157,6 @@ }, /turf/open/floor/plating/airless, /area/station/science/ordnance/bomb) -"rXl" = ( -/obj/effect/turf_decal/sand, -/obj/structure/cable, -/obj/machinery/door/firedoor, -/turf/open/floor/plating, -/area/station/salvage_bay) -"rXw" = ( -/obj/structure/shuttle_decoration/wall_plate/armor{ - dir = 4 - }, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating/airless, -/area/space/nearstation) "rXA" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 @@ -54894,13 +54167,6 @@ /obj/machinery/light/cold/directional/north, /turf/open/floor/iron/white, /area/station/science/lobby) -"rXH" = ( -/obj/machinery/conveyor{ - id = "SalvageProcess" - }, -/obj/machinery/light/small/red/directional/west, -/turf/open/floor/plating, -/area/station/salvage_bay) "rXO" = ( /obj/effect/turf_decal/trimline/neutral/filled/corner{ dir = 4 @@ -54979,7 +54245,7 @@ /turf/open/floor/iron/dark/side{ dir = 1 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "rZx" = ( /obj/machinery/atmospherics/components/binary/pump{ name = "Gas to Filter"; @@ -55255,7 +54521,7 @@ c_tag = "Secure - AI Upload" }, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "seR" = ( /turf/open/floor/glass/reinforced/tram, /area/station/hallway/primary/tram/right) @@ -55298,7 +54564,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "sfX" = ( /obj/structure/table, /obj/item/radio/intercom/prison/directional/west, @@ -55368,7 +54634,7 @@ }, /obj/machinery/firealarm/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "shF" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/binary/pump{ @@ -55595,7 +54861,7 @@ "skT" = ( /obj/machinery/door/airlock/maintenance_hatch, /obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, @@ -55751,7 +55017,7 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "snp" = ( /obj/effect/turf_decal/trimline/yellow/arrow_cw, /obj/effect/turf_decal/trimline/yellow/arrow_ccw{ @@ -55862,16 +55128,12 @@ "spF" = ( /turf/open/floor/engine/vacuum, /area/station/engineering/atmos) -"spM" = ( -/obj/effect/spawner/random/salvage/container_or_crate_or_cargo/salvage, -/turf/open/floor/plating/aluminum, -/area/station/salvage_bay) "sqc" = ( /obj/structure/table, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/spawner/random/armory/rubbershot, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "sql" = ( /obj/effect/turf_decal/trimline/purple/filled/corner{ dir = 1 @@ -56052,7 +55314,7 @@ name = "Maintenance Hatch" }, /obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/structure/cable, @@ -56334,10 +55596,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/medical/virology) -"svJ" = ( -/obj/effect/turf_decal/sand, -/turf/open/floor/plating, -/area/station/salvage_bay) "swd" = ( /obj/structure/ladder, /obj/effect/decal/cleanable/dirt, @@ -56467,7 +55725,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/decal/cleanable/dirt, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, @@ -56548,7 +55806,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "sAc" = ( /obj/effect/turf_decal/trimline/red/filled/line, /obj/structure/table, @@ -56685,7 +55943,7 @@ dir = 1 }, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "sDZ" = ( /turf/closed/wall, /area/station/maintenance/disposal/incinerator) @@ -56697,7 +55955,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "sEx" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 8 @@ -56717,7 +55975,7 @@ }, /obj/machinery/status_display/ai/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "sEW" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -56965,13 +56223,6 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) -"sJE" = ( -/obj/effect/turf_decal/sand, -/obj/structure/chair/plastic, -/obj/machinery/light/dim/directional/west, -/obj/machinery/airalarm/directional/north, -/turf/open/floor/iron, -/area/station/salvage_bay) "sJQ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -57019,7 +56270,7 @@ pixel_y = -32 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "sKC" = ( /obj/structure/chair/office/light, /obj/effect/turf_decal/trimline/blue/filled/corner{ @@ -57235,31 +56486,23 @@ /turf/open/floor/iron, /area/station/engineering/main) "sOD" = ( -/obj/structure/sign/directions/supply{ +/obj/structure/sign/directions/upload{ dir = 4; - pixel_y = -28 - }, -/obj/structure/sign/directions/security{ - dir = 8; - pixel_y = -34 + pixel_y = 7 }, -/obj/structure/sign/directions/command{ - dir = 8; - pixel_y = -40 +/obj/structure/sign/directions/engineering{ + dir = 4; + pixel_y = 14 }, -/obj/structure/sign/directions/vault{ - dir = 8; - pixel_y = -22 +/obj/structure/sign/directions/medical{ + dir = 4; + pixel_y = -7 }, -/obj/structure/disposalpipe/segment{ +/obj/structure/sign/directions/evac{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, -/obj/effect/turf_decal/trimline/tram/filled/line, -/obj/effect/turf_decal/trimline/tram/filled/warning, -/turf/open/floor/iron, -/area/station/hallway/primary/tram/center) +/turf/closed/wall, +/area/station/hallway/primary/tram/left) "sOI" = ( /obj/effect/turf_decal/trimline/brown/filled/line{ dir = 8 @@ -57356,7 +56599,7 @@ "sQk" = ( /obj/structure/cable/multilayer/multiz, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "sQJ" = ( /obj/effect/turf_decal/trimline/blue/filled/corner{ dir = 4 @@ -57380,7 +56623,7 @@ c_tag = "Secure - AI Core North" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "sRA" = ( /obj/structure/chair/sofa/corp/left, /turf/open/floor/wood/large, @@ -57396,7 +56639,7 @@ pixel_y = 20 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "sRZ" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /obj/structure/chair{ @@ -57406,9 +56649,6 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/iron/white, /area/station/science/lobby) -"sSf" = ( -/turf/closed/wall, -/area/station/salvage_bay) "sSr" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 8 @@ -57621,7 +56861,7 @@ /obj/machinery/holopad/secure, /obj/structure/cable, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "sVE" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/public/glass{ @@ -57690,6 +56930,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron, /area/station/command/bridge) "sWY" = ( @@ -57753,7 +56994,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "sXV" = ( /obj/effect/turf_decal/trimline/yellow/filled/line, /obj/machinery/power/apc/auto_name/directional/south, @@ -58368,11 +57609,6 @@ /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 }, -/obj/machinery/requests_console/directional/south{ - name = "Bridge Requests Console"; - pixel_y = 30; - department = "Bridge" - }, /obj/effect/mapping_helpers/requests_console/announcement, /obj/effect/mapping_helpers/requests_console/information, /obj/effect/mapping_helpers/requests_console/assistance, @@ -58382,6 +57618,10 @@ /obj/structure/disposalpipe/junction{ dir = 4 }, +/obj/machinery/requests_console/directional/north{ + department = "Bridge"; + name = "Bridge Requests Console" + }, /turf/open/floor/iron, /area/station/command/bridge) "tjl" = ( @@ -58666,10 +57906,6 @@ /obj/item/mod/module/thermal_regulator, /turf/open/floor/iron, /area/station/security/office) -"toC" = ( -/obj/machinery/light/red/dim/directional/east, -/turf/open/misc/asteroid, -/area/station/salvage_bay) "toT" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, @@ -58800,7 +58036,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "trr" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -58844,7 +58080,7 @@ /obj/effect/spawner/random/maintenance/three, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "trZ" = ( /obj/effect/turf_decal/trimline/neutral/corner{ dir = 4 @@ -58879,7 +58115,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "tsg" = ( /obj/effect/turf_decal/trimline/purple/filled/corner{ dir = 8 @@ -58928,13 +58164,6 @@ /obj/structure/chair, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) -"tsU" = ( -/obj/structure/railing{ - dir = 1 - }, -/obj/effect/turf_decal/sand, -/turf/open/floor/plating, -/area/station/salvage_bay) "tsV" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/machinery/shower/directional/east, @@ -59171,6 +58400,7 @@ dir = 4 }, /obj/machinery/light/directional/west, +/obj/machinery/status_display/evac/directional/west, /turf/open/floor/engine, /area/station/engineering/supermatter/room) "twS" = ( @@ -59263,7 +58493,7 @@ frequency = 1447 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "tyB" = ( /obj/structure/bed{ dir = 4 @@ -59285,7 +58515,7 @@ dir = 10 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "tyV" = ( /obj/machinery/door/airlock/external{ name = "Labor Camp Shuttle Airlock" @@ -59434,7 +58664,7 @@ /obj/structure/reagent_dispensers/wall/peppertank/directional/north, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "tBa" = ( /obj/structure/table, /obj/item/raw_anomaly_core/random{ @@ -59547,7 +58777,7 @@ dir = 8 }, /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /turf/open/floor/carpet, /area/station/commons/vacant_room/office) "tDn" = ( @@ -59555,7 +58785,7 @@ dir = 8 }, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "tDz" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark, @@ -59824,7 +59054,7 @@ "tIi" = ( /mob/living/basic/bot/repairbot, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "tIk" = ( /obj/effect/turf_decal/trimline/neutral/filled/corner{ dir = 8 @@ -59909,7 +59139,7 @@ "tJp" = ( /obj/machinery/teleport/station, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "tJz" = ( /obj/effect/turf_decal/trimline/purple/filled/line, /obj/structure/table, @@ -59966,7 +59196,7 @@ name = "Suit Storage" }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "tKh" = ( /obj/effect/turf_decal/trimline/neutral/filled/corner{ dir = 1 @@ -60046,7 +59276,8 @@ }, /obj/effect/turf_decal/trimline/yellow/filled/line, /obj/structure/sign/warning/chem_diamond{ - pixel_x = 32 + pixel_x = 32; + dir = 4 }, /obj/structure/chair/office/light, /obj/effect/landmark/start/chemist, @@ -60123,7 +59354,7 @@ }, /obj/structure/cable, /turf/open/floor/engine/hull/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "tNJ" = ( /obj/effect/turf_decal/trimline/brown/filled/corner{ dir = 4 @@ -60133,7 +59364,6 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/secondary/exit) "tNO" = ( @@ -60174,10 +59404,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"tOz" = ( -/obj/structure/sign/semiotic/storage, -/turf/closed/wall, -/area/station/salvage_bay) "tOA" = ( /obj/effect/turf_decal/trimline/neutral/filled/line{ dir = 8 @@ -60292,7 +59518,7 @@ "tQq" = ( /obj/machinery/recharge_station, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "tQy" = ( /obj/structure/disposalpipe/segment, /obj/structure/cable, @@ -60405,13 +59631,6 @@ }, /turf/open/floor/iron/white, /area/station/science/lobby) -"tSt" = ( -/obj/effect/turf_decal/sand/plating, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/salvage_bay) "tSz" = ( /obj/structure/table/reinforced, /obj/item/storage/toolbox/mechanical, @@ -60576,13 +59795,6 @@ }, /turf/open/floor/iron, /area/station/science/explab) -"tVY" = ( -/obj/machinery/light/red/dim/directional/south, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 - }, -/turf/open/floor/plating, -/area/station/salvage_bay) "tWb" = ( /obj/machinery/camera/directional/east{ c_tag = "Civilian - Theatre Stage" @@ -60709,7 +59921,7 @@ "tXU" = ( /obj/structure/lattice, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "tXW" = ( /obj/effect/turf_decal/delivery, /obj/machinery/door/window/left/directional/east{ @@ -60834,7 +60046,7 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "uba" = ( /obj/effect/turf_decal/trimline/neutral/filled/line{ dir = 4 @@ -60859,7 +60071,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/light/floor, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ubt" = ( /obj/structure/chair/office/light{ dir = 1 @@ -61276,7 +60488,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "uiV" = ( /obj/structure/table, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -61460,7 +60672,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ukE" = ( /obj/machinery/computer/station_alert{ dir = 1 @@ -61485,7 +60697,7 @@ /obj/effect/turf_decal/bot, /obj/machinery/power/port_gen/pacman, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "ulb" = ( /obj/machinery/chem_master, /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -61612,22 +60824,22 @@ /turf/open/floor/circuit/telecomms/server, /area/station/science/server) "umx" = ( -/obj/effect/turf_decal/stripes/line{ - dir = 8 +/obj/structure/sign/directions/upload{ + pixel_y = 7 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/cyan/visible, -/obj/machinery/status_display/evac/directional/west{ - pixel_y = -32 +/obj/structure/sign/directions/engineering{ + dir = 8; + pixel_y = 14 }, -/obj/structure/cable/layer1, -/obj/effect/turf_decal/trimline/yellow/arrow_cw{ - dir = 8 +/obj/structure/sign/directions/medical{ + dir = 8; + pixel_y = -7 }, -/obj/effect/turf_decal/trimline/yellow/arrow_ccw{ +/obj/structure/sign/directions/evac{ dir = 4 }, -/turf/open/floor/engine, -/area/station/engineering/supermatter/room) +/turf/closed/wall, +/area/station/hallway/primary/tram/right) "umC" = ( /obj/effect/turf_decal/trimline/neutral/filled/line{ dir = 8 @@ -61693,7 +60905,8 @@ dir = 5 }, /obj/structure/sign/warning/rad_shelter{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/machinery/light/directional/east, /turf/open/floor/iron, @@ -61762,7 +60975,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "upf" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -61887,7 +61100,7 @@ /area/station/hallway/secondary/entry) "uqS" = ( /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "ure" = ( /obj/machinery/portable_atmospherics/pump{ name = "Lil Pump" @@ -61994,12 +61207,6 @@ }, /turf/open/floor/iron, /area/station/cargo/drone_bay) -"usw" = ( -/obj/structure/tank_dispenser/oxygen, -/obj/machinery/light/red/dim/directional/south, -/obj/effect/turf_decal/bot, -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) "usz" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/landmark/event_spawn, @@ -62322,7 +61529,7 @@ freerange = 1 }, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "uxM" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 10 @@ -62408,10 +61615,6 @@ /obj/item/pai_card, /turf/open/floor/iron/white, /area/station/science/lower) -"uzf" = ( -/obj/effect/turf_decal/sand/plating, -/turf/open/floor/plating, -/area/station/salvage_bay) "uzl" = ( /obj/structure/fluff/tram_rail/electric, /obj/structure/transport/linear/tram, @@ -62527,13 +61730,6 @@ /obj/machinery/door/firedoor, /turf/open/floor/iron, /area/station/cargo/drone_bay) -"uAR" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/grimy, -/area/station/salvage_bay) "uAZ" = ( /obj/effect/turf_decal/trimline/white/warning{ dir = 8 @@ -62560,7 +61756,7 @@ }, /obj/structure/cable, /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "uBu" = ( /obj/item/radio/intercom/prison/directional/south, /obj/effect/turf_decal/trimline/red/filled/line, @@ -62601,31 +61797,22 @@ dir = 5 }, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "uCl" = ( -/obj/structure/sign/directions/supply{ +/obj/structure/sign/directions/upload{ dir = 4; - pixel_y = 28 - }, -/obj/structure/sign/directions/security{ - dir = 8; - pixel_y = 34 - }, -/obj/structure/sign/directions/command{ - dir = 8; - pixel_y = 40 + pixel_y = 14 }, -/obj/structure/sign/directions/vault{ - dir = 8; - pixel_y = 22 +/obj/structure/sign/directions/engineering{ + pixel_y = 7 }, -/obj/effect/turf_decal/trimline/tram/filled/line{ - dir = 1 +/obj/structure/sign/directions/medical{ + pixel_y = -7 }, -/obj/effect/turf_decal/trimline/tram/filled/warning{ - dir = 1 +/obj/structure/sign/directions/evac{ + dir = 4 }, -/turf/open/floor/iron, +/turf/closed/wall, /area/station/hallway/primary/tram/center) "uCo" = ( /obj/effect/turf_decal/siding/thinplating, @@ -63162,7 +62349,7 @@ c_tag = "Secure - AI Upper Ring East" }, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "uJf" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/door_buttons/airlock_controller{ @@ -63181,7 +62368,7 @@ }, /obj/machinery/firealarm/directional/south, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "uJk" = ( /obj/structure/easel, /obj/item/canvas/nineteen_nineteen, @@ -63396,7 +62583,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/firealarm/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "uNa" = ( /obj/machinery/computer/security/mining{ dir = 4 @@ -63433,13 +62620,6 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/plating, /area/station/maintenance/central/greater) -"uNF" = ( -/obj/machinery/mineral/stacking_machine{ - input_dir = 2 - }, -/obj/effect/turf_decal/sand, -/turf/open/floor/plating, -/area/station/salvage_bay) "uNI" = ( /obj/effect/turf_decal/trimline/red/filled/corner, /obj/effect/turf_decal/trimline/yellow/filled/corner{ @@ -63487,11 +62667,6 @@ }, /turf/open/floor/iron/cafeteria, /area/station/science/breakroom) -"uNU" = ( -/obj/structure/closet/secure_closet/engineering_welding, -/obj/structure/sign/semiotic/airlock/directional/east, -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) "uOg" = ( /obj/machinery/computer/atmos_control/carbon_tank{ dir = 8 @@ -63594,7 +62769,7 @@ /obj/item/storage/lockbox/loyalty, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "uQb" = ( /obj/effect/turf_decal/trimline/green/filled/line, /obj/machinery/firealarm/directional/south, @@ -63616,29 +62791,11 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/engineering/engine_smes) -"uQB" = ( -/obj/structure/shelf, -/obj/item/binoculars{ - pixel_y = 13 - }, -/obj/item/clothing/glasses/meson{ - pixel_y = -8 - }, -/obj/machinery/firealarm/directional/west, -/obj/machinery/airalarm/directional/south, -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) -"uQQ" = ( -/obj/effect/turf_decal/sand, -/obj/machinery/power/apc/auto_name/directional/north, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/salvage_bay) "uQS" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "uRh" = ( /obj/effect/turf_decal/siding/thinplating/dark{ dir = 4 @@ -63651,7 +62808,7 @@ /obj/structure/window/reinforced/spawner/directional/south, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "uRv" = ( /obj/structure/lattice, /turf/open/space/openspace, @@ -63687,7 +62844,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "uTm" = ( /obj/structure/window/reinforced/plasma/spawner/directional/west, /obj/machinery/atmospherics/pipe/smart/manifold4w/general/visible, @@ -64030,10 +63187,6 @@ }, /turf/open/floor/iron, /area/station/security/office) -"uYy" = ( -/obj/structure/sign/semiotic/warning, -/turf/closed/wall/r_wall, -/area/station/salvage_bay) "uYD" = ( /obj/machinery/suit_storage_unit/captain, /obj/structure/sign/calendar/directional/north, @@ -64106,7 +63259,7 @@ dir = 5 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "uZs" = ( /obj/effect/turf_decal/trimline/neutral/filled/line{ dir = 8 @@ -64296,7 +63449,7 @@ /obj/machinery/door/airlock/maintenance_hatch{ name = "Tunnel Access Hatch" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/structure/cable, @@ -64468,16 +63621,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"vgc" = ( -/obj/machinery/door/airlock/external, -/obj/effect/mapping_helpers/airlock/cyclelink_helper{ - dir = 4 - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) "vgl" = ( /obj/structure/railing{ dir = 8 @@ -64781,7 +63924,7 @@ /turf/open/floor/iron/dark, /area/station/service/chapel) "vkE" = ( -/obj/machinery/computer/rdconsole{ +/obj/machinery/computer/rdconsole/unlocked{ dir = 4 }, /turf/open/floor/glass/reinforced, @@ -64813,7 +63956,7 @@ "vlb" = ( /obj/effect/turf_decal/trimline/neutral/filled/corner, /obj/machinery/camera{ - dir = 6; + dir = 4; c_tag = "Hallway - Port Tram Platform South-East" }, /obj/machinery/firealarm/directional/east, @@ -64884,11 +64027,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/security/prison) -"vmo" = ( -/obj/effect/turf_decal/sand, -/obj/machinery/atmospherics/components/tank/air/layer4, -/turf/open/floor/plating, -/area/station/salvage_bay) "vmB" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -64988,9 +64126,6 @@ /turf/open/floor/wood/large, /area/station/service/theater) "vpa" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, /obj/effect/turf_decal/stripes/white/full, /obj/machinery/door/firedoor, /obj/effect/turf_decal/trimline/neutral/filled/line{ @@ -65277,7 +64412,7 @@ "vsM" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "vsU" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -65288,14 +64423,6 @@ }, /turf/open/floor/iron/dark, /area/station/engineering/atmospherics_engine) -"vsY" = ( -/obj/structure/railing{ - dir = 1 - }, -/obj/effect/turf_decal/sand, -/obj/machinery/firealarm/directional/south, -/turf/open/floor/plating, -/area/station/salvage_bay) "vtb" = ( /obj/machinery/door/firedoor, /obj/effect/turf_decal/stripes/white/full, @@ -65371,7 +64498,7 @@ /area/station/hallway/secondary/construction/engineering) "vvd" = ( /obj/machinery/camera{ - dir = 10; + dir = 8; c_tag = "Hallway - Starboard Tram Platform South-West" }, /obj/machinery/firealarm/directional/west, @@ -65756,14 +64883,6 @@ }, /turf/open/floor/iron, /area/station/cargo/storage) -"vBY" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/light/dim/directional/north, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/sand, -/obj/machinery/firealarm/directional/west, -/turf/open/floor/plating, -/area/station/salvage_bay) "vCh" = ( /obj/machinery/light/cold/directional/south, /turf/open/openspace, @@ -65774,11 +64893,6 @@ /obj/effect/turf_decal/siding/thinplating, /turf/open/floor/iron, /area/station/service/hydroponics/garden) -"vCn" = ( -/obj/effect/turf_decal/sand, -/obj/structure/cable, -/turf/open/floor/plating, -/area/station/salvage_bay) "vCt" = ( /obj/effect/turf_decal/trimline/green/filled/corner{ dir = 4 @@ -66145,7 +65259,7 @@ /turf/open/floor/iron/dark/side{ dir = 8 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "vHO" = ( /obj/structure/railing/corner{ dir = 1 @@ -66184,7 +65298,7 @@ "vIv" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "vIC" = ( /obj/effect/turf_decal/trimline/neutral/filled/corner{ dir = 8 @@ -66391,7 +65505,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "vNe" = ( /obj/effect/turf_decal/trimline/red/filled/corner{ dir = 4 @@ -66429,14 +65543,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/security/checkpoint/supply) -"vNz" = ( -/obj/machinery/atmos_shield_gen/active, -/obj/machinery/conveyor{ - dir = 8; - id = "SalvageProcess" - }, -/turf/open/floor/plating, -/area/station/salvage_bay) "vNB" = ( /obj/effect/turf_decal/box, /obj/effect/turf_decal/trimline/yellow/filled/line{ @@ -66490,7 +65596,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "vOE" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 4 @@ -66599,12 +65705,6 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/security/checkpoint/escape) -"vRf" = ( -/obj/effect/turf_decal/sand, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/salvage_bay) "vRm" = ( /obj/machinery/atmospherics/components/binary/pump{ name = "Port to Filter" @@ -66622,7 +65722,7 @@ /turf/open/floor/iron/dark/corner{ dir = 1 }, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "vRv" = ( /turf/open/floor/iron, /area/station/command/heads_quarters/ce) @@ -66800,7 +65900,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "vTF" = ( /obj/structure/tank_dispenser{ pixel_x = -1 @@ -66899,7 +65999,7 @@ dir = 6 }, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "vWx" = ( /turf/closed/wall/r_wall, /area/station/cargo/miningdock/oresilo) @@ -67000,7 +66100,8 @@ /area/station/command/bridge) "vYy" = ( /obj/structure/sign/warning/radiation/rad_area{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/effect/turf_decal/siding/wideplating{ dir = 6 @@ -67009,7 +66110,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "vYA" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/segment{ @@ -67064,7 +66165,7 @@ /area/station/hallway/secondary/service) "waj" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "wao" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -67117,7 +66218,7 @@ /obj/machinery/portable_atmospherics/scrubber, /obj/effect/turf_decal/bot, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "wbH" = ( /turf/open/floor/iron, /area/station/security/office) @@ -67150,12 +66251,12 @@ }, /obj/machinery/turretid{ name = "AI Hallway turret control"; - icon_state = "control_stun"; pixel_x = 3; - pixel_y = 28 + pixel_y = 28; + dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "wce" = ( /obj/effect/turf_decal/trimline/neutral/filled/corner{ dir = 8 @@ -67338,7 +66439,7 @@ }, /obj/structure/cable, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "wfb" = ( /obj/structure/closet/crate/coffin, /turf/open/floor/plating, @@ -67691,7 +66792,7 @@ /obj/structure/table, /obj/machinery/airalarm/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "wlo" = ( /obj/machinery/door/airlock/maintenance_hatch{ name = "Maintenance Hatch" @@ -67843,7 +66944,7 @@ }, /obj/machinery/light/floor, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "wpq" = ( /obj/structure/cable, /obj/machinery/light/floor, @@ -67946,7 +67047,7 @@ dir = 1 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "wri" = ( /obj/structure/closet/wardrobe/mixed, /obj/effect/turf_decal/tile/blue/opposingcorners{ @@ -68007,6 +67108,9 @@ /obj/item/book/manual/wiki/grenades, /obj/item/radio/intercom/directional/west, /obj/effect/turf_decal/tile/yellow/fourcorners, +/obj/item/assembly/igniter, +/obj/item/assembly/igniter, +/obj/item/assembly/igniter, /turf/open/floor/iron/white, /area/station/medical/pharmacy) "wsb" = ( @@ -68034,7 +67138,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "wsI" = ( /obj/machinery/disposal/bin, /obj/effect/turf_decal/trimline/purple/filled/line{ @@ -68157,7 +67261,7 @@ }, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "wvG" = ( /obj/effect/turf_decal/trimline/red/filled/corner{ dir = 1 @@ -68460,7 +67564,7 @@ c_tag = "Secure - AI Minisat Chargebay" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "wzJ" = ( /obj/structure/sign/warning/electric_shock, /turf/closed/wall/r_wall, @@ -68815,13 +67919,6 @@ /obj/effect/turf_decal/siding/thinplating/dark, /turf/open/floor/iron/white, /area/station/science/research) -"wFN" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/railing{ - dir = 4 - }, -/turf/open/floor/plating/reinforced/airless, -/area/space/nearstation) "wFR" = ( /obj/effect/turf_decal/trimline/neutral/filled/line, /obj/structure/sign/gym/mirrored{ @@ -69093,7 +68190,7 @@ "wLe" = ( /obj/machinery/firealarm/directional/north, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "wLl" = ( /obj/effect/turf_decal/trimline/green/filled/corner{ dir = 4 @@ -69117,7 +68214,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "wLP" = ( /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -69260,7 +68357,7 @@ /area/station/cargo/miningdock) "wOw" = ( /turf/open/floor/iron/grimy, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "wOx" = ( /obj/structure/kitchenspike, /obj/effect/turf_decal/weather/snow, @@ -69273,10 +68370,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/security/courtroom/holding) -"wOJ" = ( -/obj/structure/filingcabinet/chestdrawer, -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) "wOU" = ( /obj/effect/turf_decal/trimline/red/filled/line, /obj/machinery/disposal/bin, @@ -69351,13 +68444,6 @@ }, /turf/open/floor/iron/kitchen_coldroom, /area/station/service/kitchen/coldroom) -"wQt" = ( -/obj/effect/turf_decal/sand, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, -/turf/open/floor/iron, -/area/station/salvage_bay) "wQN" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -69410,7 +68496,7 @@ dir = 6 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "wRR" = ( /obj/structure/dresser, /turf/open/floor/iron/white, @@ -69462,10 +68548,6 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron, /area/station/security/prison) -"wTf" = ( -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating/airless, -/area/space/nearstation) "wTi" = ( /obj/effect/spawner/random/engineering/tracking_beacon, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -69645,7 +68727,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "wXM" = ( /turf/open/floor/carpet, /area/station/commons/vacant_room/office) @@ -69691,7 +68773,7 @@ /obj/machinery/recharger, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "wYO" = ( /obj/machinery/rnd/production/protolathe/department/engineering, /obj/effect/turf_decal/trimline/yellow/filled/end{ @@ -69713,11 +68795,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) -"wZh" = ( -/obj/effect/turf_decal/sand/plating, -/turf/open/floor/iron, -/area/station/salvage_bay) +/area/station/ai/satellite/chamber) "wZl" = ( /obj/structure/window/reinforced/spawner/directional/east, /obj/item/bikehorn/rubberducky, @@ -70016,7 +69094,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "xfd" = ( /obj/effect/turf_decal/trimline/red/filled/corner, /obj/effect/turf_decal/trimline/red/filled/corner{ @@ -70127,7 +69205,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "xhL" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron, @@ -70334,7 +69412,7 @@ }, /obj/effect/turf_decal/bot, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "xlT" = ( /obj/effect/turf_decal/trimline/neutral/filled/corner{ dir = 4 @@ -70454,7 +69532,7 @@ /obj/effect/turf_decal/trimline/purple/filled/line, /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "xnU" = ( /obj/effect/turf_decal/trimline/neutral/filled/corner, /obj/effect/turf_decal/trimline/neutral/filled/corner{ @@ -70472,7 +69550,6 @@ "xog" = ( /obj/machinery/door/airlock/security/glass{ name = "Isolation Wing"; - unres_sensor = 1; unres_sides = 8 }, /obj/machinery/door/firedoor, @@ -70549,9 +69626,6 @@ /obj/machinery/door/airlock/medical/glass{ name = "Treatment Center" }, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 }, @@ -70563,6 +69637,9 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 8 + }, /turf/open/floor/iron/white, /area/station/medical/treatment_center) "xqO" = ( @@ -70685,7 +69762,7 @@ dir = 4 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "xsX" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 4 @@ -70755,7 +69832,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "xuk" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/yellow/visible, /obj/machinery/meter, @@ -70824,7 +69901,7 @@ /area/station/service/hydroponics/garden) "xvl" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "xvm" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/oil/slippery, @@ -70883,7 +69960,7 @@ }, /obj/machinery/firealarm/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "xwi" = ( /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 5 @@ -71343,18 +70420,6 @@ "xFx" = ( /turf/open/floor/iron, /area/station/commons/fitness) -"xGv" = ( -/obj/structure/railing{ - dir = 1 - }, -/obj/machinery/mineral/stacking_unit_console{ - pixel_x = 32 - }, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, -/turf/open/floor/iron, -/area/station/salvage_bay) "xGw" = ( /obj/machinery/door/airlock/external{ name = "Labor Camp Shuttle Airlock" @@ -71421,7 +70486,7 @@ }, /obj/machinery/airalarm/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "xIV" = ( /obj/structure/table, /obj/item/stock_parts/micro_laser{ @@ -71444,14 +70509,6 @@ }, /turf/open/floor/iron, /area/station/cargo/drone_bay) -"xIW" = ( -/obj/machinery/conveyor{ - dir = 1; - id = "SalvageProcess" - }, -/obj/machinery/light/small/blacklight/directional/west, -/turf/open/floor/plating, -/area/station/salvage_bay) "xJt" = ( /obj/structure/railing/corner{ dir = 4 @@ -71482,7 +70539,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "xJD" = ( /obj/structure/table/reinforced, /obj/effect/turf_decal/trimline/red/filled/line{ @@ -71583,15 +70640,6 @@ /obj/structure/closet/secure_closet/atmospherics, /turf/open/floor/iron, /area/station/maintenance/disposal/incinerator) -"xLS" = ( -/obj/machinery/door/airlock/atmos{ - name = "Salvage Bay" - }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/structure/cable, -/obj/machinery/door/firedoor, -/turf/open/floor/iron/dark/textured_large, -/area/station/salvage_bay) "xMa" = ( /obj/effect/turf_decal/trimline/red/filled/line{ dir = 5 @@ -71616,7 +70664,7 @@ /obj/machinery/suit_storage_unit/standard_unit, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "xMl" = ( /obj/machinery/vending/hydronutrients, /obj/structure/noticeboard/directional/south, @@ -71803,7 +70851,8 @@ /area/station/maintenance/tram/mid) "xPg" = ( /obj/effect/turf_decal/trimline/brown/filled/line, -/obj/structure/cable, +/obj/structure/table, +/obj/item/radio/intercom/directional/south, /turf/open/floor/iron, /area/station/hallway/secondary/exit) "xPj" = ( @@ -71889,7 +70938,7 @@ pixel_y = 2 }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "xQM" = ( /obj/effect/turf_decal/trimline/neutral/filled/line{ dir = 5 @@ -71942,11 +70991,6 @@ "xRn" = ( /turf/open/floor/plating, /area/station/hallway/secondary/service) -"xRr" = ( -/obj/effect/spawner/random/structure/grille, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating/airless, -/area/space/nearstation) "xRx" = ( /turf/closed/wall, /area/station/medical/surgery/fore) @@ -71962,7 +71006,7 @@ }, /obj/machinery/firealarm/directional/south, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "xRI" = ( /obj/effect/turf_decal/siding/thinplating/dark{ dir = 6 @@ -72204,7 +71248,7 @@ dir = 9 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/hallway) +/area/station/ai/satellite/hallway) "xWj" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/trinary/filter/flipped/layer2{ @@ -72216,7 +71260,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "xWu" = ( /obj/machinery/status_display/shuttle, /turf/closed/wall, @@ -72318,7 +71362,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/maint) +/area/station/ai/satellite/maintenance) "xZi" = ( /obj/structure/chair/comfy/beige{ dir = 8 @@ -72344,7 +71388,7 @@ }, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "xZC" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/disposalpipe/segment{ @@ -72469,6 +71513,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 1 }, +/obj/effect/landmark/start/depsec/science, /turf/open/floor/iron, /area/station/security/checkpoint/science) "ybZ" = ( @@ -72541,10 +71586,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/medical/virology) -"ycM" = ( -/obj/structure/lattice/catwalk, -/turf/open/misc/asteroid/airless, -/area/station/asteroid) "ycV" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/white/line, @@ -72619,12 +71660,6 @@ /obj/structure/cable, /turf/open/floor/engine, /area/station/engineering/supermatter/room) -"yeh" = ( -/obj/machinery/atmospherics/components/unary/passive_vent/layer2{ - dir = 8 - }, -/turf/open/misc/asteroid/airless, -/area/station/asteroid) "yei" = ( /obj/machinery/atmospherics/components/unary/portables_connector/visible/layer2{ dir = 8 @@ -72983,7 +72018,7 @@ /obj/structure/cable, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "yjr" = ( /obj/effect/turf_decal/trimline/neutral/filled/line, /obj/effect/turf_decal/siding/thinplating{ @@ -73005,16 +72040,6 @@ /obj/structure/cable, /turf/open/floor/catwalk_floor, /area/station/maintenance/department/crew_quarters/dorms) -"yjF" = ( -/obj/machinery/recycler{ - dir = 4 - }, -/obj/machinery/conveyor{ - dir = 8; - id = "SalvageProcess" - }, -/turf/open/floor/plating, -/area/station/salvage_bay) "yjN" = ( /obj/effect/turf_decal/trimline/neutral/filled/line{ dir = 4 @@ -102371,7 +101396,7 @@ ldf dJM saC cIw -eNM +cIw nKQ cIw dQs @@ -104941,7 +103966,7 @@ aDm fuj lDy cyN -umx +cyN twR hKM jux @@ -121089,7 +120114,7 @@ qxm nOo myD myD -myD +glv myD myD myD @@ -146522,7 +145547,7 @@ tPE qnv tld nmY -fXf +nmY nmY pMW pMW @@ -146779,7 +145804,7 @@ tPE rhF jEu mlu -tCT +fXf kHa pMW pMW @@ -148578,7 +147603,7 @@ iyc hfy jEu mlu -tCT +fXf kHa pMW pMW @@ -148835,7 +147860,7 @@ jde kIZ aVT nmY -fXf +nmY nmY pMW pMW @@ -155783,14 +154808,14 @@ aQO aQO rxI nYq -yiM +nEu cFs nVr gbe jGG cFs -yiM nEu +pow rLP mlj yjQ @@ -158341,7 +157366,7 @@ uVo eVC qyZ tfX -htr +hGc aQO aQO aQO @@ -158353,14 +157378,14 @@ aQO aQO qhM nKo -yiM +sOD cFs nVr gbe jGG cFs -yiM -qCJ +pvI +pow vNF prs gtQ @@ -169403,15 +168428,15 @@ izU izU izU tAL -sOD -izU +mYI +gnK kkR nIU ejH euV qvf -izU -uCl +gnK +lej lRC ofT ofT @@ -171973,15 +170998,15 @@ izU izU hce aEm -gnK -izU +mpa +uCl kBG nIU ejH euV mjp -izU -eQL +dtz +lej ycx eHN ayP @@ -183024,15 +182049,15 @@ kNf whL esQ rEB -glv -bMb +oPw +eQL brm gay fXl jwH brm -bMb -oiv +qCJ +blg aHq lfQ cnV @@ -185346,7 +184371,7 @@ jwH brm idI xZQ -stt +oiv wpK lfQ ehz @@ -185595,14 +184620,14 @@ bIp evu qtF iIS -bMb +umx brm gay fXl jwH brm -bMb -pvI +umx +xZQ aHs aHt sSr @@ -187949,11 +186974,11 @@ aaa aaa aaa aaa -aVR -jiO -jiO -jiO -aVR +aaa +aaa +aaa +aaa +aaa aaa aaa aaa @@ -188177,7 +187202,7 @@ fZS kDH vPB qbp -qdy +geG xdF lCy xNT @@ -188189,30 +187214,30 @@ xNT xNT xNT xNT -jiO +aaa syv syv kpw lOC kpw syv -jiO -jiO -jiO -aVR aaa aaa aaa aaa aaa -jiO -aVR -hPp -kxU -oQJ -aVR -jiO -jiO +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aac aaa aaa aaS @@ -188251,8 +187276,8 @@ dVM hFY lSG xsW -jJv -dtz +iYD +njC jJv bcx jJv @@ -188434,7 +187459,7 @@ aHw aHE aHS qbp -qdy +geG rls twO eBd @@ -188443,34 +187468,34 @@ kro nQr aKU koy -faP -hPp -uzf -jiO -jiO +qUB +aaa +aaa +aaa +aaa syv loG xrl nKb syv -clV -azR -ema -aVR aaa aaa aaa aaa aaa -jiO -hPp -aDs -kba -idu -idu -hPp -jiO aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aac +aac +aac +aac aac pMW pMW @@ -188691,7 +187716,7 @@ pEx fmy dbV seY -lDn +qbp eCo iUD tNJ @@ -188700,34 +187725,34 @@ dvj dvj bLQ xPg -xLS -vCn -vCn -byD -hPp +qUB +aaa +aaa +aaa +aaa syv wzk xNI gWe syv -caA -azR -usw -sSf -jiO -aVR -jiO -jiO -jiO -aVR -aDs -aDs -aVR -hPp -aDs -hPp -jiO aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aac +aac +aac +aac +aac +aac aac pMW pMW @@ -188955,36 +187980,36 @@ nxB awi awi lco -cNt +awi oAG qUB -jiO -toC -byD -hPp +aaa +aaa +aaa +aaa syv syv syv syv syv -ncI -ife -ncI -sSf -sSf -aVR -eql -mrD -ktP -aVR -lQO -sSf -aVR -hPp -aDs -aDs -jiO -sSf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aac +aac +aac +aac pMW pMW pMW @@ -189215,33 +188240,33 @@ twO twO ume qUB -jiO -aVR -nhf -byD -vCn -hPp -sSf -sJE -mnQ -aar -kKT -lGi -tOz -vBY -oJD -oJD -bSn -bSn -lVf -lRV -qVJ -aVR -sSf -cFt -lQO -sSf -sSf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aac +pMW pMW pMW pMW @@ -189473,32 +188498,32 @@ aac aac aaa aaa -aVR -jiO -hPp -rUi -vCn -rXl -wZh -tSt -wQt -hAy -kKT -dlf -oJD -spM -oRN -oRN -spM -oRN -qXE -jBf -vsY -sSf -wOJ -uAR -uQB -sSf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +pMW +pMW pMW pMW pMW @@ -189731,31 +188756,31 @@ aac aac aaa aac -jiO -jiO -aVR -hPp -rXl -vCn -oCm -vRf -lRV -lRV -dPG -bSn -spM -spM -oRN -oRN -oRN -qXE -jBf -uNF -sSf -pBn -eFB -oPI -cFt +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +pMW +pMW +pMW +pMW +pMW pMW pMW pMW @@ -189990,29 +189015,29 @@ aac aac aaa aaa -aVR -jiO -sSf -uQQ -vRf -hAy -kKT -rrI -jpZ -ope -oRN -oRN -oRN -oRN -spM -iOa -jBf -tsU -sSf -bTQ -rjb -oPI -cFt +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aac +pMW +pMW +pMW +pMW +pMW pMW pMW pMW @@ -190249,27 +189274,27 @@ aaa aaa aaa aaa -sSf -bYJ -lRV -uNU -eRZ -dab -tOz -ldP -qiY -qiY -qiY -pZp -bZg -xGv -qVJ -sSf -sSf -cFt -cFt -cFt -sSf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aac +aac +pMW +pMW +pMW +pMW +pMW pMW pMW pMW @@ -190505,23 +189530,23 @@ aaa aaa aaa aaa -aVR -aVR -sSf -vgc -sSf -sSf -nrE -sSf -hwA -jBf -aNT -aHg -jum -jum -jum -qYL -jum +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aac +aac +aaa +aaa +aac +aac pMW pMW pMW @@ -190762,23 +189787,23 @@ pMW aaa aaa aaa -jiO -vmo -czS -mkZ -tVY -sSf -yeh -sSf -jum -qYL -jum -jum -jum -qiY -rXH -jBf -jum +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aac +aac +aaa +aac +aac +aac +aac +aaa +aac +aac pMW pMW pMW @@ -191019,23 +190044,23 @@ pMW pMW aaa aaa -jiO -vmo -svJ -kLF -pDU -sSf +aaa +aaa +aaa +aaa +aaa +aaa +aac +aac +aac +aac +aac +aac +aac aac aac -jum -jBf -xIW -eFX -jum -yjF -yjF -yjF -jum +aac +pMW pMW pMW pMW @@ -191276,23 +190301,23 @@ pMW pMW aac aaa -aVR -aVR -sSf -nOv -sSf -sSf +aaa +aaa +aaa +aaa +aaa +aac aac aac -nMz -vNz -jBf -pru -jum -vNz -jBf -pru -uYy +aac +aac +aac +pMW +pMW +pMW +pMW +pMW +pMW pMW pMW pMW @@ -191536,42 +190561,42 @@ aac aaa aaa aaa -mie -mie -mie -oxV -mie -mie -eHO -eHO -eHO -jgv -nnM -nnM -nnM -mie -xRr -aRH -xRr -xRr -xRr -xRr -xRr -aRH -xRr -xRr -xRr -xRr -xRr -aRH -xRr -xRr -xRr -xRr -oHf -oHf -oHf -oHf +aaa +aaa +aaa +aac +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW pMW pMW pMW @@ -191793,46 +190818,46 @@ aac aaa aaa aaa +aaa +aaa aac -pOe -jRA -oxV -jRA -rpl -rnX -rnX -rnX -eul -rnX -rnX -rnX -rXw -eIX -eIX -eIX -rXw -wTf -rXw -eIX -eIX -eIX -rXw -wTf -rXw -eIX -eIX -eIX -rXw -wTf -wTf -wTf -oHf -wIP -wIP -wIP -wIP -wIP -cGM +aac +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW pMW pMW pMW @@ -192050,41 +191075,41 @@ aac aaa aaa aaa -pOe -pOe -pOe -fdi -mcd -wIP -wIP -wIP -wIP -wIP -wIP -wIP -wIP -wIP -wIP -wIP -bhQ -nbL -nbL -nbL -hCx -xRm -xRm -xRm -xRm -xRm -xRm -xRm -xRm -xRm -xRm -xRm -mky -fdi -wIP +aaa +aaa +aac +aac +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW pMW pMW pMW @@ -192307,44 +191332,44 @@ pMW aaa aaa aaa -ycM -ycM -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -wFN -nbL -qRq -nbL -wFN -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -wIP -wIP -wIP -wIP -cGM +aaa +aac +aac +aac +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW pMW pMW pMW @@ -192564,9 +191589,9 @@ pMW pMW iLP aac -cjC +iLP +pMW pMW -mcd pMW pMW pMW @@ -192823,7 +191848,7 @@ wIP pMW wIP pMW -mcd +pMW pMW pMW pMW @@ -193080,7 +192105,7 @@ wIP pMW wIP pMW -mcd +pMW pMW pMW pMW @@ -193336,8 +192361,6 @@ pMW wIP wIP wIP -wIP -mcd pMW pMW pMW @@ -193369,6 +192392,8 @@ pMW pMW pMW pMW +meb +pMW pMW pMW pMW @@ -193594,7 +192619,7 @@ wIP pMW wIP pMW -mcd +pMW pMW pMW pMW @@ -193851,7 +192876,7 @@ wIP pMW wIP pMW -mcd +pMW pMW pMW pMW @@ -194108,7 +193133,7 @@ wIP pMW wIP pMW -mcd +pMW pMW pMW pMW @@ -194364,8 +193389,8 @@ pMW wIP wIP wIP -wIP -mcd +pMW +pMW pMW pMW pMW @@ -194622,7 +193647,7 @@ wIP pMW wIP pMW -mcd +pMW pMW pMW pMW @@ -194879,7 +193904,6 @@ wIP pMW wIP pMW -mcd pMW pMW pMW @@ -194894,6 +193918,7 @@ pMW pMW pMW pMW +meb pMW pMW pMW @@ -195136,7 +194161,7 @@ wIP pMW wIP pMW -mcd +pMW pMW pMW pMW @@ -195392,8 +194417,8 @@ pMW wIP wIP wIP -wIP -mcd +pMW +pMW pMW pMW pMW @@ -195650,7 +194675,7 @@ wIP pMW wIP pMW -mcd +pMW pMW pMW pMW @@ -195907,7 +194932,7 @@ wIP pMW wIP pMW -mcd +pMW pMW pMW pMW @@ -196164,7 +195189,7 @@ wIP pMW wIP pMW -mcd +pMW pMW pMW pMW @@ -196420,8 +195445,8 @@ pMW wIP wIP wIP -wIP -mcd +pMW +pMW pMW pMW pMW @@ -196678,13 +195703,13 @@ wIP pMW wIP pMW -mcd -pMW -pMW -pMW -pMW pMW +aaa +aaa pMW +aaa +aaa +aaa pMW pMW pMW @@ -196934,15 +195959,15 @@ pMW wIP pMW wIP -pMW -mcd -pMW -pMW -pMW -pMW -pMW -pMW -pMW +aac +aaa +aac +aac +aac +aaa +aaa +aaa +aaa pMW pMW pMW @@ -197191,15 +196216,15 @@ pMW wIP pMW wIP -pMW -mcd -pMW -pMW -pMW -pMW -pMW -pMW -pMW +aac +aac +aac +aaa +aac +aaa +aaa +aaa +aaa pMW pMW pMW @@ -197448,43 +196473,43 @@ pMW wIP wIP wIP -wIP -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -mcd -wIP -wIP -wIP -wIP -cGM +aac +aac +aac +aac +aac +aaa +aaa +aaa +aaa +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW pMW pMW pMW @@ -197705,40 +196730,40 @@ pMW wIP pMW wIP +aac +aac +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW pMW pMW -maw -mcd -wIP -wIP -wIP -wIP -wIP -wIP -wIP -wIP -wIP -wIP -mcd -wIP -wIP -wIP -wIP -wIP -mcd -wIP -wIP -wIP -wIP -wIP -wIP -wIP -wIP -wIP -wIP -mcd -maw -wIP pMW pMW pMW @@ -197962,45 +196987,45 @@ aac wIP pMW wIP +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aac +aac +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW pMW -cWW -aRH -cWW -oyX -wTf -oyX -cWW -cWW -cWW -oyX -wTf -oyX -cWW -cWW -cWW -oyX -wTf -oyX -cWW -cWW -cWW -oyX -wTf -oyX -cWW -cWW -cWW -oyX -wTf -wTf -wTf -oHf -wIP -wIP -wIP -wIP -wIP -cGM pMW pMW pMW @@ -198219,41 +197244,41 @@ aac wIP pMW wIP -xRr -xRr -aRH -xRr -xRr -xRr -xRr -xRr -aRH -xRr -xRr -xRr -xRr -xRr -aRH -xRr -xRr -xRr -xRr -xRr -aRH -xRr -xRr -xRr -xRr -xRr -aRH -xRr -xRr -xRr -xRr -oHf -oHf -oHf -oHf +aaa +aaa +aaa +aaa +aaa +aaa +aac +aac +aac +aac +aac +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW +pMW pMW pMW pMW diff --git a/_maps/map_files/wawastation/wawastation.dmm b/_maps/map_files/wawastation/wawastation.dmm index 1249394f1c5c4c..2a07700a6ad262 100644 --- a/_maps/map_files/wawastation/wawastation.dmm +++ b/_maps/map_files/wawastation/wawastation.dmm @@ -64,7 +64,7 @@ "abi" = ( /obj/machinery/light/floor, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "abm" = ( /obj/structure/railing{ dir = 1 @@ -103,14 +103,14 @@ }, /obj/structure/cable, /turf/open/floor/catwalk_floor/iron_dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "aby" = ( /obj/machinery/door/airlock/maintenance_hatch, /obj/effect/mapping_helpers/airlock/access/all/command/minisat, /obj/structure/cable/layer3, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "abC" = ( /obj/effect/turf_decal/trimline/blue/filled/line, /obj/structure/cable, @@ -174,8 +174,8 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/science/research) "adc" = ( @@ -190,7 +190,7 @@ dir = 4 }, /obj/structure/table/wood/fancy/orange, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 7; pixel_y = 9 }, @@ -254,7 +254,7 @@ name = "Solar Maintenance" }, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/cyclelink_helper, /obj/structure/cable, /turf/open/floor/plating, @@ -264,7 +264,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -326,7 +326,6 @@ /area/station/hallway/primary/central) "afp" = ( /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment{ dir = 10 @@ -719,7 +718,7 @@ /obj/effect/landmark/event_spawn, /obj/effect/turf_decal/delivery, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "alJ" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 4 @@ -822,7 +821,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "anf" = ( /obj/machinery/light/small/directional/south, /obj/effect/decal/cleanable/dirt, @@ -1042,7 +1041,7 @@ "aqT" = ( /mob/living/basic/bot/cleanbot, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "arl" = ( /obj/machinery/atmospherics/pipe/multiz/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/multiz/scrubbers/visible/layer2, @@ -1090,6 +1089,10 @@ /obj/structure/sign/poster/random/directional/south, /turf/open/floor/iron, /area/station/cargo/warehouse) +"asd" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/engineering/atmos/upper) "asl" = ( /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/engine, @@ -1206,7 +1209,7 @@ /obj/effect/turf_decal/tile/red/half/contrasted, /obj/item/radio/intercom/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "auB" = ( /turf/open/floor/engine, /area/station/medical/chemistry) @@ -1326,9 +1329,7 @@ /area/station/science/breakroom) "awd" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 - }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron, /area/station/security/prison) "awf" = ( @@ -1360,7 +1361,7 @@ /obj/structure/sign/poster/official/random/directional/north, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "awC" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt, @@ -1492,7 +1493,7 @@ /obj/effect/turf_decal/bot_white, /obj/item/folder/documents, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "ayC" = ( /obj/machinery/light/directional/west, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -1581,8 +1582,6 @@ /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/engineering/gravity_generator) "azQ" = ( @@ -1611,7 +1610,7 @@ /obj/machinery/holopad, /obj/effect/turf_decal/box, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "aAl" = ( /obj/effect/turf_decal/tile/brown/half/contrasted{ dir = 1 @@ -1682,6 +1681,14 @@ }, /turf/open/openspace, /area/station/security/prison/shower) +"aCk" = ( +/obj/effect/turf_decal/trimline/yellow/filled/warning, +/obj/structure/railing, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/hallway/secondary/exit/departure_lounge) "aCp" = ( /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 1 @@ -1851,13 +1858,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/carpet/royalblue, /area/station/command/heads_quarters/captain/private) -"aEY" = ( -/obj/structure/cable, -/obj/effect/turf_decal/siding/wood, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/wood/tile, -/area/station/service/bar) "aFb" = ( /obj/machinery/power/apc/auto_name/directional/south, /obj/structure/cable, @@ -1875,14 +1875,6 @@ }, /turf/open/floor/carpet/orange, /area/station/service/theater) -"aFw" = ( -/obj/effect/turf_decal/tile/blue/opposingcorners{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/door/firedoor, -/turf/open/floor/iron/cafeteria, -/area/station/commons/locker) "aFz" = ( /obj/machinery/door/firedoor, /obj/machinery/door/airlock/public/glass{ @@ -2128,7 +2120,6 @@ }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/segment{ dir = 9 }, @@ -2185,11 +2176,6 @@ /obj/machinery/vending/cigarette, /turf/open/floor/iron, /area/station/commons/fitness/recreation) -"aKd" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/wood/parquet, -/area/station/cargo/boutique) "aKg" = ( /obj/effect/turf_decal/tile/neutral, /obj/structure/disposalpipe/segment{ @@ -2205,7 +2191,7 @@ /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/all/command/minisat, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) +/area/station/ai/satellite/uppersouth) "aKj" = ( /obj/machinery/computer/station_alert{ dir = 1 @@ -2230,23 +2216,21 @@ /turf/open/floor/plating, /area/station/maintenance/department/cargo) "aKJ" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/structure/sign/directions/engineering/directional/east{ - pixel_y = -8 +/obj/structure/sign/directions/command/directional/north{ + dir = 4; + pixel_y = -10 }, -/obj/structure/sign/directions/security/directional/east{ - dir = 1; - pixel_y = 8 +/obj/structure/sign/directions/engineering/directional/north{ + dir = 4; + pixel_y = 10 }, -/obj/structure/sign/directions/supply/directional/east{ - dir = 1 +/obj/structure/sign/directions/science/directional/north{ + dir = 4; + pixel_y = 0 }, -/turf/open/floor/iron, -/area/station/hallway/primary/central) +/turf/closed/wall, +/area/station/security/courtroom) "aKP" = ( -/obj/structure/cable, /turf/open/floor/iron/half, /area/station/service/hydroponics/garden) "aKS" = ( @@ -2280,7 +2264,7 @@ pixel_y = 8 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "aLe" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -2301,7 +2285,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/red_alert_access, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "aLA" = ( /obj/machinery/door/poddoor/massdriver_chapel, /obj/effect/turf_decal/stripes/full, @@ -2359,7 +2343,7 @@ /obj/item/electronics/apc, /obj/machinery/firealarm/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "aMx" = ( /obj/structure/cable, /obj/machinery/camera/autoname/motion/directional/south{ @@ -2372,7 +2356,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/spawner/random/maintenance/no_decals/three, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "aME" = ( /obj/structure/cable/multilayer/multiz, /obj/effect/turf_decal/stripes/line{ @@ -2480,8 +2464,6 @@ /area/station/command/heads_quarters/qm) "aNR" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, /turf/open/floor/iron/white, /area/station/medical/storage) "aNV" = ( @@ -2517,7 +2499,7 @@ /area/station/security/brig/entrance) "aOQ" = ( /turf/closed/wall/r_wall/rust, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "aOY" = ( /obj/structure/chair/stool/bar/directional/north, /obj/effect/turf_decal/siding/wood, @@ -2546,7 +2528,7 @@ }, /obj/effect/mapping_helpers/airlock/access/all/command/minisat, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "aPC" = ( /obj/effect/spawner/structure/window/plasma, /turf/open/floor/engine, @@ -2567,7 +2549,6 @@ pixel_y = -8; req_access = list("xenobiology") }, -/obj/structure/cable, /obj/machinery/shower/directional/south, /obj/effect/turf_decal{ icon = 'icons/obj/mining_zones/survival_pod.dmi'; @@ -2733,7 +2714,7 @@ }, /obj/machinery/camera/autoname/directional/east, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "aSS" = ( /obj/machinery/airalarm/directional/south, /obj/effect/turf_decal/tile/dark_green/opposingcorners, @@ -2865,10 +2846,10 @@ /area/station/service/cafeteria) "aVm" = ( /obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/lesser) "aVp" = ( @@ -2938,8 +2919,8 @@ "aXA" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/lesser) "aXD" = ( @@ -3191,6 +3172,7 @@ "bcm" = ( /obj/machinery/camera/autoname/directional/south, /obj/machinery/firealarm/directional/south, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/textured, /area/station/engineering/storage/tech) "bco" = ( @@ -3275,6 +3257,8 @@ dir = 8 }, /obj/item/trash/shrimp_chips, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) "bej" = ( @@ -3361,7 +3345,6 @@ /area/station/maintenance/department/science) "bfD" = ( /obj/effect/landmark/event_spawn, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/chapel{ dir = 1 @@ -3460,7 +3443,7 @@ name = "Aft Solar Access" }, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, @@ -3473,6 +3456,10 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/command/bridge) +"bhG" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/engineering/main) "bhL" = ( /obj/effect/turf_decal/siding/dark, /obj/machinery/door/firedoor/border_only, @@ -3533,7 +3520,7 @@ /area/station/engineering/supermatter/room) "biS" = ( /turf/closed/wall/r_wall/rust, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "bjb" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/item/kirbyplants/random/dead, @@ -3656,9 +3643,11 @@ /turf/open/floor/plating, /area/station/maintenance/department/medical) "bme" = ( -/obj/structure/sign/warning, -/turf/closed/wall/r_wall, -/area/station/ai_monitored/security/armory) +/obj/structure/sign/warning/directional/east, +/turf/closed/mineral/random/stationside/asteroid/porus{ + mineralChance = 20 + }, +/area/station/asteroid) "bmf" = ( /obj/effect/turf_decal/siding/white{ dir = 1 @@ -3901,17 +3890,6 @@ }, /turf/open/floor/plating, /area/station/maintenance/port/lesser) -"bqV" = ( -/obj/effect/turf_decal/tile/red{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/disposalpipe/segment{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/security/lockers) "bqX" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -3929,7 +3907,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "brx" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 8 @@ -3995,13 +3973,13 @@ /obj/item/electronics/airalarm, /obj/item/electronics/airlock, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) +/area/station/ai/satellite/uppersouth) "bsZ" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/structure/table/reinforced, /obj/item/pai_card, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "btl" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -4073,10 +4051,9 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "buw" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/iron/freezer, /area/station/commons/toilet/restrooms) @@ -4624,9 +4601,7 @@ "bDN" = ( /obj/item/stack/tile/iron/white, /obj/effect/decal/cleanable/dirt/dust, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 - }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/white/smooth_large, /area/station/medical/chemistry/minisat) "bDX" = ( @@ -4652,7 +4627,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "bEd" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/white/line{ @@ -4751,7 +4726,7 @@ /area/station/commons/vacant_room/commissary) "bFS" = ( /turf/open/openspace, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "bGc" = ( /obj/structure/table, /obj/item/stack/package_wrap, @@ -4778,7 +4753,7 @@ /obj/item/electronics/firelock, /obj/machinery/light/cold/dim/directional/south, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) +/area/station/ai/satellite/uppersouth) "bGk" = ( /turf/closed/wall/r_wall, /area/station/medical/chemistry) @@ -4846,7 +4821,6 @@ /turf/open/floor/iron, /area/station/engineering/atmos/upper) "bGW" = ( -/obj/structure/cable, /obj/effect/spawner/random/engineering/tracking_beacon, /turf/open/floor/iron, /area/station/command/bridge) @@ -4876,11 +4850,15 @@ /obj/item/paper, /obj/item/pen, /obj/effect/turf_decal/stripes/box, +/obj/machinery/door/poddoor/shutters/preopen{ + name = "Hydroponics Shutters"; + id = "hydroponics_shutters"; + dir = 8 + }, /turf/open/floor/iron, /area/station/service/hydroponics) "bHc" = ( /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood/parquet, /area/station/medical/psychology) @@ -4903,7 +4881,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "bHj" = ( /obj/structure/chair/sofa/bench/left{ dir = 1 @@ -4925,7 +4903,7 @@ /area/station/maintenance/department/cargo) "bIe" = ( /obj/structure/table, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = -3; pixel_y = 3 }, @@ -4982,7 +4960,7 @@ /area/station/maintenance/department/medical/central) "bJQ" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 + dir = 8 }, /obj/structure/cable, /turf/open/floor/iron/chapel{ @@ -5086,7 +5064,7 @@ /obj/effect/turf_decal/bot_white, /obj/machinery/status_display/ai/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "bNp" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -5100,7 +5078,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "bNz" = ( /obj/structure/rack, /obj/effect/turf_decal/tile/yellow/anticorner/contrasted{ @@ -5149,7 +5127,7 @@ pixel_y = 2 }, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "bNL" = ( /turf/closed/wall, /area/station/cargo/bitrunning/den) @@ -5174,7 +5152,7 @@ "bOl" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "bOr" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 1 @@ -5191,6 +5169,7 @@ dir = 4 }, /obj/effect/landmark/event_spawn, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood/tile, /area/station/command/corporate_showroom) "bOT" = ( @@ -5247,8 +5226,6 @@ /turf/open/floor/iron, /area/station/hallway/primary/fore) "bQc" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/stairs/left{ dir = 1 }, @@ -5333,7 +5310,7 @@ }, /obj/machinery/camera/autoname/directional/east, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "bSH" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -5422,7 +5399,7 @@ "bTO" = ( /obj/machinery/door/airlock/maintenance_hatch, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/turf_decal/sand/plating, /turf/open/floor/plating, /area/station/hallway/secondary/entry) @@ -5492,7 +5469,6 @@ "bUJ" = ( /obj/effect/landmark/start/shaft_miner, /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/miningoffice) "bUM" = ( @@ -5535,22 +5511,13 @@ /turf/open/floor/plating, /area/station/maintenance/department/cargo) "bVA" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, -/obj/structure/sign/directions/evac/directional/east{ - dir = 8 - }, -/obj/structure/sign/directions/science/directional/east{ - dir = 1; - pixel_y = -8 - }, -/obj/structure/sign/directions/medical/directional/east{ - dir = 8; - pixel_y = 8 +/obj/structure/cable, +/obj/machinery/door/poddoor/preopen{ + id = "capshut" }, -/turf/open/floor/iron, -/area/station/hallway/primary/central) +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/command/heads_quarters/captain/private) "bVY" = ( /obj/machinery/holopad{ pixel_x = 1 @@ -5702,8 +5669,8 @@ "bYF" = ( /obj/effect/turf_decal/arrows, /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) "bYP" = ( @@ -5759,7 +5726,7 @@ "bZH" = ( /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 + dir = 8 }, /turf/open/floor/wood, /area/station/service/lawoffice) @@ -5768,7 +5735,7 @@ /mob/living/simple_animal/bot/secbot/beepsky/armsky, /obj/effect/landmark/event_spawn, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "caq" = ( /obj/effect/spawner/surgery_tray/full/deployed, /obj/effect/turf_decal/tile/blue/fourcorners, @@ -5781,6 +5748,7 @@ /obj/effect/turf_decal/tile/dark_blue/half/contrasted, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/secondary/command) "cax" = ( @@ -5803,9 +5771,7 @@ /turf/open/floor/iron/white, /area/station/science/lobby) "caP" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 - }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) "caW" = ( @@ -5837,7 +5803,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "cbn" = ( /obj/machinery/conveyor{ dir = 4; @@ -5891,7 +5857,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "cca" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -5925,17 +5891,11 @@ }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ccT" = ( /obj/machinery/light/directional/west, /turf/open/floor/wood/large, /area/station/cargo/boutique) -"ccZ" = ( -/obj/effect/turf_decal/tile/neutral/fourcorners, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/service/chapel) "cda" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 8 @@ -6094,11 +6054,11 @@ /obj/machinery/power/smes{ charge = 5e+006 }, -/obj/structure/cable, /obj/machinery/light/directional/north, /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 1 }, +/obj/structure/cable, /turf/open/floor/iron, /area/station/engineering/gravity_generator) "cgj" = ( @@ -6177,7 +6137,6 @@ /area/station/cargo/lobby) "chF" = ( /obj/machinery/newscaster/directional/east, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment, /turf/open/floor/wood/large, @@ -6258,7 +6217,7 @@ icon_state = "catwalk-8" }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ciV" = ( /obj/effect/turf_decal/stripes/line{ dir = 10 @@ -6279,7 +6238,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/firealarm/directional/east, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "cjp" = ( /obj/effect/spawner/random/structure/grille, /turf/open/floor/plating, @@ -6362,8 +6321,6 @@ /area/station/medical/surgery) "clG" = ( /obj/machinery/duct, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/door/airlock/multi_tile/public/glass{ name = "Restrooms" }, @@ -6379,7 +6336,6 @@ /turf/open/floor/iron/dark, /area/station/engineering/atmos) "clM" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/table, /obj/item/storage/box/hug/medical, /turf/open/floor/iron, @@ -6564,7 +6520,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "cqH" = ( /obj/structure/transit_tube, /obj/structure/lattice, @@ -6602,7 +6558,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "crg" = ( /obj/effect/turf_decal/trimline/blue/corner{ dir = 1 @@ -6751,7 +6707,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "sci-entrance" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/machinery/door/firedoor, @@ -7118,22 +7074,10 @@ "cBb" = ( /turf/closed/wall, /area/station/medical/paramedic) -"cBh" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/tile/dark_blue/half/contrasted{ - dir = 4 - }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) "cBj" = ( /obj/structure/disposalpipe/segment, /turf/open/floor/wood, /area/station/commons/lounge) -"cBr" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/hallway/primary/central) "cBt" = ( /obj/structure/disposalpipe/segment{ dir = 10 @@ -7285,7 +7229,6 @@ /turf/open/floor/plating, /area/station/maintenance/department/cargo) "cEy" = ( -/obj/structure/cable, /obj/effect/landmark/event_spawn, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -7300,7 +7243,13 @@ /obj/structure/table/reinforced, /obj/item/book/manual/wiki/robotics_cyborgs, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) +"cEU" = ( +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, +/turf/open/floor/iron/white/smooth_large, +/area/station/medical/treatment_center) "cEV" = ( /obj/machinery/light_switch/directional/north, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, @@ -7364,7 +7313,6 @@ /obj/effect/turf_decal/stripes{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/extinguisher_cabinet/directional/west, /turf/open/floor/iron/dark, @@ -7423,7 +7371,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/turf_decal/sand/plating, @@ -7750,7 +7698,6 @@ /area/station/cargo/boutique) "cOb" = ( /obj/item/food/grown/banana, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/grass, /area/station/medical/chemistry) @@ -7847,7 +7794,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "cPQ" = ( /obj/machinery/atmospherics/pipe/smart/simple/purple/visible{ dir = 8 @@ -7981,7 +7928,8 @@ "cRM" = ( /obj/machinery/button/curtain{ id = "chapelc"; - pixel_y = 26 + pixel_y = 26; + dir = 1 }, /turf/open/floor/iron/chapel{ dir = 1 @@ -8042,7 +7990,6 @@ /turf/open/floor/wood, /area/station/service/theater) "cSy" = ( -/obj/structure/cable, /obj/effect/turf_decal/siding/white/corner{ dir = 4 }, @@ -8126,12 +8073,14 @@ /area/station/science/xenobiology) "cUk" = ( /obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, /area/station/science/lobby) "cUm" = ( /obj/effect/turf_decal/stripes/red/corner, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 + dir = 1 }, /turf/open/floor/iron/dark/smooth_large, /area/station/medical/morgue) @@ -8274,7 +8223,7 @@ /obj/effect/turf_decal/bot, /obj/effect/landmark/event_spawn, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "cWv" = ( /obj/structure/girder, /turf/open/floor/plating, @@ -8331,6 +8280,12 @@ /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/iron/dark, /area/station/maintenance/department/engine) +"cXn" = ( +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark, +/area/station/service/chapel) "cXo" = ( /obj/structure/barricade/wooden/crude, /obj/structure/holosign/barrier/atmos, @@ -8466,7 +8421,7 @@ /obj/structure/window/spawner/directional/east, /obj/structure/window/spawner/directional/north, /turf/open/misc/grass, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "cZp" = ( /obj/effect/turf_decal/sand/plating, /turf/open/floor/plating/reinforced/airless, @@ -8496,7 +8451,7 @@ /obj/structure/cable, /obj/machinery/flasher/directional/south, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "daK" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -8511,6 +8466,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/security/lockers) "dbl" = ( @@ -8615,7 +8571,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "dco" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment{ @@ -8670,6 +8626,15 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/construction/mining/aux_base) +"dcI" = ( +/obj/structure/cable, +/obj/structure/disposalpipe/segment{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/hallway/primary/central) "dcO" = ( /obj/machinery/vending/wardrobe/science_wardrobe, /obj/effect/turf_decal/delivery, @@ -8693,10 +8658,10 @@ "dda" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/commons/vacant_room/commissary) "ddb" = ( @@ -8730,6 +8695,11 @@ /obj/effect/landmark/start/hangover, /turf/open/floor/iron, /area/station/commons/fitness/recreation) +"deW" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/hallway/secondary/exit/departure_lounge) "deY" = ( /obj/effect/turf_decal/tile/neutral, /obj/machinery/firealarm/directional/east, @@ -8744,7 +8714,7 @@ "dfd" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "dfk" = ( /turf/open/floor/engine, /area/station/command/heads_quarters/rd) @@ -8773,7 +8743,9 @@ dir = 8 }, /obj/machinery/light_switch/directional/south{ - pixel_x = 26 + pixel_y = -10; + dir = 4; + pixel_x = 20 }, /turf/open/floor/iron, /area/station/security/brig/entrance) @@ -8905,9 +8877,7 @@ /area/station/maintenance/port/lesser) "dhv" = ( /obj/effect/landmark/start/shaft_miner, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 - }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron, /area/station/cargo/miningoffice) "dhN" = ( @@ -8921,6 +8891,7 @@ }, /obj/effect/turf_decal/tile/brown/half/contrasted, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/drone_bay) "dhO" = ( @@ -8933,7 +8904,6 @@ /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) "dhR" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/rack, /obj/item/wrench, /obj/item/knife/kitchen{ @@ -9034,8 +9004,6 @@ "dko" = ( /obj/effect/turf_decal/tile/purple/opposingcorners, /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, /area/station/science/lobby) "dkq" = ( @@ -9129,7 +9097,6 @@ /turf/open/floor/iron/dark, /area/station/medical/paramedic) "dla" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/stairs/right{ dir = 1 }, @@ -9196,7 +9163,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "sci-entrance" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/machinery/door/firedoor, @@ -9231,9 +9198,6 @@ /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, /turf/open/floor/iron/white, /area/station/medical/storage) "dni" = ( @@ -9452,7 +9416,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "dqK" = ( /obj/structure/lattice, /obj/machinery/atmospherics/pipe/heat_exchanging/manifold4w, @@ -9480,6 +9444,10 @@ }, /turf/open/floor/plating, /area/station/maintenance/department/cargo) +"dra" = ( +/obj/structure/sign/warning/directional/west, +/turf/open/misc/asteroid, +/area/station/asteroid) "drb" = ( /obj/machinery/newscaster/directional/west, /obj/machinery/vending/wardrobe/curator_wardrobe, @@ -9622,8 +9590,6 @@ /area/station/service/janitor) "dsY" = ( /obj/effect/turf_decal/trimline/yellow/filled/corner, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/engineering/gravity_generator) "dtc" = ( @@ -9687,6 +9653,12 @@ /obj/structure/cable, /turf/open/floor/engine, /area/station/engineering/supermatter/room) +"duf" = ( +/obj/item/stack/tile/iron/white, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/iron/white, +/area/station/medical/chemistry/minisat) "dum" = ( /obj/structure/table/wood, /obj/item/clothing/head/helmet/toggleable/justice/escape{ @@ -9742,19 +9714,22 @@ /turf/open/floor/plating, /area/station/maintenance/department/medical) "dvz" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 4 - }, /obj/structure/sign/directions/medical/directional/east{ dir = 8; - pixel_y = 8 + pixel_y = 8; + pixel_x = 0 }, /obj/structure/sign/directions/evac/directional/east{ - pixel_y = -8 + dir = 8; + pixel_x = 0 }, -/obj/structure/sign/directions/engineering/directional/east, -/turf/open/floor/iron, -/area/station/hallway/primary/central) +/obj/structure/sign/directions/science/directional/east{ + dir = 1; + pixel_y = -8; + pixel_x = 0 + }, +/turf/closed/wall, +/area/station/maintenance/port/lesser) "dvC" = ( /obj/effect/turf_decal/sand/plating, /obj/structure/grille, @@ -9839,7 +9814,7 @@ /area/station/hallway/primary/central) "dyb" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 + dir = 4 }, /turf/open/floor/iron/dark/textured, /area/station/science/robotics/lab) @@ -9851,6 +9826,9 @@ /area/station/science/ordnance) "dyv" = ( /obj/effect/landmark/event_spawn, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/floor/iron, /area/station/engineering/lobby) "dyA" = ( @@ -10095,7 +10073,6 @@ /turf/open/floor/plating, /area/station/science/xenobiology) "dBn" = ( -/obj/structure/cable, /obj/effect/turf_decal/tile/dark_blue/half/contrasted, /obj/machinery/incident_display/bridge/directional/south, /turf/open/floor/iron, @@ -10197,7 +10174,7 @@ name = "EVA Requests Console" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "dCv" = ( /obj/structure/railing, /obj/structure/dresser, @@ -10312,7 +10289,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/door/airlock/maintenance_hatch, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/structure/disposalpipe/segment, @@ -10345,18 +10322,24 @@ /obj/machinery/door/airlock/engineering{ name = "Floor Electrical Relay" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/catwalk_floor, /area/station/maintenance/central/lesser) "dGh" = ( /obj/structure/cable, /turf/open/floor/carpet/executive, /area/station/command/heads_quarters/captain/private) +"dGk" = ( +/obj/structure/sign/warning/directional/south, +/turf/closed/mineral/random/stationside/asteroid/porus{ + mineralChance = 20 + }, +/area/station/asteroid) "dGq" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 @@ -10443,7 +10426,6 @@ /turf/open/floor/iron/white, /area/station/science/auxlab/firing_range) "dHk" = ( -/obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 }, @@ -10524,6 +10506,7 @@ /obj/structure/disposalpipe/sorting/mail/flip, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, /turf/open/floor/iron/white, /area/station/science/research) "dIv" = ( @@ -10895,7 +10878,7 @@ /obj/effect/landmark/start/medical_doctor, /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 + dir = 4 }, /turf/open/floor/iron/white/textured_large, /area/station/medical/exam_room) @@ -10948,7 +10931,7 @@ /obj/effect/mapping_helpers/airlock/access/all/command/minisat, /obj/machinery/door/firedoor, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "dQr" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/dark/textured, @@ -11037,12 +11020,12 @@ "dSl" = ( /obj/machinery/door/airlock/maintenance_hatch, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/central/greater) "dSn" = ( @@ -11174,7 +11157,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "dTR" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /obj/effect/turf_decal/siding/white{ @@ -11206,7 +11189,7 @@ "dUl" = ( /obj/effect/landmark/event_spawn, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) +/area/station/ai/satellite/uppersouth) "dUA" = ( /obj/structure/table/reinforced, /obj/effect/turf_decal/tile/dark_blue/half/contrasted{ @@ -11247,9 +11230,6 @@ /obj/effect/turf_decal/trimline/blue/filled/corner{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, /turf/open/floor/iron/white, /area/station/medical/storage) "dVp" = ( @@ -11269,7 +11249,7 @@ dir = 8 }, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "dVx" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 5 @@ -11304,7 +11284,7 @@ /obj/structure/window/reinforced/spawner/directional/west, /obj/machinery/firealarm/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "dWl" = ( /obj/effect/turf_decal/tile/neutral/opposingcorners, /obj/effect/turf_decal/siding/wideplating/dark, @@ -11534,7 +11514,7 @@ /area/station/engineering/atmos) "dZy" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "dZA" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -11593,7 +11573,8 @@ id = "theater_curtains"; name = "curtain control"; pixel_y = 32; - req_access = list("theatre") + req_access = list("theatre"); + dir = 1 }, /obj/structure/disposalpipe/segment{ dir = 4 @@ -11616,7 +11597,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/landmark/event_spawn, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "ebz" = ( /obj/effect/turf_decal/tile/yellow/half/contrasted{ dir = 1 @@ -11935,6 +11916,9 @@ pixel_y = 3 }, /obj/item/defibrillator/loaded, +/obj/item/defibrillator/loaded{ + pixel_y = -4 + }, /obj/structure/window/spawner/directional/east, /turf/open/floor/iron/white, /area/station/medical/storage) @@ -11999,7 +11983,7 @@ name = "Solar Maintenance" }, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -12012,7 +11996,7 @@ dir = 4 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "eiJ" = ( /obj/effect/turf_decal/trimline/blue/filled/corner{ dir = 1 @@ -12139,6 +12123,14 @@ dir = 4 }, /area/station/service/chapel) +"ekF" = ( +/obj/effect/turf_decal/tile/blue/opposingcorners{ + dir = 1 + }, +/obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/cafeteria, +/area/station/commons/locker) "ekL" = ( /obj/effect/turf_decal/tile/neutral, /obj/structure/disposalpipe/segment{ @@ -12192,11 +12184,11 @@ /area/station/engineering/atmos/upper) "ely" = ( /obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/turf_decal/sand/plating, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/central/greater) "elE" = ( @@ -12254,7 +12246,7 @@ /area/station/service/kitchen) "enz" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 + dir = 1 }, /turf/open/floor/iron/dark, /area/station/engineering/atmospherics_engine) @@ -12266,6 +12258,7 @@ /obj/effect/spawner/random/structure/chair_comfy{ dir = 4 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/command/bridge) "eoo" = ( @@ -12301,7 +12294,7 @@ name = "Solar Maintenance" }, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 1 }, @@ -12431,10 +12424,6 @@ }, /turf/open/floor/iron/white, /area/station/medical/medbay/central) -"eqQ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark/textured, -/area/station/science/robotics/lab) "era" = ( /obj/structure/cable, /obj/machinery/door/firedoor, @@ -12477,7 +12466,7 @@ dir = 4 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "esc" = ( /obj/effect/turf_decal/tile/yellow{ dir = 8 @@ -12876,7 +12865,7 @@ pixel_y = -12 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ezg" = ( /obj/effect/spawner/structure/window/reinforced, /obj/machinery/door/poddoor/preopen{ @@ -12918,11 +12907,6 @@ }, /turf/open/floor/iron/dark/textured, /area/station/medical/morgue) -"ezP" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/cargo/storage) "eAg" = ( /obj/effect/turf_decal/siding/wood/corner, /obj/effect/turf_decal/siding/wood{ @@ -12973,7 +12957,7 @@ "eAW" = ( /obj/structure/cable, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "eAZ" = ( /obj/structure/railing, /obj/machinery/door/firedoor/border_only, @@ -13041,11 +13025,11 @@ /area/station/science/ordnance/storage) "eBK" = ( /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/dark_blue/half/contrasted{ dir = 8 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/command/bridge) "eBY" = ( @@ -13202,15 +13186,10 @@ /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 1 }, -/obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/structure/cable, /turf/open/floor/iron, /area/station/security) -"eDV" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/wood, -/area/station/commons/lounge) "eEa" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -13246,7 +13225,7 @@ /obj/structure/stairs/east, /obj/structure/railing, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "eEC" = ( /obj/machinery/barsign/directional/south, /obj/machinery/vending/cigarette, @@ -13382,7 +13361,6 @@ /obj/effect/turf_decal/siding/green, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/commons/storage/art) "eGM" = ( @@ -13490,6 +13468,9 @@ /area/station/maintenance/department/science) "eIY" = ( /obj/effect/landmark/event_spawn, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/medical/storage) "eJi" = ( @@ -13545,7 +13526,7 @@ /obj/structure/flora/bush/flowers_pp/style_random, /obj/structure/window/spawner/directional/south, /turf/open/misc/grass, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "eJS" = ( /obj/effect/turf_decal/bot, /obj/machinery/portable_atmospherics/canister/air, @@ -13655,7 +13636,7 @@ /obj/effect/mapping_helpers/airlock/access/all/command/minisat, /obj/machinery/door/firedoor, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) +/area/station/ai/satellite/uppersouth) "eMk" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/green/visible, /obj/effect/turf_decal/stripes{ @@ -13678,7 +13659,7 @@ /area/station/security) "eMD" = ( /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "eMG" = ( /obj/structure/closet/firecloset, /turf/open/floor/iron/textured, @@ -13719,7 +13700,7 @@ "eOn" = ( /obj/effect/landmark/atmospheric_sanity/ignore_area, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "eOx" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -13748,6 +13729,10 @@ /area/station/command/heads_quarters/cmo) "eOY" = ( /obj/effect/spawner/structure/window, +/obj/machinery/door/poddoor/shutters/preopen{ + name = "Hydroponics Shutters"; + id = "hydroponics_shutters" + }, /turf/open/floor/plating, /area/station/service/hydroponics) "eOZ" = ( @@ -13814,7 +13799,7 @@ /obj/item/radio/intercom/directional/south, /obj/effect/spawner/random/armory/dragnet, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "eQY" = ( /obj/structure/cable, /turf/open/floor/iron/freezer, @@ -14041,16 +14026,6 @@ /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 }, -/obj/machinery/button/door/directional/north{ - id = "triage"; - name = "triage button"; - normaldoorcontrol = 1; - pixel_x = -26 - }, -/obj/machinery/button/ticket_machine{ - pixel_x = -26; - pixel_y = 36 - }, /turf/open/floor/iron/white, /area/station/medical/exam_room) "eVA" = ( @@ -14065,7 +14040,7 @@ pixel_y = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "eVG" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/spawner/random/trash/hobo_squat, @@ -14079,7 +14054,6 @@ req_access = list("robotics") }, /obj/effect/turf_decal/tile/purple/half/contrasted, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, /area/station/science/lobby) "eWB" = ( @@ -14099,7 +14073,7 @@ "eWD" = ( /obj/structure/cable/layer3, /turf/open/floor/catwalk_floor/iron_dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "eWJ" = ( /obj/item/radio/intercom/directional/south, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ @@ -14112,7 +14086,7 @@ dir = 4 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "eXb" = ( /obj/machinery/door/airlock{ id_tag = "u2"; @@ -14260,7 +14234,6 @@ /obj/effect/turf_decal/trimline/neutral/filled/warning{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/mannequin/skeleton, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, @@ -14376,7 +14349,7 @@ /area/station/medical/pharmacy) "faK" = ( /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "faP" = ( /obj/effect/turf_decal/siding/wood, /obj/machinery/holopad, @@ -14396,7 +14369,6 @@ /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 4 }, -/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/segment{ @@ -14407,8 +14379,6 @@ "fbC" = ( /obj/item/kirbyplants/random, /obj/effect/turf_decal/bot, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/camera/autoname/directional/west, /turf/open/floor/iron, /area/station/hallway/secondary/command) @@ -14531,9 +14501,6 @@ /area/station/hallway/primary/central) "feN" = ( /obj/effect/turf_decal/tile/red, -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/security) "feQ" = ( @@ -14557,7 +14524,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ffk" = ( /obj/structure/chair/stool/directional/west, /turf/open/floor/wood, @@ -14634,7 +14601,7 @@ name = "Port Bow Solar Access" }, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/structure/cable, @@ -14667,7 +14634,7 @@ /obj/structure/sign/poster/official/random/directional/north, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "fhH" = ( /obj/effect/mapping_helpers/airlock/access/all/engineering/general, /obj/machinery/door/airlock/engineering/glass{ @@ -14689,14 +14656,13 @@ "fhN" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/science) "fhP" = ( /obj/structure/railing/corner{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/landmark/firealarm_sanity, /turf/open/floor/catwalk_floor/iron_white, /area/station/science/lobby) @@ -14982,7 +14948,7 @@ icon_state = "catwalk-13" }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "fnU" = ( /obj/machinery/door/airlock/virology/glass{ name = "Virology Lab" @@ -15050,13 +15016,13 @@ /turf/open/floor/iron/white, /area/station/medical/medbay/central) "fpm" = ( -/obj/structure/cable, /obj/effect/turf_decal/tile/dark_blue, /obj/effect/turf_decal/tile/dark_blue{ dir = 1 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/secondary/command) "fpo" = ( @@ -15127,7 +15093,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/mapping_helpers/airlock/access/all/command/minisat, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "fqs" = ( /obj/structure/cable, /obj/structure/railing{ @@ -15154,11 +15120,6 @@ }, /turf/open/misc/asteroid/airless, /area/station/asteroid) -"fqF" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white, -/area/station/medical/exam_room) "frd" = ( /obj/machinery/vending/wardrobe/hydro_wardrobe, /obj/effect/turf_decal/stripes/line{ @@ -15204,7 +15165,7 @@ /area/station/medical/morgue) "fry" = ( /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "frG" = ( /obj/structure/railing{ dir = 4 @@ -15358,7 +15319,9 @@ /turf/open/floor/iron/dark, /area/station/security/lockers) "ftR" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, /obj/effect/turf_decal/tile/dark_blue{ dir = 8 }, @@ -15377,13 +15340,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, /area/station/maintenance/central/greater) -"fun" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/turf_decal/tile/dark_blue/half/contrasted{ - dir = 8 - }, -/turf/open/floor/iron/dark, -/area/station/command/bridge) "fuo" = ( /obj/effect/landmark/start/geneticist, /obj/structure/chair/office{ @@ -15392,10 +15348,10 @@ /turf/open/floor/glass/reinforced, /area/station/science/genetics) "fus" = ( +/obj/machinery/holopad, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/holopad, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) "fux" = ( @@ -15534,7 +15490,7 @@ /obj/machinery/light/small/dim/directional/north, /obj/effect/turf_decal/stripes, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "fxp" = ( /turf/closed/indestructible/riveted{ desc = "A wall impregnated with Fixium, able to withstand massive explosions with ease"; @@ -15577,7 +15533,7 @@ }, /obj/effect/turf_decal/tile/red/half/contrasted, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "fyn" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -15587,23 +15543,17 @@ /obj/machinery/door/airlock/medical{ name = "Surgery" }, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/any/medical/surgery, /obj/effect/turf_decal/tile/blue/fourcorners, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 8 + }, /turf/open/floor/iron/white/smooth_large, /area/station/medical/surgery) -"fyA" = ( -/obj/effect/turf_decal/tile/red/half/contrasted, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/security) "fyC" = ( /obj/effect/turf_decal/stripes/corner{ dir = 1 @@ -15611,7 +15561,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "fyJ" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/general/hidden, /obj/machinery/door/airlock/command/glass{ @@ -15683,7 +15633,7 @@ "fzK" = ( /obj/machinery/door/airlock/maintenance_hatch, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -15731,7 +15681,7 @@ "fAg" = ( /obj/machinery/door/airlock/maintenance_hatch, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/decal/cleanable/dirt, @@ -15751,7 +15701,6 @@ /area/station/maintenance/central/greater) "fAR" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/cable, /obj/effect/turf_decal/tile/red, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, @@ -15961,6 +15910,8 @@ "fEa" = ( /obj/structure/railing/corner, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/corner, /area/station/command/meeting_room) "fEe" = ( @@ -15970,7 +15921,7 @@ dir = 4 }, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "fEm" = ( /obj/machinery/atmospherics/components/binary/pump/on{ dir = 1; @@ -16075,14 +16026,6 @@ /obj/structure/cable, /turf/open/floor/iron/white, /area/station/medical/treatment_center) -"fFz" = ( -/obj/effect/turf_decal/bot_white, -/obj/effect/spawner/random/maintenance, -/obj/effect/spawner/random/structure/closet_empty/crate, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/cargo/storage) "fFE" = ( /obj/effect/decal/cleanable/rubble, /turf/open/misc/asteroid, @@ -16113,7 +16056,7 @@ /obj/effect/landmark/event_spawn, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/uppernorth) +/area/station/ai/satellite/uppernorth) "fGo" = ( /obj/effect/turf_decal/bot{ dir = 1 @@ -16202,6 +16145,15 @@ }, /turf/open/floor/iron, /area/station/engineering/main) +"fHI" = ( +/obj/machinery/door/firedoor, +/obj/effect/turf_decal/tile/purple/anticorner/contrasted{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/white, +/area/station/science/lobby) "fHJ" = ( /obj/effect/turf_decal/siding/white{ dir = 6 @@ -16274,6 +16226,8 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/engineering/gravity_generator) "fIX" = ( @@ -16354,8 +16308,6 @@ /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/engineering/gravity_generator) "fLe" = ( @@ -16462,7 +16414,7 @@ "fNk" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/uppernorth) +/area/station/ai/satellite/uppernorth) "fNn" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/decal/cleanable/dirt/dust, @@ -16692,7 +16644,6 @@ /obj/effect/turf_decal/siding/wood{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/item/radio/intercom/command/directional/east, /obj/machinery/suit_storage_unit/captain{ @@ -16816,7 +16767,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/turf_decal/stripes/line, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "fSk" = ( /obj/structure/chair/office{ dir = 1 @@ -16863,9 +16814,6 @@ /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 6 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, /turf/open/floor/iron/white, /area/station/medical/storage) "fSP" = ( @@ -16896,13 +16844,13 @@ name = "Cyborg Entertainment Closet"; req_access = list("something only silicons open") }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/locked, /obj/effect/decal/cleanable/blood/old, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/uppernorth) +/area/station/ai/satellite/uppernorth) "fTl" = ( /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -16925,6 +16873,8 @@ /obj/structure/disposalpipe/segment{ dir = 9 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/science/research) "fTX" = ( @@ -17024,7 +16974,7 @@ "fVI" = ( /obj/machinery/door/airlock/maintenance_hatch, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/decal/cleanable/dirt/dust, @@ -17118,7 +17068,7 @@ /obj/effect/mapping_helpers/airlock/access/any/service/general, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, /obj/effect/decal/cleanable/dirt/dust, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/iron/dark, @@ -17147,7 +17097,6 @@ /turf/open/floor/iron/cafeteria, /area/station/commons/locker) "fXU" = ( -/obj/structure/cable, /obj/effect/spawner/xmastree, /turf/open/floor/wood, /area/station/commons/lounge) @@ -17280,7 +17229,6 @@ /obj/effect/turf_decal/siding/wood{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/carpet, /area/station/service/chapel) "gak" = ( @@ -17432,6 +17380,8 @@ /area/station/cargo/storage) "gcV" = ( /obj/effect/mapping_helpers/broken_floor, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) "gcZ" = ( @@ -17624,7 +17574,7 @@ /obj/item/food/grown/harebell, /obj/item/food/grown/harebell, /turf/open/floor/iron/chapel{ - dir = 1 + dir = 4 }, /area/station/service/chapel) "ghp" = ( @@ -17652,6 +17602,10 @@ desc = "Looks like a knock-off chem-master. Perhaps useful for separating liquids when mixing drinks precisely. Also dispenses condiments."; name = "HoochMaster Deluxe" }, +/obj/machinery/button/door/directional/west{ + name = "Bar shuttters"; + id = "bar_shutters" + }, /turf/open/floor/iron/dark, /area/station/service/bar) "ghU" = ( @@ -17692,7 +17646,9 @@ /turf/open/floor/plating, /area/station/maintenance/department/medical/central) "giv" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, /turf/open/floor/iron/dark, /area/station/command/corporate_showroom) "giy" = ( @@ -17722,13 +17678,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor/iron_white, /area/station/science/lab) -"giK" = ( -/obj/effect/turf_decal/tile/brown/half/contrasted{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/cargo/drone_bay) "gjt" = ( /obj/machinery/pdapainter/medbay, /obj/effect/turf_decal/trimline/dark_blue/filled/line{ @@ -17868,7 +17817,7 @@ uses = 10 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "gls" = ( /obj/effect/turf_decal/tile/neutral, /obj/effect/turf_decal/tile/neutral{ @@ -18002,9 +17951,9 @@ }, /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/any/medical/general, -/obj/effect/mapping_helpers/airlock/unres, /obj/structure/cable, /obj/structure/disposalpipe/segment, +/obj/effect/mapping_helpers/airlock/unres, /turf/open/floor/iron/white, /area/station/medical/exam_room) "gok" = ( @@ -18256,7 +18205,6 @@ "gsn" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/miningoffice) "gsM" = ( @@ -18264,7 +18212,7 @@ dir = 8 }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 + dir = 1 }, /turf/open/floor/iron, /area/station/engineering/lobby) @@ -18296,15 +18244,11 @@ /obj/structure/railing/corner, /obj/structure/cable/layer3, /turf/open/floor/catwalk_floor/iron_dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "gty" = ( /obj/effect/landmark/carpspawn, /turf/open/floor/plating/airless, /area/station/science/ordnance/bomb) -"gtB" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white, -/area/station/science/lobby) "gtE" = ( /obj/machinery/door/poddoor/shutters/window/preopen{ dir = 8; @@ -18339,9 +18283,8 @@ "gub" = ( /obj/machinery/firealarm/directional/north, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "guk" = ( /obj/machinery/vending/wardrobe/gene_wardrobe, /turf/open/floor/iron/white/textured, @@ -18518,9 +18461,8 @@ /turf/open/floor/plating, /area/station/science/xenobiology) "gwA" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/spawner/random/engineering/tracking_beacon, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/medical/storage) "gwE" = ( @@ -18566,7 +18508,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/structure/cable/layer3, /turf/open/floor/iron/dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "gxy" = ( /obj/machinery/light/small/dim/directional/west, /obj/effect/decal/cleanable/blood/tracks, @@ -18642,7 +18584,8 @@ id = "theater_curtains"; name = "curtain control"; pixel_x = 32; - req_access = list("theatre") + req_access = list("theatre"); + dir = 4 }, /obj/effect/turf_decal/siding/wood{ dir = 8 @@ -18835,7 +18778,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "gBy" = ( /obj/structure/sign/warning/electric_shock/directional/south, /turf/open/floor/plating, @@ -18963,8 +18906,6 @@ /obj/effect/turf_decal/siding/wood{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/trunk/multiz/down{ dir = 1 }, @@ -19102,7 +19043,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/recharge_floor, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "gGm" = ( /obj/effect/spawner/random/engineering/tank, /turf/open/floor/plating, @@ -19216,7 +19157,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "gHS" = ( /obj/structure/cable, /obj/effect/turf_decal/tile/red/half/contrasted{ @@ -19226,7 +19167,6 @@ /turf/open/floor/iron, /area/station/security/breakroom) "gHX" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/carpet/executive, /area/station/command/heads_quarters/captain/private) @@ -19255,7 +19195,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/firealarm/directional/north, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "gIw" = ( /obj/machinery/door/airlock/research/glass{ name = "Robotics Lab" @@ -19317,7 +19257,7 @@ /obj/structure/window/spawner/directional/north, /mob/living/basic/butterfly, /turf/open/misc/grass, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "gJA" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -19326,10 +19266,10 @@ /turf/open/floor/catwalk_floor/iron_dark, /area/station/cargo/bitrunning/den) "gJC" = ( -/obj/structure/cable, /obj/effect/turf_decal/siding/white{ dir = 8 }, +/obj/structure/cable, /turf/open/floor/iron/large, /area/station/service/hydroponics/garden) "gJE" = ( @@ -19424,7 +19364,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "gLK" = ( /obj/structure/table/wood, /obj/effect/turf_decal/siding/wood{ @@ -19487,7 +19427,7 @@ "gMH" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -19566,7 +19506,7 @@ /area/station/medical/pharmacy) "gNV" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "gNZ" = ( /obj/effect/turf_decal/tile/yellow{ dir = 4 @@ -19614,14 +19554,6 @@ }, /turf/open/floor/iron/white/textured, /area/station/science/genetics) -"gOG" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/wood/tile, -/area/station/service/bar) "gOY" = ( /turf/closed/wall/r_wall, /area/station/science/ordnance) @@ -19649,7 +19581,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "gPZ" = ( /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 4 @@ -19677,7 +19609,7 @@ }, /obj/machinery/holopad, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "gQt" = ( /obj/machinery/door/airlock{ id_tag = "Cabin6"; @@ -19696,12 +19628,6 @@ /obj/structure/sign/warning/directional/west, /turf/closed/wall/rust, /area/station/medical/chemistry/minisat) -"gQN" = ( -/obj/effect/turf_decal/stripes/line, -/obj/effect/turf_decal/tile/purple/half/contrasted, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white, -/area/station/science/lobby) "gRp" = ( /obj/item/kirbyplants/random, /obj/effect/turf_decal/trimline/blue/filled/line{ @@ -19715,14 +19641,14 @@ /obj/structure/cable/layer3, /obj/structure/cable, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "gRA" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/airalarm/directional/north, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "gRG" = ( /obj/effect/turf_decal/stripes, /turf/open/floor/engine, @@ -19769,8 +19695,8 @@ /turf/open/floor/holofloor/dark, /area/station/command/heads_quarters/cmo) "gSJ" = ( -/obj/effect/decal/cleanable/dirt/dust, /obj/structure/disposalpipe/segment, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/iron/white, /area/station/medical/chemistry/minisat) "gSY" = ( @@ -19898,6 +19824,10 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/button/door/directional/north{ + name = "Hydroponics shutters"; + id = "hydroponics_shutters" + }, /turf/open/floor/iron, /area/station/service/hydroponics) "gUv" = ( @@ -20006,7 +19936,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "gWX" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -20081,7 +20011,6 @@ dir = 8 }, /obj/machinery/airalarm/directional/west, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/engineering/atmospherics_engine) @@ -20096,7 +20025,7 @@ /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/turf_decal/siding/wood, @@ -20132,6 +20061,9 @@ /area/station/engineering/atmos) "gZe" = ( /obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, /turf/open/floor/iron, /area/station/security/execution/transfer) "gZk" = ( @@ -20179,7 +20111,6 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/security/checkpoint/science) "gZF" = ( @@ -20287,7 +20218,6 @@ /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 1 }, -/obj/structure/cable, /obj/structure/disposalpipe/segment{ dir = 9 }, @@ -20479,7 +20409,7 @@ "hep" = ( /obj/machinery/door/airlock/maintenance_hatch, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, @@ -20542,7 +20472,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "hfn" = ( /obj/structure/chair/office{ dir = 1 @@ -20581,7 +20511,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "hfS" = ( /obj/machinery/door/airlock{ id_tag = "Cabin5"; @@ -20635,7 +20565,7 @@ /obj/machinery/door/airlock/maintenance/external, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/structure/barricade/wooden, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -20743,7 +20673,6 @@ /obj/structure/chair{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood, /area/station/service/lawoffice) @@ -20828,7 +20757,7 @@ /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /obj/effect/mapping_helpers/airlock/abandoned, /obj/effect/mapping_helpers/burnt_floor, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -20857,7 +20786,6 @@ /area/station/science/lobby) "hlh" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/segment{ dir = 4 }, @@ -20991,7 +20919,7 @@ "hna" = ( /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "hnh" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 4 @@ -21036,6 +20964,11 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "capspace" }, +/obj/machinery/button/door/directional/north{ + id = "cap_ext"; + name = "bolt control"; + specialfunctions = 4 + }, /turf/open/floor/engine, /area/station/command/heads_quarters/captain/private) "hnJ" = ( @@ -21045,7 +20978,7 @@ /obj/effect/mapping_helpers/airlock/access/all/security/armory, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "hnL" = ( /obj/structure/tank_holder/extinguisher, /obj/machinery/light/small/dim/directional/south, @@ -21053,7 +20986,7 @@ dir = 1 }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "hnY" = ( /obj/effect/turf_decal/siding/wood{ dir = 9 @@ -21120,23 +21053,19 @@ /turf/open/floor/wood/tile, /area/station/service/bar) "hpB" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/structure/sign/directions/security/directional/west{ - dir = 1 +/obj/structure/sign/directions/medical/directional/east{ + dir = 8; + pixel_y = 8; + pixel_x = 0 }, -/obj/structure/sign/directions/supply/directional/west{ - dir = 1; - pixel_y = 8 +/obj/structure/sign/directions/engineering/directional/east{ + pixel_x = 0 }, -/obj/structure/sign/directions/science/directional/west{ - dir = 1; - pixel_y = -8 +/obj/structure/sign/directions/evac/directional/east{ + pixel_y = -8; + pixel_x = 0 }, -/turf/open/floor/iron, +/turf/closed/wall, /area/station/hallway/primary/central) "hpT" = ( /obj/machinery/door/airlock/command{ @@ -21404,7 +21333,6 @@ dir = 4 }, /obj/machinery/airalarm/directional/west, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/carpet, /area/station/service/chapel) "htN" = ( @@ -21540,7 +21468,7 @@ pixel_y = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "hvT" = ( /obj/effect/turf_decal/tile/neutral{ dir = 8 @@ -21550,7 +21478,7 @@ "hvV" = ( /obj/machinery/nuclearbomb/selfdestruct, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "hwb" = ( /obj/structure/disposalpipe/segment{ dir = 6 @@ -21692,7 +21620,8 @@ }, /obj/machinery/button/flasher{ id = "executionflash"; - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/machinery/airalarm/directional/east, /turf/open/floor/iron/dark, @@ -21702,7 +21631,7 @@ /area/station/hallway/secondary/exit/departure_lounge) "hAa" = ( /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "hAd" = ( /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 8 @@ -21713,7 +21642,7 @@ "hAg" = ( /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 + dir = 4 }, /turf/open/floor/carpet/executive, /area/station/command/heads_quarters/captain/private) @@ -21756,7 +21685,7 @@ pixel_y = 10 }, /turf/open/floor/iron/chapel{ - dir = 4 + dir = 1 }, /area/station/service/chapel) "hBi" = ( @@ -21767,18 +21696,14 @@ /obj/machinery/camera/autoname/directional/east, /turf/open/floor/iron, /area/station/commons/storage/tools) -"hBD" = ( -/obj/effect/turf_decal/tile/red/half/contrasted{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/security) "hBF" = ( /obj/structure/cable, /turf/open/floor/iron/dark, /area/station/science/xenobiology) +"hBQ" = ( +/obj/structure/cable, +/turf/open/floor/iron/white, +/area/station/science/lobby) "hBX" = ( /obj/machinery/computer/records/security, /obj/effect/turf_decal/tile/green/anticorner/contrasted{ @@ -21941,7 +21866,7 @@ /area/station/service/theater) "hED" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "hEI" = ( /obj/structure/cable, /obj/effect/turf_decal/tile/red/half/contrasted{ @@ -22018,11 +21943,13 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/science/lobby) "hGh" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 + dir = 4 }, /turf/open/floor/iron/chapel{ dir = 1 @@ -22076,7 +22003,7 @@ /obj/machinery/light/small/dim/directional/west, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "hHa" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/cobweb/cobweb2, @@ -22142,7 +22069,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/firealarm/directional/west, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "hHS" = ( /obj/machinery/airalarm/directional/north, /obj/structure/cable, @@ -22310,6 +22237,8 @@ /turf/open/floor/iron/white/textured_large, /area/station/science/xenobiology) "hLG" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/command/bridge) @@ -22366,7 +22295,7 @@ icon_state = "catwalk-4" }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "hNG" = ( /obj/effect/turf_decal/siding/green, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -22378,9 +22307,7 @@ /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/airalarm/directional/west, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, /area/station/medical/chemistry) "hNP" = ( @@ -22504,7 +22431,7 @@ }, /obj/machinery/light/cold/dim/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/uppernorth) +/area/station/ai/satellite/uppernorth) "hPF" = ( /obj/machinery/power/apc/auto_name/directional/east, /obj/structure/closet/crate/trashcart, @@ -22563,9 +22490,7 @@ /area/station/cargo/storage) "hQy" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 - }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron, /area/station/cargo/storage) "hQA" = ( @@ -22584,7 +22509,7 @@ /obj/structure/cable, /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -22721,7 +22646,6 @@ /area/station/hallway/secondary/exit/departure_lounge) "hSi" = ( /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/turf_decal/tile/dark_blue/half/contrasted{ dir = 8 }, @@ -22793,6 +22717,8 @@ dir = 4 }, /obj/effect/mapping_helpers/mail_sorting/security/general, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/security) "hTf" = ( @@ -22800,7 +22726,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "hTl" = ( /obj/machinery/computer/records/medical{ dir = 1 @@ -22846,7 +22772,7 @@ "hUm" = ( /obj/machinery/light/cold/dim/directional/south, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "hUo" = ( /obj/machinery/shieldgen, /obj/effect/decal/cleanable/dirt, @@ -22982,7 +22908,7 @@ dir = 8 }, /turf/open/floor/plating/elevatorshaft, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "hWx" = ( /obj/effect/spawner/random/structure/closet_empty/crate/with_loot, /obj/structure/broken_flooring/corner/directional/north, @@ -23132,7 +23058,7 @@ "hZM" = ( /obj/machinery/light/cold/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "hZN" = ( /obj/structure/flora/bush/sparsegrass/style_random, /obj/item/food/grown/banana, @@ -23194,7 +23120,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "ibl" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -23352,7 +23278,7 @@ "idU" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "idV" = ( /obj/docking_port/stationary{ dwidth = 3; @@ -23455,7 +23381,7 @@ /area/space/nearstation) "ifj" = ( /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "ifl" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -23555,6 +23481,7 @@ "igS" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/floor/wood/tile, /area/station/service/bar) "ihd" = ( @@ -23601,6 +23528,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 4 }, +/obj/structure/sign/warning/vacuum/external/directional/west, /turf/open/floor/iron/textured, /area/station/cargo/miningoffice) "iin" = ( @@ -23697,7 +23625,7 @@ pixel_x = 3; pixel_y = 12 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = -6; pixel_y = 4 }, @@ -23738,7 +23666,7 @@ /obj/structure/transport/linear/public, /obj/machinery/holopad, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ilx" = ( /obj/machinery/smartfridge/organ, /turf/open/floor/plating, @@ -23801,7 +23729,7 @@ "imZ" = ( /obj/effect/landmark/atmospheric_sanity/ignore_area, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/uppernorth) +/area/station/ai/satellite/uppernorth) "ina" = ( /obj/effect/spawner/random/structure/steam_vent, /obj/effect/decal/cleanable/dirt/dust, @@ -23826,7 +23754,7 @@ dir = 1 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "inz" = ( /obj/machinery/door/airlock/research{ glass = 1; @@ -23869,7 +23797,6 @@ /area/station/service/lawoffice) "iom" = ( /obj/effect/mapping_helpers/dead_body_placer, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/medical/morgue) "iov" = ( @@ -23880,7 +23807,6 @@ /turf/open/floor/carpet/purple, /area/station/service/library) "iow" = ( -/obj/structure/cable, /obj/effect/turf_decal/tile/dark_blue, /obj/structure/disposalpipe/junction/flip{ dir = 1 @@ -23918,7 +23844,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ipq" = ( /obj/structure/table, /obj/item/reagent_containers/condiment/saltshaker{ @@ -23977,7 +23903,7 @@ "ipR" = ( /obj/structure/grille, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "ipT" = ( /obj/machinery/atmospherics/components/trinary/filter/flipped/critical{ dir = 1 @@ -23997,8 +23923,6 @@ "ipZ" = ( /obj/effect/landmark/event_spawn, /obj/machinery/iv_drip, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/engine, /area/station/medical/chemistry) "iqa" = ( @@ -24031,7 +23955,7 @@ /obj/item/pen, /obj/machinery/door/firedoor, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "iqW" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -24245,7 +24169,7 @@ /area/station/maintenance/department/medical/central) "iuB" = ( /turf/open/floor/plating/elevatorshaft, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "iuU" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/machinery/airalarm/directional/south, @@ -24254,7 +24178,7 @@ /obj/item/storage/toolbox/emergency, /obj/item/stack/cable_coil, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "iuV" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -24352,7 +24276,7 @@ /obj/machinery/airalarm/directional/north, /obj/effect/mapping_helpers/airalarm/tlv_cold_room, /turf/open/floor/iron/dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ixa" = ( /obj/machinery/light/directional/south, /obj/effect/turf_decal/tile/yellow, @@ -24362,7 +24286,7 @@ /obj/machinery/door/airlock/maintenance_hatch, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance/departmental, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/plating, @@ -24436,6 +24360,12 @@ /obj/structure/cable, /turf/open/floor/iron/white, /area/station/medical/treatment_center) +"iyg" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/greenglow, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/white, +/area/station/medical/chemistry/minisat) "iyw" = ( /obj/machinery/power/smes, /obj/structure/cable, @@ -24490,7 +24420,7 @@ "izd" = ( /obj/machinery/airalarm/directional/west, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 + dir = 1 }, /turf/open/floor/wood/large, /area/station/cargo/boutique) @@ -24531,14 +24461,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, /area/station/science/auxlab/firing_range) -"iAw" = ( -/obj/machinery/door/firedoor, -/obj/effect/turf_decal/tile/purple/anticorner/contrasted{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white, -/area/station/science/lobby) "iAE" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -24554,12 +24476,18 @@ /obj/machinery/computer/security/telescreen/rd/directional/south, /turf/open/floor/glass/reinforced/plasma, /area/station/command/heads_quarters/rd) +"iAQ" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/iron/white, +/area/station/medical/chemistry/minisat) "iBe" = ( /obj/structure/chair/pew/right{ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/chapel, /area/station/service/chapel) "iBg" = ( @@ -24589,7 +24517,7 @@ dir = 1 }, /obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/iron/white, @@ -24739,8 +24667,6 @@ /turf/open/floor/iron/white, /area/station/medical/medbay/central) "iEK" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron/chapel{ dir = 1 @@ -24751,8 +24677,6 @@ /area/station/security/prison/mess) "iEQ" = ( /obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/smooth_large, /area/station/command/meeting_room) "iFb" = ( @@ -24764,7 +24688,7 @@ }, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -24880,9 +24804,7 @@ /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) "iGK" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/wood, /area/station/commons/lounge) "iHr" = ( @@ -24911,7 +24833,6 @@ /area/station/maintenance/solars/port) "iHG" = ( /obj/effect/turf_decal/tile/red, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/security/lockers) "iHH" = ( @@ -24972,7 +24893,7 @@ }, /obj/structure/cable/layer3, /turf/open/floor/catwalk_floor/iron_dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "iIq" = ( /obj/machinery/power/apc/auto_name/directional/east, /obj/structure/cable, @@ -25020,7 +24941,7 @@ /obj/machinery/camera/autoname/directional/west, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "iIY" = ( /obj/effect/turf_decal/tile/blue{ dir = 1 @@ -25039,6 +24960,14 @@ /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 }, +/obj/machinery/button/door/directional/north{ + id = "triage"; + name = "triage button"; + normaldoorcontrol = 1 + }, +/obj/machinery/button/ticket_machine{ + pixel_y = 36 + }, /turf/open/floor/iron/white, /area/station/medical/exam_room) "iJg" = ( @@ -25049,7 +24978,7 @@ }, /obj/item/ai_module/supplied/freeform, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "iJm" = ( /obj/effect/turf_decal/sand/plating, /turf/open/floor/plating/airless, @@ -25075,7 +25004,7 @@ name = "Psychology Bedroom" }, /obj/effect/mapping_helpers/airlock/access/all/medical/psychology, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -25090,7 +25019,7 @@ /area/station/medical/patients_rooms/room_a) "iJG" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 + dir = 4 }, /turf/open/floor/iron/dark, /area/station/security/lockers) @@ -25099,7 +25028,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "iJS" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment{ @@ -25112,7 +25041,6 @@ "iJT" = ( /obj/structure/cable, /obj/machinery/power/apc/auto_name/directional/south, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/small, /area/station/science/cytology) "iJZ" = ( @@ -25171,7 +25099,7 @@ }, /obj/structure/cable/layer3, /turf/open/floor/catwalk_floor/iron_dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "iLo" = ( /obj/effect/mapping_helpers/broken_floor, /obj/effect/decal/cleanable/dirt/dust, @@ -25220,6 +25148,8 @@ "iMD" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood/tile, /area/station/service/bar) "iMK" = ( @@ -25227,9 +25157,13 @@ /obj/effect/turf_decal/trimline/yellow/filled/corner{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/engineering/gravity_generator) +"iMS" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/command/bridge) "iMT" = ( /obj/effect/spawner/random/trash/mess, /obj/effect/turf_decal/stripes/corner{ @@ -25391,16 +25325,12 @@ "iPH" = ( /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "iPQ" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/teleporter) -"iPS" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/command/corporate_showroom) +/area/station/ai/satellite/teleporter) "iQs" = ( /obj/effect/turf_decal/tile/yellow{ dir = 4 @@ -25429,7 +25359,7 @@ /turf/open/floor/iron/stairs{ dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "iQJ" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, @@ -25449,7 +25379,7 @@ /obj/structure/table/reinforced, /obj/item/newspaper, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "iRs" = ( /obj/effect/turf_decal/tile/red/opposingcorners, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -25457,6 +25387,7 @@ /obj/structure/disposalpipe/junction/flip{ dir = 4 }, +/obj/structure/cable, /turf/open/floor/iron, /area/station/security) "iRy" = ( @@ -25483,6 +25414,10 @@ /area/station/commons/fitness/recreation) "iRL" = ( /obj/structure/sink/kitchen/directional/east, +/obj/machinery/button/door/directional/west{ + id = "kitchen_counter"; + name = "Kitchen Shutters" + }, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) "iRR" = ( @@ -25500,7 +25435,7 @@ /obj/effect/turf_decal/bot_white, /obj/machinery/status_display/evac/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "iSz" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/spawner/random/trash, @@ -25618,7 +25553,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "iUX" = ( /obj/structure/transport/linear/public, /obj/machinery/elevator_control_panel{ @@ -25627,7 +25562,7 @@ preset_destination_names = list("2" = "Telecomms", "3" = "AI Core") }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "iVk" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -25655,7 +25590,7 @@ "iVJ" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -25668,7 +25603,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "iVL" = ( /obj/effect/turf_decal/stripes/line{ dir = 9 @@ -25698,7 +25633,6 @@ /area/station/cargo/miningoffice) "iWO" = ( /obj/machinery/door/firedoor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /turf/open/floor/iron, @@ -25743,7 +25677,7 @@ dir = 8 }, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "iXA" = ( /obj/machinery/door/airlock/research/glass{ name = "Chemistry Minisat" @@ -25842,20 +25776,14 @@ /turf/open/floor/iron/white/smooth_large, /area/station/science/research) "jaa" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/structure/sign/directions/command/directional/north, -/obj/structure/sign/directions/engineering/directional/north{ - dir = 4; - pixel_y = 40 - }, -/obj/structure/sign/directions/security/directional/north{ - dir = 8; - pixel_y = 24 +/obj/structure/cable, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/button/door/directional/west{ + id = "maintbridge"; + name = "Shutter Control" }, -/turf/open/floor/iron, -/area/station/hallway/primary/central) +/turf/open/floor/plating, +/area/station/maintenance/department/medical/central) "jaf" = ( /obj/structure/table/wood, /obj/item/flashlight/lamp/green, @@ -25973,7 +25901,6 @@ dir = 1 }, /obj/machinery/airalarm/directional/north, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/drone_bay) "jco" = ( @@ -26066,12 +25993,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/command/heads_quarters/rd) -"jea" = ( -/obj/effect/turf_decal/bot_white, -/obj/effect/spawner/random/maintenance, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/cargo/storage) "jer" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /obj/effect/landmark/event_spawn, @@ -26095,7 +26016,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/turf_decal/delivery, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "jeY" = ( /obj/structure/railing/corner{ dir = 1 @@ -26123,7 +26044,6 @@ /obj/effect/turf_decal/stripes{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/engineering/atmospherics_engine) @@ -26173,8 +26093,6 @@ /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/security/execution/transfer) "jge" = ( @@ -26278,7 +26196,7 @@ "jir" = ( /obj/machinery/door/airlock/maintenance_hatch, /obj/effect/mapping_helpers/airlock/access/all/supply/general, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/misc/asteroid, @@ -26370,14 +26288,14 @@ /area/station/engineering/supermatter/room) "jjQ" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 + dir = 1 }, /turf/open/floor/iron/dark, /area/station/engineering/atmospherics_engine) "jjS" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/rack, /obj/effect/spawner/random/entertainment/cigarette_pack, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood/parquet, /area/station/cargo/boutique) "jka" = ( @@ -26424,6 +26342,11 @@ /obj/structure/disposalpipe/segment{ dir = 10 }, +/obj/machinery/door/poddoor/shutters/preopen{ + dir = 4; + id = "bar_shutters"; + name = "Bar Shutters" + }, /turf/open/floor/iron/dark, /area/station/service/bar) "jkG" = ( @@ -26555,7 +26478,7 @@ }, /obj/machinery/firealarm/directional/east, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) +/area/station/ai/satellite/uppersouth) "jlU" = ( /obj/machinery/newscaster/directional/south, /obj/machinery/hydroponics/soil/rich, @@ -26802,7 +26725,6 @@ /obj/structure/railing{ dir = 5 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/door/firedoor/border_only{ dir = 4 }, @@ -26885,7 +26807,7 @@ /obj/machinery/teleport/station, /obj/machinery/light/cold/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "jqG" = ( /obj/machinery/computer/security{ dir = 1 @@ -27028,11 +26950,9 @@ /obj/structure/table/reinforced, /obj/item/analyzer, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "jui" = ( /obj/item/radio/intercom/directional/north, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/chair/sofa/bench/right{ dir = 8 }, @@ -27096,9 +27016,7 @@ }, /area/station/science/robotics/lab) "jvN" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 - }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/textured_large, /area/station/engineering/storage/tech) "jvO" = ( @@ -27150,6 +27068,11 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, +/obj/machinery/door/poddoor/shutters/preopen{ + dir = 4; + id = "bar_shutters"; + name = "Bar Shutters" + }, /turf/open/floor/iron/dark, /area/station/service/bar) "jwK" = ( @@ -27233,7 +27156,6 @@ /area/station/security/checkpoint/supply) "jyx" = ( /obj/structure/chair/office, -/obj/structure/cable, /obj/effect/landmark/start/paramedic, /turf/open/floor/iron/dark, /area/station/medical/paramedic) @@ -27291,10 +27213,10 @@ /area/station/engineering/storage/tcomms) "jzC" = ( /obj/effect/turf_decal/tile/neutral, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/light_switch/directional/west, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/command/heads_quarters/hop) "jzI" = ( @@ -27350,7 +27272,7 @@ "jAd" = ( /obj/machinery/teleport/hub, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "jAe" = ( /obj/machinery/airalarm/directional/north, /turf/open/floor/iron, @@ -27388,7 +27310,6 @@ /obj/machinery/power/apc/auto_name/directional/east, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/engineering/atmospherics_engine) "jAG" = ( @@ -27417,7 +27338,7 @@ network = list("minisat") }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "jBh" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -27722,7 +27643,7 @@ "jEY" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "jFc" = ( /obj/effect/turf_decal/tile/yellow, /turf/open/floor/iron, @@ -27800,10 +27721,6 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/security/office) -"jGK" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/wood/parquet, -/area/station/cargo/boutique) "jGW" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/white/line{ @@ -27821,13 +27738,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/hallway/primary/starboard) -"jGZ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/chapel{ - dir = 1 - }, -/area/station/service/chapel) "jHn" = ( /obj/structure/railing{ dir = 8 @@ -27887,7 +27797,7 @@ /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, /obj/effect/decal/cleanable/dirt, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -27922,8 +27832,6 @@ /obj/structure/railing{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/door/firedoor/border_only{ dir = 1 }, @@ -27933,7 +27841,6 @@ /area/station/command/meeting_room) "jIm" = ( /obj/structure/sign/poster/random/directional/south, -/obj/structure/cable, /turf/open/floor/iron/white, /area/station/science/research) "jIn" = ( @@ -28054,7 +27961,7 @@ /area/station/medical/morgue) "jKp" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 + dir = 1 }, /turf/open/floor/iron, /area/station/engineering/storage) @@ -28166,7 +28073,7 @@ }, /obj/machinery/camera/autoname/directional/south, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "jMN" = ( /obj/machinery/camera/autoname/directional/south, /turf/open/misc/asteroid, @@ -28189,7 +28096,7 @@ "jNg" = ( /mob/living/basic/bot/repairbot, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "jNh" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -28364,7 +28271,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "jQf" = ( /obj/structure/cable, /obj/effect/turf_decal/tile/red/half/contrasted{ @@ -28464,7 +28371,6 @@ /obj/structure/chair/office{ name = "grimy chair" }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/commons/vacant_room/commissary) @@ -28596,11 +28502,13 @@ /obj/machinery/door/airlock/security/glass, /obj/effect/turf_decal/tile/red/fourcorners, /obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/autoname, /obj/effect/mapping_helpers/airlock/access/all/security/general, /obj/structure/disposalpipe/segment{ dir = 1 }, +/obj/effect/mapping_helpers/airlock/autoname, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/security/office) "jUU" = ( @@ -28708,14 +28616,14 @@ /area/station/service/chapel) "jWh" = ( /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "jWj" = ( /obj/structure/cable, /obj/structure/cable/layer3, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "jWm" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -28945,11 +28853,6 @@ /obj/machinery/light/small/dim/directional/north, /turf/open/floor/plating, /area/station/maintenance/port/greater) -"kaz" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/hallway/secondary/command) "kaJ" = ( /obj/effect/turf_decal/tile/red/half/contrasted, /obj/structure/cable, @@ -28976,15 +28879,16 @@ /area/station/cargo/miningoffice) "kbv" = ( /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/aisat_interior"; + control_area = "/area/station/ai/satellite/interior"; name = "AI Antechamber turret control"; - pixel_x = 27 + pixel_x = 27; + dir = 4 }, /obj/effect/turf_decal/tile/blue{ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "kbD" = ( /obj/machinery/newscaster/directional/south, /obj/effect/turf_decal/siding/purple, @@ -29039,7 +28943,7 @@ dir = 1 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) +/area/station/ai/satellite/uppersouth) "kco" = ( /obj/effect/turf_decal/stripes/asteroid/line{ dir = 5 @@ -29050,7 +28954,6 @@ /obj/structure/table/optable, /obj/effect/turf_decal/tile/blue/fourcorners, /obj/machinery/digital_clock/directional/south, -/obj/structure/cable, /obj/machinery/camera/autoname/directional/west{ network = list("ss13","medbay") }, @@ -29070,6 +28973,8 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/security) "kcB" = ( @@ -29143,7 +29048,7 @@ /area/station/hallway/primary/central) "kdc" = ( /obj/effect/spawner/random/trash/graffiti, -/obj/machinery/light/small/dim/directional/east, +/obj/machinery/light/small/dim/directional/north, /turf/open/floor/plating, /area/station/maintenance/central/greater) "kde" = ( @@ -29158,6 +29063,15 @@ "kdg" = ( /turf/closed/wall, /area/station/science/research) +"kdh" = ( +/obj/effect/turf_decal/trimline/blue/filled/line{ + dir = 1 + }, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron/white, +/area/station/medical/storage) "kdo" = ( /obj/structure/cable, /obj/machinery/power/apc/auto_name/directional/south, @@ -29227,13 +29141,17 @@ network = list("aicore") }, /turf/open/floor/catwalk_floor/iron_dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "kdW" = ( /obj/machinery/smartfridge, /obj/effect/turf_decal/tile/green/opposingcorners{ dir = 1 }, /obj/effect/turf_decal/tile/blue/opposingcorners, +/obj/machinery/door/poddoor/shutters/preopen{ + name = "Hydroponics Shutters"; + id = "hydroponics_shutters" + }, /turf/open/floor/iron, /area/station/service/hydroponics) "ked" = ( @@ -29244,7 +29162,7 @@ /obj/structure/cable/layer3, /obj/effect/turf_decal/tile/blue, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "keg" = ( /obj/structure/cable, /obj/machinery/light/small/directional/east, @@ -29297,6 +29215,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/structure/cable, /turf/open/floor/iron/dark, /area/station/security/lockers) "kfr" = ( @@ -29372,6 +29291,10 @@ }, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) +"kgO" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/textured_large, +/area/station/engineering/storage/tech) "kgT" = ( /obj/effect/turf_decal/tile/red/fourcorners, /obj/machinery/door/firedoor, @@ -29524,7 +29447,7 @@ "kjp" = ( /obj/effect/turf_decal/trimline/yellow/filled/line, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 + dir = 4 }, /turf/open/floor/iron, /area/station/engineering/gravity_generator) @@ -29539,12 +29462,12 @@ /area/station/command/bridge) "kju" = ( /obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/science) "kjx" = ( @@ -29625,12 +29548,12 @@ "kkC" = ( /obj/machinery/light/small/directional/east, /obj/structure/rack, -/obj/effect/spawner/random/armory/laser_gun, +/obj/effect/spawner/random/armory/pick_laser_loadout, /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "kkD" = ( /obj/machinery/smartfridge/extract, /obj/structure/sign/poster/official/random/directional/south, @@ -29654,19 +29577,13 @@ req_access = list("command") }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "kkK" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) -"kkT" = ( -/obj/structure/cable, -/obj/effect/turf_decal/tile/red, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark, -/area/station/security/lockers) +/area/station/command/vault) "kkU" = ( /obj/effect/turf_decal/tile/brown/half/contrasted, /obj/machinery/camera/autoname/directional/south, @@ -29986,6 +29903,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/structure/cable, /turf/open/floor/iron, /area/station/security) "kpD" = ( @@ -30000,7 +29918,7 @@ pixel_y = 11 }, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "kpG" = ( /obj/effect/turf_decal/stripes/red/corner, /obj/effect/turf_decal/stripes/red/corner{ @@ -30104,7 +30022,7 @@ }, /obj/effect/turf_decal/tile/red/half/contrasted, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "kqW" = ( /turf/open/floor/wood, /area/station/service/library) @@ -30513,7 +30431,6 @@ /obj/effect/landmark/start/station_engineer, /obj/effect/landmark/event_spawn, /obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/engineering/storage) "kyi" = ( @@ -30531,7 +30448,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "kyA" = ( /obj/effect/turf_decal/tile/brown/half/contrasted, /obj/structure/cable, @@ -30666,7 +30583,7 @@ /obj/structure/cable/multilayer/multiz, /obj/machinery/light/small/dim/directional/west, /turf/open/floor/glass, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "kBo" = ( /obj/effect/turf_decal/siding/purple{ dir = 1 @@ -30710,7 +30627,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) +/area/station/ai/satellite/uppersouth) "kBM" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment{ @@ -30778,9 +30695,7 @@ dir = 4 }, /obj/machinery/airalarm/directional/north, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/item/kirbyplants/random, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) "kCD" = ( @@ -30865,7 +30780,7 @@ /obj/item/radio/intercom/directional/west, /obj/effect/turf_decal/delivery, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "kEn" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -31098,7 +31013,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "kIm" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 4 @@ -31141,12 +31056,6 @@ }, /turf/open/floor/iron/white/smooth_large, /area/station/medical/treatment_center) -"kJl" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/chapel{ - dir = 1 - }, -/area/station/service/chapel) "kJp" = ( /obj/machinery/disposal/bin, /obj/effect/turf_decal/tile/dark_blue/anticorner/contrasted{ @@ -31168,7 +31077,7 @@ /area/station/maintenance/department/medical/central) "kJN" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 + dir = 4 }, /turf/open/floor/wood/parquet, /area/station/cargo/boutique) @@ -31304,7 +31213,6 @@ dir = 1 }, /obj/effect/decal/cleanable/cobweb, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/drone_bay) "kNk" = ( @@ -31357,10 +31265,12 @@ }, /obj/structure/sign/poster/official/random/directional/north, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "kOl" = ( /obj/structure/railing, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/side, /area/station/command/meeting_room) "kOn" = ( @@ -31386,7 +31296,8 @@ /area/station/security/courtroom) "kOE" = ( /obj/structure/sign/painting/library{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/structure/disposalpipe/segment{ dir = 4 @@ -31460,6 +31371,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, /turf/open/floor/iron/white, /area/station/science/research) "kQF" = ( @@ -31472,10 +31384,10 @@ }, /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/any/medical/general, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/structure/disposalpipe/segment{ dir = 8 }, -/obj/structure/disposalpipe/segment{ +/obj/effect/mapping_helpers/airlock/unres{ dir = 8 }, /turf/open/floor/iron/white, @@ -31707,7 +31619,7 @@ "kTx" = ( /obj/effect/landmark/atmospheric_sanity/ignore_area, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "kTy" = ( /obj/structure/railing, /turf/open/floor/iron/dark/side, @@ -31820,13 +31732,6 @@ }, /turf/open/floor/iron/large, /area/station/service/hydroponics/garden) -"kUW" = ( -/obj/structure/chair/pew{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/chapel, -/area/station/service/chapel) "kUX" = ( /turf/closed/wall/r_wall, /area/station/engineering/atmospherics_engine) @@ -31852,7 +31757,7 @@ /area/station/cargo/miningoffice) "kWb" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "kWc" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/spawner/random/structure/closet_maintenance, @@ -31864,6 +31769,11 @@ /obj/machinery/newscaster/directional/east, /turf/open/floor/iron, /area/station/science/robotics/lab) +"kWC" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/engineering/atmos/upper) "kWH" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/simple/scrubbers/visible{ @@ -31918,10 +31828,10 @@ /area/station/command/bridge) "kXV" = ( /obj/structure/cable, -/obj/structure/plaque/static_plaque/golden/commission/wawa, /obj/structure/disposalpipe/segment{ dir = 8 }, +/obj/structure/plaque/static_plaque/golden/commission/wawa, /turf/open/floor/iron, /area/station/hallway/primary/central) "kYc" = ( @@ -31969,12 +31879,11 @@ /area/station/medical/chemistry/minisat) "kYu" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "kYB" = ( /obj/effect/turf_decal/siding/white{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/segment{ dir = 8 @@ -32007,6 +31916,11 @@ }, /obj/effect/turf_decal/tile/dark_red/opposingcorners, /obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/shutters/preopen{ + dir = 4; + id = "bar_shutters"; + name = "Bar Shutters" + }, /turf/open/floor/iron/dark, /area/station/service/bar) "kYZ" = ( @@ -32018,12 +31932,6 @@ /obj/structure/sign/poster/official/random/directional/west, /turf/open/floor/iron, /area/station/hallway/primary/central) -"kZg" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/turf_decal/tile/dark_blue/opposingcorners, -/turf/open/floor/iron, -/area/station/command/bridge) "kZj" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -32044,8 +31952,6 @@ dir = 4 }, /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/security/execution/transfer) "kZw" = ( @@ -32075,6 +31981,10 @@ req_access = list("hydroponics") }, /obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/shutters/preopen{ + name = "Hydroponics Shutters"; + id = "hydroponics_shutters" + }, /turf/open/floor/iron, /area/station/service/hydroponics) "lac" = ( @@ -32119,7 +32029,7 @@ dir = 4 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "lar" = ( /obj/structure/table/reinforced/rglass, /obj/effect/landmark/start/lawyer, @@ -32178,7 +32088,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "lbw" = ( /obj/structure/closet/l3closet, /obj/effect/decal/cleanable/dirt/dust, @@ -32276,7 +32186,7 @@ /obj/effect/turf_decal/trimline/yellow/filled/line, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/iron/white, @@ -32387,10 +32297,7 @@ /turf/open/floor/iron/showroomfloor, /area/station/maintenance/department/engine) "lfx" = ( -/obj/structure/cable, /obj/machinery/light/dim/directional/south, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/science/research) "lfy" = ( @@ -32535,7 +32442,7 @@ "lib" = ( /obj/machinery/light/directional/west, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "lil" = ( /obj/machinery/atmospherics/components/binary/valve, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -32581,7 +32488,6 @@ /obj/effect/decal/cleanable/glass, /obj/item/stack/rods/two, /obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/commons/vacant_room/commissary) @@ -32708,7 +32614,7 @@ /obj/structure/transport/linear/public, /obj/machinery/porta_turret/ai, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "lmt" = ( /obj/structure/cable, /obj/effect/mapping_helpers/burnt_floor, @@ -32727,7 +32633,6 @@ /obj/effect/turf_decal/bot_white, /obj/effect/spawner/random/maintenance, /obj/effect/spawner/random/structure/closet_empty/crate, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/storage) "lmU" = ( @@ -32737,7 +32642,6 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 }, -/obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/secondary/command) "lno" = ( @@ -32772,7 +32676,7 @@ /obj/effect/decal/cleanable/dirt/dust, /obj/item/clothing/head/costume/cardborg, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/uppernorth) +/area/station/ai/satellite/uppernorth) "lnG" = ( /obj/structure/bed, /obj/machinery/airalarm/directional/north, @@ -32792,7 +32696,7 @@ /obj/item/stack/sheet/glass/fifty, /obj/machinery/airalarm/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "loa" = ( /obj/effect/turf_decal/siding/wood{ dir = 1 @@ -32801,10 +32705,10 @@ /area/station/service/theater) "log" = ( /obj/effect/decal/cleanable/blood/oil, -/obj/machinery/light/small/directional/west, /obj/structure/disposalpipe/segment{ dir = 9 }, +/obj/machinery/light/small/directional/east, /turf/open/floor/plating, /area/station/maintenance/disposal) "loh" = ( @@ -32834,7 +32738,7 @@ /obj/structure/rack, /obj/item/toy/figure/borg, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "loC" = ( /obj/machinery/door/airlock/command{ name = "Head of Personnel's Quarters" @@ -32947,6 +32851,8 @@ /obj/effect/turf_decal/siding/wood{ dir = 8 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood/tile, /area/station/service/bar) "lqy" = ( @@ -32962,17 +32868,20 @@ /obj/structure/cable, /turf/open/floor/plating, /area/station/maintenance/solars/starboard/fore) +"lqM" = ( +/obj/structure/chair/pew{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/chapel{ + dir = 4 + }, +/area/station/service/chapel) "lqR" = ( /obj/effect/landmark/event_spawn, /turf/open/floor/iron, /area/station/cargo/drone_bay) -"lrc" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/stairs/right{ - dir = 1 - }, -/area/station/command/bridge) "lrk" = ( /obj/structure/rack, /obj/effect/spawner/random/maintenance, @@ -32999,6 +32908,7 @@ /obj/effect/turf_decal/siding/red{ dir = 10 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit, /area/station/science/robotics/lab) "lrV" = ( @@ -33169,7 +33079,6 @@ /area/station/engineering/atmos/project) "lvg" = ( /obj/effect/turf_decal/tile/brown, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/drone_bay) "lvj" = ( @@ -33234,7 +33143,7 @@ /obj/structure/railing, /obj/structure/cable/layer3, /turf/open/floor/catwalk_floor/iron_dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lwu" = ( /turf/open/floor/carpet/red, /area/station/command/heads_quarters/qm) @@ -33279,11 +33188,11 @@ /obj/machinery/power/terminal{ dir = 8 }, -/obj/structure/cable, /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 5 }, /obj/machinery/power/port_gen/pacman, +/obj/structure/cable, /turf/open/floor/iron, /area/station/engineering/gravity_generator) "lwI" = ( @@ -33354,6 +33263,15 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/textured, /area/station/construction/mining/aux_base) +"lxX" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/white, +/area/station/science/research) "lyr" = ( /obj/structure/table/reinforced/rglass, /obj/effect/turf_decal/tile/blue/fourcorners, @@ -33434,6 +33352,7 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/security/lockers) "lzs" = ( @@ -33478,6 +33397,8 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/engineering/gravity_generator) "lAc" = ( @@ -33537,8 +33458,6 @@ /obj/structure/railing/corner{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/corner{ dir = 4 }, @@ -33647,7 +33566,6 @@ "lCU" = ( /obj/machinery/power/apc/auto_name/directional/south, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /obj/machinery/duct, /turf/open/floor/iron/freezer, @@ -33680,7 +33598,6 @@ }, /obj/effect/turf_decal/trimline/yellow/filled/line, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/textured, /area/station/medical/pharmacy) "lDn" = ( @@ -33731,7 +33648,7 @@ /area/station/hallway/secondary/entry) "lDZ" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/catwalk_floor/iron_smooth, @@ -33744,7 +33661,7 @@ dir = 8 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "lEu" = ( /obj/structure/railing/corner{ dir = 4 @@ -33776,8 +33693,8 @@ }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood/tile, /area/station/service/bar) "lES" = ( @@ -33807,7 +33724,6 @@ /obj/structure/disposalpipe/segment{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/hallway/primary/central) "lFG" = ( @@ -34038,7 +33954,7 @@ /obj/effect/mapping_helpers/mob_buckler, /obj/machinery/light/small/dim/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/uppernorth) +/area/station/ai/satellite/uppernorth) "lJw" = ( /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 4 @@ -34055,7 +33971,6 @@ "lJT" = ( /obj/machinery/photocopier/prebuilt, /obj/machinery/light_switch/directional/east, -/obj/structure/cable, /obj/machinery/firealarm/directional/south, /turf/open/floor/carpet/black, /area/station/command/heads_quarters/hos) @@ -34093,7 +34008,7 @@ dir = 1 }, /turf/open/floor/plating/elevatorshaft, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "lKN" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/turf_decal/stripes/white/line{ @@ -34268,7 +34183,7 @@ /obj/structure/cable, /obj/machinery/door/firedoor, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "lNJ" = ( /obj/structure/lattice/catwalk, /obj/machinery/atmospherics/pipe/heat_exchanging/simple, @@ -34333,14 +34248,14 @@ dir = 1 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) +/area/station/ai/satellite/uppersouth) "lPj" = ( /obj/machinery/firealarm/directional/north, /obj/structure/rack, /obj/item/storage/toolbox/emergency, /obj/effect/turf_decal/stripes, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "lPn" = ( /obj/effect/turf_decal/tile/yellow{ dir = 8 @@ -34363,7 +34278,9 @@ /turf/open/floor/engine, /area/station/command/corporate_dock) "lPz" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron/dark, /area/station/command/bridge) @@ -34388,7 +34305,7 @@ /obj/machinery/cell_charger, /obj/item/stock_parts/power_store/cell/high, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "lQl" = ( /obj/structure/cable, /obj/effect/spawner/structure/window/hollow/reinforced/end{ @@ -34455,14 +34372,14 @@ "lRk" = ( /obj/effect/landmark/atmospheric_sanity/ignore_area, /turf/open/floor/iron/dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lRr" = ( /obj/machinery/door/airlock/maintenance/glass, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/decal/cleanable/dirt, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/iron, /area/station/commons/vacant_room/commissary) "lRJ" = ( @@ -34557,13 +34474,13 @@ /turf/open/floor/iron, /area/station/service/janitor) "lSI" = ( -/obj/effect/decal/cleanable/dirt/dust, /obj/structure/cable, /obj/structure/disposalpipe/segment{ dir = 6 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/iron/white, /area/station/medical/chemistry/minisat) "lSM" = ( @@ -34665,6 +34582,12 @@ /obj/machinery/camera/autoname/directional/west, /turf/open/floor/iron/dark, /area/station/security/prison/safe) +"lUY" = ( +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/engineering/lobby) "lVj" = ( /obj/effect/turf_decal/loading_area/white{ dir = 4 @@ -34757,7 +34680,7 @@ "lWW" = ( /obj/structure/grille, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "lXb" = ( /obj/machinery/light/warm/directional/east, /obj/effect/turf_decal/siding/wood{ @@ -34772,7 +34695,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "lXi" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -34916,7 +34839,7 @@ /obj/structure/cable, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "lYR" = ( /obj/machinery/flasher/portable, /obj/effect/turf_decal/tile/blue/half/contrasted{ @@ -35043,7 +34966,7 @@ /area/station/science/xenobiology) "mbL" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "mbM" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -35077,6 +35000,9 @@ "mcw" = ( /obj/item/radio/intercom/directional/west, /obj/effect/turf_decal/tile/neutral, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/floor/iron/dark, /area/station/command/heads_quarters/hop) "mcA" = ( @@ -35145,7 +35071,7 @@ /obj/item/electronics/airlock, /obj/item/electronics/airlock, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) +/area/station/ai/satellite/uppersouth) "meL" = ( /obj/effect/landmark/event_spawn, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -35158,9 +35084,6 @@ /obj/effect/turf_decal/trimline/blue/filled/corner{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, /turf/open/floor/iron/white, /area/station/medical/storage) "meQ" = ( @@ -35246,7 +35169,7 @@ "mgV" = ( /obj/machinery/door/airlock/maintenance_hatch, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/structure/cable, @@ -35336,6 +35259,12 @@ }, /turf/open/floor/iron/dark, /area/station/security/warden) +"mic" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/wood/tile, +/area/station/service/bar) "mio" = ( /obj/machinery/computer/station_alert, /turf/open/floor/iron, @@ -35406,16 +35335,19 @@ /obj/structure/cable, /turf/open/floor/iron, /area/station/engineering/main) +"mjj" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/engine, +/area/station/medical/chemistry) "mjq" = ( /obj/structure/cable/layer3, /obj/machinery/camera/autoname/directional/north{ network = list("aicore") }, /turf/open/floor/catwalk_floor/iron_dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "mju" = ( /obj/effect/turf_decal/stripes/corner, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood/parquet, /area/station/cargo/boutique) "mjx" = ( @@ -35423,7 +35355,7 @@ name = "Solar Maintenance" }, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/cyclelink_helper, @@ -35453,7 +35385,7 @@ /obj/structure/disposalpipe/segment, /obj/machinery/door/airlock/maintenance_hatch, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -35470,9 +35402,9 @@ /area/station/engineering/atmos) "mkc" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical) "mks" = ( @@ -35501,7 +35433,7 @@ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/all/security/hos, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/carpet/red, @@ -35608,7 +35540,7 @@ /obj/effect/mapping_helpers/airlock/access/all/command/minisat, /obj/machinery/door/firedoor, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/uppernorth) +/area/station/ai/satellite/uppernorth) "mmh" = ( /turf/closed/wall/r_wall, /area/station/security/checkpoint/engineering) @@ -35821,7 +35753,7 @@ "mpG" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/plating, @@ -35831,7 +35763,6 @@ dir = 1 }, /obj/effect/turf_decal/tile/blue/fourcorners, -/obj/structure/cable, /turf/open/floor/iron/white, /area/station/medical/surgery/theatre) "mpP" = ( @@ -35872,7 +35803,7 @@ /obj/effect/spawner/random/armory/bulletproof_armor, /obj/effect/turf_decal/tile/red/half/contrasted, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "mqE" = ( /obj/machinery/atmospherics/pipe/smart/simple/yellow/visible{ dir = 10 @@ -35884,14 +35815,18 @@ /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 8 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/engineering/gravity_generator) "mra" = ( /obj/machinery/button/door/incinerator_vent_atmos_aux{ - pixel_y = 24 + pixel_y = 24; + dir = 1 }, /obj/machinery/button/door/incinerator_vent_atmos_main{ - pixel_y = 40 + pixel_y = 40; + dir = 1 }, /obj/structure/cable, /obj/effect/decal/cleanable/dirt, @@ -36070,6 +36005,7 @@ /obj/effect/decal/cleanable/dirt, /obj/structure/cable, /obj/machinery/firealarm/directional/west, +/obj/machinery/camera/autoname/directional/west, /turf/open/floor/iron, /area/station/maintenance/disposal/incinerator) "mua" = ( @@ -36082,6 +36018,8 @@ dir = 4 }, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/chapel, /area/station/service/chapel) "mut" = ( @@ -36229,7 +36167,6 @@ /area/station/commons/fitness/recreation) "mwc" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/firealarm/directional/east, /turf/open/floor/carpet/red, /area/station/command/heads_quarters/qm) @@ -36238,7 +36175,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) +/area/station/ai/satellite/uppersouth) "mwo" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/herringbone, @@ -36423,8 +36360,6 @@ /area/station/medical/pharmacy) "mAd" = ( /obj/effect/turf_decal/tile/red/half/contrasted, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/security/office) "mAi" = ( @@ -36468,7 +36403,6 @@ /obj/effect/turf_decal/box/corners{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/firealarm/directional/south, /obj/machinery/camera/autoname/directional/south, @@ -36539,7 +36473,7 @@ /area/station/engineering/lobby) "mBY" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 + dir = 1 }, /turf/open/floor/carpet/red, /area/station/command/heads_quarters/qm) @@ -36572,7 +36506,7 @@ "mCt" = ( /obj/machinery/light/cold/dim/directional/north, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "mCv" = ( /obj/structure/closet/secure_closet/personal, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -36650,7 +36584,7 @@ pixel_y = -29 }, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "mDT" = ( /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 1 @@ -36754,7 +36688,8 @@ dir = 1 }, /obj/structure/sign/painting/library{ - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/wood/tile, /area/station/service/bar) @@ -36872,7 +36807,6 @@ "mId" = ( /obj/structure/urinal/directional/north, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/duct, /turf/open/floor/iron/freezer, /area/station/commons/toilet/restrooms) @@ -36881,7 +36815,7 @@ /obj/effect/mapping_helpers/airlock/access/all/command/minisat, /obj/machinery/door/firedoor, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "mIk" = ( /obj/structure/closet/crate/coffin, /obj/effect/decal/cleanable/cobweb, @@ -36897,6 +36831,11 @@ }, /turf/open/floor/wood/large, /area/station/cargo/boutique) +"mIC" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/disposalpipe/segment, +/turf/open/floor/iron, +/area/station/engineering/lobby) "mIH" = ( /obj/structure/lattice, /obj/effect/turf_decal/stripes/asteroid/line{ @@ -36913,9 +36852,6 @@ /turf/open/floor/catwalk_floor/iron_dark, /area/station/maintenance/department/engine) "mJb" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/trimline/yellow/filled/corner, /turf/open/floor/iron, /area/station/engineering/lobby) @@ -36957,8 +36893,6 @@ /obj/structure/disposalpipe/segment{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, /area/station/science/lobby) "mJL" = ( @@ -37104,7 +37038,7 @@ dir = 5 }, /turf/open/floor/catwalk_floor/iron_dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "mLH" = ( /obj/machinery/vending/coffee, /obj/effect/turf_decal/delivery, @@ -37149,7 +37083,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "mMC" = ( /obj/effect/turf_decal/tile/neutral, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -37240,7 +37174,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "sci-entrance" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/machinery/door/firedoor, @@ -37259,7 +37193,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "mOI" = ( /obj/machinery/button/door/directional/south{ id = "warehouse" @@ -37342,7 +37276,7 @@ /area/station/service/chapel) "mQE" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/uppernorth) +/area/station/ai/satellite/uppernorth) "mQM" = ( /obj/structure/cable, /turf/open/floor/iron/dark/textured_half, @@ -37999,7 +37933,7 @@ /obj/structure/window/spawner/directional/north, /mob/living/basic/butterfly, /turf/open/misc/grass, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "nck" = ( /obj/effect/spawner/structure/window/hollow/reinforced/middle{ dir = 4 @@ -38054,6 +37988,7 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 }, +/obj/structure/cable, /turf/open/floor/wood, /area/station/commons/lounge) "ncZ" = ( @@ -38075,7 +38010,7 @@ /obj/structure/window/spawner/directional/west, /obj/structure/window/spawner/directional/south, /turf/open/misc/grass, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "ndr" = ( /obj/effect/turf_decal/siding/wood{ dir = 9 @@ -38201,7 +38136,7 @@ "nes" = ( /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "net" = ( /obj/effect/spawner/structure/window/reinforced/tinted, /turf/open/floor/plating, @@ -38225,7 +38160,7 @@ }, /obj/effect/mapping_helpers/airlock/abandoned, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/any/service/maintenance, @@ -38350,6 +38285,10 @@ /obj/machinery/atmospherics/components/binary/valve/digital/on{ dir = 4 }, +/obj/effect/mapping_helpers/airalarm/link{ + chamber_id = "engine" + }, +/obj/effect/mapping_helpers/airalarm/tlv_no_checks, /turf/open/floor/engine, /area/station/engineering/supermatter) "ngp" = ( @@ -38421,7 +38360,7 @@ dir = 4 }, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 + dir = 1 }, /turf/open/floor/wood/tile, /area/station/command/corporate_showroom) @@ -38432,8 +38371,8 @@ /obj/effect/turf_decal/stripes/red/line{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/light_switch/directional/east, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/medical/morgue) "niQ" = ( @@ -38527,7 +38466,7 @@ /area/station/maintenance/department/science) "nkf" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 + dir = 8 }, /turf/open/floor/iron/white/smooth_large, /area/station/medical/exam_room) @@ -38726,7 +38665,7 @@ /obj/structure/cable/multilayer/multiz, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "nod" = ( /obj/machinery/button/elevator/directional/east{ id = "cargo" @@ -38747,11 +38686,6 @@ /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/iron, /area/station/maintenance/department/medical/central) -"noi" = ( -/obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/cargo/storage) "nor" = ( /obj/machinery/door/airlock/command{ name = "Head of Security's Office" @@ -38814,8 +38748,9 @@ /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 1 }, +/obj/structure/sign/warning/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "npw" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 @@ -38824,13 +38759,13 @@ /area/station/medical/treatment_center) "npH" = ( /obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/structure/disposalpipe/segment{ dir = 8 }, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/lesser) "npL" = ( @@ -38849,13 +38784,13 @@ }, /obj/effect/mapping_helpers/airlock/access/all/command/minisat, /obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "nqg" = ( /obj/effect/landmark/event_spawn, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ @@ -38979,6 +38914,8 @@ "ntS" = ( /obj/structure/cable, /obj/machinery/door/firedoor, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/freezer, /area/station/commons/toilet/restrooms) "nun" = ( @@ -39017,6 +38954,12 @@ }, /turf/open/floor/iron, /area/station/cargo/sorting) +"nuH" = ( +/obj/structure/sign/warning/directional/west, +/turf/closed/mineral/random/stationside/asteroid/porus{ + mineralChance = 20 + }, +/area/station/asteroid) "nuM" = ( /obj/machinery/door/airlock/public/glass{ name = "Courtroom" @@ -39228,7 +39171,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "nzi" = ( /obj/effect/turf_decal/trimline/yellow/filled/corner{ dir = 8 @@ -39242,11 +39185,6 @@ "nzk" = ( /turf/closed/wall/r_wall, /area/station/maintenance/central/greater) -"nzn" = ( -/obj/structure/lattice/catwalk, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/turf/open/openspace, -/area/station/science/lobby) "nzw" = ( /obj/machinery/computer/slot_machine, /obj/effect/turf_decal/sand/plating, @@ -39297,7 +39235,7 @@ /obj/structure/cable, /obj/effect/mapping_helpers/apc/cell_5k, /turf/open/floor/circuit/green/telecomms/mainframe, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "nAb" = ( /turf/closed/wall/mineral/plastitanium/nodiagonal, /area/station/maintenance/department/cargo) @@ -39308,8 +39246,6 @@ /area/station/maintenance/department/bridge) "nAi" = ( /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/rack, /obj/effect/spawner/random/techstorage/custom_shuttle, /turf/open/floor/iron/textured_large, @@ -39343,14 +39279,11 @@ }, /turf/open/floor/iron/grimy, /area/station/service/chapel/office) -"nAx" = ( -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/hallway/secondary/command) "nAG" = ( /obj/effect/turf_decal/tile/neutral/opposingcorners{ dir = 1 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/commons/locker) "nAR" = ( @@ -39379,15 +39312,6 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/directions/evac/directional/south, -/obj/structure/sign/directions/medical/directional/south{ - dir = 8; - pixel_y = -24 - }, -/obj/structure/sign/directions/science/directional/south{ - dir = 4; - pixel_y = -40 - }, /turf/open/floor/iron, /area/station/hallway/primary/central) "nBV" = ( @@ -39422,7 +39346,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "nCm" = ( /turf/open/openspace/xenobio, /area/station/science/xenobiology) @@ -39633,6 +39557,8 @@ /obj/structure/disposalpipe/segment{ dir = 5 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood/tile, /area/station/service/bar) "nHw" = ( @@ -39841,11 +39767,13 @@ /obj/effect/spawner/random/decoration/showcase, /obj/structure/sign/picture_frame/showroom/two{ pixel_x = 8; - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/structure/sign/picture_frame/showroom/one{ pixel_x = -8; - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /obj/effect/turf_decal/siding/wood{ dir = 4 @@ -39861,7 +39789,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "nKx" = ( /obj/machinery/light/dim/directional/south, /turf/open/floor/glass, @@ -39912,7 +39840,6 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/engineering/atmospherics_engine) "nLg" = ( @@ -39933,8 +39860,6 @@ dir = 1 }, /obj/structure/extinguisher_cabinet/directional/north, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/engineering/gravity_generator) "nLz" = ( @@ -39955,6 +39880,7 @@ /obj/effect/turf_decal/tile/red{ dir = 1 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/security/lockers) "nLT" = ( @@ -40122,7 +40048,9 @@ /turf/open/floor/iron/dark, /area/station/medical/paramedic) "nOZ" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, /turf/open/floor/iron/dark/textured, /area/station/science/robotics/lab) "nPf" = ( @@ -40132,7 +40060,6 @@ /turf/open/floor/engine, /area/station/engineering/atmospherics_engine) "nPm" = ( -/obj/structure/cable, /obj/effect/turf_decal/tile/dark_blue, /turf/open/floor/iron, /area/station/command/bridge) @@ -40152,7 +40079,9 @@ /obj/effect/turf_decal/siding/dark_blue{ dir = 1 }, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, /turf/open/floor/iron/dark, /area/station/command/corporate_showroom) "nPV" = ( @@ -40244,22 +40173,14 @@ /turf/open/floor/iron/large, /area/station/service/hydroponics/garden) "nSn" = ( -/obj/structure/cable, /obj/machinery/firealarm/directional/south, /obj/effect/turf_decal/siding/wood, /obj/effect/mapping_helpers/broken_floor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood/tile, /area/station/service/bar) "nSC" = ( /turf/closed/wall, /area/station/security/prison/shower) -"nSF" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/medical/chemistry/minisat) "nSH" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, @@ -40374,8 +40295,6 @@ dir = 8 }, /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/science/xenobiology) "nVm" = ( @@ -40552,7 +40471,7 @@ dir = 4 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "nZt" = ( /obj/effect/turf_decal/tile/brown/half/contrasted{ dir = 8 @@ -40716,7 +40635,7 @@ c_tag = "Security Armory - Lethals" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "ocm" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -40732,10 +40651,10 @@ /turf/open/floor/iron/white/textured_large, /area/station/science/research) "ocB" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/floor/iron, /area/station/engineering/lobby) "ocF" = ( @@ -40751,10 +40670,7 @@ /turf/open/floor/iron/grimy, /area/station/maintenance/central/greater) "ocV" = ( -/obj/structure/cable, /obj/structure/reagent_dispensers/water_cooler, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/science/research) "odg" = ( @@ -40840,22 +40756,22 @@ /turf/open/floor/iron, /area/station/cargo/drone_bay) "oez" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/structure/sign/directions/science/directional/north{ - dir = 4 +/obj/structure/sign/directions/supply/directional/west{ + dir = 1; + pixel_y = 8; + pixel_x = 0 }, -/obj/structure/sign/directions/engineering/directional/north{ - dir = 4; - pixel_y = 40 +/obj/structure/sign/directions/security/directional/west{ + dir = 1; + pixel_x = 0 }, -/obj/structure/sign/directions/command/directional/north{ - dir = 4; - pixel_y = 24 +/obj/structure/sign/directions/science/directional/west{ + dir = 1; + pixel_y = -8; + pixel_x = 0 }, -/turf/open/floor/iron, -/area/station/hallway/primary/central) +/turf/closed/wall, +/area/station/medical/pharmacy) "oeL" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -40914,7 +40830,7 @@ "ogb" = ( /obj/effect/landmark/atmospheric_sanity/ignore_area, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) +/area/station/ai/satellite/uppersouth) "ogH" = ( /obj/machinery/computer/atmos_alert/station_only, /obj/effect/turf_decal/tile/yellow/anticorner/contrasted{ @@ -41098,7 +41014,7 @@ /obj/effect/landmark/event_spawn, /obj/effect/turf_decal/box, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "okm" = ( /turf/open/floor/engine/hull/reinforced, /area/station/asteroid) @@ -41116,7 +41032,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "okL" = ( /obj/structure/railing{ dir = 8 @@ -41240,7 +41156,7 @@ /obj/structure/transit_tube/station/dispenser/reverse, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "onm" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/textured_half{ @@ -41312,6 +41228,8 @@ codes_txt = "patrol;next_patrol=P1-Central-Primary"; location = "P15-Central-Primary" }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/hallway/primary/central) "opN" = ( @@ -41337,6 +41255,11 @@ /obj/structure/table/reinforced, /obj/effect/turf_decal/tile/dark_red/opposingcorners, /obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/shutters/preopen{ + dir = 4; + id = "bar_shutters"; + name = "Bar Shutters" + }, /turf/open/floor/iron/dark, /area/station/service/bar) "oqj" = ( @@ -41369,13 +41292,6 @@ /obj/effect/turf_decal/bot, /turf/open/floor/iron, /area/station/service/hydroponics) -"oqt" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron, -/area/station/commons/locker) "oqz" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -41510,12 +41426,12 @@ /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 4 }, -/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/structure/cable, /turf/open/floor/iron, /area/station/engineering/lobby) "osK" = ( @@ -41524,7 +41440,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "osX" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, @@ -41563,14 +41479,14 @@ id_tag = "r2"; name = "Room B" }, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, /obj/machinery/door/firedoor, /obj/effect/turf_decal/tile/blue/fourcorners, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/any/medical/general, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 4 + }, /turf/open/floor/iron/white, /area/station/medical/patients_rooms/room_b) "ouk" = ( @@ -41636,7 +41552,8 @@ /obj/machinery/button/curtain{ id = "court"; pixel_x = -24; - pixel_y = -8 + pixel_y = -8; + dir = 8 }, /turf/open/floor/iron/dark, /area/station/security/courtroom) @@ -41711,7 +41628,6 @@ }, /obj/structure/sign/warning/radiation/rad_area/directional/east, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/engineering/atmospherics_engine) "oxe" = ( @@ -41754,12 +41670,14 @@ }, /obj/effect/mapping_helpers/airlock/access/any/command/general, /obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/autoname, /obj/effect/mapping_helpers/airlock/access/any/admin/general, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/smooth_large, /area/station/command/meeting_room) "oxU" = ( @@ -41784,7 +41702,7 @@ /obj/structure/window/spawner/directional/south, /mob/living/basic/butterfly, /turf/open/misc/grass, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "oyP" = ( /obj/structure/lattice/catwalk, /obj/structure/railing{ @@ -41806,7 +41724,7 @@ dir = 4 }, /turf/open/floor/plating/elevatorshaft, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "ozx" = ( /obj/effect/turf_decal/tile/yellow{ dir = 8 @@ -41823,6 +41741,7 @@ "ozF" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light/directional/south, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood/parquet, /area/station/cargo/boutique) "ozU" = ( @@ -41922,12 +41841,12 @@ /turf/open/floor/grass, /area/station/science/genetics) "oAY" = ( -/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/segment{ dir = 5 }, +/obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) "oBe" = ( @@ -41988,6 +41907,7 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/security/lockers) "oBP" = ( @@ -42047,11 +41967,19 @@ /obj/machinery/meter, /turf/open/floor/engine, /area/station/engineering/supermatter/room) +"oDw" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/obj/structure/disposalpipe/segment{ + dir = 8 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/iron/dark, +/area/station/medical/chemistry/minisat) "oDC" = ( /obj/effect/turf_decal/trimline/blue/filled/corner, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, /turf/open/floor/iron/white, /area/station/medical/storage) "oDH" = ( @@ -42094,6 +42022,9 @@ color = "#52B4E9" }, /obj/effect/turf_decal/tile/blue/full, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white/smooth_large, /area/station/medical/storage) "oDZ" = ( @@ -42102,7 +42033,7 @@ name = "Solar Maintenance" }, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -42128,6 +42059,8 @@ /obj/structure/sink/directional/west, /obj/structure/mirror/directional/east, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/freezer, /area/station/commons/toilet/restrooms) "oEB" = ( @@ -42184,13 +42117,14 @@ /area/station/construction/mining/aux_base) "oFn" = ( /obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical/central) "oFu" = ( @@ -42203,11 +42137,10 @@ name = "Cell 3 locker" }, /obj/effect/decal/cleanable/dirt, -/obj/machinery/flasher/directional/east{ - id = "Cell 3"; - pixel_y = 26 - }, /obj/structure/cable, +/obj/machinery/flasher/directional/north{ + id = "Cell 3" + }, /turf/open/floor/iron, /area/station/security/brig) "oFK" = ( @@ -42221,7 +42154,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "oGk" = ( /obj/effect/turf_decal/siding/purple, /obj/structure/disposalpipe/segment{ @@ -42473,7 +42406,7 @@ pixel_y = 8 }, /turf/open/floor/iron/chapel{ - dir = 1 + dir = 4 }, /area/station/service/chapel) "oJU" = ( @@ -42491,7 +42424,7 @@ pixel_y = 2 }, /turf/open/floor/glass/reinforced/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "oKc" = ( /obj/machinery/door/airlock{ id_tag = "u5"; @@ -42614,6 +42547,7 @@ /area/station/hallway/primary/fore) "oMi" = ( /obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/engineering/gravity_generator) "oMk" = ( @@ -42673,7 +42607,6 @@ req_access = list("ai_upload") }, /obj/machinery/turretid{ - icon_state = "control_stun"; name = "AI Chamber turret control"; pixel_x = 3; pixel_y = -23 @@ -42688,7 +42621,7 @@ }, /obj/structure/cable, /turf/open/floor/circuit/green/telecomms/mainframe, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "oOb" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -42714,7 +42647,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/floor, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "oOF" = ( /obj/item/surgery_tray/deployed, /turf/open/floor/iron, @@ -42754,7 +42687,6 @@ /turf/closed/wall/r_wall, /area/station/security/prison/garden) "oPl" = ( -/obj/structure/cable, /obj/effect/turf_decal/tile/dark_blue{ dir = 1 }, @@ -42911,11 +42843,11 @@ }, /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/any/medical/general, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/mapping_helpers/airlock/unres{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/medical/exam_room) "oRD" = ( @@ -42967,7 +42899,6 @@ "oSd" = ( /obj/effect/turf_decal/tile/dark_red/opposingcorners, /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /mob/living/carbon/human/species/monkey/punpun, /turf/open/floor/iron/dark, /area/station/service/bar) @@ -43033,7 +42964,7 @@ /obj/structure/cable, /obj/effect/landmark/firealarm_sanity, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "oTv" = ( /obj/effect/spawner/structure/window/reinforced/plasma, /turf/open/floor/plating, @@ -43062,8 +42993,6 @@ /obj/machinery/door/firedoor, /obj/effect/turf_decal/tile/purple/half/contrasted, /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, /area/station/science/lobby) "oUd" = ( @@ -43179,7 +43108,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "oVS" = ( /obj/structure/cable, /obj/effect/turf_decal/siding/purple, @@ -43206,11 +43135,13 @@ /obj/effect/turf_decal/siding/wood{ dir = 8 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood/tile, /area/station/service/bar) "oWg" = ( /obj/machinery/door/airlock/maintenance/external, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/science/lobby) "oWr" = ( @@ -43236,13 +43167,13 @@ }, /obj/effect/mapping_helpers/airlock/access/all/command/minisat, /obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "oWE" = ( /obj/structure/closet/radiation{ anchored = 1 @@ -43312,7 +43243,7 @@ "oXz" = ( /obj/effect/turf_decal/tile/purple/opposingcorners, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 + dir = 1 }, /turf/open/floor/iron/white, /area/station/science/lobby) @@ -43371,7 +43302,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "oZb" = ( /obj/machinery/light/dim/directional/south, /obj/structure/disposalpipe/segment{ @@ -43394,7 +43325,7 @@ /obj/item/clothing/head/helmet/space/orange, /obj/item/tank/internals/oxygen, /turf/open/floor/catwalk_floor/iron_dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "oZp" = ( /obj/structure/cable/multilayer/connected, /turf/open/floor/iron/dark/telecomms, @@ -43414,7 +43345,7 @@ "oZK" = ( /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -43469,6 +43400,7 @@ dir = 8 }, /obj/effect/turf_decal/tile/dark_red/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/science/robotics/lab) "pau" = ( @@ -43484,7 +43416,7 @@ }, /obj/item/storage/toolbox/mechanical, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "paS" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment, @@ -43578,6 +43510,11 @@ /area/station/engineering/main) "pco" = ( /obj/machinery/biogenerator, +/obj/machinery/door/poddoor/shutters/preopen{ + name = "Hydroponics Shutters"; + id = "hydroponics_shutters"; + dir = 8 + }, /turf/closed/wall, /area/station/service/hydroponics) "pcN" = ( @@ -43598,14 +43535,14 @@ /area/station/maintenance/department/bridge) "pdg" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 + dir = 1 }, /turf/open/floor/iron/large, /area/station/hallway/secondary/exit/departure_lounge) "pdo" = ( /obj/structure/cable/multilayer/multiz, /turf/open/floor/glass, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) +/area/station/ai/satellite/uppersouth) "pdp" = ( /obj/effect/turf_decal/siding/wood, /turf/open/floor/wood/tile, @@ -43654,6 +43591,9 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white/smooth_edge{ dir = 1 }, @@ -43716,7 +43656,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "pgm" = ( /obj/machinery/button/door/directional/east{ id = "Secure Storage"; @@ -43785,7 +43725,7 @@ }, /obj/machinery/newscaster/directional/south, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "phi" = ( /obj/machinery/duct, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -43811,7 +43751,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "phJ" = ( /obj/structure/closet/secure_closet{ name = "contraband locker"; @@ -43823,7 +43763,7 @@ dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "phO" = ( /obj/machinery/vending/wardrobe/chef_wardrobe, /turf/open/floor/iron/kitchen, @@ -44033,7 +43973,7 @@ /obj/structure/window/reinforced/spawner/directional/east, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/recharge_floor, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "pld" = ( /obj/effect/turf_decal/siding/purple{ dir = 10 @@ -44106,7 +44046,7 @@ name = "Chemistry Minisat" }, /obj/effect/mapping_helpers/airlock/access/all/medical/chemistry, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/landmark/navigate_destination/chemfactory, @@ -44142,16 +44082,22 @@ "pnQ" = ( /obj/effect/turf_decal/sand/plating, /obj/machinery/door/airlock/external, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/maintenance/disposal) "pnS" = ( /turf/closed/mineral/random/stationside/asteroid, /area/station/asteroid) +"poe" = ( +/obj/structure/railing{ + dir = 4 + }, +/turf/open/floor/iron, +/area/station/hallway/secondary/exit/departure_lounge) "pof" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/firealarm/directional/north, @@ -44159,7 +44105,7 @@ /area/station/science/lobby) "pog" = ( /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "poi" = ( /turf/closed/wall, /area/station/maintenance/department/cargo) @@ -44176,6 +44122,7 @@ dir = 8 }, /obj/machinery/holopad, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood/tile, /area/station/command/corporate_showroom) "pos" = ( @@ -44297,7 +44244,7 @@ "pqd" = ( /obj/machinery/firealarm/directional/north, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "pql" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/dark/hidden, /obj/effect/mapping_helpers/airlock/locked, @@ -44365,14 +44312,14 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "prz" = ( /obj/machinery/portable_atmospherics/canister/air, /obj/machinery/atmospherics/components/unary/portables_connector/visible/layer4, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "prB" = ( /obj/effect/landmark/firealarm_sanity, /turf/open/openspace, @@ -44433,8 +44380,8 @@ /area/station/science/lobby) "pso" = ( /obj/machinery/door/airlock/maintenance/glass, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/effect/decal/cleanable/dirt, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/iron, /area/station/commons/vacant_room/commissary) "psy" = ( @@ -44524,7 +44471,6 @@ desc = "A memorial wall for pinning mementos upon."; name = "memorial board" }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/service/chapel/funeral) "ptX" = ( @@ -44581,7 +44527,7 @@ icon_state = "catwalk-3" }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "puQ" = ( /obj/effect/baseturf_helper/reinforced_plating/ceiling, /turf/open/floor/engine/vacuum, @@ -44788,7 +44734,7 @@ /area/station/maintenance/department/medical/central) "pya" = ( /turf/open/floor/glass/reinforced/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "pyi" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment, @@ -44859,10 +44805,8 @@ /obj/structure/table/reinforced, /obj/item/circuitboard/machine/cyborgrecharger, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "pyK" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor/iron_dark, /area/station/maintenance/department/engine) "pyO" = ( @@ -44882,7 +44826,7 @@ "pzw" = ( /obj/machinery/door/airlock/maintenance/external, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plating/airless, /area/station/hallway/secondary/exit/departure_lounge) @@ -44987,7 +44931,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/turf_decal/siding/wood{ @@ -45085,7 +45029,6 @@ }, /area/station/hallway/secondary/exit/departure_lounge) "pCK" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/segment, /turf/open/floor/iron/white/smooth_edge{ dir = 4 @@ -45382,7 +45325,7 @@ "pHA" = ( /obj/effect/spawner/structure/window/reinforced, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "pHP" = ( /obj/effect/decal/cleanable/glass, /obj/effect/decal/cleanable/dirt, @@ -45436,7 +45379,7 @@ "pIN" = ( /obj/effect/landmark/atmospheric_sanity/ignore_area, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "pIV" = ( /turf/open/floor/engine/plasma, /area/station/engineering/atmos) @@ -45453,11 +45396,14 @@ /turf/open/floor/plating, /area/station/cargo/storage) "pJk" = ( -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/structure/cable, /turf/open/floor/iron/white/smooth_large, /area/station/medical/storage) +"pJp" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/turf/open/floor/iron, +/area/station/engineering/atmos) "pJt" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -45490,7 +45436,7 @@ "pJN" = ( /obj/effect/turf_decal/tile/purple/opposingcorners, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 + dir = 1 }, /turf/open/floor/iron/white, /area/station/science/lobby) @@ -45604,9 +45550,7 @@ /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 8 }, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 - }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/white/smooth_large, /area/station/medical/chemistry) "pLB" = ( @@ -45806,11 +45750,17 @@ /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, /area/station/maintenance/department/cargo) +"pOQ" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/science/xenobiology) "pPv" = ( /obj/effect/turf_decal/box/corners{ dir = 1 @@ -45936,7 +45886,7 @@ }, /obj/structure/plasticflaps/kitchen, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "pRq" = ( /obj/effect/turf_decal/trimline/yellow/arrow_cw{ dir = 9 @@ -46077,10 +46027,10 @@ /area/station/engineering/atmos/project) "pTC" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 + dir = 8 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "pTJ" = ( /obj/structure/cable, /obj/effect/turf_decal/trimline/yellow/filled/line, @@ -46091,8 +46041,8 @@ "pTO" = ( /obj/machinery/atmospherics/pipe/layer_manifold/supply/visible/layer4, /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical) "pTP" = ( @@ -46281,11 +46231,6 @@ /obj/effect/turf_decal/tile/red/anticorner/contrasted{ dir = 8 }, -/obj/machinery/button/door/directional/south{ - id = "brigdesk"; - name = "shutter control"; - pixel_x = -24 - }, /turf/open/floor/iron, /area/station/security/brig/entrance) "pWE" = ( @@ -46390,7 +46335,6 @@ name = "Port To Turbine" }, /obj/effect/turf_decal/delivery, -/obj/machinery/camera/autoname/directional/west, /obj/structure/cable, /turf/open/floor/iron, /area/station/maintenance/disposal/incinerator) @@ -46428,7 +46372,7 @@ /obj/structure/chair/stool/directional/west, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/uppernorth) +/area/station/ai/satellite/uppernorth) "pYE" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -46503,22 +46447,10 @@ /turf/open/openspace, /area/station/science/xenobiology) "qaz" = ( -/obj/effect/turf_decal/tile/neutral{ - dir = 1 - }, -/obj/structure/sign/directions/science/directional/north{ - dir = 4 - }, -/obj/structure/sign/directions/command/directional/north{ - dir = 8; - pixel_y = 40 - }, -/obj/structure/sign/directions/evac/directional/north{ - dir = 2; - pixel_y = 24 - }, -/turf/open/floor/iron, -/area/station/hallway/primary/central) +/obj/structure/cable, +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/station/security/brig/entrance) "qaE" = ( /obj/effect/landmark/start/janitor, /obj/effect/decal/cleanable/dirt, @@ -46726,7 +46658,7 @@ /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "qeo" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/mapping_helpers/broken_floor, @@ -46799,7 +46731,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/landmark/navigate_destination/techstorage, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/machinery/door/firedoor, @@ -46837,7 +46769,7 @@ pixel_x = 4; pixel_y = -2 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 5; pixel_y = 12 }, @@ -46877,10 +46809,8 @@ /area/station/security) "qgY" = ( /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/landmark/event_spawn, /obj/machinery/holopad, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/textured_large, /area/station/engineering/storage/tech) "qhg" = ( @@ -46934,7 +46864,7 @@ "qia" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "qic" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -47018,7 +46948,7 @@ name = "Solar Maintenance" }, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ @@ -47034,7 +46964,7 @@ /obj/structure/flora/bush/flowers_yw/style_random, /obj/structure/window/spawner/directional/north, /turf/open/misc/grass, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "qjw" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, @@ -47057,6 +46987,12 @@ "qka" = ( /turf/open/floor/iron/dark, /area/station/command/heads_quarters/hop) +"qkc" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, +/turf/open/floor/iron/dark, +/area/station/medical/paramedic) "qkv" = ( /obj/machinery/door/airlock/public{ name = "Jim Norton's Quebecois Coffee" @@ -47141,7 +47077,7 @@ "qmf" = ( /obj/machinery/airalarm/directional/west, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "qmg" = ( /obj/structure/table/wood, /obj/item/stock_parts/power_store/cell/crap, @@ -47268,15 +47204,16 @@ }, /obj/machinery/light_switch/directional/west, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/drone_bay) "qod" = ( /obj/machinery/door/airlock/external, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/maintenance/disposal) "qof" = ( @@ -47314,7 +47251,7 @@ }, /obj/machinery/firealarm/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/uppernorth) +/area/station/ai/satellite/uppernorth) "qoJ" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt, @@ -47341,11 +47278,11 @@ /area/station/engineering/atmos) "qpb" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/effect/turf_decal/siding/wood{ dir = 4 }, /obj/effect/decal/cleanable/dirt/dust, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/wood, /area/station/maintenance/central/lesser) "qpc" = ( @@ -47353,7 +47290,7 @@ network = list("aicore") }, /turf/open/floor/catwalk_floor/iron_dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "qpj" = ( /obj/machinery/turretid{ control_area = /area/station/tcommsat/server; @@ -47501,7 +47438,7 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /obj/structure/cable/layer3, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "qru" = ( /obj/structure/cable, /obj/structure/chair/sofa/bench/right, @@ -47602,7 +47539,7 @@ /obj/item/stack/spacecash/c1000, /obj/machinery/light_switch/directional/east, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "qug" = ( /obj/machinery/door/airlock/mining{ name = "Mining Office" @@ -47680,8 +47617,11 @@ dir = 8 }, /obj/structure/sign/painting/library{ - pixel_x = -32 + pixel_x = -32; + dir = 8 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood/tile, /area/station/service/bar) "qvA" = ( @@ -47718,11 +47658,6 @@ }, /turf/open/floor/iron/white, /area/station/medical/virology) -"qvX" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/plating, -/area/station/engineering/supermatter/room) "qwu" = ( /obj/structure/disposalpipe/segment{ dir = 10 @@ -47866,6 +47801,14 @@ /obj/effect/turf_decal/tile/bar/opposingcorners, /turf/open/floor/iron, /area/station/commons/lounge) +"qyU" = ( +/obj/effect/turf_decal/trimline/yellow/filled/warning, +/obj/structure/railing, +/obj/machinery/door/firedoor/border_only, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/hallway/secondary/exit/departure_lounge) "qzr" = ( /obj/effect/turf_decal/tile/yellow{ dir = 1 @@ -47897,21 +47840,19 @@ /turf/open/floor/iron/dark, /area/station/maintenance/radshelter/civil) "qAo" = ( -/obj/effect/turf_decal/tile/neutral, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/directions/security/directional/south{ - dir = 8; - pixel_y = -24 +/obj/structure/sign/directions/science/directional/south{ + dir = 4; + pixel_y = 10 }, -/obj/structure/sign/directions/supply/directional/south{ - dir = 8 +/obj/structure/sign/directions/medical/directional/south{ + dir = 8; + pixel_y = -10 }, -/obj/structure/sign/directions/engineering/directional/south{ - pixel_y = -40 +/obj/structure/sign/directions/evac/directional/south{ + pixel_y = 0 }, -/turf/open/floor/iron, -/area/station/hallway/primary/central) +/turf/closed/wall, +/area/station/hallway/secondary/exit/departure_lounge) "qAp" = ( /mob/living/basic/mining/goliath/ancient, /turf/open/misc/asteroid/airless, @@ -47956,7 +47897,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "qBu" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/light/small/broken/directional/east, @@ -48027,6 +47968,9 @@ dir = 1 }, /obj/structure/disposalpipe/trunk/multiz, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/medical/storage) "qCE" = ( @@ -48041,7 +47985,7 @@ }, /area/station/security/execution/transfer) "qCT" = ( -/obj/machinery/computer/rdconsole, +/obj/machinery/computer/rdconsole/unlocked, /obj/structure/cable, /obj/effect/turf_decal/tile/green/half/contrasted, /turf/open/floor/iron/dark, @@ -48078,7 +48022,7 @@ "qDl" = ( /obj/structure/lattice/catwalk, /turf/open/openspace/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "qDH" = ( /obj/structure/chair/sofa/corner/maroon, /obj/item/toy/plush/moth{ @@ -48141,6 +48085,7 @@ /obj/effect/turf_decal/tile/red/opposingcorners, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/floor/iron, /area/station/security) "qEm" = ( @@ -48232,7 +48177,7 @@ uses = 10 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "qFS" = ( /obj/structure/window/reinforced/spawner/directional/south, /turf/open/floor/glass/reinforced, @@ -48248,7 +48193,7 @@ }, /obj/effect/turf_decal/delivery, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "qGB" = ( /obj/machinery/ticket_machine/directional/north, /obj/structure/chair/sofa/bench, @@ -48297,7 +48242,7 @@ dir = 1 }, /turf/open/floor/catwalk_floor/iron_dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "qHp" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 6 @@ -48325,7 +48270,7 @@ dir = 4 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "qHE" = ( /obj/effect/decal/cleanable/rubble, /turf/open/misc/asteroid/airless, @@ -48492,12 +48437,6 @@ dir = 1 }, /area/station/engineering/atmos) -"qKm" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/iron/dark/textured, -/area/station/science/robotics/lab) "qKH" = ( /turf/open/floor/glass/reinforced, /area/station/science/research) @@ -48562,7 +48501,7 @@ /obj/machinery/door/airlock/maintenance_hatch, /obj/effect/mapping_helpers/airlock/access/all/supply/general, /obj/structure/disposalpipe/segment, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/iron, /area/station/cargo/sorting) "qMC" = ( @@ -48690,6 +48629,7 @@ dir = 9 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/carpet, /area/station/service/chapel/funeral) "qPC" = ( @@ -48881,7 +48821,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "qTG" = ( /obj/effect/turf_decal/tile/red/anticorner/contrasted{ dir = 4 @@ -48934,7 +48874,7 @@ /area/station/science/xenobiology) "qUz" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -49074,7 +49014,7 @@ /obj/machinery/porta_turret/ai, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "qWG" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 1 @@ -49157,7 +49097,6 @@ "qXK" = ( /obj/effect/turf_decal/tile/red, /obj/effect/landmark/event_spawn, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/security/lockers) "qXN" = ( @@ -49179,7 +49118,7 @@ /turf/open/floor/iron/stairs{ dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "qYe" = ( /obj/effect/turf_decal/trimline/green/filled/line{ dir = 4 @@ -49216,12 +49155,12 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "qYW" = ( /obj/structure/disposalpipe/segment, /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -49337,6 +49276,8 @@ "raR" = ( /obj/effect/landmark/event_spawn, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/cargo/storage) "raT" = ( @@ -49358,11 +49299,11 @@ /area/station/command/heads_quarters/hop) "raZ" = ( /obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/structure/cable, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/misc/asteroid, /area/station/science/research) "rbe" = ( @@ -49372,8 +49313,8 @@ /turf/open/floor/plating, /area/station/maintenance/department/engine) "rbg" = ( -/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/stairs/medium{ dir = 1 @@ -49381,8 +49322,7 @@ /area/station/command/bridge) "rbs" = ( /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/ai_upload"; - icon_state = "control_stun"; + control_area = "/area/station/ai/upload/chamber"; name = "AI Upload Turret Control"; pixel_x = -28 }, @@ -49394,7 +49334,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "rbt" = ( /obj/effect/mapping_helpers/airlock/access/all/service/kitchen, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -49453,6 +49393,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/science/research) "rcy" = ( @@ -49680,7 +49621,7 @@ "rgp" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "rgs" = ( /obj/structure/holosign/barrier/atmos, /turf/open/misc/asteroid, @@ -49779,6 +49720,13 @@ /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/wood, /area/station/maintenance/port/greater) +"rhs" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/science/xenobiology) "rhK" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 10 @@ -49794,7 +49742,7 @@ /obj/structure/window/reinforced/spawner/directional/south, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "rhS" = ( /turf/open/floor/iron, /area/station/engineering/main) @@ -49862,7 +49810,7 @@ /area/station/command/heads_quarters/cmo) "riQ" = ( /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "riS" = ( /obj/machinery/atmospherics/pipe/bridge_pipe/green/visible{ dir = 4 @@ -49922,6 +49870,7 @@ /area/station/maintenance/department/science) "rjk" = ( /obj/machinery/holopad, +/obj/structure/cable, /turf/open/floor/iron/large, /area/station/service/hydroponics/garden) "rjn" = ( @@ -49960,7 +49909,7 @@ /obj/effect/decal/cleanable/dirt, /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 8 + dir = 4 }, /turf/open/floor/iron, /area/station/security/interrogation) @@ -50008,7 +49957,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/science/xenobiology) @@ -50143,9 +50091,8 @@ network = list("minisat") }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "rlw" = ( /turf/closed/wall, /area/station/science/xenobiology/hallway) @@ -50153,10 +50100,11 @@ /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 1 }, -/obj/structure/cable, /obj/structure/disposalpipe/segment{ dir = 1 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/security) "rmi" = ( @@ -50187,7 +50135,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "rmy" = ( /obj/structure/cable, /obj/effect/mapping_helpers/broken_floor, @@ -50247,7 +50195,7 @@ }, /obj/effect/turf_decal/box, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "rnY" = ( /obj/machinery/seed_extractor, /obj/effect/turf_decal/stripes/line{ @@ -50265,7 +50213,7 @@ "roB" = ( /obj/machinery/door/airlock/maintenance_hatch, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -50365,7 +50313,6 @@ dir = 1 }, /obj/machinery/camera/autoname/directional/north, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/drone_bay) "rqh" = ( @@ -50690,7 +50637,7 @@ /obj/item/radio/intercom/directional/north, /obj/item/piggy_bank/vault, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "rwx" = ( /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 9 @@ -50895,11 +50842,8 @@ /turf/open/floor/iron/white/herringbone, /area/station/maintenance/department/medical/central) "rzb" = ( -/obj/structure/cable, /obj/effect/turf_decal/siding/wood, /obj/machinery/camera/autoname/directional/south, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood/tile, /area/station/service/bar) "rzg" = ( @@ -50923,12 +50867,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/command/heads_quarters/cmo) -"rzF" = ( -/obj/effect/turf_decal/bot_white, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron, -/area/station/cargo/storage) "rzI" = ( /obj/machinery/camera/autoname/directional/south{ network = list("ss13","rd") @@ -50939,7 +50877,7 @@ "rzJ" = ( /obj/machinery/door/airlock/maintenance_hatch, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/misc/asteroid, /area/station/hallway/secondary/entry) "rzP" = ( @@ -50975,7 +50913,7 @@ /obj/machinery/light/directional/east, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "rAu" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/airalarm/directional/east, @@ -51022,6 +50960,10 @@ }, /turf/open/floor/engine/n2o, /area/station/engineering/atmos) +"rBr" = ( +/obj/machinery/air_sensor/engine_chamber, +/turf/open/floor/engine, +/area/station/engineering/supermatter) "rBt" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -51083,13 +51025,14 @@ "rBZ" = ( /obj/structure/cable, /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/aisat_interior"; + control_area = "/area/station/ai/satellite/interior"; name = "AI Antechamber turret control"; - pixel_y = 27 + pixel_y = 27; + dir = 1 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) +/area/station/ai/satellite/uppersouth) "rCd" = ( /obj/machinery/door/window/brigdoor/left/directional/east{ name = "Command Desk"; @@ -51109,7 +51052,6 @@ /area/station/engineering/storage/tech) "rCz" = ( /obj/effect/landmark/event_spawn, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/medical/treatment_center) "rCL" = ( @@ -51165,6 +51107,9 @@ dir = 1 }, /obj/effect/turf_decal/tile/dark_red/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/floor/iron/dark, /area/station/science/robotics/lab) "rDs" = ( @@ -51226,12 +51171,16 @@ }, /turf/open/floor/circuit/telecomms/server, /area/station/science/server) +"rEw" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/station/engineering/atmos) "rEK" = ( /obj/machinery/door/airlock/external, /obj/effect/mapping_helpers/airlock/cyclelink_helper{ dir = 4 }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/external, @@ -51248,7 +51197,7 @@ "rFd" = ( /obj/structure/cable, /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, @@ -51284,6 +51233,8 @@ dir = 4 }, /obj/effect/landmark/event_spawn, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/command/corporate_showroom) "rFZ" = ( @@ -51338,8 +51289,8 @@ /turf/open/space/basic, /area/station/solars/port/fore) "rGQ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/chapel{ dir = 4 }, @@ -51489,7 +51440,6 @@ /turf/open/floor/iron/textured, /area/station/security/processing) "rKb" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/dark_blue/half/contrasted{ dir = 4 }, @@ -51513,7 +51463,6 @@ /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment, /obj/machinery/light/cold/directional/west, /obj/machinery/firealarm/directional/west, @@ -51671,7 +51620,6 @@ /area/station/security/office) "rOL" = ( /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/miningoffice) "rPe" = ( @@ -51702,7 +51650,7 @@ /obj/structure/window/spawner/directional/west, /obj/structure/window/spawner/directional/north, /turf/open/misc/grass, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "rPk" = ( /obj/effect/turf_decal/siding/white{ dir = 1 @@ -51957,11 +51905,10 @@ /obj/structure/bed, /obj/item/bedsheet, /obj/effect/decal/cleanable/dirt, -/obj/machinery/flasher/directional/east{ - id = "Cell 4"; - pixel_y = -26 - }, /obj/structure/cable, +/obj/machinery/flasher/directional/south{ + id = "Cell 4" + }, /turf/open/floor/iron, /area/station/security/brig) "rTo" = ( @@ -52082,14 +52029,6 @@ /obj/effect/turf_decal/tile/bar/opposingcorners, /turf/open/floor/iron, /area/station/service/bar) -"rVu" = ( -/obj/structure/chair/sofa/bench/left{ - dir = 4 - }, -/obj/effect/turf_decal/tile/neutral/opposingcorners, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/station/security/courtroom) "rVv" = ( /obj/machinery/door/airlock/security{ id_tag = "IsolationCell"; @@ -52114,12 +52053,12 @@ /turf/open/floor/iron, /area/station/commons/vacant_room/commissary) "rVD" = ( -/obj/effect/turf_decal/tile/neutral, /obj/structure/sign/directions/supply/directional/east{ - dir = 8 + dir = 8; + pixel_x = 0 }, -/turf/open/floor/iron, -/area/station/hallway/primary/central) +/turf/closed/wall/r_wall, +/area/station/command/gateway) "rVL" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -52255,7 +52194,6 @@ dir = 1 }, /obj/effect/landmark/start/lawyer, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood, /area/station/service/lawoffice) @@ -52344,7 +52282,7 @@ /turf/open/openspace, /area/station/security/prison/garden) "rXS" = ( -/obj/machinery/computer/rdconsole, +/obj/machinery/computer/rdconsole/unlocked, /obj/effect/turf_decal/tile/neutral/opposingcorners{ dir = 1 }, @@ -52461,7 +52399,7 @@ name = "Maintenance Bathroom" }, /obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/structure/broken_flooring/side/directional/north, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/abandoned, @@ -52536,6 +52474,7 @@ dir = 8 }, /obj/machinery/holopad, +/obj/structure/cable, /turf/open/floor/carpet/black, /area/station/command/heads_quarters/hos) "sas" = ( @@ -52644,7 +52583,7 @@ name = "Aft Port Solar Access" }, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, @@ -52669,14 +52608,13 @@ /turf/open/floor/plating, /area/station/maintenance/department/cargo) "sbZ" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, /area/station/engineering/gravity_generator) "scg" = ( /obj/effect/landmark/event_spawn, /turf/open/floor/glass/reinforced, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "sco" = ( /obj/structure/reagent_dispensers/water_cooler, /obj/effect/turf_decal/siding/wood{ @@ -52737,7 +52675,6 @@ /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 8 }, -/obj/structure/cable, /turf/open/floor/iron, /area/station/security/execution/transfer) "sdB" = ( @@ -52784,7 +52721,7 @@ /obj/effect/landmark/start/hangover, /obj/structure/cable, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 + dir = 4 }, /turf/open/floor/iron/dark, /area/station/service/bar) @@ -52846,6 +52783,7 @@ dir = 9 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit, /area/station/science/robotics/lab) @@ -52857,14 +52795,14 @@ "sfT" = ( /obj/structure/cable/layer3, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "sfY" = ( /obj/structure/stairs/east, /obj/structure/railing{ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "sgc" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber{ dir = 4 @@ -53069,7 +53007,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/firealarm/directional/west, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "sjD" = ( /obj/effect/decal/cleanable/blood/tracks{ dir = 4 @@ -53087,7 +53025,9 @@ /area/station/medical/virology) "sjJ" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, /turf/open/floor/iron, /area/station/cargo/storage) "sjL" = ( @@ -53148,10 +53088,8 @@ /obj/machinery/door/airlock/security/glass, /obj/effect/turf_decal/tile/red/fourcorners, /obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/autoname, /obj/effect/mapping_helpers/airlock/access/all/security/general, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/autoname, /turf/open/floor/iron, /area/station/security/office) "skw" = ( @@ -53161,7 +53099,7 @@ dir = 1 }, /turf/open/floor/iron/dark/textured_large, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "skH" = ( /obj/effect/turf_decal/stripes/corner{ dir = 4 @@ -53191,6 +53129,7 @@ "skV" = ( /obj/machinery/holopad, /obj/effect/turf_decal/bot, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/commons/locker) "slb" = ( @@ -53218,10 +53157,10 @@ "slx" = ( /obj/structure/cable, /obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/plating, /area/station/maintenance/central/lesser) "slG" = ( @@ -53250,7 +53189,7 @@ /area/station/medical/treatment_center) "smh" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/decal/cleanable/dirt, /obj/effect/mapping_helpers/airlock/welded, /turf/open/floor/plating, @@ -53398,11 +53337,17 @@ /turf/open/floor/iron/grimy, /area/station/service/chapel/office) "soB" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 4 - }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/textured_large, /area/station/engineering/storage/tech) +"soC" = ( +/obj/structure/railing{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/hallway/secondary/exit/departure_lounge) "soG" = ( /obj/structure/sink/directional/south, /obj/structure/mirror/directional/north{ @@ -53454,7 +53399,7 @@ /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/structure/tank_holder/extinguisher, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "spr" = ( /obj/effect/turf_decal/stripes{ dir = 5 @@ -53485,7 +53430,7 @@ "spG" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "spS" = ( /obj/item/mop, /obj/effect/spawner/random/trash/bucket, @@ -53578,15 +53523,15 @@ /obj/effect/turf_decal/siding/green/corner{ dir = 8 }, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical/central) "srs" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "srv" = ( /obj/effect/turf_decal/sand/plating, /obj/effect/landmark/generic_maintenance_landmark, @@ -53699,7 +53644,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "stp" = ( /obj/structure/railing{ dir = 1 @@ -53747,7 +53692,7 @@ /obj/effect/turf_decal/tile/red/half/contrasted, /obj/machinery/airalarm/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "stP" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/visible, /turf/closed/wall/r_wall, @@ -53795,17 +53740,6 @@ /obj/effect/turf_decal/tile/neutral, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/sign/directions/supply/directional/south{ - dir = 8 - }, -/obj/structure/sign/directions/engineering/directional/south{ - dir = 4; - pixel_y = -40 - }, -/obj/structure/sign/directions/security/directional/south{ - dir = 8; - pixel_y = -24 - }, /turf/open/floor/iron, /area/station/hallway/primary/central) "suw" = ( @@ -53910,7 +53844,7 @@ /turf/open/floor/iron/stairs{ dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "swv" = ( /obj/effect/mapping_helpers/broken_floor, /obj/effect/decal/cleanable/dirt/dust, @@ -53935,7 +53869,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "swS" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 @@ -54043,11 +53977,11 @@ /area/station/science/server) "szp" = ( /obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/structure/cable, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/maintenance/port/lesser) "szq" = ( @@ -54104,12 +54038,12 @@ }, /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/any/medical/general, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 8 + }, /turf/open/floor/iron/white, /area/station/medical/treatment_center) "sAs" = ( @@ -54222,7 +54156,7 @@ /turf/open/floor/iron/stairs{ dir = 8 }, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "sBG" = ( /obj/machinery/light/warm/directional/north, /obj/effect/turf_decal/siding/wood{ @@ -54272,8 +54206,9 @@ /turf/open/floor/plating, /area/station/science/xenobiology) "sCO" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, /turf/open/floor/iron/dark, /area/station/security/lockers) "sCT" = ( @@ -54441,7 +54376,7 @@ /area/station/maintenance/port/lesser) "sGj" = ( /obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/door/airlock/maintenance{ @@ -54456,7 +54391,7 @@ "sGk" = ( /obj/effect/turf_decal/siding/white/corner, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 + dir = 4 }, /turf/open/floor/iron/herringbone, /area/station/hallway/primary/central) @@ -54591,11 +54526,6 @@ /obj/machinery/firealarm/directional/south, /turf/open/floor/iron/white, /area/station/medical/chemistry) -"sIm" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/station/engineering/supermatter/room) "sIv" = ( /obj/effect/turf_decal/trimline/blue/filled/line, /obj/machinery/power/apc/auto_name/directional/south, @@ -54650,7 +54580,7 @@ "sIW" = ( /obj/structure/transport/linear/public, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "sIX" = ( /obj/effect/turf_decal/arrows{ dir = 4; @@ -54725,11 +54655,7 @@ /area/station/hallway/secondary/exit/departure_lounge) "sJT" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) -"sJX" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, -/turf/open/floor/iron, -/area/station/cargo/storage) +/area/station/ai/satellite/uppersouth) "sKs" = ( /obj/machinery/power/apc/auto_name/directional/north, /obj/structure/cable, @@ -54825,7 +54751,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "sLW" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/dirt, @@ -54890,8 +54816,6 @@ "sNi" = ( /obj/machinery/light/directional/north, /obj/effect/mapping_helpers/broken_floor, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/chair/sofa/bench/left{ dir = 4 }, @@ -54971,6 +54895,7 @@ dir = 4 }, /obj/effect/turf_decal/trimline/blue/filled/mid_joiner, +/obj/structure/cable, /turf/open/floor/iron/white/smooth_large, /area/station/medical/surgery/theatre) "sPD" = ( @@ -55019,7 +54944,7 @@ "sQd" = ( /obj/structure/cable/multilayer/connected, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "sQe" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -55110,19 +55035,9 @@ }, /turf/open/floor/iron, /area/station/engineering/main) -"sRM" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/stairs/left{ - dir = 1 - }, -/area/station/command/bridge) "sRP" = ( /obj/machinery/photocopier/prebuilt, /obj/machinery/light/directional/north, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/structure/cable, /turf/open/floor/iron/dark, /area/station/command/heads_quarters/hop) "sRU" = ( @@ -55139,12 +55054,12 @@ /area/station/service/lawoffice) "sSm" = ( /obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/any/service/maintenance, /turf/open/floor/iron, /area/station/commons/locker) "sSL" = ( @@ -55531,7 +55446,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "sYU" = ( /obj/machinery/atmospherics/components/binary/pump{ name = "Air to Port" @@ -55541,7 +55456,7 @@ "sYZ" = ( /obj/machinery/duct, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 + dir = 4 }, /obj/machinery/light/directional/west, /obj/machinery/firealarm/directional/west, @@ -55585,6 +55500,7 @@ /turf/open/floor/iron/white, /area/station/medical/chemistry) "sZK" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/command/bridge) "sZS" = ( @@ -55622,7 +55538,7 @@ dir = 8 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "tac" = ( /obj/structure/disposalpipe/trunk{ dir = 4 @@ -55876,18 +55792,18 @@ /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/airalarm/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "tgW" = ( /obj/machinery/door/airlock/medical{ name = "Primary Surgical Theatre" }, /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/all/medical/surgery, +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/mapping_helpers/airlock/unres{ dir = 8 }, -/obj/effect/turf_decal/tile/blue/fourcorners, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, /area/station/medical/surgery/theatre) "tgZ" = ( @@ -55915,6 +55831,22 @@ }, /turf/open/floor/iron/dark, /area/station/service/chapel/funeral) +"thj" = ( +/obj/structure/sign/directions/security/directional/east{ + dir = 1; + pixel_y = 8; + pixel_x = 0 + }, +/obj/structure/sign/directions/supply/directional/east{ + dir = 1; + pixel_x = 0 + }, +/obj/structure/sign/directions/engineering/directional/east{ + pixel_y = -8; + pixel_x = 0 + }, +/turf/closed/wall, +/area/station/maintenance/port/lesser) "tho" = ( /obj/machinery/power/port_gen, /obj/effect/decal/cleanable/dirt/dust, @@ -56047,8 +55979,10 @@ /obj/effect/turf_decal/trimline/yellow/filled/mid_joiner, /turf/open/floor/iron/white/smooth_edge, /area/station/medical/pharmacy) +"tjn" = ( +/turf/open/floor/iron/dark, +/area/station/medical/morgue) "tjq" = ( -/obj/structure/cable, /obj/machinery/shower/directional/south, /obj/effect/turf_decal{ icon = 'icons/obj/mining_zones/survival_pod.dmi'; @@ -56093,6 +56027,7 @@ /obj/effect/turf_decal/tile/brown/half/contrasted, /obj/machinery/power/apc/auto_name/directional/south, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/cargo/drone_bay) "tkh" = ( @@ -56136,6 +56071,10 @@ }, /obj/structure/desk_bell, /obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/shutters/preopen{ + name = "Hydroponics Shutters"; + id = "hydroponics_shutters" + }, /turf/open/floor/iron, /area/station/service/hydroponics) "tla" = ( @@ -56144,7 +56083,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "tlb" = ( /obj/effect/turf_decal/tile/dark_red/opposingcorners, /turf/open/floor/iron/dark, @@ -56176,7 +56115,7 @@ "tlW" = ( /obj/structure/cable, /turf/open/floor/catwalk_floor/iron_dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "tmg" = ( /obj/effect/turf_decal/tile/yellow{ dir = 8 @@ -56214,6 +56153,11 @@ dir = 1 }, /area/station/medical/pharmacy) +"tmQ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/station/medical/chemistry/minisat) "tmR" = ( /obj/structure/bed/maint, /obj/item/bedsheet/yellow{ @@ -56298,7 +56242,7 @@ }, /obj/machinery/airalarm/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "tnD" = ( /obj/item/bodypart/leg/left, /turf/open/floor/plating/airless, @@ -56357,10 +56301,10 @@ "toC" = ( /obj/machinery/door/airlock/maintenance_hatch, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/hallway/secondary/exit/departure_lounge) "toD" = ( @@ -56376,7 +56320,7 @@ /obj/machinery/newscaster/directional/north, /obj/machinery/light/warm/directional/east, /turf/open/floor/iron/chapel{ - dir = 4 + dir = 1 }, /area/station/service/chapel) "toJ" = ( @@ -56808,7 +56752,7 @@ "tww" = ( /obj/structure/cable, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) +/area/station/ai/satellite/uppersouth) "twx" = ( /turf/open/openspace, /area/station/maintenance/disposal) @@ -56835,7 +56779,7 @@ /obj/effect/spawner/round_default_module, /obj/machinery/flasher/directional/north, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "txx" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt/dust, @@ -56846,7 +56790,7 @@ /area/station/maintenance/department/cargo) "txy" = ( /obj/machinery/door/airlock/hatch, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -56943,8 +56887,8 @@ "tzT" = ( /obj/machinery/door/airlock/maintenance_hatch, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical/central) "tzW" = ( @@ -56984,7 +56928,7 @@ /area/station/asteroid) "tAr" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 8 + dir = 1 }, /turf/open/floor/iron/large, /area/station/hallway/secondary/exit/departure_lounge) @@ -57057,7 +57001,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/item/radio/intercom/directional/north, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) +/area/station/ai/satellite/uppersouth) "tBh" = ( /obj/structure/railing/corner{ dir = 4 @@ -57116,11 +57060,12 @@ /area/space/nearstation) "tBL" = ( /obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/turf_decal/sand/plating, +/obj/effect/mapping_helpers/airlock/access/any/medical/maintenance, +/obj/effect/mapping_helpers/airlock/access/any/supply/maintenance, /turf/open/floor/plating, /area/station/maintenance/department/medical) "tCb" = ( @@ -57325,8 +57270,6 @@ dir = 6 }, /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/hallway/primary/central) "tFa" = ( @@ -57340,7 +57283,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -57398,7 +57341,7 @@ }, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "tGE" = ( /obj/structure/disposalpipe/segment{ dir = 10 @@ -57430,7 +57373,9 @@ /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 8 }, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, /obj/effect/turf_decal/trimline/yellow/filled/mid_joiner{ dir = 8 }, @@ -57518,18 +57463,14 @@ "tIH" = ( /turf/open/floor/grass, /area/station/service/hydroponics/garden) -"tIN" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/station/command/corporate_showroom) "tIO" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/effect/decal/cleanable/dirt/dust, /obj/structure/disposalpipe/segment{ dir = 9 }, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/iron/dark, /area/station/medical/chemistry/minisat) "tIS" = ( @@ -57542,7 +57483,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "tIT" = ( /obj/effect/turf_decal/tile/neutral, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -57603,7 +57544,7 @@ /obj/machinery/door/airlock/engineering, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/iron, @@ -57619,7 +57560,7 @@ "tKm" = ( /obj/machinery/firealarm/directional/west, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "tKX" = ( /obj/structure/table/reinforced, /obj/item/storage/toolbox/mechanical{ @@ -57658,8 +57599,8 @@ name = "Departure Lounge" }, /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/hallway/secondary/exit/departure_lounge) "tLH" = ( @@ -57736,7 +57677,7 @@ /obj/effect/mapping_helpers/requests_console/supplies, /obj/effect/mapping_helpers/requests_console/assistance, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "tMF" = ( /obj/structure/disposalpipe/segment{ dir = 9 @@ -57749,13 +57690,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/machinery/button/door/directional/east{ - id = "cap_ext"; - name = "bolt control"; - normaldoorcontrol = 1; - pixel_y = 24; - specialfunctions = 4 - }, /turf/open/floor/engine, /area/station/command/heads_quarters/captain/private) "tMO" = ( @@ -57788,7 +57722,7 @@ dir = 1 }, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "tNh" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt, @@ -57853,14 +57787,14 @@ id_tag = "r1"; name = "Room A" }, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 4 - }, /obj/machinery/door/firedoor, /obj/effect/mapping_helpers/airlock/access/any/medical/general, /obj/effect/turf_decal/tile/blue/fourcorners, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 4 + }, /turf/open/floor/iron/white, /area/station/medical/patients_rooms/room_a) "tNR" = ( @@ -58024,7 +57958,7 @@ "tRb" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -58059,17 +57993,11 @@ "tRp" = ( /obj/effect/turf_decal/tile/blue/fourcorners, /obj/machinery/disposal/bin, -/obj/structure/cable, /obj/structure/disposalpipe/trunk{ dir = 1 }, /turf/open/floor/iron/white, /area/station/medical/surgery/theatre) -"tRP" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/dark, -/area/station/science/xenobiology) "tRX" = ( /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 8 @@ -58101,7 +58029,7 @@ c_tag = "Security Armory" }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "tSn" = ( /obj/structure/chair/office/light{ dir = 4 @@ -58111,12 +58039,6 @@ }, /turf/open/floor/iron/white, /area/station/command/heads_quarters/cmo) -"tSH" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/turf/open/floor/catwalk_floor/iron, -/area/station/hallway/secondary/exit/departure_lounge) "tSX" = ( /obj/item/stack/tile/iron/white/smooth_large, /obj/effect/decal/cleanable/dirt/dust, @@ -58149,7 +58071,7 @@ /obj/machinery/power/apc/auto_name/directional/south, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "tTE" = ( /obj/effect/landmark/start/hangover, /turf/open/floor/iron/showroomfloor, @@ -58262,20 +58184,20 @@ /area/station/security/processing) "tVI" = ( /obj/effect/turf_decal/trimline/blue/filled/line, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/structure/cable, /obj/structure/disposalpipe/sorting/mail/flip{ dir = 1 }, /obj/effect/mapping_helpers/mail_sorting/medbay/general, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/white, /area/station/medical/storage) "tVJ" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "tVP" = ( /obj/item/instrument/musicalmoth, /obj/effect/spawner/random/entertainment/musical_instrument, @@ -58322,6 +58244,12 @@ }, /turf/open/floor/iron, /area/station/hallway/primary/central) +"tWl" = ( +/obj/item/stack/tile/iron/white, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/white, +/area/station/medical/chemistry/minisat) "tWs" = ( /obj/effect/spawner/random/structure/grille, /obj/structure/cable, @@ -58361,13 +58289,13 @@ /turf/open/floor/iron, /area/station/maintenance/disposal/incinerator) "tXg" = ( -/obj/structure/sign/warning, -/turf/closed/wall/rock/porous, +/obj/structure/sign/warning/directional/north, +/turf/closed/mineral/random/stationside/asteroid/porus{ + mineralChance = 20 + }, /area/station/asteroid) "tXi" = ( /obj/machinery/duct, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/light_switch/directional/west, /turf/open/floor/iron/freezer, /area/station/commons/toilet/restrooms) @@ -58397,7 +58325,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "tXt" = ( /obj/structure/disposalpipe/segment, /obj/effect/turf_decal/siding/white{ @@ -58461,10 +58389,13 @@ /area/station/command/heads_quarters/hos) "tYQ" = ( /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/command/bridge) "tZt" = ( /obj/machinery/airalarm/directional/north, +/obj/structure/cable, /turf/open/floor/iron/white, /area/station/science/research) "tZv" = ( @@ -58594,7 +58525,7 @@ }, /obj/effect/turf_decal/tile/red, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "uaY" = ( /obj/item/kirbyplants/random/dead, /obj/structure/window/reinforced/spawner/directional/north, @@ -58705,7 +58636,7 @@ dir = 5 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "udG" = ( /obj/structure/flora/bush/sparsegrass/style_random, /turf/open/floor/grass, @@ -58962,7 +58893,7 @@ pixel_y = 3 }, /turf/open/floor/iron/chapel{ - dir = 4 + dir = 1 }, /area/station/service/chapel) "uin" = ( @@ -59025,7 +58956,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "uiU" = ( /obj/effect/spawner/random/structure/table, /obj/effect/decal/cleanable/dirt/dust, @@ -59087,7 +59018,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/all/engineering/general, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 1 }, /turf/open/floor/plating, @@ -59136,7 +59067,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "ukY" = ( /obj/effect/turf_decal/stripes/line, /obj/effect/turf_decal/stripes/line{ @@ -59243,6 +59174,15 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/hallway/primary/starboard) +"umv" = ( +/obj/machinery/button/door/directional/south{ + id = "brigdesk"; + name = "shutter control"; + pixel_y = 0; + pixel_x = 10 + }, +/turf/closed/wall/r_wall, +/area/station/security/processing) "umA" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/structure/window/reinforced/spawner/directional/east, @@ -59383,7 +59323,7 @@ /obj/structure/cable/layer3, /obj/effect/mapping_helpers/airlock/access/all/command/ai_upload, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "upy" = ( /obj/effect/turf_decal/tile/yellow/diagonal_centre, /obj/machinery/holopad, @@ -59412,7 +59352,7 @@ }, /obj/machinery/camera/autoname/directional/north, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "upS" = ( /obj/machinery/holopad, /turf/open/floor/iron, @@ -59451,9 +59391,9 @@ /area/station/maintenance/port/greater) "uqy" = ( /obj/machinery/door/airlock/maintenance, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/floor/plating, /area/station/commons/vacant_room/commissary) "uqI" = ( @@ -59619,7 +59559,7 @@ pixel_y = -3 }, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "usQ" = ( /obj/effect/turf_decal/tile/yellow, /obj/item/kirbyplants/random, @@ -59647,7 +59587,7 @@ /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/abandoned, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /turf/open/floor/catwalk_floor/iron_dark, @@ -59659,15 +59599,9 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/security/prison/safe) -"utH" = ( -/obj/machinery/duct, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/freezer, -/area/station/commons/toilet/restrooms) "utM" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "utP" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -59766,9 +59700,7 @@ /turf/open/floor/iron/white, /area/station/science/ordnance/testlab) "uvN" = ( -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 - }, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron/dark, /area/station/engineering/supermatter/room) "uww" = ( @@ -59779,6 +59711,11 @@ /obj/effect/turf_decal/tile/dark_red/opposingcorners, /obj/effect/spawner/random/entertainment/lighter, /obj/machinery/door/firedoor, +/obj/machinery/door/poddoor/shutters/preopen{ + dir = 4; + id = "bar_shutters"; + name = "Bar Shutters" + }, /turf/open/floor/iron/dark, /area/station/service/bar) "uwx" = ( @@ -59887,6 +59824,11 @@ }, /turf/open/floor/plating, /area/station/maintenance/department/medical) +"uyo" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/dark, +/area/station/science/xenobiology) "uyu" = ( /obj/structure/railing/corner{ dir = 8 @@ -59898,6 +59840,13 @@ /obj/structure/disposalpipe/segment, /turf/open/floor/iron, /area/station/cargo/storage) +"uyx" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/turf_decal/tile/dark_blue/opposingcorners, +/obj/structure/cable, +/turf/open/floor/iron, +/area/station/command/bridge) "uyA" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/light/small/broken/directional/east, @@ -59954,7 +59903,9 @@ dir = 1 }, /obj/machinery/airalarm/directional/north, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 8 + }, /turf/open/floor/iron/white/herringbone, /area/station/science/breakroom) "uzB" = ( @@ -60116,6 +60067,21 @@ }, /turf/open/floor/iron, /area/station/service/theater) +"uCl" = ( +/obj/structure/sign/directions/evac/directional/north{ + dir = 2; + pixel_y = 10 + }, +/obj/structure/sign/directions/command/directional/north{ + dir = 8; + pixel_y = -10 + }, +/obj/structure/sign/directions/science/directional/north{ + dir = 4; + pixel_y = 0 + }, +/turf/closed/wall, +/area/station/science/lobby) "uCo" = ( /obj/machinery/power/shieldwallgen, /obj/effect/decal/cleanable/dirt/dust, @@ -60180,7 +60146,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "uCS" = ( /obj/machinery/telecomms/receiver/preset_right, /turf/open/floor/circuit/green/telecomms/mainframe, @@ -60459,7 +60425,9 @@ /area/station/maintenance/aft/upper) "uIU" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 4 + }, /turf/open/floor/iron, /area/station/commons/fitness/recreation) "uIW" = ( @@ -60542,15 +60510,13 @@ icon_state = "catwalk-14" }, /turf/open/openspace, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "uLh" = ( /obj/structure/cable, /obj/machinery/camera/autoname/directional/north, /obj/effect/turf_decal/trimline/yellow/filled/line{ dir = 1 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/engineering/gravity_generator) "uLi" = ( @@ -60689,6 +60655,7 @@ "uNc" = ( /obj/structure/rack, /obj/effect/spawner/random/engineering/vending_restock, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/wood/parquet, /area/station/cargo/boutique) "uNd" = ( @@ -60741,7 +60708,7 @@ plasmatanks = 0 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "uOb" = ( /obj/structure/cable, /obj/structure/disposalpipe/segment{ @@ -60760,9 +60727,6 @@ name = "Primary Surgical Theatre" }, /obj/machinery/door/firedoor, -/obj/effect/mapping_helpers/airlock/unres{ - dir = 8 - }, /obj/effect/turf_decal/tile/blue/fourcorners, /obj/effect/mapping_helpers/airlock/access/all/medical/surgery, /obj/structure/cable, @@ -60770,6 +60734,9 @@ /obj/structure/disposalpipe/segment{ dir = 4 }, +/obj/effect/mapping_helpers/airlock/unres{ + dir = 8 + }, /turf/open/floor/iron/white, /area/station/medical/surgery/theatre) "uOo" = ( @@ -60816,10 +60783,6 @@ linked_elevator_id = "medbay1"; pixel_x = -32 }, -/obj/machinery/button/elevator/directional/south{ - id = "medbay1"; - pixel_x = -32 - }, /turf/open/floor/iron/white, /area/station/medical/treatment_center) "uPi" = ( @@ -60923,13 +60886,6 @@ }, /turf/open/floor/iron/white, /area/station/medical/treatment_center) -"uSd" = ( -/obj/structure/disposalpipe/segment{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white, -/area/station/science/lobby) "uSe" = ( /obj/structure/closet/crate, /obj/effect/spawner/random/maintenance, @@ -61027,7 +60983,7 @@ }, /obj/structure/cable/layer3, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "uUk" = ( /obj/structure/rack, /obj/item/storage/briefcase{ @@ -61100,7 +61056,8 @@ /obj/effect/spawner/random/trash/hobo_squat, /obj/machinery/button/curtain{ id = "neverstopgambling"; - pixel_y = 32 + pixel_y = 32; + dir = 1 }, /turf/open/floor/wood, /area/station/maintenance/central/lesser) @@ -61422,7 +61379,6 @@ /turf/open/floor/plating, /area/station/science/xenobiology) "vbY" = ( -/obj/structure/cable, /obj/effect/turf_decal/siding/wood, /obj/structure/sign/painting/large/library{ pixel_y = -35 @@ -61553,7 +61509,7 @@ dir = 9 }, /turf/open/floor/catwalk_floor/iron_dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "vfy" = ( /obj/machinery/door/airlock/medical/glass{ name = "Pharmacy" @@ -61586,7 +61542,6 @@ }, /obj/structure/cable, /obj/structure/sign/warning/vacuum/external/directional/east, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/engine, /area/station/engineering/supermatter/room) @@ -61634,7 +61589,7 @@ }, /obj/structure/cable/layer3, /turf/open/floor/catwalk_floor/iron_dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "vgz" = ( /obj/effect/turf_decal/tile/neutral, /obj/machinery/firealarm/directional/south, @@ -61644,8 +61599,6 @@ /area/station/hallway/primary/central) "vgI" = ( /obj/effect/turf_decal/tile/red/anticorner/contrasted, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/security/execution/transfer) "vgM" = ( @@ -61727,6 +61680,20 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/command/bridge) +"viM" = ( +/obj/structure/sign/directions/engineering/directional/south{ + pixel_y = 10 + }, +/obj/structure/sign/directions/supply/directional/south{ + dir = 8; + pixel_y = -10 + }, +/obj/structure/sign/directions/security/directional/south{ + dir = 8; + pixel_y = 0 + }, +/turf/closed/wall, +/area/station/hallway/primary/central) "viT" = ( /obj/machinery/camera/autoname/directional/west{ network = list("ss13","rd","xeno") @@ -61742,7 +61709,6 @@ /turf/open/floor/grass, /area/station/science/research) "vja" = ( -/obj/structure/cable, /obj/effect/turf_decal/siding/white/corner{ dir = 1 }, @@ -62078,7 +62044,7 @@ /turf/open/floor/carpet/executive, /area/station/command/meeting_room) "voQ" = ( -/obj/machinery/computer/rdconsole, +/obj/machinery/computer/rdconsole/unlocked, /obj/item/radio/intercom/directional/north, /turf/open/floor/iron/white, /area/station/science/lab) @@ -62145,8 +62111,6 @@ /obj/effect/turf_decal/siding/wood{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood/tile, /area/station/service/bar) "vqq" = ( @@ -62256,6 +62220,21 @@ /obj/effect/spawner/random/maintenance/two, /turf/open/floor/iron/grimy, /area/station/maintenance/central/greater) +"vsJ" = ( +/obj/structure/sign/directions/security/directional/south{ + dir = 8; + pixel_y = -10 + }, +/obj/structure/sign/directions/engineering/directional/south{ + dir = 4; + pixel_y = 10 + }, +/obj/structure/sign/directions/supply/directional/south{ + dir = 8; + pixel_y = 0 + }, +/turf/closed/wall, +/area/station/hallway/secondary/exit/departure_lounge) "vsO" = ( /obj/structure/cable, /obj/structure/disposalpipe/sorting/mail{ @@ -62279,7 +62258,7 @@ /obj/effect/spawner/random/aimodule/harmless, /obj/machinery/camera/autoname/directional/west, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "vtv" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 4 @@ -62369,10 +62348,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/plating, /area/station/maintenance/department/medical) -"vwb" = ( -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/cargo/storage) "vwd" = ( /obj/machinery/newscaster/directional/south, /turf/open/floor/engine, @@ -62644,10 +62619,10 @@ /area/station/commons/fitness/recreation) "vAs" = ( /obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, +/obj/effect/mapping_helpers/airlock/access/any/science/maintenance, /turf/open/misc/asteroid, /area/station/science/research) "vAu" = ( @@ -62658,7 +62633,7 @@ /area/station/security/breakroom) "vAB" = ( /turf/open/openspace/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "vAD" = ( /obj/machinery/door/airlock/multi_tile/public/glass{ name = "Dormitories" @@ -62685,13 +62660,13 @@ "vBp" = ( /obj/effect/spawner/random/engineering/tracking_beacon, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "vBs" = ( /obj/machinery/holopad, /obj/effect/landmark/event_spawn, /obj/effect/turf_decal/box, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "vBD" = ( /obj/structure/chair/office/light{ dir = 1 @@ -62717,7 +62692,7 @@ /obj/effect/decal/cleanable/blood/oil, /obj/item/radio/intercom/directional/north, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/uppernorth) +/area/station/ai/satellite/uppernorth) "vCw" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -62741,6 +62716,11 @@ /area/station/command/corporate_showroom) "vCL" = ( /obj/effect/spawner/structure/window/reinforced, +/obj/machinery/door/poddoor/shutters/preopen{ + name = "Hydroponics Shutters"; + id = "hydroponics_shutters"; + dir = 8 + }, /turf/open/floor/plating, /area/station/service/hydroponics) "vCQ" = ( @@ -62775,7 +62755,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "vEh" = ( /obj/effect/mapping_helpers/broken_floor, /obj/item/stack/sheet/iron, @@ -62918,7 +62898,7 @@ /obj/machinery/light/small/dim/directional/east, /obj/item/coin/titanium, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "vFD" = ( /obj/machinery/door/window/brigdoor/security/cell/left/directional/west{ id = "Cell 4"; @@ -63086,7 +63066,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "vHI" = ( /obj/effect/turf_decal/stripes/line, /obj/effect/turf_decal/stripes/line{ @@ -63179,7 +63159,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "vKd" = ( /obj/effect/decal/cleanable/blood/oil, /obj/machinery/light/small/directional/west, @@ -63192,7 +63172,7 @@ }, /obj/effect/mapping_helpers/airlock/access/all/command/minisat, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "vKx" = ( /obj/structure/table/wood, /obj/item/storage/box/coffeepack, @@ -63373,7 +63353,7 @@ /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/blood/old, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/uppernorth) +/area/station/ai/satellite/uppernorth) "vNB" = ( /obj/machinery/vending/tool, /obj/effect/decal/cleanable/dirt, @@ -63455,7 +63435,7 @@ }, /obj/structure/cable, /turf/open/floor/catwalk_floor/iron_dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "vOT" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, @@ -63509,10 +63489,10 @@ dir = 9 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/segment{ dir = 10 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/engineering/gravity_generator) "vQa" = ( @@ -63542,7 +63522,7 @@ /area/station/command/bridge) "vQn" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 1 + dir = 8 }, /turf/open/floor/engine, /area/station/medical/chemistry) @@ -63559,8 +63539,6 @@ /turf/closed/wall, /area/station/cargo/boutique) "vQT" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/sign/poster/official/moth_hardhat/directional/north, /obj/structure/table, /obj/item/storage/toolbox/emergency, @@ -63569,6 +63547,9 @@ "vRi" = ( /mob/living/basic/bot/cleanbot/medbay, /obj/effect/turf_decal/trimline/blue/filled/line, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/structure/cable, /turf/open/floor/iron/white, /area/station/medical/storage) "vRm" = ( @@ -63577,7 +63558,7 @@ /obj/structure/extinguisher_cabinet/directional/east, /obj/effect/turf_decal/delivery, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "vRt" = ( /obj/structure/disposalpipe/segment{ dir = 4 @@ -63812,10 +63793,9 @@ /turf/open/floor/wood/tile, /area/station/commons/dorms) "vVj" = ( -/obj/effect/decal/cleanable/dirt/dust, /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/iron/white, /area/station/medical/chemistry/minisat) "vVk" = ( @@ -63916,7 +63896,7 @@ "vWK" = ( /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "vWN" = ( /obj/structure/sign/warning/electric_shock/directional/north, /obj/structure/rack, @@ -63940,6 +63920,12 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/iron, /area/station/service/cafeteria) +"vXt" = ( +/obj/structure/disposalpipe/segment, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/white, +/area/station/science/lobby) "vXS" = ( /obj/structure/broken_flooring/side, /obj/effect/decal/cleanable/dirt/dust, @@ -64002,6 +63988,12 @@ }, /turf/open/floor/plating, /area/station/service/theater) +"vZJ" = ( +/obj/effect/turf_decal/trimline/yellow/filled/line, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/engineering/gravity_generator) "vZL" = ( /obj/machinery/holopad, /obj/effect/turf_decal/box/white{ @@ -64019,8 +64011,6 @@ /turf/open/floor/iron, /area/station/security/brig/entrance) "vZX" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark/side{ dir = 8 }, @@ -64095,7 +64085,7 @@ /area/station/security/interrogation) "waS" = ( /obj/machinery/door/airlock/maintenance_hatch, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -64189,7 +64179,7 @@ /obj/item/multitool, /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "wcp" = ( /turf/open/floor/carpet, /area/station/command/corporate_showroom) @@ -64204,7 +64194,7 @@ "wdc" = ( /obj/effect/turf_decal/trimline/yellow/filled/line, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ - dir = 1 + dir = 8 }, /turf/open/floor/iron, /area/station/engineering/gravity_generator) @@ -64327,17 +64317,21 @@ "wfl" = ( /obj/effect/landmark/atmospheric_sanity/ignore_area, /turf/closed/wall/r_wall, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "wfs" = ( -/obj/structure/cable, -/obj/machinery/button/door/directional/west{ - id = "maintbridge"; - name = "Shutter Control"; - pixel_y = 24 +/obj/structure/sign/directions/security/directional/north{ + dir = 8; + pixel_y = 10 }, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/plating, -/area/station/maintenance/department/medical/central) +/obj/structure/sign/directions/engineering/directional/north{ + dir = 4; + pixel_y = 0 + }, +/obj/structure/sign/directions/command/directional/north{ + pixel_y = -10 + }, +/turf/closed/wall/r_wall, +/area/station/engineering/transit_tube) "wfy" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -64633,10 +64627,6 @@ /obj/effect/turf_decal/tile/dark_green/opposingcorners, /turf/open/floor/iron, /area/station/hallway/secondary/service) -"wli" = ( -/obj/structure/sign/warning/vacuum/external, -/turf/closed/wall, -/area/station/cargo/miningoffice) "wlo" = ( /obj/machinery/atmospherics/pipe/smart/simple/cyan/visible{ dir = 5 @@ -64791,7 +64781,7 @@ "wow" = ( /obj/effect/turf_decal/tile/red, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "woz" = ( /obj/structure/sign/poster/official/random/directional/east, /obj/structure/cable, @@ -64810,7 +64800,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/cable, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "woL" = ( /turf/closed/wall/rock, /area/station/maintenance/port/greater) @@ -64838,7 +64828,7 @@ dir = 4 }, /turf/open/floor/glass/reinforced/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "wps" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -64852,7 +64842,7 @@ /obj/effect/landmark/event_spawn, /obj/effect/turf_decal/box, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "wpG" = ( /obj/structure/railing, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -64933,12 +64923,12 @@ /turf/open/floor/plating, /area/station/engineering/atmos/project) "wqU" = ( -/obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/disposalpipe/junction{ dir = 4 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/floor/iron, /area/station/engineering/lobby) "wqW" = ( @@ -64948,7 +64938,7 @@ /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/circuit/green, -/area/station/ai_monitored/command/nuke_storage) +/area/station/command/vault) "wrx" = ( /obj/effect/turf_decal/tile/red/half/contrasted{ dir = 1 @@ -65013,6 +65003,7 @@ "wsi" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/chapel{ dir = 8 }, @@ -65120,7 +65111,6 @@ "wtW" = ( /obj/structure/window/spawner/directional/north, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/commons/fitness/recreation) "wtZ" = ( @@ -65162,7 +65152,7 @@ "wun" = ( /obj/machinery/door/airlock/maintenance, /obj/machinery/atmospherics/pipe/layer_manifold/supply/visible/layer4, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/effect/mapping_helpers/airlock/access/all/engineering/external, /obj/effect/mapping_helpers/airlock/abandoned, /turf/open/floor/plating, @@ -65175,9 +65165,9 @@ /turf/open/floor/iron/textured_large, /area/station/medical/treatment_center) "wus" = ( -/obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/floor/carpet/black, /area/station/command/heads_quarters/hos) "wuS" = ( @@ -65201,8 +65191,6 @@ /obj/effect/turf_decal/siding/wood{ dir = 4 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/sorting/mail/flip{ dir = 1 }, @@ -65226,7 +65214,7 @@ dir = 4 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/uppernorth) +/area/station/ai/satellite/uppernorth) "wvs" = ( /obj/structure/chair/sofa/bench, /obj/effect/landmark/start/prisoner, @@ -65311,7 +65299,7 @@ "wwR" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/plating, @@ -65467,7 +65455,7 @@ /obj/structure/cable/layer3, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "wzX" = ( /obj/structure/flora/tree/palm/style_random, /turf/open/floor/grass, @@ -65514,7 +65502,7 @@ dir = 1 }, /turf/open/floor/plating, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) +/area/station/ai/satellite/uppersouth) "wAy" = ( /obj/structure/cable, /turf/open/floor/iron/white/smooth_edge, @@ -65615,12 +65603,10 @@ /obj/structure/window/reinforced/spawner/directional/west, /obj/item/food/grown/banana, /obj/structure/sign/warning/biohazard/directional/south, -/obj/structure/sign/warning{ - pixel_x = 32 - }, /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 }, +/obj/structure/sign/warning/directional/east, /turf/open/misc/grass, /area/station/cargo/boutique) "wCj" = ( @@ -65712,7 +65698,7 @@ dir = 1 }, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/teleporter) +/area/station/ai/satellite/teleporter) "wDb" = ( /obj/structure/chair/office{ dir = 8 @@ -65734,8 +65720,6 @@ "wDo" = ( /obj/structure/cable, /obj/effect/landmark/event_spawn, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/security/interrogation) "wDr" = ( @@ -65770,6 +65754,9 @@ /obj/effect/turf_decal/siding/red{ dir = 5 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/floor/circuit, /area/station/science/robotics/lab) "wDH" = ( @@ -66006,7 +65993,7 @@ /area/station/hallway/secondary/command) "wHJ" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "wIr" = ( /obj/effect/turf_decal/tile/dark_red/opposingcorners, /obj/structure/cable, @@ -66016,12 +66003,8 @@ /area/station/service/bar/backroom) "wIB" = ( /obj/structure/railing, -/obj/machinery/atmospherics/pipe/multiz/supply/visible/layer4{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/multiz/scrubbers/visible/layer2{ - dir = 4 - }, +/obj/machinery/atmospherics/pipe/multiz/supply/visible/layer4, +/obj/machinery/atmospherics/pipe/multiz/scrubbers/visible/layer2, /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark, /area/station/maintenance/department/engine) @@ -66089,7 +66072,7 @@ /area/station/commons/lounge) "wKE" = ( /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /obj/structure/disposalpipe/segment, /obj/machinery/door/airlock/maintenance_hatch, /obj/structure/cable, @@ -66105,7 +66088,7 @@ }, /obj/machinery/firealarm/directional/south, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "wKO" = ( /turf/open/floor/glass, /area/station/maintenance/department/medical) @@ -66150,7 +66133,6 @@ /area/station/maintenance/department/engine) "wLq" = ( /obj/effect/landmark/blobstart, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/medical/morgue) @@ -66159,6 +66141,8 @@ /obj/structure/disposalpipe/segment{ dir = 1 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/security/office) "wLu" = ( @@ -66258,14 +66242,6 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/textured, /area/station/science/lobby) -"wME" = ( -/obj/machinery/door/firedoor/border_only{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white, -/area/station/science/research) "wMY" = ( /obj/structure/cable, /obj/structure/dresser, @@ -66354,7 +66330,7 @@ /area/station/science/ordnance) "wOo" = ( /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "wOp" = ( /obj/structure/table, /obj/machinery/reagentgrinder{ @@ -66408,7 +66384,7 @@ "wPy" = ( /obj/effect/landmark/atmospheric_sanity/ignore_area, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "wPE" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, @@ -66435,11 +66411,6 @@ /obj/machinery/light/dim/directional/west, /turf/open/floor/iron/white, /area/station/science/research) -"wQa" = ( -/obj/effect/turf_decal/bot_white, -/obj/structure/cable, -/turf/open/floor/iron, -/area/station/cargo/storage) "wQe" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2, /turf/open/floor/iron, @@ -66698,7 +66669,7 @@ /obj/effect/mapping_helpers/airlock/cyclelink_helper_multi{ cycle_id = "sci-entrance" }, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/machinery/door/firedoor, @@ -66761,7 +66732,7 @@ }, /obj/machinery/light_switch/directional/north, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "wWE" = ( /obj/structure/cable, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -66773,6 +66744,8 @@ /obj/machinery/holopad, /obj/effect/turf_decal/bot, /obj/effect/landmark/event_spawn, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/cargo/miningoffice) "wWJ" = ( @@ -66826,7 +66799,6 @@ /turf/open/floor/iron, /area/station/maintenance/disposal/incinerator) "wYc" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/chapel{ dir = 8 }, @@ -66835,7 +66807,7 @@ /obj/structure/cable, /obj/machinery/power/apc/auto_name/directional/east, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/aisat/uppersouth) +/area/station/ai/satellite/uppersouth) "wYo" = ( /obj/structure/filingcabinet/chestdrawer, /obj/item/toy/figure/cmo{ @@ -67001,13 +66973,17 @@ req_access = list("medical") }, /obj/effect/turf_decal/tile/blue/fourcorners, +/obj/machinery/button/elevator/directional/south{ + id = "medbay1" + }, /turf/open/floor/iron/white/textured, /area/station/medical/treatment_center) "xaH" = ( /obj/structure/filingcabinet, /obj/machinery/button/ticket_machine{ pixel_x = 24; - pixel_y = 6 + pixel_y = 6; + dir = 4 }, /obj/machinery/button/door/directional/east{ id = "hopdesk"; @@ -67101,7 +67077,6 @@ "xbB" = ( /obj/machinery/disposal/bin, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/structure/disposalpipe/trunk{ dir = 8 }, @@ -67132,7 +67107,6 @@ /area/station/engineering/supermatter/room) "xcb" = ( /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/textured, /area/station/science/robotics/lab) "xch" = ( @@ -67171,6 +67145,7 @@ /obj/effect/spawner/random/structure/chair_comfy{ dir = 8 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/command/bridge) "xcC" = ( @@ -67244,7 +67219,7 @@ "xeo" = ( /obj/machinery/door/airlock/maintenance_hatch, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /obj/effect/mapping_helpers/airlock/access/all/engineering/maintenance, @@ -67300,7 +67275,7 @@ "xfn" = ( /obj/effect/landmark/atmospheric_sanity/ignore_area, /turf/closed/wall/r_wall, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "xfz" = ( /obj/structure/cable, /obj/effect/turf_decal/tile/yellow, @@ -67452,6 +67427,10 @@ }, /turf/open/floor/iron, /area/station/security/brig/entrance) +"xiw" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/engine, +/area/station/medical/chemistry) "xiy" = ( /obj/effect/turf_decal/siding/white{ dir = 10 @@ -67507,7 +67486,7 @@ "xje" = ( /obj/machinery/airalarm/directional/south, /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 + dir = 1 }, /obj/effect/turf_decal/stripes/corner{ dir = 8 @@ -67545,9 +67524,7 @@ /obj/effect/turf_decal/trimline/yellow/filled/corner, /obj/item/radio/intercom/directional/west, /obj/effect/landmark/start/chemist, -/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ - dir = 4 - }, +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4, /turf/open/floor/iron/textured, /area/station/medical/pharmacy) "xjq" = ( @@ -67596,7 +67573,7 @@ /obj/structure/cable/layer3, /mob/living/simple_animal/bot/secbot/pingsky, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "xkI" = ( /obj/effect/decal/cleanable/molten_object, /turf/open/misc/asteroid, @@ -67621,7 +67598,7 @@ /obj/item/ai_module/core/full/dungeon_master, /obj/structure/cable, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "xlm" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/frame/machine, @@ -67876,6 +67853,7 @@ /area/station/maintenance/department/science) "xqB" = ( /obj/machinery/light/dim/directional/south, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/textured, /area/station/engineering/storage/tech) "xqE" = ( @@ -68025,7 +68003,6 @@ /obj/effect/turf_decal/trimline/blue/filled/line{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/camera/autoname/directional/west{ network = list("ss13","medbay") }, @@ -68062,7 +68039,6 @@ "xtA" = ( /obj/effect/turf_decal/tile/neutral/diagonal_centre, /obj/structure/cable, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/service/chapel/funeral) "xtB" = ( @@ -68239,8 +68215,6 @@ /turf/open/floor/iron/grimy, /area/station/maintenance/central/lesser) "xwh" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/engineering/gravity_generator) "xwm" = ( @@ -68260,7 +68234,7 @@ /obj/machinery/power/smes/full, /obj/structure/cable, /turf/open/floor/catwalk_floor/iron_dark/telecomms, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "xwA" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/spawner/random/maintenance, @@ -68326,7 +68300,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "xxJ" = ( /obj/machinery/atmospherics/pipe/smart/manifold/yellow/visible{ dir = 1 @@ -68351,6 +68325,7 @@ dir = 5 }, /obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/carpet, /area/station/service/chapel/funeral) "xxV" = ( @@ -68425,7 +68400,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/uppernorth) +/area/station/ai/satellite/uppernorth) "xzG" = ( /obj/item/kirbyplants/random, /turf/open/floor/iron/white, @@ -68464,7 +68439,7 @@ /obj/machinery/computer/upload/ai, /obj/machinery/airalarm/directional/west, /turf/open/floor/circuit/red, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "xAd" = ( /obj/effect/turf_decal/sand/plating, /turf/open/floor/plating, @@ -68521,7 +68496,7 @@ dir = 8 }, /turf/open/floor/iron/dark/smooth_large, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) "xAV" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron, @@ -68578,6 +68553,11 @@ "xBS" = ( /turf/closed/wall, /area/station/medical/surgery/theatre) +"xBU" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/dark/small, +/area/station/science/cytology) "xBV" = ( /obj/machinery/atmospherics/components/binary/volume_pump, /obj/effect/turf_decal/tile/yellow{ @@ -68742,6 +68722,7 @@ /obj/machinery/door/airlock/multi_tile/public/glass{ name = "Art Storage" }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/commons/storage/art) "xEr" = ( @@ -68927,7 +68908,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/white, -/area/station/ai_monitored/turret_protected/ai_upload_foyer) +/area/station/ai/upload/foyer) "xIm" = ( /obj/structure/broken_flooring/pile, /obj/effect/decal/cleanable/dirt/dust, @@ -68942,7 +68923,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "xIN" = ( /obj/structure/railing, /obj/machinery/door/firedoor/border_only, @@ -68984,7 +68965,7 @@ req_access = list("captain") }, /turf/open/floor/circuit, -/area/station/ai_monitored/turret_protected/ai_upload) +/area/station/ai/upload/chamber) "xJK" = ( /obj/effect/turf_decal/stripes/line, /obj/machinery/door/poddoor/shutters/window/preopen{ @@ -69030,7 +69011,6 @@ department = "Mining"; name = "Mining Requests Console" }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron, /area/station/cargo/miningoffice) "xKo" = ( @@ -69142,7 +69122,6 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 8 }, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood/tile, /area/station/command/corporate_showroom) "xMY" = ( @@ -69227,7 +69206,7 @@ /obj/structure/extinguisher_cabinet/directional/east, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "xOg" = ( /obj/effect/turf_decal/tile/neutral/opposingcorners, /obj/effect/spawner/random/engineering/tracking_beacon, @@ -69255,6 +69234,8 @@ /obj/effect/turf_decal/siding/wood{ dir = 8 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/wood/tile, /area/station/service/bar) "xOB" = ( @@ -69272,6 +69253,7 @@ /obj/effect/turf_decal/tile/dark_blue/half/contrasted, /obj/structure/disposalpipe/segment, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/structure/cable, /turf/open/floor/iron, /area/station/hallway/secondary/command) "xOF" = ( @@ -69328,10 +69310,17 @@ "xPo" = ( /obj/effect/turf_decal/box/corners, /turf/open/floor/plating/elevatorshaft, -/area/station/ai_monitored/turret_protected/aisat_interior) +/area/station/ai/satellite/interior) +"xPp" = ( +/obj/effect/turf_decal/tile/purple/opposingcorners, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron/white, +/area/station/science/lobby) "xPH" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron, /area/station/security/prison) "xPL" = ( @@ -69489,11 +69478,6 @@ /obj/effect/mapping_helpers/broken_floor, /turf/open/floor/wood/tile, /area/station/service/bar) -"xUf" = ( -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/turf/open/floor/iron/white, -/area/station/medical/storage) "xUx" = ( /obj/structure/flora/rock/style_random, /turf/open/misc/asteroid, @@ -69514,6 +69498,13 @@ }, /turf/open/space/basic, /area/space/nearstation) +"xUJ" = ( +/obj/machinery/door/airlock/research/glass{ + name = "Monkey Pen" + }, +/obj/effect/mapping_helpers/airlock/access/all/medical/chemistry, +/turf/open/floor/grass, +/area/station/medical/chemistry) "xUR" = ( /obj/machinery/suit_storage_unit/standard_unit, /obj/effect/turf_decal/tile/neutral/fourcorners, @@ -69522,14 +69513,12 @@ }, /obj/effect/turf_decal/delivery, /turf/open/floor/iron/dark, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "xUT" = ( /obj/effect/turf_decal/stripes/corner{ dir = 1 }, /obj/item/radio/intercom/directional/west, -/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, -/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark, /area/station/science/xenobiology) "xUW" = ( @@ -69565,6 +69554,8 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/iron/dark/textured, /area/station/science/robotics/lab) "xVO" = ( @@ -69640,7 +69631,7 @@ pixel_x = 27 }, /turf/open/floor/circuit/green, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "xXh" = ( /obj/machinery/power/shieldwallgen, /obj/effect/decal/cleanable/dirt/dust, @@ -69682,6 +69673,7 @@ /obj/effect/turf_decal/stripes/red/line{ dir = 4 }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, /area/station/medical/morgue) "xXF" = ( @@ -69698,7 +69690,7 @@ "xYa" = ( /obj/machinery/door/airlock/maintenance, /obj/effect/mapping_helpers/airlock/access/any/engineering/maintenance, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/structure/disposalpipe/segment{ @@ -69722,7 +69714,7 @@ /obj/effect/landmark/navigate_destination/minisat_access_ai, /obj/effect/turf_decal/stripes/corner, /obj/structure/cable, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 4 }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, @@ -69824,7 +69816,7 @@ dir = 4 }, /turf/open/floor/plating, -/area/station/ai_monitored/command/storage/satellite) +/area/station/ai/satellite/maintenance/storage) "yae" = ( /obj/effect/turf_decal/tile/brown/anticorner/contrasted{ dir = 4 @@ -69853,7 +69845,7 @@ /area/station/science/ordnance/testlab) "yaw" = ( /obj/machinery/turretid{ - control_area = "/area/station/ai_monitored/turret_protected/aisat_interior"; + control_area = "/area/station/ai/satellite/interior"; name = "AI Antechamber turret control"; pixel_y = -27 }, @@ -69861,7 +69853,7 @@ /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/blood/old, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/uppernorth) +/area/station/ai/satellite/uppernorth) "yaH" = ( /obj/item/radio/intercom/directional/east, /obj/machinery/portable_atmospherics/canister/oxygen, @@ -69892,7 +69884,7 @@ dir = 8 }, /turf/open/floor/iron, -/area/station/ai_monitored/command/storage/eva) +/area/station/command/eva) "ybo" = ( /turf/open/floor/iron/white/textured_corner{ dir = 8 @@ -69942,7 +69934,7 @@ /obj/machinery/door/firedoor, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, -/obj/effect/mapping_helpers/airlock/unres{ +/obj/effect/mapping_helpers/airlock/unres/delayed{ dir = 8 }, /turf/open/floor/iron/white, @@ -69996,6 +69988,7 @@ "ycI" = ( /mob/living/carbon/human/species/monkey, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /turf/open/floor/grass, /area/station/medical/chemistry) "ycN" = ( @@ -70006,6 +69999,11 @@ /obj/effect/mapping_helpers/airlock/access/any/command/hop, /turf/open/floor/plating, /area/station/command/heads_quarters/hop) +"ycT" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/engine, +/area/station/medical/chemistry) "ycY" = ( /obj/effect/turf_decal/tile/brown/anticorner/contrasted{ dir = 1 @@ -70108,7 +70106,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/iron/dark, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "yeS" = ( /obj/structure/closet/crate/grave, /obj/effect/landmark/start/hangover, @@ -70136,6 +70134,10 @@ /obj/machinery/camera/autoname/directional/east, /turf/open/floor/iron/kitchen, /area/station/service/kitchen) +"yfL" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron/textured_large, +/area/station/engineering/storage/tech) "ygb" = ( /obj/structure/table, /obj/machinery/recharger, @@ -70314,7 +70316,7 @@ /obj/structure/window/spawner/directional/south, /obj/structure/window/spawner/directional/east, /turf/open/misc/grass, -/area/station/ai_monitored/turret_protected/aisat/foyer) +/area/station/ai/satellite/foyer) "yin" = ( /turf/open/water/no_planet_atmos/deep, /area/station/service/hydroponics/garden) @@ -70462,6 +70464,16 @@ /obj/machinery/holopad, /turf/open/floor/circuit, /area/station/science/robotics/lab) +"yll" = ( +/obj/structure/cable, +/obj/effect/turf_decal/tile/red/opposingcorners, +/obj/structure/disposalpipe/segment{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/turf/open/floor/iron, +/area/station/security) "ylm" = ( /obj/structure/cable, /obj/effect/decal/cleanable/dirt, @@ -70527,7 +70539,7 @@ }, /obj/effect/turf_decal/tile/red, /turf/open/floor/iron/dark, -/area/station/ai_monitored/security/armory) +/area/station/security/armory) "yma" = ( /obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ dir = 8 @@ -70543,7 +70555,7 @@ dir = 4 }, /turf/open/floor/catwalk_floor/iron_dark, -/area/station/ai_monitored/turret_protected/ai) +/area/station/ai/satellite/chamber) "ymi" = ( /obj/effect/turf_decal/tile/neutral{ dir = 1 @@ -83294,8 +83306,8 @@ wsI uyL umh sjJ -rzF -bGe +umh +uyL lmL hQy icM @@ -83553,8 +83565,8 @@ icM xfN rxX raR -wQa -vwb +icM +ijg xrU fXZ sFd @@ -83572,7 +83584,7 @@ qPN xwO mHG ecy -sme +cEU rCz awj dkj @@ -83807,8 +83819,8 @@ poi ahV uyL hQu -uyL -rzF +bGe +umh nCt umh uyL @@ -84064,11 +84076,11 @@ rPA mBt xnQ hQu -sJX -rzF -noi -jea -ghU +oXc +umh +xnQ +hQu +uSA icM hoX wOU @@ -84322,7 +84334,7 @@ uyL vSt umh uyL -fFz +lmL aex umh uyL @@ -84579,10 +84591,10 @@ lAL heZ uyL uyL -ezP -ezP -ezP -ezP +uyL +uyL +uyL +uyL ijg hoX rXd @@ -84827,7 +84839,7 @@ bdu bWW poi tAL -giK +wBc lvg lBC uDB @@ -85884,7 +85896,7 @@ bfc gok rnk lpF -yfl +kdh aNR oDC meP @@ -85905,8 +85917,8 @@ cBb hAA naZ sep -naZ -naZ +qkc +qkc iuV sIv rnk @@ -86399,7 +86411,7 @@ xQN rnk rnk vWI -xUf +aNR taT wJy wJy @@ -86851,7 +86863,7 @@ dMF rrF hME lvZ -wUe +heu xPH iEO sWy @@ -87108,7 +87120,7 @@ hME hME hME kSm -wUe +heu eFK iEO oCR @@ -87958,7 +87970,7 @@ xHY rAa dgp qGB -fqF +eYv ksU tsq dgp @@ -88144,7 +88156,7 @@ jza eWC jza jkv -kkT +iHG dba qLk jza @@ -88215,7 +88227,7 @@ xHY wZI hQg sed -fqF +eYv nkf xzG hQg @@ -88448,7 +88460,7 @@ ksl nJs fXn mDr -jGK +fXn kJN unL rnk @@ -88659,7 +88671,7 @@ fod jza bSI sCO -bqV +keQ bZf jza fLv @@ -88962,7 +88974,7 @@ rWs cQm fXn fXn -aKd +cQm mju wjj rnk @@ -89182,14 +89194,14 @@ dPv mGG mGG xQW -kcA -fyA +yll +qie rRK gHr gHr gHr gHr -gHr +umv gHr ydk ghW @@ -89440,14 +89452,14 @@ sfm ecC mxv hSW -fyA +qie rRK xLR lfp tRX rjL pWC -ubd +qaz ydk xNq mtB @@ -89490,7 +89502,7 @@ qfB ujT ujT qfB -qfB +oez nIG tmn bxC @@ -89747,7 +89759,7 @@ bGD nxG nxG nxG -hpB +ciY nxG nxG tuA @@ -90235,7 +90247,7 @@ kmu dxT tCE xMk -rVD +aQS deY aQS vTx @@ -90264,7 +90276,7 @@ prW prW prW prW -dvz +prW prW tOm hDK @@ -90492,7 +90504,7 @@ kmu dxT tCE bAw -bAw +rVD bAw bAw uLj @@ -90521,7 +90533,7 @@ uZx lsC bvm lsC -uZx +hpB dbN tOm tCE @@ -90723,7 +90735,7 @@ sgW cpO mAd skr -hBD +wrx gpV kaJ obc @@ -91515,8 +91527,8 @@ hbM rjX rjX iXj -rjX -oez +aKJ +kmu tHF hqz bAw @@ -92025,7 +92037,7 @@ wGg pLW bzH bZa -bZa +giy giy ego bZa @@ -92075,8 +92087,8 @@ wdV wdV ltU jtc +jaa wdV -wfs rnk cLf cLf @@ -92283,7 +92295,7 @@ sid mOb wEc xOg -rVu +bLa qER aUo iXj @@ -93090,7 +93102,7 @@ kAg ujv kmu hGE -nxG +kmu afe kmu tOm @@ -93347,7 +93359,7 @@ kAg vNH kmu opH -knX +fBz fBz fBz pUW @@ -93603,7 +93615,7 @@ sWn kAg veW kmu -tOm +dcI tCE tCE tCE @@ -95149,7 +95161,7 @@ iEj wkf hzF xEL -qtP +deW pdg iGC iGC @@ -95336,7 +95348,7 @@ cLf cLf tyd cLf -hrM +bVA aGz ien csW @@ -95407,7 +95419,7 @@ hDK hzF vCy czW -tSH +hUS hUS hUS hUS @@ -95908,7 +95920,7 @@ pDP umo aMR ygj -qrl +ygj ncX eQi tLI @@ -96164,7 +96176,7 @@ aGA rss aGA rss -dbw +aGA aGA aGA eQi @@ -96175,7 +96187,7 @@ kmu rFV tOm sut -hzF +vsJ hzF hjo gEr @@ -96421,7 +96433,7 @@ ruP lOE mRA dlZ -ygj +qrl pQN pQN eQi @@ -96678,7 +96690,7 @@ ruP jEr qrl ffk -ygj +qrl wKo fIX eQi @@ -96881,8 +96893,8 @@ bqX ogH aeJ xcs -tYQ -tYQ +iMS +iMS tYQ fID nlQ @@ -96935,7 +96947,7 @@ ruP qrl vrR rej -ygj +qrl tQt efc xrV @@ -97138,8 +97150,8 @@ eKR pVC yhk lPz -cBh -cBh +jTd +jTd rKb dla kCD @@ -97192,7 +97204,7 @@ ruP pQN qrl aqR -ygj +qrl ffk ffk eQi @@ -97203,7 +97215,7 @@ kmu aly dxT nBA -hzF +qAo hzF eGn sIX @@ -97449,7 +97461,7 @@ ruP mSm qrl gTh -ygj +qrl qrl qrl eQi @@ -97657,13 +97669,13 @@ typ ckb jlw iRB -gkQ +uyx bGW tbH alc jZj -nAx -kaz +dhl +jZj dbJ mMH juE @@ -97706,9 +97718,9 @@ ruP ffk ohh ffk -ygj +qrl fXU -eDV +qrl eQi vxl rjn @@ -97914,7 +97926,7 @@ typ lCK aHs iRB -kZg +uyx gbM mzI cgo @@ -97977,7 +97989,7 @@ ekL hzF qDg dhO -tSH +cSb cSb cSb cSb @@ -98171,7 +98183,7 @@ rCd kNX eKR tKX -kZg +uyx nPm yjH eKR @@ -98423,10 +98435,10 @@ eKR cNQ kjs ftR -fun -fun +mrq +mrq hSi -sRM +bQc kZA gkQ dBn @@ -98940,7 +98952,7 @@ bCr kYU jTd rkz -lrc +dla eHa ktI ita @@ -98948,7 +98960,7 @@ hOb cwq cwq giv -iPS +cwq wcp juw nKt @@ -98958,8 +98970,8 @@ xDh juw pSO xYn -pSO -jaa +wfs +kmu qbA tCE mJR @@ -99462,7 +99474,7 @@ vCI mXY mXY nPQ -tIN +cwq euR juw wUM @@ -99520,7 +99532,7 @@ loU jKy iBe pOv -kUW +gaK aRt sxk azg @@ -99774,9 +99786,9 @@ nWx cRM hGo dPw -jGZ +mQy kpj -kJl +mQy wYc hGh vSn @@ -100006,11 +100018,11 @@ xQH mcA kqD jpn -vOT -oqt -oqt -aFw -oLH +uzH +sgq +sgq +pUj +wWZ wWZ wWZ utY @@ -100030,10 +100042,10 @@ tCE bTm jKy oeL -dPw +cXn rGQ muf -pOv +lqM lCO umO uhD @@ -100264,9 +100276,9 @@ gLp dNh gGs skV -uzH +vOT nAG -pUj +ekF oLH gUs wWZ @@ -100289,9 +100301,9 @@ hAV hGo tki iEK -wsi +peA bfD -wsi +peA bJQ peA srj @@ -100544,8 +100556,8 @@ tCE bTm gho tGZ -ccZ -rGQ +dPw +jKy naO pOv gaK @@ -101798,7 +101810,7 @@ usF ufr kZw uIU -ufr +kZw kZw rhP fQm @@ -102066,7 +102078,7 @@ qdt akl clG tXi -utH +cmB sYZ cmB pWR @@ -102598,8 +102610,8 @@ prW anT prW sOA -bVA -aKJ +prW +prW jqj dxT aQS @@ -102855,8 +102867,8 @@ crU crU crU crU -crU -crU +dvz +thj iEn eZn emy @@ -103327,11 +103339,11 @@ iMk bDy irx gyl -gvF -qaz +uCl +kmu tHF -qAo -uZx +tCE +viM fDa eMG xBz @@ -103581,10 +103593,10 @@ goB txy tGE cUk -cUk +vXt cUk hFY -wEA +fHI nxG sGs nTT @@ -103837,9 +103849,9 @@ eRu eRu vfJ vSv -grl -dko qXy +dko +hBQ mJG oTX tEW @@ -104100,7 +104112,7 @@ iKc rSL jbL lFE -cBr +aQS deY xMk aQS @@ -104357,7 +104369,7 @@ iKc hle gvF rIb -iAw +wEA swi swi swi @@ -104869,9 +104881,9 @@ rvg vuq hPH iKc -gtB -uSd -gQN +iKc +bsw +wxa vks yhV oYu @@ -104883,8 +104895,8 @@ xOU kBt wdz nOZ -xcb -eqQ +tld +tld dyb qdo exQ @@ -105123,9 +105135,9 @@ kju wMB jrd rvg -slL -slL -slL +xPp +xPp +xPp oXz bsw wxa @@ -105396,7 +105408,7 @@ uig xOU kcY prg -qKm +tld rDl ylj esP @@ -105653,7 +105665,7 @@ mwW xOU xOU xOU -qKm +tld wDD vRZ oQe @@ -105910,7 +105922,7 @@ exk faX cya vpq -qKm +tld xVK ryy ryy @@ -105938,7 +105950,7 @@ xAy pEf sbd soB -sbd +yfL bcm lHm dct @@ -106452,7 +106464,7 @@ xAy rdI byj jvN -sbd +kgO xqB lHm nWu @@ -107187,7 +107199,7 @@ pdz tZF wPX mlV -cpw +dfM cpw jIm xOU @@ -107702,7 +107714,7 @@ pBn cPo qii owp -iQZ +lxX ocV thf qlG @@ -107960,7 +107972,7 @@ tNR oUW mnd peo -bWi +dfM thf dmM pld @@ -109028,8 +109040,8 @@ eyg dUi myg dyv -jxd -jxd +clx +clx svf svf pTJ @@ -109045,7 +109057,7 @@ vPT fIW mqH wCv -oMi +vZJ wgk jKu saJ @@ -109283,9 +109295,9 @@ vME gTV eyg wpn -cFc -svf -svf +lUY +jxd +jxd clx mJb fQO @@ -109794,7 +109806,7 @@ dpU bnK wqU ocB -ocB +mIC xot xot xtY @@ -111102,8 +111114,8 @@ btl qmn ryC mnU -lpe -lpe +qOY +qOY jKp wMt ryC @@ -111361,7 +111373,7 @@ kjI vdZ rgI kyh -qOY +lpe vAj ryC cLf @@ -111576,7 +111588,7 @@ nkA com cnS mSN -tnp +pJp fCG krJ oWr @@ -111833,7 +111845,7 @@ qKj jSu cnS rwF -fCG +rEw mBb atv fTX @@ -111856,7 +111868,7 @@ fTX eSm rhS rhS -mVi +bhG rhS rhS rhS @@ -114176,7 +114188,7 @@ neE uXw bhv qaZ -vUh +rBr hoM rGq vUh @@ -117004,7 +117016,7 @@ kEu fsQ aGC vpn -qvX +iXR uvN wQz kiW @@ -117261,9 +117273,9 @@ kEu kEu aQo aQo -sIm -sIm -sIm +aQo +aQo +aQo kEu uFC vaU @@ -121338,12 +121350,12 @@ cCI hbV hbV qRJ -rka +rhs nVj rka xUT -tRP -tRP +hbV +hbV tVV jQS ucG @@ -121595,10 +121607,10 @@ bKQ hBF rYZ xay -xay -hBF -hBF -hBF +kQa +pOQ +pOQ +kQa ulA kQa baP @@ -121855,7 +121867,7 @@ cnt hbV hbV hbV -hbV +uyo kQa pJt uhz @@ -142421,15 +142433,15 @@ hhX urC jrm pJF -bcg -bcg -bcg -bcg -bcg -nSF +qyq +qyq +qyq +qyq +qyq +wUH vVj -mua -wJk +iAQ +oDw wnw fYe fYe @@ -142679,18 +142691,18 @@ urC jrm qyq bDN -sRq -wqq -qyq -wUH -sRq +tWl +iyg +bcg +tmQ +duf lSI gSJ tIO wnw fYe fYe -hhX +cLf hhX hhX hhX @@ -147794,7 +147806,7 @@ pEH pEH vxX iaN -wli +iaN aJP iaN sdc @@ -149625,7 +149637,7 @@ mqc mfw bGk bGk -ncR +xUJ ncR bGk ahq @@ -149890,7 +149902,7 @@ vUo laf kuy bVY -lgA +tqV eXW fnh mhc @@ -150649,7 +150661,7 @@ taj kYT ogL cPZ -rVL +auB rVL bGk qAU @@ -150906,8 +150918,8 @@ wWJ kYT auB waT -rVL -auB +xiw +ycT aPC jql sTj @@ -151164,7 +151176,7 @@ kYT xtb fwJ ipZ -auB +mjj aPC jql sTj @@ -151420,7 +151432,7 @@ wWJ kYT auB auB -rVL +auB vQn aPC eeQ @@ -151443,7 +151455,7 @@ cNG vtv lVD iom -dpj +tjn aRZ iMq vxX @@ -151699,7 +151711,7 @@ apk cNG hce wLq -hce +dpj cUm tve iMq @@ -152188,7 +152200,7 @@ nGv bgY bgY bgY -bgY +dog qoN fnh wnL @@ -152445,7 +152457,7 @@ fnh qoN rNJ koX -bgY +dog qoN fnh igq @@ -153688,7 +153700,7 @@ mIW mIW mIW hED -bme +hED hnJ hED hED @@ -155548,8 +155560,8 @@ vxX vxX vxX vxX -vxX -tXg +dGk +unk hhX hhX hhX @@ -156069,11 +156081,11 @@ hhX hhX hhX hhX +unk tXg vxX vxX vxX -vxX hhX hhX hhX @@ -156836,9 +156848,9 @@ vxX vxX unk unk -tXg +unk vxX -tXg +unk unk unk vxX @@ -157093,13 +157105,13 @@ azk azk azk unk -gMk -vxX -vxX +dra vxX +nuH vxX vxX vxX +bme vxX hhX hhX @@ -157356,7 +157368,7 @@ uet vxX gMk mGM -tXg +unk unk hhX hhX @@ -160413,7 +160425,7 @@ lIr gcN xTZ igS -aEY +pdp jGB nRA tqJ @@ -160669,7 +160681,7 @@ pco lIr mGo vqt -vqt +mic nSn jGB vyL @@ -160686,8 +160698,8 @@ lgp hzF lSM gcV -iGC -tkD +swU +aCk uxt uxt uxt @@ -160926,7 +160938,7 @@ oxG hCs jnm jKD -vqt +mic rzb jGB jGB @@ -160944,7 +160956,7 @@ hzF sNi bOi iGC -tkD +qyU uxt uxt uxt @@ -161201,7 +161213,7 @@ hzF vQT clM caP -tkD +aCk uxt uxt uxt @@ -161438,7 +161450,7 @@ mnP mnP dAS kdW -gOG +gcN ffA wvc gEm @@ -161713,9 +161725,9 @@ mGW iZz hzF kCu -jbq -jbq -jbq +poe +poe +soC jbq vnj jCr @@ -169890,7 +169902,7 @@ oAs gOc gOc gOc -nzn +oAs jqf oWg gMk @@ -172467,7 +172479,7 @@ dpp gKt dVp dRh -fdN +xBU xje ipx vxX @@ -172716,7 +172728,7 @@ vRP bWi bWi iHH -nmj +dfM wPX dfM xtZ @@ -173743,7 +173755,7 @@ raz obA gbR omL -wME +omL acY aqa vRA @@ -176614,8 +176626,8 @@ iZa nUb jaH anN -gjJ -gjJ +ktL +asd uIj qVV gNZ @@ -176871,7 +176883,7 @@ elk lde xtL anN -ktL +kWC gjJ qpT aYG @@ -179440,7 +179452,7 @@ urI rAP rAP rAP -odk +urI kdE xjL grz diff --git a/_maps/minigame/CTF/cruiser.dmm b/_maps/minigame/CTF/cruiser.dmm index 1ed48e3e8d33d4..897ea48c860ef5 100644 --- a/_maps/minigame/CTF/cruiser.dmm +++ b/_maps/minigame/CTF/cruiser.dmm @@ -479,7 +479,7 @@ "CA" = ( /obj/effect/spawner/structure/window/hollow/reinforced/directional, /turf/template_noop, -/area/template_noop) +/area/centcom/ctf) "CU" = ( /obj/structure/window/reinforced/spawner/directional/east{ resistance_flags = 64 diff --git a/_maps/minigame/deathmatch/OSHA_Violator.dmm b/_maps/minigame/deathmatch/OSHA_Violator.dmm index 114bb695c47816..92702187f29ec6 100644 --- a/_maps/minigame/deathmatch/OSHA_Violator.dmm +++ b/_maps/minigame/deathmatch/OSHA_Violator.dmm @@ -2,11 +2,11 @@ "ac" = ( /obj/structure/closet/crate/medical, /turf/open/space/basic, -/area/template_noop) +/area/space/nearstation) "ae" = ( /obj/effect/mob_spawn/corpse/human/cargo_tech, /turf/open/space/basic, -/area/template_noop) +/area/space/nearstation) "ai" = ( /turf/closed/indestructible/reinforced, /area/deathmatch) @@ -1096,15 +1096,15 @@ "Zr" = ( /obj/item/storage/backpack/duffelbag/syndie/med/medicalbundle, /turf/open/space/basic, -/area/template_noop) +/area/space/nearstation) "Zz" = ( /obj/machinery/power/singularity_beacon/syndicate, /turf/open/space/basic, -/area/template_noop) +/area/space/nearstation) "ZD" = ( /obj/item/storage/toolbox/syndicate, /turf/open/space/basic, -/area/template_noop) +/area/space/nearstation) (1,1,1) = {" je diff --git a/_maps/minigame/deathmatch/arena_station.dmm b/_maps/minigame/deathmatch/arena_station.dmm index c3fb3ed39034d6..0cca2ac3d9d7e6 100644 --- a/_maps/minigame/deathmatch/arena_station.dmm +++ b/_maps/minigame/deathmatch/arena_station.dmm @@ -22,7 +22,7 @@ "bE" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "bR" = ( /obj/machinery/computer{ dir = 4 @@ -930,7 +930,7 @@ /area/deathmatch) "LY" = ( /obj/structure/closet/secure_closet, -/obj/item/gun/energy/xray, +/obj/item/gun/energy/laser/xray, /turf/open/indestructible/vault, /area/deathmatch) "Mc" = ( @@ -1078,7 +1078,7 @@ /obj/structure/closet, /obj/item/toy/plush/lizard_plushie/green, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "QS" = ( /obj/effect/turf_decal/bot_red, /turf/open/indestructible/plating, diff --git a/_maps/minigame/deathmatch/maint_mania.dmm b/_maps/minigame/deathmatch/maint_mania.dmm index 2433686e673e87..984da1f698cf70 100644 --- a/_maps/minigame/deathmatch/maint_mania.dmm +++ b/_maps/minigame/deathmatch/maint_mania.dmm @@ -34,7 +34,7 @@ "ga" = ( /obj/structure/lattice, /turf/open/space/basic, -/area/template_noop) +/area/space/nearstation) "gJ" = ( /obj/item/ammo_casing/shotgun/stunslug, /turf/open/indestructible, @@ -170,7 +170,7 @@ "ur" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "vB" = ( /obj/machinery/light/small/directional/east, /turf/open/indestructible, @@ -202,7 +202,7 @@ desc = "An old, blue toolbox, it looks soulful." }, /turf/open/space/basic, -/area/template_noop) +/area/space/nearstation) "Bs" = ( /obj/machinery/light/small/directional/west, /obj/effect/decal/cleanable/dirt, @@ -220,7 +220,7 @@ /obj/structure/lattice/catwalk, /obj/effect/mob_spawn/corpse/human/engineer/mod, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Dt" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/loading_area{ @@ -298,7 +298,7 @@ /obj/structure/lattice/catwalk, /obj/structure/statue/sandstone/assistant, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Ij" = ( /turf/open/space/basic, /area/template_noop) @@ -335,7 +335,7 @@ "MC" = ( /obj/effect/mob_spawn/corpse/human/assistant, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "Na" = ( /obj/structure/rack, /obj/item/reagent_containers/cup/soda_cans/starkist, @@ -396,7 +396,7 @@ "Qr" = ( /obj/structure/closet/wardrobe, /turf/open/floor/plating/airless, -/area/template_noop) +/area/space/nearstation) "QN" = ( /obj/item/razor, /obj/structure/table/reinforced, diff --git a/_maps/minigame/deathmatch/meta_brig.dmm b/_maps/minigame/deathmatch/meta_brig.dmm index 1cdd33982bbce4..d076e0fec276b0 100644 --- a/_maps/minigame/deathmatch/meta_brig.dmm +++ b/_maps/minigame/deathmatch/meta_brig.dmm @@ -20,11 +20,7 @@ /obj/structure/marker_beacon/burgundy, /obj/structure/lattice/catwalk, /turf/template_noop, -/area/template_noop) -"an" = ( -/obj/structure/lattice, -/turf/template_noop, -/area/space) +/area/space/nearstation) "aw" = ( /obj/structure/extinguisher_cabinet/directional/east, /turf/closed/indestructible/reinforced, @@ -1444,7 +1440,7 @@ "vC" = ( /obj/structure/lattice, /turf/template_noop, -/area/template_noop) +/area/space/nearstation) "vD" = ( /obj/structure/table, /obj/structure/cable, @@ -2626,10 +2622,8 @@ /turf/open/indestructible, /area/deathmatch) "Mb" = ( -/obj/structure/sign/warning/vacuum/external{ - pixel_y = 32 - }, /obj/machinery/light/small/directional/north, +/obj/structure/sign/warning/vacuum/external/directional/north, /turf/open/indestructible, /area/deathmatch) "Mk" = ( @@ -3307,12 +3301,10 @@ /obj/structure/disposalpipe/segment{ dir = 6 }, -/obj/structure/sign/warning/vacuum/external{ - pixel_x = -32 - }, /obj/effect/turf_decal/trimline/red/filled/corner{ dir = 8 }, +/obj/structure/sign/warning/vacuum/external/directional/west, /turf/open/indestructible, /area/deathmatch) "WD" = ( @@ -4492,7 +4484,7 @@ IJ IJ "} (32,1,1) = {" -an +vC Fi Fi Fi diff --git a/_maps/minigame/deathmatch/species_warfare.dmm b/_maps/minigame/deathmatch/species_warfare.dmm index d452a28d41d810..af11eaf15c355d 100644 --- a/_maps/minigame/deathmatch/species_warfare.dmm +++ b/_maps/minigame/deathmatch/species_warfare.dmm @@ -34,7 +34,7 @@ /area/deathmatch) "cd" = ( /obj/effect/turf_decal/tile/dark_blue/full, -/obj/machinery/light/built/directional/south, +/obj/machinery/light/empty/directional/south, /obj/machinery/computer{ dir = 4 }, @@ -574,7 +574,7 @@ /obj/machinery/atmospherics/components/unary/portables_connector/visible{ dir = 4 }, -/obj/machinery/light/built/directional/south, +/obj/machinery/light/empty/directional/south, /turf/open/indestructible, /area/deathmatch) "wb" = ( @@ -700,7 +700,7 @@ /area/deathmatch) "zt" = ( /obj/effect/turf_decal/tile/dark_blue/full, -/obj/machinery/light/built/directional/south, +/obj/machinery/light/empty/directional/south, /obj/machinery/computer{ dir = 8 }, @@ -867,7 +867,7 @@ /obj/item/ammo_casing/rebar, /obj/item/ammo_casing/rebar, /obj/item/ammo_casing/rebar, -/obj/machinery/light/built/directional/north, +/obj/machinery/light/empty/directional/north, /turf/open/indestructible, /area/deathmatch) "EC" = ( @@ -963,7 +963,7 @@ /obj/effect/turf_decal/tile/dark_blue/full, /obj/structure/rack, /obj/item/gun/energy/e_gun/mini/practice_phaser, -/obj/machinery/light/built/directional/north, +/obj/machinery/light/empty/directional/north, /turf/open/indestructible/dark/smooth_large, /area/deathmatch) "Iu" = ( @@ -1164,7 +1164,7 @@ /obj/structure/rack, /obj/item/cane, /obj/structure/fireaxecabinet/directional/south, -/obj/machinery/light/built/directional/south, +/obj/machinery/light/empty/directional/south, /turf/open/indestructible/dark/smooth_large, /area/deathmatch) "ON" = ( diff --git a/_maps/safehouses/README.md b/_maps/safehouses/README.md index 8d64502343ba81..e68470d6d0b841 100644 --- a/_maps/safehouses/README.md +++ b/_maps/safehouses/README.md @@ -3,7 +3,7 @@ ## Creating a new safe house 1. Create a new map inside the `_maps\safe_houses` folder using the TGM format. -2. Create a new dm file inside `modules\bitrunning\virtual_domain\safe_houses` folder.. +2. Update `safehouse.toml` with your new file 3. Place exit and goal landmarks (obj/effect/landmark/bitrunning/..). Generally, 3 exits and 2 goals are ok. 4. Ideally, leave 3 spaces for gear. This has usually been xy [1x1] [1x2] [1x3] 5. Place the modular map connector at the bottom left tile. diff --git a/_maps/safehouses/maintsafe.dmm b/_maps/safehouses/maintsafe.dmm new file mode 100644 index 00000000000000..c3579c43c9cd55 --- /dev/null +++ b/_maps/safehouses/maintsafe.dmm @@ -0,0 +1,131 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/open/floor/plating, +/area/virtual_domain/safehouse) +"g" = ( +/obj/structure/broken_flooring/corner/directional/north, +/turf/open/floor/plating, +/area/virtual_domain/safehouse) +"i" = ( +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plating, +/area/virtual_domain/safehouse) +"j" = ( +/turf/closed/wall, +/area/virtual_domain/safehouse) +"l" = ( +/obj/effect/landmark/bitrunning/hololadder_spawn, +/obj/effect/mapping_helpers/broken_floor, +/turf/open/floor/iron, +/area/virtual_domain/safehouse) +"q" = ( +/obj/effect/landmark/bitrunning/hololadder_spawn, +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/railing{ + dir = 4 + }, +/turf/open/floor/iron, +/area/virtual_domain/safehouse) +"t" = ( +/obj/effect/landmark/bitrunning/cache_goal_turf, +/turf/open/indestructible/bitrunning_transport, +/area/virtual_domain/safehouse) +"v" = ( +/obj/structure/broken_flooring/side/directional/north, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/virtual_domain/safehouse) +"y" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/virtual_domain/safehouse) +"C" = ( +/obj/structure/broken_flooring/singular/directional/north, +/obj/structure/railing/corner/end/flip, +/turf/open/floor/plating, +/area/virtual_domain/safehouse) +"E" = ( +/obj/machinery/light/red/dim/directional/west, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/virtual_domain/safehouse) +"I" = ( +/obj/machinery/door/airlock/maintenance_hatch, +/turf/open/floor/plating, +/area/virtual_domain/safehouse) +"M" = ( +/obj/effect/landmark/bitrunning/hololadder_spawn, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/iron, +/area/virtual_domain/safehouse) +"N" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/virtual_domain/safehouse) +"O" = ( +/obj/effect/mapping_helpers/broken_floor, +/turf/open/floor/plating, +/area/virtual_domain/safehouse) +"Y" = ( +/obj/machinery/light/red/dim/directional/east, +/turf/open/floor/plating, +/area/virtual_domain/safehouse) + +(1,1,1) = {" +j +j +j +j +j +j +"} +(2,1,1) = {" +j +i +E +g +M +j +"} +(3,1,1) = {" +j +y +N +v +l +j +"} +(4,1,1) = {" +I +N +a +C +q +j +"} +(5,1,1) = {" +j +a +y +N +t +j +"} +(6,1,1) = {" +j +O +Y +N +t +j +"} +(7,1,1) = {" +j +j +j +j +j +j +"} diff --git a/_maps/shuttles/arrival_catwalk.dmm b/_maps/shuttles/arrival_catwalk.dmm index e50d54a186a912..0da64ca06a5386 100644 --- a/_maps/shuttles/arrival_catwalk.dmm +++ b/_maps/shuttles/arrival_catwalk.dmm @@ -116,9 +116,7 @@ "qf" = ( /obj/item/kirbyplants/organic/plant21, /obj/effect/turf_decal/tile/neutral/opposingcorners, -/obj/structure/sign/nanotrasen{ - pixel_x = 32 - }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron, /area/shuttle/arrival) "qt" = ( @@ -466,9 +464,7 @@ "Tw" = ( /obj/item/kirbyplants/organic/plant21, /obj/effect/turf_decal/tile/neutral/opposingcorners, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron, /area/shuttle/arrival) "TZ" = ( diff --git a/_maps/shuttles/arrival_delta.dmm b/_maps/shuttles/arrival_delta.dmm index 8fab834772511f..475208cf59e5de 100644 --- a/_maps/shuttles/arrival_delta.dmm +++ b/_maps/shuttles/arrival_delta.dmm @@ -201,10 +201,6 @@ /obj/structure/window/reinforced/shuttle, /turf/open/floor/grass, /area/shuttle/arrival) -"az" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium, -/area/shuttle/arrival) "aC" = ( /obj/machinery/computer{ dir = 1; @@ -337,6 +333,7 @@ /obj/effect/turf_decal/tile/neutral/half/contrasted{ dir = 8 }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron, /area/shuttle/arrival) "DV" = ( @@ -357,6 +354,7 @@ /obj/effect/turf_decal/tile/neutral/half/contrasted{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron, /area/shuttle/arrival) "Nn" = ( @@ -395,7 +393,7 @@ ah ah ah ah -az +ag an ag ag @@ -547,7 +545,7 @@ ah ah ah ah -az +ag an ag ag diff --git a/_maps/shuttles/arrival_kilo.dmm b/_maps/shuttles/arrival_kilo.dmm index 2776589602e43d..45cf4d898ef6d9 100644 --- a/_maps/shuttles/arrival_kilo.dmm +++ b/_maps/shuttles/arrival_kilo.dmm @@ -20,8 +20,12 @@ /turf/open/floor/mineral/plastitanium, /area/shuttle/arrival) "ae" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium, +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/mineral/plastitanium, /area/shuttle/arrival) "af" = ( /obj/effect/spawner/structure/window/reinforced/shuttle, @@ -73,6 +77,7 @@ /obj/effect/turf_decal/bot, /obj/structure/chair/comfy/shuttle, /obj/machinery/light/directional/north, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/mineral/plastitanium, /area/shuttle/arrival) "ak" = ( @@ -118,6 +123,7 @@ }, /obj/structure/chair/comfy/shuttle, /obj/machinery/light/small/directional/west, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/mineral/plastitanium, /area/shuttle/arrival) "au" = ( @@ -203,6 +209,7 @@ dir = 1 }, /obj/machinery/light/small/directional/west, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/mineral/plastitanium, /area/shuttle/arrival) "aN" = ( @@ -359,13 +366,13 @@ aY lA "} (5,1,1) = {" -ae +ac aj rV aT aV -aN ae +ac "} (6,1,1) = {" af @@ -423,11 +430,11 @@ ab "} (12,1,1) = {" ac -ae +ac at aW aM -ae +ac ac "} (13,1,1) = {" diff --git a/_maps/shuttles/emergency_birdshot.dmm b/_maps/shuttles/emergency_birdshot.dmm index e6839a408333a7..fb685d3c804fc8 100644 --- a/_maps/shuttles/emergency_birdshot.dmm +++ b/_maps/shuttles/emergency_birdshot.dmm @@ -214,7 +214,7 @@ anchored = 1; dir = 8 }, -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /turf/open/floor/plating/airless, /area/shuttle/escape) "kZ" = ( diff --git a/_maps/shuttles/emergency_cere.dmm b/_maps/shuttles/emergency_cere.dmm index 72de7bc50d4ab5..9369eb115a1894 100644 --- a/_maps/shuttles/emergency_cere.dmm +++ b/_maps/shuttles/emergency_cere.dmm @@ -352,10 +352,10 @@ /turf/open/floor/iron, /area/shuttle/escape) "bL" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = -32; - pixel_y = 32 +/obj/effect/turf_decal/tile/neutral/half/contrasted{ + dir = 8 }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron, /area/shuttle/escape) "bM" = ( @@ -1541,7 +1541,7 @@ bn bn ac ad -aZ +bL bc bc ba @@ -1585,7 +1585,7 @@ aZ aZ aZ ME -bL +bc bc bT bW diff --git a/_maps/shuttles/emergency_cruise.dmm b/_maps/shuttles/emergency_cruise.dmm index a5dd675aa0ec86..6b9fb38b134fb6 100644 --- a/_maps/shuttles/emergency_cruise.dmm +++ b/_maps/shuttles/emergency_cruise.dmm @@ -2327,10 +2327,7 @@ /turf/open/floor/iron/dark/herringbone, /area/shuttle/escape/brig) "Fq" = ( -/obj/structure/sign/nanotrasen{ - pixel_x = 32; - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/carpet/red, /area/shuttle/escape) "FC" = ( @@ -4348,7 +4345,7 @@ bP bj QI hp -Fq +La nk gv Ks @@ -4395,7 +4392,7 @@ jt jt jt uV -La +Fq nk fI uu diff --git a/_maps/shuttles/emergency_delta.dmm b/_maps/shuttles/emergency_delta.dmm index da90701ec5aa25..94807e385b655e 100644 --- a/_maps/shuttles/emergency_delta.dmm +++ b/_maps/shuttles/emergency_delta.dmm @@ -352,13 +352,10 @@ }, /turf/open/floor/iron/white, /area/shuttle/escape) -"aT" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium, -/area/shuttle/escape) "aU" = ( /obj/effect/turf_decal/bot, /obj/machinery/light/directional/west, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron, /area/shuttle/escape) "aV" = ( @@ -408,6 +405,7 @@ }, /obj/effect/turf_decal/bot, /obj/machinery/light/small/directional/north, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron, /area/shuttle/escape) "ba" = ( @@ -690,6 +688,7 @@ /obj/structure/table/reinforced, /obj/item/storage/box/zipties, /obj/item/radio/intercom/directional/south, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/mineral/plastitanium/red, /area/shuttle/escape/brig) "bX" = ( @@ -718,6 +717,7 @@ /obj/effect/turf_decal/tile/red/anticorner/contrasted{ dir = 1 }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron/dark, /area/shuttle/escape) "ci" = ( @@ -727,6 +727,7 @@ /obj/effect/turf_decal/tile/yellow/anticorner/contrasted{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron/dark, /area/shuttle/escape) "cj" = ( @@ -1004,6 +1005,7 @@ /obj/effect/turf_decal/tile/neutral{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron, /area/shuttle/escape) "Jl" = ( @@ -1107,7 +1109,7 @@ hB af af aO -aT +af aW af hB @@ -1246,7 +1248,7 @@ bN bU af af -aT +af hB af af @@ -1305,7 +1307,7 @@ af af bt hB -aT +af af WG jU @@ -1457,7 +1459,7 @@ aE dY ah af -aT +af af af bY @@ -1525,7 +1527,7 @@ ae af af af -aT +af hB af af @@ -1634,7 +1636,7 @@ hB hB af af -aT +af af hB hB diff --git a/_maps/shuttles/emergency_fame.dmm b/_maps/shuttles/emergency_fame.dmm index 088944a2a28892..32354e7398968d 100644 --- a/_maps/shuttles/emergency_fame.dmm +++ b/_maps/shuttles/emergency_fame.dmm @@ -115,6 +115,7 @@ "fm" = ( /obj/effect/spawner/random/vending/snackvend, /obj/effect/turf_decal/box, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron/dark, /area/shuttle/escape) "fS" = ( @@ -428,8 +429,9 @@ /turf/open/floor/mineral/silver, /area/shuttle/escape) "qM" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium/nodiagonal, +/obj/structure/chair/comfy/shuttle, +/obj/structure/sign/nanotrasen/directional/west, +/turf/open/floor/mineral/titanium, /area/shuttle/escape) "qW" = ( /obj/effect/turf_decal/siding{ @@ -532,6 +534,16 @@ /obj/machinery/status_display/evac/directional/south, /turf/open/floor/iron/dark, /area/shuttle/escape) +"wX" = ( +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/wood, +/area/shuttle/escape) +"wY" = ( +/obj/structure/closet/emcloset/anchored, +/obj/effect/turf_decal/bot, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/iron/dark, +/area/shuttle/escape) "xc" = ( /obj/structure/table, /obj/machinery/microwave, @@ -697,6 +709,7 @@ /area/shuttle/escape) "EF" = ( /obj/item/kirbyplants/organic/plant16, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/wood, /area/shuttle/escape) "Fi" = ( @@ -976,6 +989,10 @@ /obj/effect/turf_decal/delivery, /turf/open/floor/plating, /area/shuttle/escape) +"UW" = ( +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/mineral/titanium, +/area/shuttle/escape) "Vl" = ( /obj/structure/window/reinforced/spawner/directional/west, /obj/effect/decal/cleanable/dirt, @@ -1271,7 +1288,7 @@ iN Cz "} (9,1,1) = {" -qM +Oa Oa aX Uu @@ -1293,7 +1310,7 @@ Oa mc Oa Oa -qM +Oa "} (10,1,1) = {" mz @@ -1317,7 +1334,7 @@ cu cu Yp Ty -PP +qM mz "} (11,1,1) = {" @@ -1349,8 +1366,8 @@ mz mz NN eW -RZ -qM +wX +Oa mz mz Ws @@ -1364,14 +1381,14 @@ Oa Ws mz mz -qM -Yp +Oa +UW Yp PP mz "} (13,1,1) = {" -qM +Oa Oa FJ RZ @@ -1392,8 +1409,8 @@ Bj mz Yp Yp -oc -qM +wY +Oa "} (14,1,1) = {" Oa diff --git a/_maps/shuttles/emergency_fish.dmm b/_maps/shuttles/emergency_fish.dmm index 2ed11465b3a379..19395c99589e06 100644 --- a/_maps/shuttles/emergency_fish.dmm +++ b/_maps/shuttles/emergency_fish.dmm @@ -45,6 +45,7 @@ dir = 4 }, /obj/machinery/light/small/directional/north, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/mineral/titanium/tiled/white, /area/shuttle/escape) "cZ" = ( @@ -146,6 +147,14 @@ /obj/effect/turf_decal/tile/dark_red/opposingcorners, /turf/open/floor/mineral/plastitanium, /area/shuttle/escape) +"hP" = ( +/obj/item/kirbyplants/random, +/obj/effect/turf_decal/tile/dark/half/contrasted{ + dir = 4 + }, +/obj/structure/sign/warning/directional/east, +/turf/open/floor/wood/tile, +/area/shuttle/escape) "iA" = ( /obj/structure/chair/pew/right{ dir = 1 @@ -228,10 +237,6 @@ }, /turf/open/floor/wood/tile, /area/shuttle/escape) -"oA" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium/nodiagonal, -/area/shuttle/escape) "oB" = ( /obj/effect/turf_decal/tile/blue/anticorner/contrasted{ dir = 1 @@ -780,6 +785,7 @@ dir = 8 }, /obj/machinery/light/small/directional/north, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/mineral/titanium/tiled/white, /area/shuttle/escape) "Tn" = ( @@ -869,8 +875,11 @@ /turf/open/floor/mineral/titanium/tiled/blue, /area/shuttle/escape) "WX" = ( -/obj/structure/sign/warning, -/turf/closed/wall/mineral/titanium/nodiagonal, +/obj/effect/turf_decal/tile/dark/half/contrasted{ + dir = 4 + }, +/obj/structure/sign/warning/directional/east, +/turf/open/floor/wood/tile, /area/shuttle/escape) "Xx" = ( /obj/structure/chair/comfy/shuttle{ @@ -1047,7 +1056,7 @@ Kg "} (5,1,1) = {" Me -oA +jL SS qA aa @@ -1145,9 +1154,9 @@ Ih Ih Ou pQ -BA -bB +hP bB +WX bB BA bB @@ -1163,7 +1172,7 @@ Kg "} (9,1,1) = {" Me -oA +jL cf qA aa @@ -1174,9 +1183,9 @@ qO AV EC jL -WX +jL QN -WX +jL jL aa XZ diff --git a/_maps/shuttles/emergency_kilo.dmm b/_maps/shuttles/emergency_kilo.dmm index 43f92baecdf260..1454cbee007c24 100644 --- a/_maps/shuttles/emergency_kilo.dmm +++ b/_maps/shuttles/emergency_kilo.dmm @@ -41,8 +41,8 @@ /turf/open/floor/mineral/plastitanium, /area/shuttle/escape) "ai" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium, +/obj/structure/sign/nanotrasen/directional/north, +/turf/closed/wall/mineral/titanium/nodiagonal, /area/shuttle/escape) "ao" = ( /obj/effect/turf_decal/delivery, @@ -150,6 +150,7 @@ /obj/machinery/camera/autoname{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/mineral/plastitanium, /area/shuttle/escape) "bb" = ( @@ -169,10 +170,6 @@ /obj/machinery/status_display/evac, /turf/closed/wall/mineral/titanium, /area/shuttle/escape) -"bh" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/mineral/titanium, -/area/shuttle/escape) "bi" = ( /obj/effect/turf_decal/bot, /obj/machinery/suit_storage_unit/standard_unit, @@ -217,6 +214,7 @@ pixel_y = 4 }, /obj/item/clothing/mask/breath, +/obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/mineral/plastitanium, /area/shuttle/escape) "bp" = ( @@ -288,6 +286,7 @@ /obj/machinery/camera/autoname{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/mineral/titanium/tiled/yellow, /area/shuttle/escape) "bO" = ( @@ -555,6 +554,7 @@ /obj/machinery/camera/autoname{ dir = 8 }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/mineral/titanium/tiled/yellow, /area/shuttle/escape) "hE" = ( @@ -1254,6 +1254,7 @@ dir = 4 }, /obj/machinery/light/directional/west, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/mineral/plastitanium/red, /area/shuttle/escape/brig) "VD" = ( @@ -1326,7 +1327,7 @@ ab ac ab ac -ai +ab bb ab bq @@ -1338,7 +1339,7 @@ ab bX ab bX -ai +ab ab as cS @@ -1430,8 +1431,8 @@ cS (5,1,1) = {" ab ac +ab ai -as cw IX Mo @@ -1543,7 +1544,7 @@ bY kh dZ Uc -bh +ab bo Em Wu @@ -1592,9 +1593,9 @@ cT (11,1,1) = {" ab ac +ab ai as -as aO aX bi @@ -1704,7 +1705,7 @@ ab ab ab ac -ai +ab ac ab ac @@ -1716,7 +1717,7 @@ ab ac ab ab -ai +ab ab as cS diff --git a/_maps/shuttles/emergency_lance.dmm b/_maps/shuttles/emergency_lance.dmm index 3b8dbea2cc7993..c7690ad3832a50 100644 --- a/_maps/shuttles/emergency_lance.dmm +++ b/_maps/shuttles/emergency_lance.dmm @@ -617,9 +617,7 @@ /area/shuttle/escape) "ry" = ( /obj/structure/chair/comfy/shuttle, -/obj/structure/sign/nanotrasen{ - pixel_x = -32 - }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron/dark/textured, /area/shuttle/escape) "sn" = ( @@ -935,7 +933,6 @@ /obj/machinery/turretid{ control_area = "/area/shuttle/escape"; desc = "Used to control the Lance's automated defenses."; - icon_state = "control_kill"; lethal = 1; pixel_y = -26; req_access = list("command") @@ -1340,9 +1337,6 @@ }, /area/shuttle/escape) "Pe" = ( -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/machinery/button/door/directional/south{ id = "lance_psych"; name = "Panic Room Bolt Control"; @@ -1350,6 +1344,7 @@ specialfunctions = 4 }, /obj/machinery/light/small/directional/north, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/white/textured_large, /area/shuttle/escape) "Px" = ( diff --git a/_maps/shuttles/emergency_luxury.dmm b/_maps/shuttles/emergency_luxury.dmm index 9ca9ab021dc6b2..cdb6ce920ccda0 100644 --- a/_maps/shuttles/emergency_luxury.dmm +++ b/_maps/shuttles/emergency_luxury.dmm @@ -504,7 +504,7 @@ /turf/open/floor/iron, /area/shuttle/escape) "ul" = ( -/obj/item/food/sandwich/cheese/grilled{ +/obj/item/food/sandwich/grilled_cheese{ pixel_y = 11 }, /obj/structure/table/wood/fancy/black, diff --git a/_maps/shuttles/emergency_monastery.dmm b/_maps/shuttles/emergency_monastery.dmm index e1c8d5a97b575d..10ff3ff1801168 100644 --- a/_maps/shuttles/emergency_monastery.dmm +++ b/_maps/shuttles/emergency_monastery.dmm @@ -543,8 +543,8 @@ /turf/open/floor/carpet, /area/shuttle/escape) "jk" = ( -/obj/effect/spawner/structure/window/reinforced, -/obj/structure/sign/warning/vacuum/external, +/obj/machinery/light/small/directional/north, +/obj/structure/sign/warning/vacuum/external/directional/north, /turf/open/floor/plating, /area/shuttle/escape) "jn" = ( @@ -637,9 +637,9 @@ /turf/open/floor/iron/dark, /area/shuttle/escape) "kv" = ( -/obj/structure/sign/warning/vacuum/external, -/obj/effect/spawner/structure/window/reinforced, -/turf/open/floor/plating, +/obj/structure/cable, +/obj/structure/sign/warning/vacuum/external/directional/north, +/turf/open/floor/iron/dark, /area/shuttle/escape) "kw" = ( /obj/structure/chair/wood, @@ -1340,10 +1340,6 @@ /obj/effect/turf_decal/stripes/line{ dir = 8 }, -/obj/machinery/camera/directional/west{ - c_tag = "Monastery Archives Access Tunnel"; - network = list("ss13","monastery") - }, /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, @@ -3242,6 +3238,10 @@ dir = 1 }, /obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/machinery/camera/directional/west{ + c_tag = "Monastery Archives Access Tunnel"; + network = list("ss13","monastery") + }, /turf/open/floor/iron/dark, /area/shuttle/escape) "TJ" = ( @@ -5606,8 +5606,8 @@ JG (24,1,1) = {" zE zE -jk -Am +zE +kv rQ XI Am @@ -6444,7 +6444,7 @@ zE zE Pe jc -kv +zE lc zE jc @@ -6527,7 +6527,7 @@ zE zE zE zE -lE +jk zE jc jc diff --git a/_maps/shuttles/emergency_nebula.dmm b/_maps/shuttles/emergency_nebula.dmm index 4a8fb7ecd9787d..267454ee5ebff6 100644 --- a/_maps/shuttles/emergency_nebula.dmm +++ b/_maps/shuttles/emergency_nebula.dmm @@ -117,8 +117,12 @@ /turf/open/floor/mineral/plastitanium/red, /area/shuttle/escape) "ej" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium, +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/obj/effect/turf_decal/bot, +/obj/structure/sign/nanotrasen/directional/west, +/turf/open/floor/iron/dark, /area/shuttle/escape) "eU" = ( /obj/structure/chair/comfy/shuttle{ @@ -215,6 +219,15 @@ }, /turf/open/floor/iron/dark, /area/shuttle/escape) +"ii" = ( +/obj/effect/turf_decal/trimline/dark/corner{ + dir = 8 + }, +/obj/structure/sign/nanotrasen/directional/east, +/turf/open/floor/iron/dark/corner{ + dir = 8 + }, +/area/shuttle/escape) "is" = ( /obj/machinery/light/directional/south, /obj/effect/turf_decal/siding/wood, @@ -1594,10 +1607,8 @@ /area/shuttle/escape) "GE" = ( /obj/effect/turf_decal/bot, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/structure/reagent_dispensers/fueltank, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark/small, /area/shuttle/escape) "GM" = ( @@ -1678,9 +1689,7 @@ }, /obj/structure/closet/crate/internals, /obj/effect/turf_decal/bot, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark/small, /area/shuttle/escape) "GW" = ( @@ -1944,6 +1953,11 @@ }, /turf/open/floor/iron/dark, /area/shuttle/escape) +"Od" = ( +/obj/effect/turf_decal/trimline/dark/corner, +/obj/structure/sign/nanotrasen/directional/west, +/turf/open/floor/iron/dark/corner, +/area/shuttle/escape) "OB" = ( /obj/effect/turf_decal/siding/thinplating_new/dark{ dir = 5 @@ -2221,9 +2235,7 @@ /area/shuttle/escape) "SH" = ( /obj/structure/hedge, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark/small, /area/shuttle/escape) "Tc" = ( @@ -2283,10 +2295,8 @@ /area/shuttle/escape) "UK" = ( /obj/effect/turf_decal/bot, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/structure/reagent_dispensers/watertank, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/iron/dark/small, /area/shuttle/escape) "UQ" = ( @@ -2322,6 +2332,7 @@ /obj/effect/turf_decal/trimline/neutral/end{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/iron/dark/small, /area/shuttle/escape) "VZ" = ( @@ -2671,13 +2682,13 @@ kZ kZ kZ kZ -ej +kZ kZ kZ UU UU UU -ej +kZ kZ kZ kZ @@ -2700,14 +2711,14 @@ Ra kZ GM rF -wP +ej fD Kv qJ wP fD Kv -Am +Od Jy kZ Bu @@ -3157,7 +3168,7 @@ Gh wP fD Kv -CZ +ii fm kZ mw @@ -3181,13 +3192,13 @@ kZ kZ kZ vk -ej +kZ YB kZ UU UU UU -ej +kZ sU kZ CH diff --git a/_maps/shuttles/emergency_omega.dmm b/_maps/shuttles/emergency_omega.dmm index dcd1f6e46438ca..fb87813c4a92ff 100644 --- a/_maps/shuttles/emergency_omega.dmm +++ b/_maps/shuttles/emergency_omega.dmm @@ -7,10 +7,6 @@ /obj/structure/grille, /turf/open/floor/plating, /area/shuttle/escape) -"ac" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium, -/area/shuttle/escape) "ae" = ( /obj/structure/chair/comfy/shuttle, /turf/open/floor/mineral/plastitanium/red, @@ -20,6 +16,7 @@ dir = 8 }, /obj/item/radio/intercom/directional/north, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/mineral/plastitanium/red, /area/shuttle/escape/brig) "al" = ( @@ -587,6 +584,7 @@ /area/shuttle/escape) "Am" = ( /obj/machinery/light/directional/south, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/mineral/plastitanium/red, /area/shuttle/escape/brig) "Dh" = ( @@ -608,6 +606,7 @@ }, /obj/effect/turf_decal/tile/neutral/fourcorners, /obj/machinery/light/directional/south, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/iron/dark, /area/shuttle/escape) "Ge" = ( @@ -682,7 +681,7 @@ aa aa aa qX -ac +aa ay aa sY @@ -690,7 +689,7 @@ sY sY aa aP -ac +aa aP aa aa @@ -783,7 +782,7 @@ bt bv "} (6,1,1) = {" -ac +aa ab IX sY @@ -892,7 +891,7 @@ aa sY sY aa -ac +aa aa sY sY @@ -900,7 +899,7 @@ sY sY sY aa -ac +aa aa aa aa diff --git a/_maps/shuttles/emergency_raven.dmm b/_maps/shuttles/emergency_raven.dmm index 7eb255fc2d42dc..7b96165e0142d6 100644 --- a/_maps/shuttles/emergency_raven.dmm +++ b/_maps/shuttles/emergency_raven.dmm @@ -759,8 +759,12 @@ /turf/open/floor/plating, /area/shuttle/escape) "cg" = ( -/obj/structure/sign/warning/vacuum/external, -/turf/closed/wall/mineral/plastitanium/nodiagonal, +/obj/effect/turf_decal/stripes/white/line{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/warning/vacuum/external/directional/west, +/turf/open/floor/iron/dark, /area/shuttle/escape) "ch" = ( /obj/effect/turf_decal/stripes/white/corner{ @@ -939,8 +943,9 @@ /turf/open/floor/iron/dark, /area/shuttle/escape) "cP" = ( -/obj/structure/sign/departments/cargo, -/turf/closed/wall/mineral/plastitanium/nodiagonal, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/departments/cargo/directional/south, +/turf/open/floor/iron/dark, /area/shuttle/escape) "cQ" = ( /obj/effect/turf_decal/delivery/white, @@ -1466,7 +1471,6 @@ "ep" = ( /obj/machinery/turretid{ desc = "Used to the Raven's automated defenses."; - icon_state = "control_kill"; lethal = 1; pixel_x = 5; pixel_y = 32; @@ -1488,6 +1492,13 @@ /obj/structure/window/reinforced/spawner/directional/north, /turf/open/floor/plating/airless, /area/shuttle/escape) +"fB" = ( +/obj/effect/turf_decal/stripes/white/corner, +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/warning/vacuum/external/directional/east, +/turf/open/floor/iron/dark, +/area/shuttle/escape) "fD" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/effect/turf_decal/bot, @@ -1528,6 +1539,14 @@ /obj/structure/table/reinforced, /turf/open/floor/plating, /area/shuttle/escape) +"ri" = ( +/obj/effect/turf_decal/stripes/white/line{ + dir = 4 + }, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/warning/vacuum/external/directional/east, +/turf/open/floor/iron/dark, +/area/shuttle/escape) "vw" = ( /obj/structure/window/reinforced/spawner/directional/south, /obj/effect/decal/cleanable/dirt, @@ -1545,6 +1564,14 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark, /area/shuttle/escape) +"Cz" = ( +/obj/effect/turf_decal/stripes/white/corner{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/obj/structure/sign/warning/vacuum/external/directional/west, +/turf/open/floor/iron/dark, +/area/shuttle/escape) "Ds" = ( /obj/machinery/button/door{ id = "escape_cockpit_blast"; @@ -1772,7 +1799,7 @@ bt bC ax ax -cg +ax cd ax ax @@ -1782,7 +1809,7 @@ SA ax ax cd -cg +ax ax ax dH @@ -1806,7 +1833,7 @@ aZ bD br bW -ch +Cz cr cz cF @@ -1816,7 +1843,7 @@ bP cU br dg -cr +cg dv ax dI @@ -1913,11 +1940,11 @@ bP bP bP bP -bP cP ax ax ax +ax dr ax ax @@ -2117,11 +2144,11 @@ bP bP bP bP -bP cP ax ax ax +ax dr ax ax @@ -2214,7 +2241,7 @@ bA bL br ca -cl +fB cs cC cG @@ -2224,7 +2251,7 @@ bP cU br do -cs +ri dy ax dQ @@ -2248,7 +2275,7 @@ bB bM ax ax -cg +ax ct ax ax @@ -2258,7 +2285,7 @@ Pd ax ax cd -cg +ax ax ax dR diff --git a/_maps/shuttles/emergency_supermatter.dmm b/_maps/shuttles/emergency_supermatter.dmm index ca1b7ea0d272ce..0dca7d46d3ac2b 100644 --- a/_maps/shuttles/emergency_supermatter.dmm +++ b/_maps/shuttles/emergency_supermatter.dmm @@ -3,8 +3,11 @@ /turf/template_noop, /area/template_noop) "ac" = ( -/obj/structure/sign/warning/radiation, -/turf/closed/wall/mineral/titanium, +/obj/structure/chair/comfy/shuttle{ + dir = 4 + }, +/obj/structure/sign/warning/radiation/directional/south, +/turf/open/floor/mineral/titanium/yellow, /area/shuttle/escape) "ad" = ( /obj/effect/spawner/structure/window/reinforced/shuttle, @@ -111,10 +114,12 @@ pixel_x = 4; pixel_y = -4 }, +/obj/structure/sign/warning/radiation/directional/west, /turf/open/floor/mineral/titanium/yellow, /area/shuttle/escape) "aE" = ( /obj/structure/reagent_dispensers/fueltank, +/obj/structure/sign/warning/radiation/directional/east, /turf/open/floor/mineral/titanium/yellow, /area/shuttle/escape) "aF" = ( @@ -127,8 +132,11 @@ /turf/open/floor/plating, /area/shuttle/escape) "aI" = ( -/obj/structure/sign/warning/radiation, -/turf/closed/wall/mineral/titanium/nodiagonal, +/obj/structure/chair/comfy/shuttle{ + dir = 8 + }, +/obj/structure/sign/warning/radiation/directional/south, +/turf/open/floor/mineral/titanium/yellow, /area/shuttle/escape) "aL" = ( /obj/machinery/door/airlock/external/ruin{ @@ -265,6 +273,7 @@ }, /obj/item/clothing/glasses/meson/engine, /obj/machinery/light/small/directional/east, +/obj/structure/sign/warning/radiation/directional/north, /turf/open/floor/mineral/titanium/yellow, /area/shuttle/escape) "bj" = ( @@ -273,6 +282,7 @@ }, /obj/item/clothing/glasses/meson/engine, /obj/machinery/light/small/directional/west, +/obj/structure/sign/warning/radiation/directional/north, /turf/open/floor/mineral/titanium/yellow, /area/shuttle/escape) "bk" = ( @@ -303,6 +313,14 @@ }, /turf/open/floor/mineral/titanium/yellow, /area/shuttle/escape) +"yI" = ( +/obj/structure/closet/radiation{ + anchored = 1 + }, +/obj/item/clothing/glasses/meson/engine, +/obj/structure/sign/warning/radiation/directional/west, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) "Bi" = ( /obj/structure/closet/radiation{ anchored = 1 @@ -313,6 +331,14 @@ }, /turf/open/floor/mineral/titanium/yellow, /area/shuttle/escape) +"Op" = ( +/obj/structure/closet/radiation{ + anchored = 1 + }, +/obj/item/clothing/glasses/meson/engine, +/obj/structure/sign/warning/radiation/directional/east, +/turf/open/floor/mineral/titanium/yellow, +/area/shuttle/escape) "UA" = ( /obj/machinery/status_display/evac{ pixel_y = -32 @@ -329,7 +355,7 @@ aa aa aw aA -ac +ae aF aw aa @@ -348,7 +374,7 @@ aa aw ae ad -ac +ae ae ad aw @@ -369,10 +395,10 @@ bc be "} (3,1,1) = {" -ac +ae bj ag -ag +yI Bi ag ag @@ -402,9 +428,9 @@ ar ar ar ar -ar aI aw +aw aa aM aa @@ -498,8 +524,8 @@ av av av av -av -aI +ac +aw aw aa aM @@ -513,10 +539,10 @@ aa aa "} (9,1,1) = {" -ac +ae bi ag -ag +Op pb ag ag @@ -540,7 +566,7 @@ be aw ae ad -ac +ae ae ad aw @@ -569,7 +595,7 @@ aa aa aw aA -ac +ae aA aw aa diff --git a/_maps/shuttles/emergency_tranquility.dmm b/_maps/shuttles/emergency_tranquility.dmm index 8498e51bbf1010..7e53a0ebce08bd 100644 --- a/_maps/shuttles/emergency_tranquility.dmm +++ b/_maps/shuttles/emergency_tranquility.dmm @@ -790,10 +790,8 @@ /obj/effect/turf_decal/siding/wood{ dir = 5 }, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, /obj/machinery/light/directional/south, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/wood, /area/shuttle/escape) "oV" = ( @@ -1127,10 +1125,8 @@ /obj/effect/turf_decal/siding/wood{ dir = 9 }, -/obj/structure/sign/nanotrasen{ - pixel_y = -32 - }, /obj/machinery/light/directional/south, +/obj/structure/sign/nanotrasen/directional/south, /turf/open/floor/wood, /area/shuttle/escape) "wm" = ( @@ -1416,10 +1412,8 @@ dir = 10 }, /obj/machinery/vending/coffee, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/machinery/light/directional/north, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/wood, /area/shuttle/escape) "AQ" = ( @@ -1609,7 +1603,7 @@ /obj/item/pen/fourcolor{ pixel_x = -4 }, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 8; pixel_y = 5 }, @@ -2460,10 +2454,8 @@ dir = 6 }, /obj/machinery/vending/coffee, -/obj/structure/sign/nanotrasen{ - pixel_y = 32 - }, /obj/machinery/light/directional/north, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/wood, /area/shuttle/escape) "UF" = ( diff --git a/_maps/shuttles/ferry_kilo.dmm b/_maps/shuttles/ferry_kilo.dmm index 6b727bfc81b93b..a283c5bd044812 100644 --- a/_maps/shuttles/ferry_kilo.dmm +++ b/_maps/shuttles/ferry_kilo.dmm @@ -27,8 +27,12 @@ /turf/open/floor/mineral/plastitanium, /area/shuttle/transport) "g" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium, +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/mineral/plastitanium, /area/shuttle/transport) "h" = ( /obj/machinery/power/shuttle_engine/propulsion/left{ @@ -78,6 +82,7 @@ "n" = ( /obj/structure/table/reinforced, /obj/machinery/recharger, +/obj/structure/sign/nanotrasen/directional/north, /turf/open/floor/mineral/plastitanium, /area/shuttle/transport) "o" = ( @@ -227,8 +232,8 @@ e d o r -w g +d "} (7,1,1) = {" f @@ -238,7 +243,7 @@ m f "} (8,1,1) = {" -g +d n r H diff --git a/_maps/shuttles/ferry_nebula.dmm b/_maps/shuttles/ferry_nebula.dmm index cc15e6ab66d786..baec8ed6e25d09 100644 --- a/_maps/shuttles/ferry_nebula.dmm +++ b/_maps/shuttles/ferry_nebula.dmm @@ -171,6 +171,12 @@ }, /turf/open/floor/iron/dark/textured, /area/shuttle/transport) +"I" = ( +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle, +/obj/structure/sign/nanotrasen/directional/north, +/turf/open/floor/iron/dark/small, +/area/shuttle/transport) "J" = ( /obj/structure/window/reinforced/spawner/directional/north, /obj/structure/window/reinforced/spawner/directional/south, @@ -200,8 +206,12 @@ /turf/closed/wall/mineral/titanium/nodiagonal, /area/shuttle/transport) "M" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium, +/obj/effect/turf_decal/bot, +/obj/structure/chair/comfy/shuttle{ + dir = 1 + }, +/obj/structure/sign/nanotrasen/directional/south, +/turf/open/floor/iron/dark/small, /area/shuttle/transport) "N" = ( /obj/structure/hedge, @@ -318,8 +328,8 @@ j i c a -b M +i "} (6,1,1) = {" q @@ -329,8 +339,8 @@ Z q "} (7,1,1) = {" -M -h +i +I a K i diff --git a/_maps/shuttles/hunter_bounty.dmm b/_maps/shuttles/hunter_bounty.dmm index ba752de932b9ba..2932196835c0b1 100644 --- a/_maps/shuttles/hunter_bounty.dmm +++ b/_maps/shuttles/hunter_bounty.dmm @@ -9,6 +9,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, +/obj/structure/sign/warning/vacuum/external/directional/west, /turf/open/floor/plating, /area/shuttle/hunter) "e" = ( @@ -17,10 +18,6 @@ }, /turf/open/floor/plating/airless, /area/shuttle/hunter) -"g" = ( -/obj/structure/sign/warning/vacuum/external, -/turf/closed/wall/mineral/plastitanium, -/area/shuttle/hunter) "h" = ( /obj/effect/turf_decal/stripes/line{ dir = 1 @@ -34,6 +31,7 @@ /area/shuttle/hunter) "j" = ( /obj/effect/turf_decal/stripes/line, +/obj/structure/sign/warning/vacuum/external/directional/west, /turf/open/floor/plating, /area/shuttle/hunter) "k" = ( @@ -345,7 +343,7 @@ b (6,1,1) = {" b b -g +b b T s @@ -353,7 +351,7 @@ s s G b -g +b b b "} diff --git a/_maps/shuttles/infiltrator_advanced.dmm b/_maps/shuttles/infiltrator_advanced.dmm index cc6f55f20eadea..296a65fe8bf8d4 100644 --- a/_maps/shuttles/infiltrator_advanced.dmm +++ b/_maps/shuttles/infiltrator_advanced.dmm @@ -240,10 +240,6 @@ /obj/structure/extinguisher_cabinet/directional/west, /turf/open/floor/mineral/plastitanium, /area/shuttle/syndicate/airlock) -"aJ" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall/plastitanium/syndicate, -/area/shuttle/syndicate/airlock) "aK" = ( /obj/structure/chair/comfy/shuttle{ name = "tactical chair" @@ -257,10 +253,6 @@ /obj/structure/cable, /turf/open/floor/mineral/plastitanium, /area/shuttle/syndicate/airlock) -"aL" = ( -/obj/structure/sign/warning/vacuum/external, -/turf/closed/wall/r_wall/plastitanium/syndicate, -/area/shuttle/syndicate/airlock) "aM" = ( /obj/effect/turf_decal/stripes/line{ dir = 4 @@ -289,6 +281,7 @@ dir = 9 }, /obj/structure/cable, +/obj/structure/sign/warning/vacuum/external/directional/west, /turf/open/floor/mineral/plastitanium/red, /area/shuttle/syndicate/airlock) "aQ" = ( @@ -586,6 +579,7 @@ dir = 10 }, /obj/structure/cable, +/obj/structure/sign/warning/vacuum/external/directional/east, /turf/open/floor/mineral/plastitanium/red, /area/shuttle/syndicate/airlock) "by" = ( @@ -919,10 +913,6 @@ /obj/item/storage/medkit/fire, /turf/open/floor/mineral/plastitanium, /area/shuttle/syndicate/medical) -"ck" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall/plastitanium/syndicate, -/area/shuttle/syndicate/hallway) "cl" = ( /obj/effect/spawner/structure/window/reinforced, /obj/structure/cable, @@ -1233,6 +1223,7 @@ }, /obj/effect/decal/cleanable/dirt, /obj/machinery/light/small/directional/south, +/obj/structure/sign/warning/vacuum/external/directional/west, /turf/open/floor/mineral/plastitanium/red, /area/shuttle/syndicate/airlock) "dd" = ( @@ -1368,6 +1359,7 @@ dir = 6 }, /obj/machinery/light/small/directional/south, +/obj/structure/sign/warning/vacuum/external/directional/east, /turf/open/floor/mineral/plastitanium/red, /area/shuttle/syndicate/airlock) "dr" = ( @@ -1693,6 +1685,7 @@ }, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/all/syndicate/general, +/obj/structure/sign/warning/secure_area/directional/south, /turf/open/floor/pod/dark, /area/shuttle/syndicate/hallway) "ed" = ( @@ -1775,6 +1768,7 @@ }, /obj/structure/cable, /obj/effect/mapping_helpers/airlock/access/all/syndicate/general, +/obj/structure/sign/warning/secure_area/directional/south, /turf/open/floor/pod/dark, /area/shuttle/syndicate/hallway) "el" = ( @@ -2075,6 +2069,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /obj/structure/cable, +/obj/structure/sign/warning/secure_area/directional/west, /turf/open/floor/mineral/plastitanium/red, /area/shuttle/syndicate/airlock) "Xl" = ( @@ -2084,6 +2079,7 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /obj/effect/decal/cleanable/dirt, /obj/structure/cable, +/obj/structure/sign/warning/secure_area/directional/east, /turf/open/floor/mineral/plastitanium/red, /area/shuttle/syndicate/airlock) "YW" = ( @@ -2143,7 +2139,7 @@ ad ad aO bp -aL +aO aO bD bD @@ -2210,9 +2206,9 @@ ad ad aB aO -aL +aO bZ -aJ +aO aO bf ep @@ -2312,7 +2308,7 @@ dP dR bQ ec -ck +aF cM cz cD @@ -2404,7 +2400,7 @@ cg dR bQ ek -ck +aF cM cY cJ @@ -2486,9 +2482,9 @@ ad ad aD aO -aL +aO bZ -aJ +aO aO cF tB @@ -2557,7 +2553,7 @@ ad ad aO cW -aL +aO aO bE bE diff --git a/_maps/shuttles/infiltrator_basic.dmm b/_maps/shuttles/infiltrator_basic.dmm index a69cbb71e0785b..394fb3b91afeac 100644 --- a/_maps/shuttles/infiltrator_basic.dmm +++ b/_maps/shuttles/infiltrator_basic.dmm @@ -586,8 +586,12 @@ /turf/open/floor/catwalk_floor/iron_dark, /area/shuttle/syndicate/medical) "fB" = ( -/obj/structure/sign/warning/vacuum/external, -/turf/closed/wall/r_wall/plastitanium/syndicate/nodiagonal, +/obj/structure/chair/comfy/shuttle/tactical{ + dir = 8 + }, +/obj/effect/turf_decal/bot_red, +/obj/structure/sign/warning/vacuum/external/directional/east, +/turf/open/floor/mineral/plastitanium, /area/shuttle/syndicate/airlock) "gt" = ( /obj/item/storage/box/handcuffs{ @@ -1481,7 +1485,7 @@ aB aQ iE RO -nN +fB nN bn bA @@ -1506,7 +1510,7 @@ bO aB Xy aY -fB +Xy aB bn bB diff --git a/_maps/shuttles/mining_common_kilo.dmm b/_maps/shuttles/mining_common_kilo.dmm index 751974a4ad55f7..26e16830b804cc 100644 --- a/_maps/shuttles/mining_common_kilo.dmm +++ b/_maps/shuttles/mining_common_kilo.dmm @@ -46,15 +46,12 @@ }, /turf/open/floor/mineral/titanium/yellow, /area/shuttle/mining) -"i" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium, -/area/shuttle/mining) "j" = ( /obj/machinery/light/directional/west, /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/mineral/plastitanium, /area/shuttle/mining) "k" = ( @@ -127,7 +124,7 @@ a a b -i +a b a a diff --git a/_maps/shuttles/mining_common_northstar.dmm b/_maps/shuttles/mining_common_northstar.dmm index 5e24739c363d54..f746f90c0abb05 100644 --- a/_maps/shuttles/mining_common_northstar.dmm +++ b/_maps/shuttles/mining_common_northstar.dmm @@ -9,6 +9,7 @@ /obj/effect/turf_decal/trimline/neutral/line{ dir = 8 }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/pod/light, /area/shuttle/mining) "e" = ( @@ -82,10 +83,6 @@ /obj/item/storage/toolbox/emergency, /turf/open/floor/pod/light, /area/shuttle/mining) -"E" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium/survival, -/area/shuttle/mining) "G" = ( /obj/structure/ore_box, /obj/effect/turf_decal/trimline/brown, @@ -156,7 +153,7 @@ v v l l -E +v l v a diff --git a/_maps/shuttles/mining_freight.dmm b/_maps/shuttles/mining_freight.dmm index ead08ff80ac315..8282d22d3ede32 100644 --- a/_maps/shuttles/mining_freight.dmm +++ b/_maps/shuttles/mining_freight.dmm @@ -43,10 +43,6 @@ }, /turf/open/floor/mineral/titanium/yellow, /area/shuttle/mining) -"i" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium, -/area/shuttle/mining) "j" = ( /obj/machinery/light/directional/west, /obj/effect/turf_decal/stripes/line{ @@ -55,6 +51,7 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/mineral/titanium/yellow, /area/shuttle/mining) "k" = ( @@ -125,7 +122,7 @@ a a b -i +a b a a diff --git a/_maps/shuttles/mining_kilo.dmm b/_maps/shuttles/mining_kilo.dmm index f52a5c947f3e68..a6fdf02c6db75f 100644 --- a/_maps/shuttles/mining_kilo.dmm +++ b/_maps/shuttles/mining_kilo.dmm @@ -112,10 +112,7 @@ /area/shuttle/mining/large) "q" = ( /obj/machinery/status_display/evac, -/turf/closed/wall/mineral/titanium/nodiagonal, -/area/shuttle/mining/large) -"r" = ( -/obj/structure/sign/departments/cargo, +/obj/structure/sign/departments/cargo/directional/west, /turf/closed/wall/mineral/titanium/nodiagonal, /area/shuttle/mining/large) "s" = ( @@ -340,7 +337,7 @@ b b f l -r +k t x G diff --git a/_maps/shuttles/mining_northstar.dmm b/_maps/shuttles/mining_northstar.dmm index 48c194b6d45824..4a557937d778f0 100644 --- a/_maps/shuttles/mining_northstar.dmm +++ b/_maps/shuttles/mining_northstar.dmm @@ -198,10 +198,6 @@ /obj/structure/ore_box, /turf/open/floor/pod/dark, /area/shuttle/mining) -"X" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium/survival, -/area/shuttle/mining) "Z" = ( /obj/structure/chair/comfy/shuttle{ dir = 8 @@ -212,6 +208,7 @@ /obj/effect/turf_decal/trimline/purple/line{ dir = 4 }, +/obj/structure/sign/nanotrasen/directional/east, /turf/open/floor/pod/light, /area/shuttle/mining) @@ -264,7 +261,7 @@ I P I R -X +I R I P diff --git a/_maps/shuttles/pirate_default.dmm b/_maps/shuttles/pirate_default.dmm index 432e3e93129147..9b6f60d16a76ba 100644 --- a/_maps/shuttles/pirate_default.dmm +++ b/_maps/shuttles/pirate_default.dmm @@ -14,11 +14,11 @@ /obj/structure/table, /obj/effect/decal/cleanable/dirt, /obj/machinery/recharger, -/obj/item/gun/energy/laser{ +/obj/item/gun/energy/laser/soul{ pixel_x = -3; pixel_y = 6 }, -/obj/item/gun/energy/laser{ +/obj/item/gun/energy/laser/soul{ pixel_y = 3 }, /obj/effect/turf_decal/tile/red/anticorner/contrasted{ @@ -407,7 +407,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/machinery/turretid{ - icon_state = "control_kill"; lethal = 1; locked = 0; pixel_y = -24; diff --git a/_maps/shuttles/pirate_dutchman.dmm b/_maps/shuttles/pirate_dutchman.dmm index a00fff6e7e9fb9..0b50a136b414b8 100644 --- a/_maps/shuttles/pirate_dutchman.dmm +++ b/_maps/shuttles/pirate_dutchman.dmm @@ -931,7 +931,7 @@ /obj/item/restraints/legcuffs/bola, /obj/item/restraints/legcuffs/bola, /obj/item/restraints/legcuffs/bola, -/obj/item/gun/energy/laser, +/obj/item/gun/energy/laser/soul, /obj/item/megaphone, /obj/item/melee/chainofcommand/tailwhip/kitty, /obj/item/claymore/cutlass, diff --git a/_maps/shuttles/pirate_ex_interdyne.dmm b/_maps/shuttles/pirate_ex_interdyne.dmm index 4dd64e4cdbe044..c2bfc4f4d0e337 100644 --- a/_maps/shuttles/pirate_ex_interdyne.dmm +++ b/_maps/shuttles/pirate_ex_interdyne.dmm @@ -12,7 +12,6 @@ dir = 8 }, /obj/machinery/turretid{ - icon_state = "control_kill"; lethal = 1; locked = 0; pixel_y = -24; @@ -803,13 +802,6 @@ /obj/effect/mapping_helpers/airlock/access/all/syndicate/general, /turf/open/floor/iron/dark, /area/shuttle/pirate) -"Tr" = ( -/obj/machinery/porta_turret/syndicate/energy/heavy{ - faction = list("pirate","Syndicate"); - max_integrity = 10000 - }, -/turf/closed/wall/mineral/plastitanium/nodiagonal, -/area/shuttle/pirate) "Ur" = ( /obj/effect/turf_decal/tile/dark_blue/anticorner/contrasted{ dir = 8 @@ -968,7 +960,7 @@ aj aj aa aj -Tr +aO "} (8,1,1) = {" vz @@ -1040,7 +1032,7 @@ aj aj DD aj -Tr +aO "} (12,1,1) = {" af diff --git a/_maps/shuttles/pirate_geode.dmm b/_maps/shuttles/pirate_geode.dmm index 2f6a573aae0509..68266a96cffd62 100644 --- a/_maps/shuttles/pirate_geode.dmm +++ b/_maps/shuttles/pirate_geode.dmm @@ -258,7 +258,6 @@ dir = 4 }, /obj/machinery/turretid{ - icon_state = "control_kill"; lethal = 1; locked = 0; pixel_y = -24; diff --git a/_maps/shuttles/pirate_irs.dmm b/_maps/shuttles/pirate_irs.dmm index 2bc11decda8ca9..5ad360f2f48f4b 100644 --- a/_maps/shuttles/pirate_irs.dmm +++ b/_maps/shuttles/pirate_irs.dmm @@ -1379,7 +1379,6 @@ dir = 4 }, /obj/machinery/turretid{ - icon_state = "control_kill"; lethal = 1; pixel_y = -24; req_access = list("syndicate") @@ -1509,7 +1508,7 @@ /area/shuttle/pirate) "NW" = ( /obj/structure/table/reinforced, -/obj/item/stamp{ +/obj/item/stamp/granted{ pixel_x = 7; pixel_y = 10 }, diff --git a/_maps/shuttles/ruin_pirate_cutter.dmm b/_maps/shuttles/ruin_pirate_cutter.dmm index 422d5bfb2cdd58..6422f2159b6065 100644 --- a/_maps/shuttles/ruin_pirate_cutter.dmm +++ b/_maps/shuttles/ruin_pirate_cutter.dmm @@ -133,7 +133,6 @@ dir = 4 }, /obj/machinery/turretid{ - icon_state = "control_kill"; lethal = 1; locked = 0; pixel_y = -30; @@ -554,7 +553,7 @@ /obj/machinery/door/window/right/directional/south{ name = "Weapon Storage" }, -/obj/item/gun/energy/laser, +/obj/item/gun/energy/laser/soul, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron/dark, /area/shuttle/ruin/caravan/pirate) diff --git a/_maps/shuttles/ruin_syndicate_dropship.dmm b/_maps/shuttles/ruin_syndicate_dropship.dmm index dc3e7b68a7b269..3bbec26239197e 100644 --- a/_maps/shuttles/ruin_syndicate_dropship.dmm +++ b/_maps/shuttles/ruin_syndicate_dropship.dmm @@ -439,7 +439,6 @@ /obj/machinery/turretid{ ailock = 1; desc = "A specially designed set of turret controls. Looks to be covered in protective casing to prevent AI interfacing."; - icon_state = "control_kill"; lethal = 1; name = "Shuttle turret control"; pixel_y = 34; diff --git a/_maps/shuttles/ruin_syndicate_fighter_shiv.dmm b/_maps/shuttles/ruin_syndicate_fighter_shiv.dmm index f91d0260d66fca..08a0585dc9de8e 100644 --- a/_maps/shuttles/ruin_syndicate_fighter_shiv.dmm +++ b/_maps/shuttles/ruin_syndicate_fighter_shiv.dmm @@ -12,7 +12,6 @@ /obj/machinery/turretid{ ailock = 1; desc = "A specially designed set of turret controls. Looks to be covered in protective casing to prevent AI interfacing."; - icon_state = "control_kill"; lethal = 1; name = "Shuttle turret control"; pixel_x = 32; diff --git a/_maps/shuttles/starfury_corvette.dmm b/_maps/shuttles/starfury_corvette.dmm index 877375fa4e7850..8e944289466955 100644 --- a/_maps/shuttles/starfury_corvette.dmm +++ b/_maps/shuttles/starfury_corvette.dmm @@ -16,7 +16,6 @@ /obj/machinery/turretid{ ailock = 1; desc = "A specially designed set of turret controls. Looks to be covered in protective casing to prevent AI interfacing."; - icon_state = "control_kill"; lethal = 1; name = "Ship Turret Control"; pixel_x = 32; diff --git a/_maps/shuttles/starfury_fighter1.dmm b/_maps/shuttles/starfury_fighter1.dmm index ae37e35c23b00a..68c1aa7d141e16 100644 --- a/_maps/shuttles/starfury_fighter1.dmm +++ b/_maps/shuttles/starfury_fighter1.dmm @@ -82,7 +82,6 @@ /obj/machinery/turretid{ ailock = 1; desc = "A specially designed set of turret controls. Looks to be covered in protective casing to prevent AI interfacing."; - icon_state = "control_kill"; lethal = 1; name = "Ship Turret Control"; pixel_x = -32; diff --git a/_maps/shuttles/starfury_fighter2.dmm b/_maps/shuttles/starfury_fighter2.dmm index de55ea6c127cae..6613bd1154b53a 100644 --- a/_maps/shuttles/starfury_fighter2.dmm +++ b/_maps/shuttles/starfury_fighter2.dmm @@ -50,7 +50,6 @@ /obj/machinery/turretid{ ailock = 1; desc = "A specially designed set of turret controls. Looks to be covered in protective casing to prevent AI interfacing."; - icon_state = "control_kill"; lethal = 1; name = "Ship Turret Control"; pixel_x = -32; diff --git a/_maps/shuttles/starfury_fighter3.dmm b/_maps/shuttles/starfury_fighter3.dmm index e078e7b0bfda58..be6d810384f329 100644 --- a/_maps/shuttles/starfury_fighter3.dmm +++ b/_maps/shuttles/starfury_fighter3.dmm @@ -49,7 +49,6 @@ /obj/machinery/turretid{ ailock = 1; desc = "A specially designed set of turret controls. Looks to be covered in protective casing to prevent AI interfacing."; - icon_state = "control_kill"; lethal = 1; name = "Ship Turret Control"; pixel_x = -32; diff --git a/_maps/shuttles/whiteship_birdshot.dmm b/_maps/shuttles/whiteship_birdshot.dmm index 8b2c99d9de1f44..8f64e40dbecd02 100644 --- a/_maps/shuttles/whiteship_birdshot.dmm +++ b/_maps/shuttles/whiteship_birdshot.dmm @@ -201,12 +201,12 @@ amount = 10 }, /obj/structure/cable, -/obj/machinery/light/small/built/directional/south, +/obj/machinery/light/small/empty/directional/south, /turf/open/floor/catwalk_floor, /area/shuttle/abandoned/engine) "gv" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/machinery/atmospherics/components/unary/vent_pump/on, /turf/open/floor/iron/textured, /area/shuttle/abandoned/cargo) @@ -240,7 +240,7 @@ /obj/machinery/atmospherics/components/tank/air{ dir = 1 }, -/obj/machinery/light/small/built/directional/south, +/obj/machinery/light/small/empty/directional/south, /turf/open/floor/catwalk_floor, /area/shuttle/abandoned/engine) "iB" = ( @@ -286,7 +286,7 @@ "jY" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/suit_storage_unit/standard_unit, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /turf/open/floor/iron/smooth, /area/shuttle/abandoned/crew) "ku" = ( @@ -847,7 +847,7 @@ /turf/open/floor/plating, /area/shuttle/abandoned/medbay) "Cz" = ( -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ dir = 4 }, @@ -1376,7 +1376,6 @@ "UK" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/turretid{ - icon_state = "control_kill"; lethal = 1; locked = 0; pixel_y = 28; @@ -1425,7 +1424,7 @@ pixel_y = 4 }, /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/built/directional/west, +/obj/machinery/light/empty/directional/west, /turf/open/floor/carpet/green, /area/shuttle/abandoned/bar) "WW" = ( diff --git a/_maps/shuttles/whiteship_box.dmm b/_maps/shuttles/whiteship_box.dmm index 81c72c3e8638df..b0be5fc47f61df 100644 --- a/_maps/shuttles/whiteship_box.dmm +++ b/_maps/shuttles/whiteship_box.dmm @@ -190,7 +190,7 @@ /obj/effect/turf_decal/stripes/line{ dir = 1 }, -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /obj/machinery/firealarm/directional/north, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ dir = 4 @@ -280,7 +280,7 @@ /area/shuttle/abandoned/medbay) "aJ" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/machinery/firealarm/directional/east, /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 1 @@ -396,7 +396,7 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/airalarm/directional/south, /obj/effect/mapping_helpers/airalarm/all_access, -/obj/machinery/light/small/built/directional/south, +/obj/machinery/light/small/empty/directional/south, /turf/open/floor/plating, /area/shuttle/abandoned/engine) "aW" = ( @@ -497,7 +497,7 @@ /turf/open/floor/plating, /area/shuttle/abandoned/engine) "bh" = ( -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /turf/open/floor/plating, /area/shuttle/abandoned/engine) "bi" = ( @@ -553,7 +553,7 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/airalarm/directional/north, /obj/effect/mapping_helpers/airalarm/all_access, -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /obj/structure/cable, /turf/open/floor/plating, /area/shuttle/abandoned/engine) @@ -656,7 +656,7 @@ /area/shuttle/abandoned/medbay) "bA" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/structure/closet/secure_closet/medical2{ anchored = 1 }, @@ -670,7 +670,7 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/sleeper, /obj/effect/turf_decal/delivery, -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /obj/machinery/firealarm/directional/north, /turf/open/floor/iron, /area/shuttle/abandoned/medbay) @@ -705,7 +705,7 @@ /area/shuttle/abandoned/medbay) "bF" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/effect/decal/cleanable/blood/old, /obj/structure/cable, /turf/open/floor/iron/white/side{ @@ -930,7 +930,7 @@ "ce" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/structure/closet/secure_closet/medical3{ anchored = 1 }, @@ -979,7 +979,7 @@ /obj/machinery/atmospherics/components/unary/thermomachine/freezer{ dir = 1 }, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /turf/open/floor/iron/white/side{ dir = 6 }, @@ -995,7 +995,7 @@ /area/shuttle/abandoned/medbay) "cl" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /obj/structure/cable, /obj/effect/turf_decal/tile/blue{ @@ -1009,7 +1009,7 @@ /obj/structure/rack, /obj/item/storage/toolbox/emergency, /obj/item/wrench, -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /obj/machinery/firealarm/directional/west, /obj/machinery/button/door/directional/south{ id = "whiteship_windows"; @@ -1190,7 +1190,7 @@ /obj/effect/decal/cleanable/dirt, /obj/structure/bed/medical/emergency, /obj/machinery/iv_drip, -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /obj/effect/decal/cleanable/blood/old, /turf/open/floor/iron/white/side{ dir = 1 @@ -1245,7 +1245,7 @@ /obj/machinery/shower/directional/south, /obj/item/soap, /obj/structure/curtain, -/obj/machinery/light/small/built/directional/south, +/obj/machinery/light/small/empty/directional/south, /turf/open/floor/iron/freezer, /area/shuttle/abandoned/medbay) "cL" = ( @@ -1372,7 +1372,7 @@ "cX" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/structure/table, /obj/machinery/door/window/left/directional/west{ name = "Medical Equipment Storage" @@ -1554,7 +1554,7 @@ /area/shuttle/abandoned/medbay) "dn" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /turf/open/floor/iron/white/side{ dir = 4 }, @@ -1599,7 +1599,7 @@ "ds" = ( /obj/structure/sign/warning/vacuum/external/directional/east, /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /turf/open/floor/plating, /area/shuttle/abandoned/medbay) "dt" = ( @@ -1615,7 +1615,7 @@ /obj/item/storage/box/zipties, /obj/item/assembly/flash/handheld, /obj/item/melee/baton/telescopic, -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /obj/machinery/airalarm/directional/west, /obj/effect/mapping_helpers/airalarm/all_access, /obj/machinery/power/apc/auto_name/directional/north, @@ -1680,7 +1680,7 @@ pixel_y = 3 }, /obj/item/storage/box/donkpockets, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/effect/turf_decal/tile/neutral/fourcorners, /turf/open/floor/iron, /area/shuttle/abandoned/crew) @@ -1733,7 +1733,7 @@ "Pz" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /obj/structure/bed{ dir = 4 }, @@ -1755,7 +1755,7 @@ "Uq" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /obj/structure/bed, /obj/machinery/airalarm/directional/north, /obj/effect/mapping_helpers/airalarm/all_access, diff --git a/_maps/shuttles/whiteship_delta.dmm b/_maps/shuttles/whiteship_delta.dmm index a83cd9c28b6024..7c99b731c7ac23 100644 --- a/_maps/shuttles/whiteship_delta.dmm +++ b/_maps/shuttles/whiteship_delta.dmm @@ -52,7 +52,7 @@ /obj/machinery/shower/directional/south, /obj/item/soap, /obj/structure/curtain, -/obj/machinery/light/small/built/directional/south, +/obj/machinery/light/small/empty/directional/south, /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/freezer, /area/shuttle/abandoned/crew) @@ -67,7 +67,7 @@ /turf/open/floor/iron/freezer, /area/shuttle/abandoned/crew) "al" = ( -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /obj/effect/decal/cleanable/dirt, /obj/structure/bed{ dir = 4 @@ -97,7 +97,7 @@ /area/shuttle/abandoned/crew) "ao" = ( /obj/structure/sign/warning/vacuum/external/directional/east, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /turf/open/floor/plating, /area/shuttle/abandoned/crew) "ap" = ( @@ -122,7 +122,7 @@ /turf/open/floor/iron, /area/shuttle/abandoned/bar) "at" = ( -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /obj/effect/decal/cleanable/dirt, /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/spider/stickyweb, @@ -296,7 +296,7 @@ /turf/open/floor/iron, /area/shuttle/abandoned/bar) "aL" = ( -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/white/line{ dir = 5 @@ -371,7 +371,7 @@ /turf/open/floor/iron, /area/shuttle/abandoned/crew) "aV" = ( -/obj/machinery/light/small/built/directional/south, +/obj/machinery/light/small/empty/directional/south, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /obj/structure/cable, @@ -399,7 +399,7 @@ /obj/effect/turf_decal/stripes/white/line{ dir = 6 }, -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ dir = 4 @@ -424,7 +424,7 @@ /obj/effect/turf_decal/stripes/white/line{ dir = 10 }, -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ dir = 1 @@ -505,7 +505,7 @@ /turf/open/floor/plating, /area/shuttle/abandoned/engine) "bl" = ( -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 8 @@ -521,7 +521,7 @@ "bn" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /obj/structure/spider/stickyweb, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /obj/structure/cable, @@ -619,7 +619,7 @@ /turf/open/floor/iron, /area/shuttle/abandoned/bar) "bx" = ( -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/white/line{ dir = 6 @@ -781,7 +781,6 @@ /area/shuttle/abandoned/engine) "bR" = ( /obj/machinery/turretid{ - icon_state = "control_kill"; lethal = 1; locked = 0; pixel_x = -28; @@ -824,14 +823,14 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/airalarm/directional/east, /obj/effect/mapping_helpers/airalarm/all_access, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /obj/structure/cable, /obj/effect/turf_decal/tile/blue, /turf/open/floor/iron, /area/shuttle/abandoned/crew) "bV" = ( -/obj/machinery/light/small/built/directional/south, +/obj/machinery/light/small/empty/directional/south, /obj/effect/turf_decal/stripes/corner{ dir = 1 }, @@ -978,7 +977,7 @@ /turf/open/floor/iron, /area/shuttle/abandoned/crew) "ck" = ( -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /obj/effect/turf_decal/stripes/corner{ dir = 8 }, @@ -1117,7 +1116,7 @@ /obj/effect/decal/cleanable/dirt, /obj/machinery/firealarm/directional/east, /obj/structure/spider/stickyweb, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /obj/structure/cable, /obj/effect/turf_decal/tile/blue{ @@ -1241,7 +1240,7 @@ /area/shuttle/abandoned/engine) "cP" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden, /obj/structure/cable, /obj/effect/turf_decal/tile/blue/half/contrasted{ @@ -1296,14 +1295,11 @@ /obj/machinery/atmospherics/components/unary/vent_pump/on, /turf/open/floor/iron/dark, /area/shuttle/abandoned/medbay) -"cW" = ( -/obj/structure/sign/departments/cargo, -/turf/closed/wall/mineral/titanium, -/area/shuttle/abandoned/cargo) "cX" = ( -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /obj/effect/decal/cleanable/dirt, /obj/structure/spider/stickyweb, +/obj/structure/sign/departments/cargo/directional/west, /turf/open/floor/iron, /area/shuttle/abandoned/cargo) "db" = ( @@ -1378,7 +1374,7 @@ /turf/open/floor/iron/white, /area/shuttle/abandoned/medbay) "dj" = ( -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /obj/effect/decal/cleanable/dirt, /obj/structure/spider/stickyweb, /obj/machinery/firealarm/directional/north, @@ -1423,7 +1419,7 @@ /obj/effect/turf_decal/stripes/white/line{ dir = 5 }, -/obj/machinery/light/small/built/directional/south, +/obj/machinery/light/small/empty/directional/south, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ dir = 4 @@ -1565,7 +1561,7 @@ /area/shuttle/abandoned/medbay) "dE" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/machinery/airalarm/directional/east, /obj/effect/mapping_helpers/airalarm/all_access, /obj/structure/spider/stickyweb, @@ -1592,14 +1588,14 @@ /turf/open/floor/plating, /area/shuttle/abandoned/medbay) "dJ" = ( -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /obj/effect/decal/cleanable/dirt, /obj/machinery/power/apc/auto_name/directional/west, /obj/structure/cable, /turf/open/floor/iron, /area/shuttle/abandoned/cargo) "dM" = ( -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/stripes/white/line{ dir = 6 @@ -1667,7 +1663,7 @@ /area/shuttle/abandoned/medbay) "dT" = ( /obj/structure/sign/warning/vacuum/external/directional/east, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, /area/shuttle/abandoned/medbay) @@ -2282,7 +2278,7 @@ aa aa cx cy -cW +cx dr cy bv diff --git a/_maps/shuttles/whiteship_kilo.dmm b/_maps/shuttles/whiteship_kilo.dmm index 590c18e7868ba3..a7a1940b5c2235 100644 --- a/_maps/shuttles/whiteship_kilo.dmm +++ b/_maps/shuttles/whiteship_kilo.dmm @@ -539,7 +539,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/machinery/turretid{ - icon_state = "control_kill"; lethal = 1; locked = 0; name = "NTMS-037 Mining Turret control panel"; diff --git a/_maps/shuttles/whiteship_meta.dmm b/_maps/shuttles/whiteship_meta.dmm index 91e83d3e272ff4..3952fb62464615 100644 --- a/_maps/shuttles/whiteship_meta.dmm +++ b/_maps/shuttles/whiteship_meta.dmm @@ -142,7 +142,7 @@ "at" = ( /obj/structure/sign/warning/vacuum/external/directional/west, /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /turf/open/floor/plating, /area/shuttle/abandoned/crew) "ax" = ( @@ -295,7 +295,7 @@ /turf/open/floor/plating, /area/shuttle/abandoned/engine) "ba" = ( -/obj/machinery/light/small/built/directional/south, +/obj/machinery/light/small/empty/directional/south, /obj/effect/decal/cleanable/dirt, /obj/machinery/firealarm/directional/north, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{ @@ -317,7 +317,7 @@ /turf/open/floor/iron, /area/shuttle/abandoned/crew) "be" = ( -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/atmospherics/components/unary/vent_pump/on{ @@ -454,7 +454,7 @@ /turf/open/floor/plating, /area/shuttle/abandoned/engine) "bz" = ( -/obj/machinery/light/built/directional/west, +/obj/machinery/light/empty/directional/west, /obj/effect/decal/cleanable/dirt, /obj/machinery/firealarm/directional/west, /obj/structure/closet/crate/internals, @@ -480,7 +480,7 @@ /area/shuttle/abandoned/bar) "bF" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/south, +/obj/machinery/light/small/empty/directional/south, /obj/structure/curtain, /obj/machinery/shower/directional/south, /obj/item/soap, @@ -529,7 +529,7 @@ /turf/open/floor/iron/dark, /area/shuttle/abandoned/bar) "bM" = ( -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /obj/effect/decal/cleanable/dirt, /obj/structure/table, /obj/machinery/microwave, @@ -647,7 +647,7 @@ /area/shuttle/abandoned/bar) "cd" = ( /obj/structure/table, -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /obj/effect/decal/cleanable/dirt, /obj/item/paper_bin{ pixel_x = -4 @@ -676,7 +676,6 @@ }, /obj/effect/decal/cleanable/dirt, /obj/machinery/turretid{ - icon_state = "control_kill"; lethal = 1; locked = 0; pixel_y = 28; @@ -708,7 +707,7 @@ /area/shuttle/abandoned/engine) "ci" = ( /obj/structure/sign/warning/vacuum/external/directional/north, -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /obj/structure/cable, /turf/open/floor/plating, /area/shuttle/abandoned/engine) @@ -833,7 +832,7 @@ /area/shuttle/abandoned/bar) "cD" = ( /obj/structure/table, -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /obj/effect/decal/cleanable/dirt, /obj/machinery/cell_charger, /obj/item/stock_parts/power_store/cell/high, @@ -889,7 +888,7 @@ /turf/open/floor/iron/dark, /area/shuttle/abandoned/engine) "cI" = ( -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/structure/rack, @@ -969,7 +968,7 @@ /turf/open/floor/iron/dark, /area/shuttle/abandoned/cargo) "cS" = ( -/obj/machinery/light/built/directional/east, +/obj/machinery/light/empty/directional/east, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/firealarm/directional/east, @@ -1072,7 +1071,7 @@ "dk" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/machinery/atmospherics/components/unary/vent_pump/on, /turf/open/floor/iron/cafeteria, /area/shuttle/abandoned/bar) @@ -1339,7 +1338,7 @@ /area/shuttle/abandoned/bar) "ec" = ( /obj/structure/sign/warning/vacuum/external/directional/west, -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /turf/open/floor/plating, /area/shuttle/abandoned/bar) "ed" = ( @@ -1375,12 +1374,12 @@ pixel_x = -3; pixel_y = 6 }, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /turf/open/floor/iron, /area/shuttle/abandoned/bar) "ef" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /obj/machinery/hydroponics/constructable, /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/tile/green/half/contrasted{ @@ -1464,7 +1463,7 @@ /turf/open/floor/iron/dark, /area/shuttle/abandoned/bar) "he" = ( -/obj/machinery/light/built/directional/west, +/obj/machinery/light/empty/directional/west, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, /obj/machinery/airalarm/directional/west, @@ -1619,7 +1618,7 @@ /turf/open/floor/iron, /area/shuttle/abandoned/bar) "uS" = ( -/obj/machinery/light/built/directional/east, +/obj/machinery/light/empty/directional/east, /obj/effect/decal/cleanable/dirt, /obj/machinery/airalarm/directional/east, /obj/effect/mapping_helpers/airalarm/all_access, @@ -1632,7 +1631,7 @@ }, /obj/machinery/airalarm/directional/south, /obj/effect/mapping_helpers/airalarm/all_access, -/obj/machinery/light/small/built/directional/south, +/obj/machinery/light/small/empty/directional/south, /obj/effect/decal/cleanable/blood, /turf/open/floor/plating, /area/shuttle/abandoned/engine) @@ -1672,7 +1671,7 @@ /turf/open/floor/iron/dark, /area/shuttle/abandoned/crew) "Aa" = ( -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/effect/decal/cleanable/dirt, /obj/machinery/vending/cigarette, /obj/effect/decal/cleanable/dirt, @@ -1821,7 +1820,7 @@ }, /obj/machinery/airalarm/directional/north, /obj/effect/mapping_helpers/airalarm/all_access, -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /obj/structure/cable, /turf/open/floor/plating, /area/shuttle/abandoned/engine) @@ -1853,7 +1852,7 @@ /turf/open/floor/iron/dark, /area/shuttle/abandoned/bridge) "HJ" = ( -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/effect/decal/cleanable/dirt, /obj/machinery/vending/coffee, /obj/effect/decal/cleanable/dirt, @@ -1986,7 +1985,7 @@ /turf/open/floor/iron/dark, /area/shuttle/abandoned/bar) "RV" = ( -/obj/machinery/light/small/built/directional/south, +/obj/machinery/light/small/empty/directional/south, /obj/effect/decal/cleanable/dirt, /obj/machinery/airalarm/directional/south, /obj/effect/mapping_helpers/airalarm/all_access, @@ -2019,7 +2018,7 @@ /obj/structure/bed{ dir = 4 }, -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/item/bedsheet/brown{ dir = 4 }, diff --git a/_maps/shuttles/whiteship_pubby.dmm b/_maps/shuttles/whiteship_pubby.dmm index 2486da85094b11..c351bbdd41b086 100644 --- a/_maps/shuttles/whiteship_pubby.dmm +++ b/_maps/shuttles/whiteship_pubby.dmm @@ -26,7 +26,7 @@ /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 8 }, -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /obj/effect/decal/cleanable/dirt, /turf/open/floor/iron/dark, /area/shuttle/abandoned) @@ -207,7 +207,7 @@ /obj/effect/turf_decal/trimline/purple/filled/line{ dir = 1 }, -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /obj/structure/table, /obj/effect/spawner/random/food_or_drink/donkpockets{ pixel_y = 5 @@ -303,7 +303,7 @@ /turf/open/floor/iron/dark, /area/shuttle/abandoned) "na" = ( -/obj/machinery/light/small/built/directional/east, +/obj/machinery/light/small/empty/directional/east, /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/blood/oil, /obj/structure/cable, @@ -532,7 +532,7 @@ }, /obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /turf/open/floor/iron/dark, /area/shuttle/abandoned) "vB" = ( @@ -850,7 +850,7 @@ "JI" = ( /obj/structure/sign/warning/vacuum/external/directional/west, /obj/machinery/suit_storage_unit/standard_unit, -/obj/machinery/light/small/built/directional/north, +/obj/machinery/light/small/empty/directional/north, /obj/effect/turf_decal/delivery/white, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating, @@ -991,7 +991,7 @@ /turf/open/floor/iron/dark, /area/shuttle/abandoned) "Pu" = ( -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /obj/effect/turf_decal/siding/purple{ dir = 10 }, @@ -1214,7 +1214,7 @@ pixel_x = -4 }, /obj/effect/decal/cleanable/dirt, -/obj/machinery/light/small/built/directional/west, +/obj/machinery/light/small/empty/directional/west, /turf/open/floor/pod/light, /area/shuttle/abandoned) "ZT" = ( diff --git a/_maps/shuttles/whiteship_tram.dmm b/_maps/shuttles/whiteship_tram.dmm index 9e2e244343ed80..27391955c3fd3a 100644 --- a/_maps/shuttles/whiteship_tram.dmm +++ b/_maps/shuttles/whiteship_tram.dmm @@ -207,7 +207,6 @@ /turf/open/floor/pod, /area/shuttle/abandoned/cargo) "aT" = ( -/obj/structure/sign/warning/secure_area, /turf/closed/wall/mineral/titanium/survival/nodiagonal, /area/shuttle/abandoned/cargo) "aU" = ( @@ -226,6 +225,7 @@ "aW" = ( /obj/effect/spawner/random/trash/hobo_squat, /obj/effect/mob_spawn/corpse/human/assistant, +/obj/structure/sign/warning/secure_area/directional/west, /turf/open/floor/pod, /area/shuttle/abandoned/cargo) "aX" = ( @@ -802,10 +802,6 @@ }, /turf/open/floor/iron/dark/textured_large, /area/shuttle/abandoned/bridge) -"dv" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium/nodiagonal, -/area/shuttle/abandoned/bridge) "dw" = ( /obj/structure/bed/pod{ dir = 1 @@ -814,6 +810,7 @@ dir = 1 }, /obj/effect/turf_decal/bot_white, +/obj/structure/sign/nanotrasen/directional/west, /turf/open/floor/iron/dark/textured_large, /area/shuttle/abandoned/crew) "dx" = ( @@ -926,9 +923,11 @@ /turf/open/floor/iron/smooth_large, /area/shuttle/abandoned/bridge) "pm" = ( -/obj/structure/sign/nanotrasen, -/turf/closed/wall/mineral/titanium/nodiagonal, -/area/shuttle/abandoned/crew) +/obj/structure/chair/comfy/shuttle, +/obj/effect/turf_decal/bot_white, +/obj/structure/sign/nanotrasen/directional/west, +/turf/open/floor/iron/dark/textured_large, +/area/shuttle/abandoned/bridge) "qd" = ( /obj/machinery/power/shuttle_engine/heater{ dir = 1 @@ -1230,6 +1229,10 @@ /obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, /turf/open/floor/catwalk_floor, /area/shuttle/abandoned/crew) +"KQ" = ( +/obj/structure/sign/warning/secure_area/directional/east, +/turf/open/floor/pod, +/area/shuttle/abandoned/cargo) "LM" = ( /obj/structure/cable, /obj/effect/decal/cleanable/blood/tracks{ @@ -1594,7 +1597,7 @@ by cP da dy -dv +dy do ds dy @@ -1623,7 +1626,7 @@ cY cY cY dx -iz +pm dp dt dx @@ -1712,7 +1715,7 @@ de aq dl dq -pm +aq aq aq de @@ -1791,7 +1794,7 @@ cA aS bn cA -cA +KQ cH ez cV diff --git a/_maps/templates/battlecruiser_starfury.dmm b/_maps/templates/battlecruiser_starfury.dmm index 5dd8929572b429..bb32515c5a1fb8 100644 --- a/_maps/templates/battlecruiser_starfury.dmm +++ b/_maps/templates/battlecruiser_starfury.dmm @@ -415,8 +415,11 @@ /turf/open/floor/plating, /area/shuttle/sbc_starfury) "by" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/mineral/plastitanium/nodiagonal, +/obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ + dir = 8 + }, +/obj/structure/sign/warning/secure_area/directional/east, +/turf/open/floor/iron/dark/smooth_large, /area/shuttle/sbc_starfury) "bB" = ( /obj/effect/turf_decal/tile/red, @@ -474,6 +477,13 @@ /obj/machinery/light/directional/north, /turf/open/floor/iron/dark, /area/shuttle/sbc_starfury) +"bQ" = ( +/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{ + dir = 4 + }, +/obj/structure/sign/warning/secure_area/directional/west, +/turf/open/floor/iron/dark/smooth_large, +/area/shuttle/sbc_starfury) "bR" = ( /obj/effect/turf_decal/tile/red, /obj/effect/turf_decal/tile/dark_red{ @@ -2663,8 +2673,12 @@ /turf/open/floor/mineral/plastitanium, /area/shuttle/sbc_starfury) "ja" = ( -/obj/structure/sign/warning/radiation, -/turf/closed/wall/mineral/plastitanium/nodiagonal, +/obj/effect/turf_decal/stripes/line{ + dir = 4 + }, +/obj/machinery/light/directional/east, +/obj/structure/sign/warning/radiation/directional/east, +/turf/open/floor/mineral/plastitanium, /area/shuttle/sbc_starfury) "jb" = ( /obj/effect/turf_decal/stripes/line{ @@ -3844,6 +3858,7 @@ /obj/machinery/atmospherics/components/unary/vent_scrubber/on/layer2{ dir = 1 }, +/obj/structure/sign/warning/secure_area/directional/west, /turf/open/floor/pod/dark, /area/shuttle/sbc_starfury) "rr" = ( @@ -4129,6 +4144,7 @@ dir = 5 }, /obj/machinery/light/directional/east, +/obj/structure/sign/warning/secure_area/directional/east, /turf/open/floor/mineral/plastitanium/red, /area/shuttle/sbc_starfury) "wo" = ( @@ -4774,6 +4790,14 @@ temperature = 80 }, /area/shuttle/sbc_starfury) +"HC" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/machinery/light/directional/west, +/obj/structure/sign/warning/radiation/directional/west, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/sbc_starfury) "HF" = ( /obj/machinery/suit_storage_unit/syndicate, /obj/machinery/light/small/directional/west, @@ -4957,7 +4981,6 @@ /obj/machinery/turretid{ ailock = 1; desc = "A specially designed set of turret controls. Looks to be covered in protective casing to prevent AI interfacing."; - icon_state = "control_stun"; name = "Ship Turret Control"; pixel_y = -28; req_access = list("syndicate") @@ -5108,6 +5131,13 @@ /obj/machinery/light/small/directional/south, /turf/open/floor/iron/dark, /area/shuttle/sbc_starfury) +"Or" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 5 + }, +/obj/structure/sign/warning/radiation/directional/east, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/sbc_starfury) "Ou" = ( /obj/structure/lattice, /turf/template_noop, @@ -5452,6 +5482,13 @@ /obj/structure/cable, /turf/open/floor/plating, /area/shuttle/sbc_starfury) +"UG" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 9 + }, +/obj/structure/sign/warning/radiation/directional/west, +/turf/open/floor/mineral/plastitanium, +/area/shuttle/sbc_starfury) "UH" = ( /obj/effect/turf_decal/stripes/line{ dir = 8 @@ -6626,7 +6663,7 @@ ad ad ad ae -by +ae Sb Yg ae @@ -6694,7 +6731,7 @@ aU bj eJ ev -PF +bQ ay vk ae @@ -6733,12 +6770,12 @@ ay zm iD iQ -iZ +Or kt MR kt kg -kg +ja kt kR lk @@ -6801,11 +6838,11 @@ ae ae ae ae -ja +ae ae wd jv -ja +ae ae kG kU @@ -7345,11 +7382,11 @@ ae xG ae ae -ja +ae ae jN Xg -ja +ae ae xH kU @@ -7374,7 +7411,7 @@ be bt FC eM -NX +by bZ cV ae @@ -7413,11 +7450,11 @@ gO Rv iI kb -jb +UG kH yM Lb -kj +HC kj kH la @@ -7442,7 +7479,7 @@ ad ad ad ae -by +ae po ES ae @@ -7609,12 +7646,12 @@ nD Qw ae ae -by +ae ae ZK hX ae -by +ae ae ae xG diff --git a/_maps/templates/holodeck_fitness.dmm b/_maps/templates/holodeck_fitness.dmm new file mode 100644 index 00000000000000..3430be521a4b93 --- /dev/null +++ b/_maps/templates/holodeck_fitness.dmm @@ -0,0 +1,273 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"b" = ( +/obj/structure/weightmachine, +/obj/effect/turf_decal/tile/red/opposingcorners, +/turf/open/floor/holofloor/dark, +/area/template_noop) +"d" = ( +/obj/item/kirbyplants/organic/plant17, +/turf/open/floor/holofloor/dark, +/area/template_noop) +"g" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 2 + }, +/turf/open/floor/holofloor/white, +/area/template_noop) +"j" = ( +/obj/structure/window/reinforced/tinted/frosted/spawner/directional/north, +/turf/open/floor/holofloor/dark, +/area/template_noop) +"k" = ( +/obj/item/clothing/under/color/yellow, +/obj/structure/rack, +/obj/item/clothing/under/color/yellow, +/turf/open/floor/holofloor, +/area/template_noop) +"l" = ( +/obj/structure/punching_bag, +/obj/effect/turf_decal/tile/red/opposingcorners, +/turf/open/floor/holofloor/dark, +/area/template_noop) +"m" = ( +/obj/effect/turf_decal/tile/neutral/half/contrasted{ + dir = 4 + }, +/turf/open/floor/holofloor, +/area/template_noop) +"n" = ( +/obj/structure/chair{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted{ + dir = 1 + }, +/turf/open/floor/holofloor, +/area/template_noop) +"p" = ( +/obj/effect/turf_decal/siding/thinplating_new/dark, +/turf/open/floor/holofloor/dark, +/area/template_noop) +"s" = ( +/obj/item/clothing/under/color/blue, +/obj/structure/rack, +/obj/item/clothing/under/color/blue, +/turf/open/floor/holofloor, +/area/template_noop) +"t" = ( +/obj/item/kirbyplants/organic/plant2, +/turf/open/floor/holofloor/dark, +/area/template_noop) +"u" = ( +/obj/effect/turf_decal/tile/blue/half/contrasted, +/turf/open/floor/holofloor/white, +/area/template_noop) +"v" = ( +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/holofloor, +/area/template_noop) +"w" = ( +/obj/item/clothing/under/color/darkgreen, +/obj/structure/rack, +/obj/item/clothing/under/color/darkgreen, +/turf/open/floor/holofloor, +/area/template_noop) +"x" = ( +/obj/item/instrument/piano_synth/headphones{ + pixel_y = 6; + pixel_x = -3 + }, +/obj/structure/table, +/obj/item/instrument/piano_synth/headphones{ + pixel_y = -1; + pixel_x = 3 + }, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/turf/open/floor/holofloor, +/area/template_noop) +"A" = ( +/obj/structure/chair{ + dir = 8 + }, +/obj/effect/turf_decal/tile/neutral/half/contrasted{ + dir = 8 + }, +/turf/open/floor/holofloor, +/area/template_noop) +"H" = ( +/obj/structure/curtain, +/obj/machinery/shower/directional/south, +/turf/open/floor/holofloor/white, +/area/template_noop) +"I" = ( +/turf/open/floor/holofloor/dark, +/area/template_noop) +"J" = ( +/obj/item/kirbyplants/organic/plant1, +/turf/open/floor/holofloor/dark, +/area/template_noop) +"K" = ( +/obj/structure/table, +/obj/item/radio/entertainment/speakers/physical, +/obj/effect/turf_decal/tile/neutral{ + dir = 1 + }, +/turf/open/floor/holofloor, +/area/template_noop) +"N" = ( +/turf/open/floor/holofloor, +/area/template_noop) +"O" = ( +/obj/effect/turf_decal/siding/thinplating_new/dark{ + dir = 1 + }, +/turf/open/floor/holofloor/dark, +/area/template_noop) +"P" = ( +/obj/item/kirbyplants/organic/plant13, +/turf/open/floor/holofloor/dark, +/area/template_noop) +"R" = ( +/turf/open/floor/holofloor/white, +/area/template_noop) +"S" = ( +/obj/item/clothing/under/color/red, +/obj/structure/rack, +/obj/item/clothing/under/color/red, +/turf/open/floor/holofloor, +/area/template_noop) +"U" = ( +/obj/item/training_toolbox, +/obj/structure/table, +/obj/item/training_toolbox{ + pixel_y = 3; + pixel_x = 2 + }, +/turf/open/floor/holofloor, +/area/template_noop) +"V" = ( +/obj/effect/turf_decal/tile/red/opposingcorners, +/turf/open/floor/holofloor/dark, +/area/template_noop) +"W" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/turf/open/floor/holofloor/white, +/area/template_noop) +"Y" = ( +/obj/structure/weightmachine/weightlifter, +/obj/effect/turf_decal/tile/red/opposingcorners, +/turf/open/floor/holofloor/dark, +/area/template_noop) + +(1,1,1) = {" +R +R +O +I +d +P +I +p +N +U +"} +(2,1,1) = {" +R +g +O +Y +V +V +b +p +N +S +"} +(3,1,1) = {" +H +u +j +V +V +V +V +p +N +k +"} +(4,1,1) = {" +R +u +j +Y +V +V +b +p +N +w +"} +(5,1,1) = {" +H +u +j +V +V +V +V +p +N +s +"} +(6,1,1) = {" +R +u +j +Y +V +V +b +p +m +x +"} +(7,1,1) = {" +H +u +j +V +V +V +V +p +v +n +"} +(8,1,1) = {" +R +W +O +l +V +V +l +p +v +n +"} +(9,1,1) = {" +R +R +O +I +J +t +I +p +A +K +"} diff --git a/_maps/templates/lazy_templates/heretic_sacrifice.dmm b/_maps/templates/lazy_templates/heretic_sacrifice.dmm index 7a752a33e73849..b938a35278b947 100644 --- a/_maps/templates/lazy_templates/heretic_sacrifice.dmm +++ b/_maps/templates/lazy_templates/heretic_sacrifice.dmm @@ -19,7 +19,7 @@ /turf/open/floor/stone, /area/centcom/heretic_sacrifice/flesh) "cW" = ( -/obj/structure/no_effect_signpost/void, +/obj/structure/signpost/void, /turf/open/misc/asteroid, /area/centcom/heretic_sacrifice/void) "dX" = ( diff --git a/_maps/virtual_domains/beach_bar.dmm b/_maps/virtual_domains/beach_bar.dmm index b81ec5224f4552..e3e4a09e96b8e5 100644 --- a/_maps/virtual_domains/beach_bar.dmm +++ b/_maps/virtual_domains/beach_bar.dmm @@ -806,8 +806,9 @@ /turf/open/misc/beach/sand, /area/virtual_domain/fullbright) "Kd" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/mineral/sandstone, +/obj/effect/mapping_helpers/broken_floor, +/obj/structure/sign/warning/secure_area/directional/west, +/turf/open/floor/plating, /area/virtual_domain/fullbright) "KH" = ( /obj/structure/mineral_door/wood{ @@ -1609,7 +1610,7 @@ LD LD Fn Fn -Kd +Fn Fn Fn bQ @@ -1652,7 +1653,7 @@ pT LD EC LD -pT +Kd PM wD wD diff --git a/_maps/virtual_domains/fredingtonfastingbear.dmm b/_maps/virtual_domains/fredingtonfastingbear.dmm index 67b3965ba9610b..e2c7be33fe3d88 100644 --- a/_maps/virtual_domains/fredingtonfastingbear.dmm +++ b/_maps/virtual_domains/fredingtonfastingbear.dmm @@ -131,7 +131,7 @@ /obj/effect/decal/cleanable/blood/tracks{ dir = 4 }, -/obj/machinery/light/built/directional/east, +/obj/machinery/light/empty/directional/east, /turf/open/floor/iron/kitchen, /area/virtual_domain) "hq" = ( @@ -187,7 +187,7 @@ /turf/open/floor/iron/kitchen, /area/virtual_domain) "kL" = ( -/obj/machinery/light/built/directional/west, +/obj/machinery/light/empty/directional/west, /obj/item/light/tube/broken, /turf/open/floor/iron/kitchen, /area/virtual_domain) @@ -279,7 +279,7 @@ /turf/open/floor/iron/kitchen, /area/virtual_domain) "pr" = ( -/obj/machinery/light/built/directional/east, +/obj/machinery/light/empty/directional/east, /turf/open/floor/iron/kitchen, /area/virtual_domain) "pK" = ( @@ -481,7 +481,7 @@ /area/virtual_domain) "wM" = ( /obj/item/toy/balloon/heart, -/obj/machinery/light/built/directional/west, +/obj/machinery/light/empty/directional/west, /obj/structure/fake_stairs/wood{ dir = 1 }, @@ -585,7 +585,7 @@ "Ct" = ( /obj/effect/turf_decal/tile/blue/opposingcorners, /obj/effect/turf_decal/tile/blue/opposingcorners, -/obj/machinery/light/built/directional/east, +/obj/machinery/light/empty/directional/east, /turf/open/floor/iron/kitchen, /area/virtual_domain) "Dx" = ( @@ -622,7 +622,7 @@ /area/virtual_domain/protected_space/fullbright) "Fy" = ( /obj/effect/decal/cleanable/confetti, -/obj/machinery/light/built/directional/west, +/obj/machinery/light/empty/directional/west, /obj/structure/fake_stairs/wood, /turf/open/floor/iron/kitchen, /area/virtual_domain) @@ -635,7 +635,7 @@ /turf/open/floor/iron/kitchen, /area/virtual_domain) "Gn" = ( -/obj/machinery/light/built/directional/east, +/obj/machinery/light/empty/directional/east, /obj/effect/decal/cleanable/food/tomato_smudge, /obj/effect/landmark/bitrunning/cache_spawn, /turf/open/floor/iron/kitchen/small, @@ -851,13 +851,13 @@ /obj/effect/turf_decal/tile/blue/opposingcorners, /obj/effect/turf_decal/tile/blue/opposingcorners, /obj/item/toy/balloon/heart, -/obj/machinery/light/built/directional/west, +/obj/machinery/light/empty/directional/west, /turf/open/floor/iron/kitchen, /area/virtual_domain) "RB" = ( /obj/effect/turf_decal/tile/bar/opposingcorners, /obj/effect/turf_decal/tile/bar/opposingcorners, -/obj/machinery/light/built/directional/west, +/obj/machinery/light/empty/directional/west, /obj/effect/decal/cleanable/glass/plastitanium, /turf/open/floor/iron/kitchen, /area/virtual_domain) @@ -874,7 +874,7 @@ "SE" = ( /obj/effect/turf_decal/tile/bar/opposingcorners, /obj/effect/turf_decal/tile/bar/opposingcorners, -/obj/machinery/light/built/directional/east, +/obj/machinery/light/empty/directional/east, /obj/effect/decal/cleanable/glass/plastitanium, /turf/open/floor/iron/kitchen, /area/virtual_domain) @@ -947,7 +947,7 @@ /obj/effect/turf_decal/tile/dark_red/opposingcorners, /obj/effect/turf_decal/tile/dark_red/opposingcorners, /obj/effect/decal/cleanable/blood/gibs/old, -/obj/machinery/light/built/directional/west, +/obj/machinery/light/empty/directional/west, /turf/open/floor/iron/kitchen, /area/virtual_domain) "VS" = ( diff --git a/_maps/virtual_domains/heretic_hunt.dmm b/_maps/virtual_domains/heretic_hunt.dmm new file mode 100644 index 00000000000000..33101a823a7980 --- /dev/null +++ b/_maps/virtual_domains/heretic_hunt.dmm @@ -0,0 +1,2373 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"am" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/virtual_domain) +"aR" = ( +/obj/structure/grille/broken, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/virtual_domain) +"aY" = ( +/obj/structure/table/reinforced, +/obj/item/storage/toolbox/electrical{ + pixel_x = -8; + pixel_y = -2 + }, +/obj/structure/cable, +/turf/open/floor/iron, +/area/virtual_domain) +"br" = ( +/obj/machinery/light/small/broken/directional/west, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"bC" = ( +/obj/effect/decal/cleanable/blood/old, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"bV" = ( +/obj/structure/filingcabinet/chestdrawer, +/turf/open/floor/iron, +/area/virtual_domain) +"ck" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/mapping_helpers/broken_floor, +/turf/open/floor/plating, +/area/virtual_domain) +"cz" = ( +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/structure/closet/secure_closet/contraband/armory, +/obj/effect/spawner/random/exotic/antag_gear_weak, +/obj/effect/spawner/random/exotic/syndie, +/turf/open/floor/iron, +/area/virtual_domain) +"cS" = ( +/obj/structure/table/glass, +/obj/effect/turf_decal/tile/dark_blue/half/contrasted, +/mob/living/basic/pet/cat/_proc{ + faction = list("neutral", "vdom_fake_crew") + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"dh" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"di" = ( +/obj/structure/chair/office, +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/turf/open/floor/iron, +/area/virtual_domain) +"ey" = ( +/obj/modular_map_root/safehouse{ + key = "maintsafe" + }, +/turf/template_noop, +/area/virtual_domain/safehouse) +"eT" = ( +/obj/effect/baseturf_helper/virtual_domain, +/turf/closed/indestructible/binary, +/area/virtual_domain) +"eV" = ( +/obj/machinery/stasis{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/effect/turf_decal/siding/blue{ + dir = 6 + }, +/obj/structure/cable, +/turf/open/floor/plastic, +/area/virtual_domain) +"fd" = ( +/obj/structure/frame/computer{ + dir = 1; + anchored = 1 + }, +/obj/effect/turf_decal/tile/dark_red/anticorner/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"fl" = ( +/obj/structure/table/reinforced, +/obj/item/storage/box{ + pixel_y = 10; + pixel_x = 2 + }, +/obj/structure/cable, +/turf/open/floor/iron, +/area/virtual_domain) +"fn" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/visible_heretic_influence, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"fq" = ( +/obj/machinery/power/rtg, +/obj/structure/cable, +/turf/open/floor/iron, +/area/virtual_domain) +"fA" = ( +/obj/structure/closet/crate/bin, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/item/shard/titanium, +/obj/item/melee/rune_carver, +/obj/item/melee/rune_carver{ + pixel_y = 4; + pixel_x = -4 + }, +/turf/open/floor/iron, +/area/virtual_domain) +"fL" = ( +/obj/structure/table, +/obj/item/storage/medkit/emergency, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"ge" = ( +/obj/structure/table, +/obj/structure/chem_separator{ + pixel_y = 11 + }, +/obj/item/reagent_containers/applicator/pill/psicodine, +/obj/item/reagent_containers/applicator/pill/stimulant{ + pixel_y = -2; + pixel_x = -3 + }, +/obj/item/reagent_containers/applicator/pill/probital{ + pixel_x = 4; + pixel_y = -2 + }, +/turf/open/floor/plating, +/area/virtual_domain) +"gp" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/structure/closet/emcloset, +/turf/open/floor/iron, +/area/virtual_domain) +"gz" = ( +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/structure/cable, +/turf/open/floor/iron, +/area/virtual_domain) +"hp" = ( +/obj/effect/turf_decal/tile/blue, +/turf/open/floor/plastic, +/area/virtual_domain) +"hy" = ( +/obj/machinery/light/small/broken/directional/west, +/mob/living/basic/heretic_summon/raw_prophet, +/turf/open/floor/plating, +/area/virtual_domain) +"hK" = ( +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/cobweb, +/obj/item/pickaxe/rusted, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"hP" = ( +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/machinery/light/cold/directional/north, +/obj/effect/turf_decal/siding/blue{ + dir = 8 + }, +/obj/effect/spawner/random/medical/patient_stretcher, +/obj/structure/cable, +/turf/open/floor/plastic, +/area/virtual_domain) +"hS" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/item/flashlight/flare{ + icon_state = "flare-on"; + light_on = 1 + }, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"hV" = ( +/obj/structure/frame/computer{ + dir = 1; + anchored = 1 + }, +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/tile/dark_red/half/contrasted, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"hY" = ( +/obj/structure/filingcabinet/chestdrawer, +/obj/effect/turf_decal/tile/dark_red/anticorner/contrasted, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"iu" = ( +/obj/structure/chair/office/light{ + dir = 4 + }, +/turf/open/floor/iron, +/area/virtual_domain) +"iw" = ( +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/structure/sign/warning/electric_shock/directional/north, +/turf/open/floor/iron, +/area/virtual_domain) +"iy" = ( +/obj/effect/turf_decal/tile/yellow, +/turf/open/floor/iron, +/area/virtual_domain) +"iH" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/decal/cleanable/insectguts, +/turf/open/floor/plating, +/area/virtual_domain) +"iL" = ( +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/structure/table/glass, +/obj/item/storage/medkit{ + pixel_y = -3 + }, +/obj/effect/turf_decal/siding/blue{ + dir = 4 + }, +/turf/open/floor/plastic, +/area/virtual_domain) +"iN" = ( +/turf/template_noop, +/area/virtual_domain/safehouse) +"iQ" = ( +/obj/structure/frame/computer{ + anchored = 1 + }, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"iV" = ( +/obj/structure/table/glass, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/item/multitool{ + pixel_x = 5; + pixel_y = 4 + }, +/turf/open/floor/iron, +/area/virtual_domain) +"jR" = ( +/obj/effect/turf_decal/tile/red, +/obj/machinery/digital_clock/directional/east, +/turf/open/floor/iron, +/area/virtual_domain) +"ki" = ( +/mob/living/basic/fake_crewman/engi/mod, +/turf/open/floor/iron, +/area/virtual_domain) +"kw" = ( +/obj/effect/turf_decal/tile/red{ + dir = 4 + }, +/turf/open/floor/iron, +/area/virtual_domain) +"kQ" = ( +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/obj/effect/spawner/structure/electrified_grille, +/turf/open/floor/plating, +/area/virtual_domain) +"lG" = ( +/obj/effect/turf_decal/tile/blue, +/obj/machinery/portable_atmospherics/canister/anesthetic_mix, +/obj/machinery/digital_clock/directional/south, +/turf/open/floor/plastic, +/area/virtual_domain) +"mn" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/item/reagent_containers/syringe/contraband/bath_salts, +/obj/item/reagent_containers/syringe/contraband/methamphetamine{ + pixel_y = 4; + pixel_x = -3 + }, +/obj/item/reagent_containers/syringe/contraband/morphine{ + pixel_y = -3; + pixel_x = -2 + }, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"mu" = ( +/obj/structure/table/glass, +/obj/item/paper_bin, +/obj/item/folder/red, +/obj/effect/turf_decal/tile/dark_red/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"mW" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/turf/open/floor/iron, +/area/virtual_domain) +"mX" = ( +/obj/structure/chair/office, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"nf" = ( +/obj/structure/cable, +/turf/closed/indestructible/reinforced, +/area/virtual_domain) +"nh" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/spawner/random/engineering/flashlight, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"nM" = ( +/obj/effect/visible_heretic_influence, +/turf/open/floor/iron, +/area/virtual_domain) +"nU" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/mapping_helpers/broken_floor, +/turf/open/floor/plating, +/area/virtual_domain) +"oa" = ( +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/structure/table/glass, +/obj/item/storage/medkit{ + pixel_y = 10; + pixel_x = 5 + }, +/obj/effect/spawner/random/medical/supplies, +/obj/effect/turf_decal/siding/blue{ + dir = 4 + }, +/turf/open/floor/plastic, +/area/virtual_domain) +"oc" = ( +/obj/effect/visible_heretic_influence, +/obj/structure/cable, +/turf/open/floor/iron, +/area/virtual_domain) +"ok" = ( +/obj/structure/closet/crate/bin, +/obj/effect/turf_decal/tile/red/fourcorners, +/obj/item/storage/belt/unfathomable_curio, +/turf/open/floor/iron, +/area/virtual_domain) +"oD" = ( +/mob/living/basic/fake_crewman/assistant, +/obj/effect/mapping_helpers/broken_floor, +/obj/item/restraints/handcuffs/cable/yellow{ + pixel_x = 3; + pixel_y = 3 + }, +/obj/item/stack/medical/gauze/improvised{ + pixel_y = -2 + }, +/turf/open/floor/plating, +/area/virtual_domain) +"oL" = ( +/obj/effect/turf_decal/tile/yellow, +/obj/structure/cable, +/turf/open/floor/iron, +/area/virtual_domain) +"oQ" = ( +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/structure/table/glass, +/obj/item/storage/medkit/regular{ + pixel_y = 7 + }, +/obj/effect/turf_decal/siding/blue{ + dir = 4 + }, +/turf/open/floor/plastic, +/area/virtual_domain) +"pd" = ( +/obj/structure/girder, +/obj/structure/grille/broken, +/turf/open/floor/plating, +/area/virtual_domain) +"pe" = ( +/obj/effect/turf_decal/tile/dark_blue/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"pm" = ( +/obj/effect/spawner/random/clothing/costume, +/obj/structure/rack, +/turf/open/floor/plating, +/area/virtual_domain) +"pv" = ( +/obj/machinery/door/airlock/command/glass, +/turf/open/floor/iron, +/area/virtual_domain) +"pM" = ( +/mob/living/basic/fake_crewman/assistant/alt, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/virtual_domain) +"pQ" = ( +/obj/effect/spawner/random/engineering/canister, +/obj/effect/mapping_helpers/burnt_floor, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plating, +/area/virtual_domain) +"rq" = ( +/obj/effect/turf_decal/tile/yellow/fourcorners, +/obj/machinery/suit_storage_unit, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/iron, +/area/virtual_domain) +"rt" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/item/reagent_containers/syringe/epinephrine, +/obj/item/reagent_containers/syringe/epinephrine{ + pixel_x = -5; + pixel_y = -5 + }, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"rC" = ( +/turf/closed/wall/heretic_rust, +/area/virtual_domain) +"rP" = ( +/obj/structure/reagent_dispensers/fueltank, +/obj/effect/decal/cleanable/plasma, +/turf/open/floor/plating, +/area/virtual_domain) +"sb" = ( +/obj/structure/cable, +/turf/open/floor/iron, +/area/virtual_domain) +"sd" = ( +/obj/item/storage/test_tube_rack, +/obj/structure/table, +/turf/open/floor/plating, +/area/virtual_domain) +"sl" = ( +/obj/structure/steam_vent, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/virtual_domain) +"sy" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/virtual_domain) +"sL" = ( +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/turf/open/floor/iron, +/area/virtual_domain) +"sT" = ( +/obj/structure/cable, +/turf/open/floor/plastic, +/area/virtual_domain) +"sY" = ( +/obj/effect/turf_decal/tile/yellow/anticorner/contrasted, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"ta" = ( +/obj/machinery/light/directional/north, +/turf/open/floor/iron, +/area/virtual_domain) +"tg" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/spawner/random/trash/mopbucket, +/turf/open/floor/plating, +/area/virtual_domain) +"ts" = ( +/obj/effect/spawner/random/bureaucracy/briefcase, +/obj/effect/spawner/random/trash/box, +/turf/open/floor/plating, +/area/virtual_domain) +"uh" = ( +/obj/structure/table/reinforced, +/obj/item/clothing/gloves/color/yellow, +/obj/item/clothing/gloves/color/yellow, +/obj/structure/cable, +/turf/open/floor/iron, +/area/virtual_domain) +"uj" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plastic, +/area/virtual_domain) +"uz" = ( +/obj/structure/chair/office{ + dir = 1 + }, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"uS" = ( +/obj/machinery/door/airlock/maintenance_hatch, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/virtual_domain) +"vh" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/turf/open/floor/plastic, +/area/virtual_domain) +"vn" = ( +/obj/effect/decal/cleanable/blood/old, +/turf/open/floor/plating, +/area/virtual_domain) +"vt" = ( +/obj/machinery/medical_kiosk, +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/effect/turf_decal/siding/blue{ + dir = 4 + }, +/obj/effect/turf_decal/siding/blue{ + dir = 8 + }, +/obj/structure/cable, +/turf/open/floor/plastic, +/area/virtual_domain) +"vG" = ( +/obj/effect/spawner/structure/window/reinforced, +/obj/structure/cable, +/turf/open/floor/plating, +/area/virtual_domain) +"vO" = ( +/obj/machinery/defibrillator_mount/directional/west, +/obj/structure/table/glass, +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/item/stack/medical/gauze/improvised, +/obj/effect/turf_decal/siding/blue{ + dir = 4 + }, +/turf/open/floor/plastic, +/area/virtual_domain) +"vP" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/cable, +/turf/open/floor/iron, +/area/virtual_domain) +"vR" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/iron, +/area/virtual_domain) +"wK" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/mapping_helpers/broken_floor, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"wM" = ( +/obj/effect/turf_decal/tile/blue, +/obj/machinery/wall_healer/free/directional/west, +/turf/open/floor/plastic, +/area/virtual_domain) +"wQ" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/cable, +/obj/item/flashlight/flare{ + icon_state = "flare-on"; + light_on = 1 + }, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"xa" = ( +/obj/machinery/stasis{ + dir = 1 + }, +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/effect/turf_decal/siding/blue{ + dir = 5 + }, +/obj/structure/cable, +/turf/open/floor/plastic, +/area/virtual_domain) +"xg" = ( +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/structure/cable, +/turf/open/floor/iron, +/area/virtual_domain) +"xz" = ( +/obj/effect/baseturf_helper/virtual_domain, +/turf/template_noop, +/area/virtual_domain/safehouse) +"xA" = ( +/obj/structure/filingcabinet/chestdrawer, +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/effect/turf_decal/siding/blue{ + dir = 1 + }, +/turf/open/floor/plastic, +/area/virtual_domain) +"xC" = ( +/obj/effect/mapping_helpers/broken_floor, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"xK" = ( +/obj/effect/turf_decal/tile/dark_red/half/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"xQ" = ( +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/machinery/vending/cigarette, +/turf/open/floor/iron, +/area/virtual_domain) +"yR" = ( +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/cable, +/turf/open/floor/iron, +/area/virtual_domain) +"yW" = ( +/obj/machinery/door/airlock/command/glass, +/turf/open/floor/plastic, +/area/virtual_domain) +"zd" = ( +/obj/effect/spawner/random/engineering/atmospherics_portable, +/turf/open/floor/plating, +/area/virtual_domain) +"zp" = ( +/obj/structure/table, +/obj/item/restraints/handcuffs, +/obj/item/restraints/handcuffs{ + pixel_x = -6; + pixel_y = 3 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"zN" = ( +/mob/living/basic/fake_crewman/boss/ce, +/obj/structure/chair/office/light{ + dir = 8 + }, +/obj/effect/turf_decal/tile/yellow/half/contrasted, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"AA" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/structure/cable, +/turf/open/floor/iron, +/area/virtual_domain) +"AE" = ( +/obj/structure/closet/emcloset, +/obj/item/storage/medkit/emergency, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"AO" = ( +/obj/structure/table, +/obj/machinery/recharger, +/obj/item/melee/baton/security/loaded, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"AV" = ( +/turf/open/floor/iron, +/area/virtual_domain) +"Bz" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/effect/turf_decal/stripes/line{ + dir = 8 + }, +/obj/structure/cable, +/turf/open/floor/iron, +/area/virtual_domain) +"BW" = ( +/obj/effect/decal/cleanable/ash/large, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"Cu" = ( +/obj/structure/frame/computer{ + pixel_y = 0; + dir = 4; + anchored = 1 + }, +/obj/effect/turf_decal/tile/dark_blue/half/contrasted{ + dir = 8 + }, +/obj/machinery/light/cold/directional/west, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"CT" = ( +/obj/effect/turf_decal/tile/red, +/obj/structure/extinguisher_cabinet/directional/east, +/turf/open/floor/iron, +/area/virtual_domain) +"Dh" = ( +/obj/structure/table/glass, +/obj/effect/turf_decal/tile/dark_red/anticorner/contrasted{ + dir = 1 + }, +/obj/item/storage/belt/security/webbing{ + pixel_x = -6; + pixel_y = 2 + }, +/obj/item/pen/fountain{ + pixel_x = 15; + pixel_y = 2 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"DC" = ( +/obj/structure/rack, +/obj/effect/turf_decal/tile/dark_red/half/contrasted, +/obj/item/ammo_box/speedloader/c38/flare, +/obj/item/ammo_box/speedloader/c38, +/obj/item/gun/ballistic/revolver/c38, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"El" = ( +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/effect/turf_decal/siding/blue{ + dir = 8 + }, +/obj/structure/cable, +/turf/open/floor/plastic, +/area/virtual_domain) +"EB" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/virtual_domain) +"EI" = ( +/obj/structure/table/glass, +/obj/item/storage/medkit/fire{ + pixel_x = -5; + pixel_y = 4 + }, +/obj/machinery/light/directional/south, +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/turf/open/floor/iron, +/area/virtual_domain) +"EL" = ( +/obj/effect/turf_decal/tile/dark_red/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"EV" = ( +/obj/effect/turf_decal/tile/red, +/obj/structure/cable, +/turf/open/floor/iron, +/area/virtual_domain) +"Fj" = ( +/turf/open/floor/iron/dark, +/area/virtual_domain) +"Fl" = ( +/obj/effect/turf_decal/tile/red{ + dir = 1 + }, +/turf/open/floor/iron, +/area/virtual_domain) +"Fv" = ( +/obj/effect/spawner/random/engineering/tank, +/obj/effect/mapping_helpers/broken_floor, +/obj/item/reagent_containers/cup/beaker/eldritch, +/turf/open/floor/plating, +/area/virtual_domain) +"FH" = ( +/obj/machinery/defibrillator_mount/directional/west, +/obj/structure/table/glass, +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/item/stack/medical/suture, +/obj/item/stack/medical/mesh{ + pixel_x = 3; + pixel_y = 2 + }, +/obj/machinery/light/cold/directional/north, +/obj/effect/turf_decal/siding/blue{ + dir = 4 + }, +/turf/open/floor/plastic, +/area/virtual_domain) +"FR" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/obj/machinery/iv_drip, +/turf/open/floor/plastic, +/area/virtual_domain) +"Gj" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"Gt" = ( +/obj/structure/table/glass, +/obj/item/folder/yellow, +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"Gv" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/obj/structure/extinguisher_cabinet/directional/south, +/turf/open/floor/iron, +/area/virtual_domain) +"GO" = ( +/obj/structure/frame/computer{ + pixel_y = 0; + dir = 4; + anchored = 1 + }, +/obj/effect/turf_decal/tile/dark_blue/anticorner/contrasted{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"GQ" = ( +/obj/effect/spawner/random/trash/bin, +/obj/item/shard/plasma, +/obj/effect/spawner/random/trash/food_packaging, +/obj/effect/spawner/random/trash/food_packaging, +/obj/effect/spawner/random/trash/cigbutt, +/obj/effect/spawner/random/trash/cigpack, +/turf/open/floor/plating, +/area/virtual_domain) +"GZ" = ( +/obj/effect/turf_decal/tile/dark_red/anticorner/contrasted{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"Ho" = ( +/obj/structure/sign/warning/electric_shock/directional/east, +/turf/open/floor/plating, +/area/virtual_domain) +"Hy" = ( +/obj/machinery/door/airlock/medical, +/obj/effect/mapping_helpers/airlock/locked, +/turf/open/floor/plastic, +/area/virtual_domain) +"If" = ( +/mob/living/basic/fake_crewman/boss/cmo, +/obj/structure/chair/office/light{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"Ih" = ( +/obj/structure/closet/firecloset, +/obj/structure/cable, +/turf/open/floor/iron, +/area/virtual_domain) +"Iu" = ( +/mob/living/basic/fake_crewman/boss/hos, +/obj/structure/chair/office{ + dir = 1 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"IH" = ( +/obj/item/flashlight/flare/candle/infinite{ + icon_state = "candle2_lit"; + pixel_x = -3; + pixel_y = 4 + }, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"IJ" = ( +/obj/machinery/light/cold/directional/south, +/turf/open/floor/plastic, +/area/virtual_domain) +"IS" = ( +/mob/living/basic/fake_crewman/engi, +/obj/structure/cable, +/turf/open/floor/iron, +/area/virtual_domain) +"IX" = ( +/obj/structure/table, +/obj/item/storage/toolbox/emergency, +/obj/item/clothing/mask/gas, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"Jj" = ( +/obj/effect/heretic_rune/big, +/obj/effect/landmark/bitrunning/loot_signal, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"Jo" = ( +/obj/structure/table/glass, +/obj/item/paper_bin, +/obj/effect/turf_decal/tile/yellow/anticorner/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"Jp" = ( +/obj/structure/table, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/spawner/random/trash/food_packaging, +/obj/effect/spawner/random/trash/food_packaging, +/obj/effect/spawner/random/clothing/gloves, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"Jt" = ( +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/structure/closet/crate/bin, +/turf/open/floor/iron, +/area/virtual_domain) +"JA" = ( +/obj/structure/table/glass, +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/effect/turf_decal/siding/blue/end, +/obj/item/healthanalyzer, +/turf/open/floor/plastic, +/area/virtual_domain) +"JD" = ( +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/structure/closet/secure_closet/contraband/armory, +/obj/item/gun/ballistic/rifle/lionhunter, +/obj/item/ammo_box/speedloader/strilka310/lionhunter, +/turf/open/floor/iron, +/area/virtual_domain) +"JG" = ( +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating, +/area/virtual_domain) +"JP" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/spawner/random/trash/cigbutt, +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/spawner/random/clothing/gloves, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"Kd" = ( +/obj/structure/closet/crate/bin, +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/item/eldritch_potion/wounded, +/obj/effect/turf_decal/siding/blue{ + dir = 1 + }, +/obj/item/eldritch_potion/wounded, +/obj/item/eldritch_potion/wounded, +/turf/open/floor/plastic, +/area/virtual_domain) +"Km" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 8 + }, +/turf/open/floor/iron, +/area/virtual_domain) +"KR" = ( +/turf/open/floor/plastic, +/area/virtual_domain) +"KS" = ( +/obj/structure/reagent_dispensers, +/turf/open/floor/plating, +/area/virtual_domain) +"KT" = ( +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"La" = ( +/obj/machinery/door/airlock/maintenance_hatch, +/obj/structure/girder, +/obj/structure/grille, +/turf/open/floor/plating, +/area/virtual_domain) +"Lc" = ( +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"Lj" = ( +/obj/effect/spawner/structure/window/reinforced/tinted, +/obj/structure/cable, +/turf/open/floor/plating, +/area/virtual_domain) +"Lp" = ( +/obj/effect/turf_decal/tile/blue, +/obj/machinery/iv_drip, +/turf/open/floor/plastic, +/area/virtual_domain) +"LB" = ( +/obj/machinery/door/airlock/maintenance_hatch, +/obj/structure/barricade/wooden, +/obj/structure/cable, +/turf/open/floor/plating, +/area/virtual_domain) +"LZ" = ( +/obj/effect/visible_heretic_influence, +/turf/open/floor/plastic, +/area/virtual_domain) +"Mg" = ( +/obj/effect/turf_decal/tile/dark_red/half/contrasted{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"MF" = ( +/obj/effect/mapping_helpers/broken_floor, +/turf/open/floor/plating, +/area/virtual_domain) +"MN" = ( +/obj/item/flashlight/flare/candle/infinite{ + icon_state = "candle2_lit"; + pixel_x = 2; + pixel_y = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating, +/area/virtual_domain) +"Ni" = ( +/obj/item/flashlight/flare/candle/infinite{ + icon_state = "candle2_lit"; + pixel_x = 10; + pixel_y = 14 + }, +/obj/effect/mapping_helpers/broken_floor, +/turf/open/floor/plating, +/area/virtual_domain) +"Nm" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/structure/sign/warning/electric_shock/directional/north, +/turf/open/floor/iron, +/area/virtual_domain) +"Np" = ( +/obj/machinery/light/directional/north, +/obj/effect/turf_decal/tile/yellow{ + dir = 4 + }, +/obj/machinery/digital_clock/directional/north, +/turf/open/floor/iron, +/area/virtual_domain) +"Nz" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/turf/open/floor/plating, +/area/virtual_domain) +"NE" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"NN" = ( +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/structure/table/glass, +/obj/item/stack/medical/gauze{ + pixel_y = 4 + }, +/obj/effect/turf_decal/siding/blue{ + dir = 8 + }, +/turf/open/floor/plastic, +/area/virtual_domain) +"NO" = ( +/mob/living/basic/fake_crewman/md, +/turf/open/floor/plastic, +/area/virtual_domain) +"Ot" = ( +/obj/machinery/light/small/broken/directional/east, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"OX" = ( +/obj/structure/frame/computer{ + anchored = 1 + }, +/obj/effect/turf_decal/tile/yellow/anticorner/contrasted{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"Po" = ( +/turf/closed/indestructible/fakedoor/engineering, +/area/virtual_domain) +"Pr" = ( +/turf/closed/indestructible/binary, +/area/virtual_domain) +"PB" = ( +/obj/structure/table/glass, +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/effect/turf_decal/siding/blue/end{ + dir = 1 + }, +/obj/item/stack/medical/gauze/improvised, +/obj/structure/cable, +/turf/open/floor/plastic, +/area/virtual_domain) +"PJ" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/mapping_helpers/broken_floor, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"Qj" = ( +/obj/structure/girder, +/obj/structure/grille, +/turf/open/floor/plating, +/area/virtual_domain) +"Qk" = ( +/obj/structure/table/reinforced, +/obj/machinery/cell_charger, +/obj/structure/cable, +/turf/open/floor/iron, +/area/virtual_domain) +"QP" = ( +/obj/item/flashlight/flare/torch, +/obj/item/flashlight/flare/torch, +/obj/item/clothing/suit/hooded/cultrobes/eldritch/rust, +/obj/item/melee/sickly_blade, +/obj/structure/rack, +/turf/template_noop, +/area/virtual_domain/safehouse) +"Rd" = ( +/obj/item/flashlight/flare{ + icon_state = "flare-on"; + light_on = 1 + }, +/turf/open/floor/plating, +/area/virtual_domain) +"Rg" = ( +/obj/item/flashlight/flare/candle/infinite{ + icon_state = "candle2_lit"; + pixel_x = 4; + pixel_y = 1 + }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/blood/old, +/obj/effect/decal/cleanable/ash, +/turf/open/floor/plating, +/area/virtual_domain) +"Rl" = ( +/obj/structure/table/glass, +/obj/item/folder/blue{ + pixel_y = 4 + }, +/obj/effect/turf_decal/tile/dark_blue/anticorner/contrasted, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"Ro" = ( +/obj/structure/chair/office/light{ + dir = 8 + }, +/turf/open/floor/plastic, +/area/virtual_domain) +"Rx" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 4 + }, +/turf/open/floor/plastic, +/area/virtual_domain) +"RO" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/spawner/random/trash/mess, +/obj/effect/spawner/random/trash/garbage, +/turf/open/floor/plating, +/area/virtual_domain) +"RQ" = ( +/obj/effect/turf_decal/tile/blue, +/obj/structure/cable, +/turf/open/floor/plastic, +/area/virtual_domain) +"RY" = ( +/obj/effect/turf_decal/tile/dark_blue/anticorner/contrasted{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"RZ" = ( +/obj/structure/closet/firecloset, +/obj/effect/mapping_helpers/broken_floor, +/obj/effect/decal/cleanable/cobweb/cobweb2, +/turf/open/floor/plating, +/area/virtual_domain) +"Sb" = ( +/mob/living/basic/fake_crewman/md, +/obj/structure/cable, +/turf/open/floor/plastic, +/area/virtual_domain) +"Sf" = ( +/obj/effect/spawner/random/trash/cigbutt, +/obj/effect/spawner/random/trash/cigbutt, +/obj/effect/decal/cleanable/cobweb, +/turf/open/floor/plating, +/area/virtual_domain) +"Sn" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"Ss" = ( +/obj/effect/mapping_helpers/broken_floor, +/obj/structure/cable, +/turf/open/floor/plating, +/area/virtual_domain) +"SJ" = ( +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/structure/sign/warning/electric_shock/directional/west, +/turf/open/floor/iron, +/area/virtual_domain) +"Tv" = ( +/obj/structure/table/glass, +/obj/effect/turf_decal/tile/dark_blue/anticorner/contrasted{ + dir = 8 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"Ua" = ( +/obj/structure/table/glass, +/obj/effect/turf_decal/tile/red/fourcorners, +/turf/open/floor/iron, +/area/virtual_domain) +"Ul" = ( +/obj/effect/spawner/structure/window/reinforced, +/turf/open/floor/plating, +/area/virtual_domain) +"Va" = ( +/obj/effect/turf_decal/tile/yellow{ + dir = 1 + }, +/obj/structure/cable, +/turf/open/floor/iron, +/area/virtual_domain) +"Vh" = ( +/turf/open/floor/plating, +/area/virtual_domain) +"Vj" = ( +/obj/structure/table/reinforced, +/turf/open/floor/iron, +/area/virtual_domain) +"Vr" = ( +/turf/closed/indestructible/fakedoor/glass_airlock, +/area/virtual_domain) +"Vs" = ( +/obj/machinery/light/small/broken/directional/east, +/mob/living/basic/heretic_summon/raw_prophet, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"Vx" = ( +/obj/structure/table/glass, +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/item/reagent_containers/hypospray{ + pixel_x = 6; + pixel_y = 1 + }, +/obj/effect/turf_decal/siding/blue{ + dir = 1 + }, +/turf/open/floor/plastic, +/area/virtual_domain) +"VS" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/light/small/red/dim/directional/south, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"VW" = ( +/obj/effect/turf_decal/tile/yellow/fourcorners, +/obj/structure/tank_dispenser, +/obj/structure/fireaxecabinet/directional/south, +/obj/effect/turf_decal/stripes/line{ + dir = 1 + }, +/turf/open/floor/iron, +/area/virtual_domain) +"VX" = ( +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/structure/table/glass, +/obj/item/reagent_containers/cup/bottle/salglu_solution, +/obj/effect/turf_decal/siding/blue{ + dir = 8 + }, +/turf/open/floor/plastic, +/area/virtual_domain) +"Wk" = ( +/obj/effect/turf_decal/tile/red, +/turf/open/floor/iron, +/area/virtual_domain) +"Wo" = ( +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/structure/closet/crate/bin, +/obj/structure/extinguisher_cabinet/directional/south, +/obj/effect/turf_decal/siding/blue{ + dir = 8 + }, +/obj/structure/cable, +/turf/open/floor/plastic, +/area/virtual_domain) +"Wv" = ( +/obj/effect/spawner/random/trash/caution_sign, +/obj/structure/grille/broken, +/obj/structure/cable, +/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4, +/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"WI" = ( +/obj/effect/spawner/structure/window, +/turf/open/floor/plating, +/area/virtual_domain) +"WL" = ( +/obj/effect/turf_decal/tile/red{ + dir = 8 + }, +/obj/structure/closet/secure_closet/contraband/armory, +/obj/effect/spawner/random/clothing/backpack, +/obj/effect/spawner/random/exotic/antag_gear, +/turf/open/floor/iron, +/area/virtual_domain) +"Xl" = ( +/obj/effect/turf_decal/tile/blue{ + dir = 8 + }, +/obj/structure/cable, +/turf/open/floor/plastic, +/area/virtual_domain) +"Xv" = ( +/obj/structure/table/glass, +/obj/item/paper_bin, +/obj/effect/turf_decal/tile/dark_blue/half/contrasted{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"XD" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/plastic, +/turf/open/floor/plating/heretic_rust, +/area/virtual_domain) +"XK" = ( +/obj/effect/spawner/random/structure/tank_holder, +/turf/open/floor/plating, +/area/virtual_domain) +"Yj" = ( +/obj/structure/grille, +/turf/open/floor/plating, +/area/virtual_domain) +"Yy" = ( +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/structure/table/glass, +/obj/item/storage/medkit/brute{ + pixel_y = -8 + }, +/obj/item/reagent_containers/cup/bottle/salglu_solution{ + pixel_y = 11; + pixel_x = -3 + }, +/obj/item/reagent_containers/cup/bottle{ + pixel_y = 13; + pixel_x = 3 + }, +/obj/effect/turf_decal/siding/blue{ + dir = 8 + }, +/turf/open/floor/plastic, +/area/virtual_domain) +"YL" = ( +/mob/living/basic/fake_crewman/sec, +/obj/effect/turf_decal/tile/neutral/fourcorners, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"Zb" = ( +/obj/structure/table, +/obj/item/reagent_containers/cup/bowl, +/obj/item/reagent_containers/cup/blastoff_ampoule{ + pixel_x = -3 + }, +/turf/open/floor/plating, +/area/virtual_domain) +"Zj" = ( +/obj/effect/turf_decal/tile/yellow/half/contrasted{ + dir = 4 + }, +/turf/open/floor/iron/dark, +/area/virtual_domain) +"Zt" = ( +/turf/closed/indestructible/reinforced, +/area/virtual_domain) +"Zu" = ( +/turf/closed/wall, +/area/virtual_domain) +"ZM" = ( +/obj/effect/spawner/random/trash/moisture_trap, +/turf/open/floor/plating, +/area/virtual_domain) +"ZN" = ( +/turf/closed/indestructible/fakedoor, +/area/virtual_domain) +"ZT" = ( +/obj/structure/table/glass, +/obj/effect/turf_decal/tile/blue/fourcorners, +/obj/item/reagent_containers/cup/bottle/atropine{ + pixel_y = 3; + pixel_x = -13 + }, +/obj/item/reagent_containers/applicator/patch/synthflesh, +/obj/item/reagent_containers/applicator/patch/synthflesh{ + pixel_x = 3; + pixel_y = 2 + }, +/obj/effect/turf_decal/siding/blue{ + dir = 1 + }, +/turf/open/floor/plastic, +/area/virtual_domain) + +(1,1,1) = {" +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +eT +"} +(2,1,1) = {" +Pr +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Pr +"} +(3,1,1) = {" +Pr +Zt +Zt +Zt +Lj +Vr +Vr +Lj +Zu +Zu +rC +rC +rC +Zu +Zt +Zt +Zt +Zt +Zt +Zu +Zu +Zu +Zu +Zu +Zu +Zu +Zu +Zt +Zt +Zt +Pr +"} +(4,1,1) = {" +Pr +Zt +Zt +Zt +vP +yR +yR +Bz +Zu +pQ +BW +nU +GQ +Zu +Zu +rC +rC +Zu +rC +Zu +iN +iN +iN +iN +iN +ey +Zu +Zt +Zt +Zt +Pr +"} +(5,1,1) = {" +Pr +Zt +Zt +Zt +iw +ki +sb +Gv +Zu +pm +wK +KT +tg +rC +hK +hy +nU +br +Vh +Zu +iN +iN +QP +iN +iN +iN +Zu +Zt +Zt +Zt +Pr +"} +(6,1,1) = {" +Pr +Zt +sb +Lj +Va +Vj +fl +Km +Zu +Zu +La +rC +rC +Zu +EB +IH +KT +MN +vn +Qj +iN +iN +QP +iN +iN +iN +Zu +Zt +Zt +Zt +Pr +"} +(7,1,1) = {" +Pr +Zt +sb +Po +sb +aY +Qk +vR +uS +sl +am +dh +Wv +uS +NE +bC +Jj +MF +Sn +Vh +iN +iN +QP +iN +iN +iN +Zu +Zt +Zt +Zt +Pr +"} +(8,1,1) = {" +Pr +Zt +sb +Lj +AA +Vj +uh +iy +Zu +Zu +Zu +LB +Zu +rC +sy +Ni +xC +Rg +Vh +pd +iN +iN +iN +iN +iN +iN +Zu +Zt +Zt +Zt +Pr +"} +(9,1,1) = {" +Pr +Zt +nf +Zt +Nm +AV +IS +iy +rq +Zu +Sf +Ss +Zb +rC +JG +Ot +sy +Vs +Vh +rC +iN +iN +iN +iN +iN +iN +Zu +Zt +Zt +Zt +Pr +"} +(10,1,1) = {" +Pr +Zt +fq +Zt +Np +nM +sb +iy +VW +Zu +JP +wQ +Zu +Zu +rC +Zu +uS +WI +rC +Zu +iN +iN +iN +iN +iN +xz +Zu +Zt +Zt +Zt +Pr +"} +(11,1,1) = {" +Pr +Zt +Zt +Zt +gp +Ih +sb +oL +rq +Zu +ge +Vh +rC +rt +oD +Zu +JG +MF +KS +Zu +Zu +Zu +Zu +Zu +Zu +Zu +Zu +Zt +Zt +Zt +Pr +"} +(12,1,1) = {" +Pr +Zt +Zt +Zt +Zu +vG +pv +vG +Zu +Zu +sd +nh +Yj +XD +mn +rC +NE +RO +IX +Zu +GO +Cu +Tv +Zu +Zu +Zu +Zt +Zt +Zt +Zt +Pr +"} +(13,1,1) = {" +Pr +Zt +Zt +Zt +Zu +mW +iu +Km +iV +Zu +pM +KT +Zu +rC +Zu +Zu +JG +hS +Jp +Zu +pe +If +cS +wM +Kd +Zu +Zt +Zt +Zt +Zt +Pr +"} +(14,1,1) = {" +Pr +Zt +Zt +Zu +Zu +Gt +Jo +AV +EI +Zu +ts +EB +Yj +wK +rP +Zu +Gj +KT +iH +Zu +RY +Xv +Rl +hp +Vx +Zu +Zt +Zt +Zt +Zt +Pr +"} +(15,1,1) = {" +Pr +Zt +Zt +Zu +iQ +Fj +zN +AV +fA +Zu +Zu +Zu +Zu +Nz +Fv +rC +dh +fn +ZM +Zu +Rx +Ro +Ro +hp +ZT +Zu +Zt +Zt +Zt +Zt +Pr +"} +(16,1,1) = {" +Pr +Zt +Zt +Zu +OX +Zj +sY +bV +Zu +Zu +ok +Ua +Zu +Zu +Zu +rC +sy +Ho +zd +Zu +Rx +KR +KR +hp +xA +Zu +Zt +Zt +Zt +Zt +Pr +"} +(17,1,1) = {" +Pr +Zt +Zt +Zu +Zu +Zu +Zu +Zu +Zu +Zu +Fl +Dh +EL +fd +Zu +rC +kQ +rC +Zu +Zu +vG +yW +vG +Zu +Zu +Zu +Zu +Zu +Zu +Zt +Pr +"} +(18,1,1) = {" +Pr +Zt +Zt +Zu +Jt +JD +cz +WL +xg +vG +di +mu +Iu +hV +Zu +AE +JG +Zu +Zu +FH +eV +sT +xa +vO +Zu +iL +oa +oQ +Zu +Zt +Pr +"} +(19,1,1) = {" +Pr +Zt +Zt +Zu +AV +YL +Lc +Lc +xg +pv +AV +xK +Fj +DC +Zu +RZ +dh +Zu +FR +vh +vh +Xl +vh +vh +Zu +vh +vh +vh +Zu +Zt +Pr +"} +(20,1,1) = {" +Pr +Zt +Zt +Zu +AV +mX +AO +uz +xg +vG +kw +GZ +Mg +hY +Zu +Zu +aR +Zu +KR +KR +NO +sT +KR +KR +Hy +KR +LZ +KR +Zu +Zt +Pr +"} +(21,1,1) = {" +Pr +Zt +Zt +Zu +ta +mX +fL +uz +gz +Zu +Zu +vG +Zu +Zu +Zu +Zu +dh +uS +uj +uj +PB +vt +JA +KR +Ul +KR +KR +IJ +Zu +Zt +Pr +"} +(22,1,1) = {" +Pr +Zt +Zt +Zu +AV +mX +zp +uz +xg +sL +SJ +xg +xQ +Zu +ck +Vh +NE +Zu +KR +KR +KR +Sb +KR +KR +Hy +KR +KR +KR +Zu +Zt +Pr +"} +(23,1,1) = {" +Pr +Zt +Zt +Zu +AV +Lc +Lc +YL +sb +sb +sb +oc +vR +uS +JG +PJ +VS +Zu +Lp +hp +hp +RQ +hp +hp +Zu +hp +hp +lG +Zu +Zt +Pr +"} +(24,1,1) = {" +Pr +Zt +Zt +Zu +Wk +jR +CT +Wk +EV +Wk +EV +Wk +EV +Zu +rC +Rd +XK +Zu +Zu +hP +El +El +El +Wo +Zu +VX +Yy +NN +Zu +Zt +Pr +"} +(25,1,1) = {" +Pr +Zt +Zt +Zu +Zu +Zu +Zu +Zu +Lj +ZN +Lj +ZN +Lj +Zu +Zu +rC +rC +Zu +Zu +Lj +ZN +Lj +ZN +Lj +Zu +Zu +Zu +Zu +Zu +Zt +Pr +"} +(26,1,1) = {" +Pr +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Zt +Pr +"} +(27,1,1) = {" +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +Pr +"} diff --git a/_maps/virtual_domains/island_brawl.dmm b/_maps/virtual_domains/island_brawl.dmm index afb11be05eddc2..07003db1aa579c 100644 --- a/_maps/virtual_domains/island_brawl.dmm +++ b/_maps/virtual_domains/island_brawl.dmm @@ -2551,7 +2551,7 @@ /turf/open/floor/wood, /area/virtual_domain) "Gp" = ( -/obj/structure/no_effect_signpost{ +/obj/structure/signpost{ pixel_y = 6; desc = "Northwest: Hotel. South: Seaside Bar. East: Dressing Rooms." }, diff --git a/_maps/virtual_domains/meta_central.dmm b/_maps/virtual_domains/meta_central.dmm index 83bf0966d15666..e7f6e003b3549b 100644 --- a/_maps/virtual_domains/meta_central.dmm +++ b/_maps/virtual_domains/meta_central.dmm @@ -677,6 +677,7 @@ dir = 1 }, /obj/machinery/light/directional/north, +/obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/iron, /area/virtual_domain) "fz" = ( @@ -2377,6 +2378,7 @@ dir = 8 }, /obj/item/trash/can/food/pine_nuts, +/obj/structure/sign/warning/secure_area/directional/south, /turf/open/floor/iron, /area/virtual_domain) "tM" = ( @@ -3779,8 +3781,11 @@ /turf/open/floor/iron, /area/virtual_domain) "FF" = ( -/obj/structure/sign/warning/secure_area, -/turf/closed/wall/r_wall, +/obj/effect/turf_decal/tile/neutral{ + dir = 4 + }, +/obj/structure/sign/warning/secure_area/directional/north, +/turf/open/floor/iron, /area/virtual_domain) "FG" = ( /obj/effect/turf_decal/trimline/green/filled/corner, @@ -3859,6 +3864,7 @@ /obj/structure/fluff/paper/stack{ dir = 6 }, +/obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/iron, /area/virtual_domain) "Gk" = ( @@ -3928,6 +3934,7 @@ /obj/structure/closet/crate/cardboard/mothic{ pixel_y = 8 }, +/obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/iron, /area/virtual_domain) "GQ" = ( @@ -5165,6 +5172,7 @@ dir = 8 }, /obj/item/trash/energybar, +/obj/structure/sign/warning/secure_area/directional/south, /turf/open/floor/iron, /area/virtual_domain) "RB" = ( @@ -5173,6 +5181,7 @@ }, /obj/structure/holosign/barrier, /obj/structure/marker_beacon/burgundy, +/obj/structure/sign/warning/secure_area/directional/north, /turf/open/floor/iron, /area/virtual_domain) "RD" = ( @@ -5659,7 +5668,7 @@ /obj/machinery/door/airlock{ name = "Central Emergency Storage" }, -/obj/effect/mapping_helpers/airlock/unres, +/obj/effect/mapping_helpers/airlock/unres/delayed, /turf/open/floor/plating, /area/virtual_domain) "VP" = ( @@ -6683,7 +6692,7 @@ dX XK tq tI -FF +uS mq oA wj @@ -7019,7 +7028,7 @@ JP ul tq Rz -FF +uS iI MM Vr @@ -7171,7 +7180,7 @@ Yo pH pK ep -FF +uS GJ FR Hd @@ -7208,8 +7217,8 @@ ps Nl YG iH +uS FF -dd FK Of qu @@ -7496,7 +7505,7 @@ ps Ht rJ VG -FF +uS RB qL jd @@ -7555,7 +7564,7 @@ oH Mj gE xI -FF +uS Gi Hd aC @@ -8083,7 +8092,7 @@ uS uS oo uS -FF +uS fr DV MN diff --git a/_maps/virtual_domains/syndicate_assault.dmm b/_maps/virtual_domains/syndicate_assault.dmm index e1258edf041859..e20438e1c412ab 100644 --- a/_maps/virtual_domains/syndicate_assault.dmm +++ b/_maps/virtual_domains/syndicate_assault.dmm @@ -115,6 +115,7 @@ /obj/structure/table/reinforced, /obj/item/gun/ballistic/automatic/l6_saw/unrestricted, /obj/item/ammo_box/magazine/m7mm, +/obj/structure/sign/departments/cargo/directional/north, /turf/open/floor/mineral/plastitanium, /area/virtual_domain/protected_space) "da" = ( @@ -122,8 +123,8 @@ /turf/open/floor/plastic, /area/virtual_domain) "dd" = ( -/obj/structure/sign/warning/vacuum/external, -/turf/closed/wall/r_wall/plastitanium/syndicate, +/obj/structure/sign/warning/vacuum/external/directional/north, +/turf/open/floor/mineral/plastitanium, /area/virtual_domain) "di" = ( /obj/machinery/power/terminal{ @@ -222,10 +223,6 @@ /obj/machinery/light/directional/north, /turf/open/floor/mineral/plastitanium/red, /area/virtual_domain) -"iL" = ( -/obj/structure/sign/departments/cargo, -/turf/closed/wall/r_wall/plastitanium/syndicate, -/area/virtual_domain/protected_space) "iU" = ( /obj/structure/closet/crate/secure/gear{ req_access = list("syndicate") @@ -318,7 +315,6 @@ /obj/machinery/turretid{ control_area = "/area/ruin/space/has_grav/syndicate_forgotten_ship"; enabled = 0; - icon_state = "control_kill"; lethal = 1; name = "Ship turret control panel"; pixel_y = 32; @@ -1006,6 +1002,10 @@ /obj/structure/cable, /turf/open/floor/mineral/plastitanium, /area/virtual_domain) +"PQ" = ( +/obj/structure/sign/warning/vacuum/external/directional/south, +/turf/open/floor/mineral/plastitanium, +/area/virtual_domain) "PR" = ( /obj/machinery/door/password/voice/sfc{ password = null @@ -2971,17 +2971,17 @@ qx ru uP uP +ru dd uP uP -uP Ox aw uP uP uP -uP -dd +PQ +ru uP Qg ru @@ -2992,7 +2992,7 @@ qx qx qx qx -iL +zN cZ dp dp diff --git a/_maps/virtual_domains/xeno_nest.dmm b/_maps/virtual_domains/xeno_nest.dmm index 895ba5e84c37c7..0e6cf4a740f14b 100644 --- a/_maps/virtual_domains/xeno_nest.dmm +++ b/_maps/virtual_domains/xeno_nest.dmm @@ -141,7 +141,7 @@ /area/virtual_domain/fullbright) "F" = ( /obj/structure/table/greyscale, -/obj/item/gun/energy/xray, +/obj/item/gun/energy/laser/xray, /obj/item/gun/energy/laser{ pixel_x = 4; pixel_y = -6 diff --git a/biome.json b/biome.json index 8f792f2b57b054..73718decc5b2fe 100644 --- a/biome.json +++ b/biome.json @@ -1,5 +1,5 @@ { - "$schema": "https://biomejs.dev/schemas/2.1.2/schema.json", + "$schema": "https://biomejs.dev/schemas/2.3.10/schema.json", "assist": { "actions": { "source": { @@ -20,7 +20,8 @@ "!**/node_modules", "!tgui/public", "tgui/public/tgui.html", - "!tgui/packages/tgui-setup/helpers.js" + "!tgui/packages/tgui-setup/helpers.js", + "!**/bun.lock" ] }, "formatter": { @@ -39,15 +40,18 @@ "rules": { "recommended": true, "a11y": "off", + "complexity": { + "useArrowFunction": "error" + }, "correctness": { - "noUnusedImports": "warn", + "noUnusedImports": "error", "noUnusedVariables": "off", "useExhaustiveDependencies": "off", "noUnusedFunctionParameters": "off", "useHookAtTopLevel": "off" }, "security": { - "noDangerouslySetInnerHtml": "warn" + "noDangerouslySetInnerHtml": "off" }, "style": { "noNonNullAssertion": "off", @@ -56,7 +60,8 @@ "suspicious": { "noArrayIndexKey": "off", "noExplicitAny": "off", - "noImplicitAnyLet": "off" + "noImplicitAnyLet": "off", + "noVar": "error" } } }, diff --git a/bun.lock b/bun.lock index d234ff9912a02b..fde39f4c0a0882 100644 --- a/bun.lock +++ b/bun.lock @@ -1,32 +1,33 @@ { "lockfileVersion": 1, + "configVersion": 0, "workspaces": { "": { "devDependencies": { - "@biomejs/biome": "^2.1.2", - "prettier": "^3.6.2", + "@biomejs/biome": "^2.3.10", + "prettier": "^3.7.4", }, }, }, "packages": { - "@biomejs/biome": ["@biomejs/biome@2.1.2", "", { "optionalDependencies": { "@biomejs/cli-darwin-arm64": "2.1.2", "@biomejs/cli-darwin-x64": "2.1.2", "@biomejs/cli-linux-arm64": "2.1.2", "@biomejs/cli-linux-arm64-musl": "2.1.2", "@biomejs/cli-linux-x64": "2.1.2", "@biomejs/cli-linux-x64-musl": "2.1.2", "@biomejs/cli-win32-arm64": "2.1.2", "@biomejs/cli-win32-x64": "2.1.2" }, "bin": { "biome": "bin/biome" } }, "sha512-yq8ZZuKuBVDgAS76LWCfFKHSYIAgqkxVB3mGVVpOe2vSkUTs7xG46zXZeNPRNVjiJuw0SZ3+J2rXiYx0RUpfGg=="], + "@biomejs/biome": ["@biomejs/biome@2.3.10", "", { "optionalDependencies": { "@biomejs/cli-darwin-arm64": "2.3.10", "@biomejs/cli-darwin-x64": "2.3.10", "@biomejs/cli-linux-arm64": "2.3.10", "@biomejs/cli-linux-arm64-musl": "2.3.10", "@biomejs/cli-linux-x64": "2.3.10", "@biomejs/cli-linux-x64-musl": "2.3.10", "@biomejs/cli-win32-arm64": "2.3.10", "@biomejs/cli-win32-x64": "2.3.10" }, "bin": { "biome": "bin/biome" } }, "sha512-/uWSUd1MHX2fjqNLHNL6zLYWBbrJeG412/8H7ESuK8ewoRoMPUgHDebqKrPTx/5n6f17Xzqc9hdg3MEqA5hXnQ=="], - "@biomejs/cli-darwin-arm64": ["@biomejs/cli-darwin-arm64@2.1.2", "", { "os": "darwin", "cpu": "arm64" }, "sha512-leFAks64PEIjc7MY/cLjE8u5OcfBKkcDB0szxsWUB4aDfemBep1WVKt0qrEyqZBOW8LPHzrFMyDl3FhuuA0E7g=="], + "@biomejs/cli-darwin-arm64": ["@biomejs/cli-darwin-arm64@2.3.10", "", { "os": "darwin", "cpu": "arm64" }, "sha512-M6xUjtCVnNGFfK7HMNKa593nb7fwNm43fq1Mt71kpLpb+4mE7odO8W/oWVDyBVO4ackhresy1ZYO7OJcVo/B7w=="], - "@biomejs/cli-darwin-x64": ["@biomejs/cli-darwin-x64@2.1.2", "", { "os": "darwin", "cpu": "x64" }, "sha512-Nmmv7wRX5Nj7lGmz0FjnWdflJg4zii8Ivruas6PBKzw5SJX/q+Zh2RfnO+bBnuKLXpj8kiI2x2X12otpH6a32A=="], + "@biomejs/cli-darwin-x64": ["@biomejs/cli-darwin-x64@2.3.10", "", { "os": "darwin", "cpu": "x64" }, "sha512-Vae7+V6t/Avr8tVbFNjnFSTKZogZHFYl7MMH62P/J1kZtr0tyRQ9Fe0onjqjS2Ek9lmNLmZc/VR5uSekh+p1fg=="], - "@biomejs/cli-linux-arm64": ["@biomejs/cli-linux-arm64@2.1.2", "", { "os": "linux", "cpu": "arm64" }, "sha512-NWNy2Diocav61HZiv2enTQykbPP/KrA/baS7JsLSojC7Xxh2nl9IczuvE5UID7+ksRy2e7yH7klm/WkA72G1dw=="], + "@biomejs/cli-linux-arm64": ["@biomejs/cli-linux-arm64@2.3.10", "", { "os": "linux", "cpu": "arm64" }, "sha512-hhPw2V3/EpHKsileVOFynuWiKRgFEV48cLe0eA+G2wO4SzlwEhLEB9LhlSrVeu2mtSn205W283LkX7Fh48CaxA=="], - "@biomejs/cli-linux-arm64-musl": ["@biomejs/cli-linux-arm64-musl@2.1.2", "", { "os": "linux", "cpu": "arm64" }, "sha512-qgHvafhjH7Oca114FdOScmIKf1DlXT1LqbOrrbR30kQDLFPEOpBG0uzx6MhmsrmhGiCFCr2obDamu+czk+X0HQ=="], + "@biomejs/cli-linux-arm64-musl": ["@biomejs/cli-linux-arm64-musl@2.3.10", "", { "os": "linux", "cpu": "arm64" }, "sha512-B9DszIHkuKtOH2IFeeVkQmSMVUjss9KtHaNXquYYWCjH8IstNgXgx5B0aSBQNr6mn4RcKKRQZXn9Zu1rM3O0/A=="], - "@biomejs/cli-linux-x64": ["@biomejs/cli-linux-x64@2.1.2", "", { "os": "linux", "cpu": "x64" }, "sha512-Km/UYeVowygTjpX6sGBzlizjakLoMQkxWbruVZSNE6osuSI63i4uCeIL+6q2AJlD3dxoiBJX70dn1enjQnQqwA=="], + "@biomejs/cli-linux-x64": ["@biomejs/cli-linux-x64@2.3.10", "", { "os": "linux", "cpu": "x64" }, "sha512-wwAkWD1MR95u+J4LkWP74/vGz+tRrIQvr8kfMMJY8KOQ8+HMVleREOcPYsQX82S7uueco60L58Wc6M1I9WA9Dw=="], - "@biomejs/cli-linux-x64-musl": ["@biomejs/cli-linux-x64-musl@2.1.2", "", { "os": "linux", "cpu": "x64" }, "sha512-xlB3mU14ZUa3wzLtXfmk2IMOGL+S0aHFhSix/nssWS/2XlD27q+S6f0dlQ8WOCbYoXcuz8BCM7rCn2lxdTrlQA=="], + "@biomejs/cli-linux-x64-musl": ["@biomejs/cli-linux-x64-musl@2.3.10", "", { "os": "linux", "cpu": "x64" }, "sha512-QTfHZQh62SDFdYc2nfmZFuTm5yYb4eO1zwfB+90YxUumRCR171tS1GoTX5OD0wrv4UsziMPmrePMtkTnNyYG3g=="], - "@biomejs/cli-win32-arm64": ["@biomejs/cli-win32-arm64@2.1.2", "", { "os": "win32", "cpu": "arm64" }, "sha512-G8KWZli5ASOXA3yUQgx+M4pZRv3ND16h77UsdunUL17uYpcL/UC7RkWTdkfvMQvogVsAuz5JUcBDjgZHXxlKoA=="], + "@biomejs/cli-win32-arm64": ["@biomejs/cli-win32-arm64@2.3.10", "", { "os": "win32", "cpu": "arm64" }, "sha512-o7lYc9n+CfRbHvkjPhm8s9FgbKdYZu5HCcGVMItLjz93EhgJ8AM44W+QckDqLA9MKDNFrR8nPbO4b73VC5kGGQ=="], - "@biomejs/cli-win32-x64": ["@biomejs/cli-win32-x64@2.1.2", "", { "os": "win32", "cpu": "x64" }, "sha512-9zajnk59PMpjBkty3bK2IrjUsUHvqe9HWwyAWQBjGLE7MIBjbX2vwv1XPEhmO2RRuGoTkVx3WCanHrjAytICLA=="], + "@biomejs/cli-win32-x64": ["@biomejs/cli-win32-x64@2.3.10", "", { "os": "win32", "cpu": "x64" }, "sha512-pHEFgq7dUEsKnqG9mx9bXihxGI49X+ar+UBrEIj3Wqj3UCZp1rNgV+OoyjFgcXsjCWpuEAF4VJdkZr3TrWdCbQ=="], - "prettier": ["prettier@3.6.2", "", { "bin": { "prettier": "bin/prettier.cjs" } }, "sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ=="], + "prettier": ["prettier@3.7.4", "", { "bin": { "prettier": "bin/prettier.cjs" } }, "sha512-v6UNi1+3hSlVvv8fSaoUbggEM5VErKmmpGA7Pl3HF8V6uKY7rvClBOJlH6yNwQtfTueNkGVpOv/mtWL9L4bgRA=="], } } diff --git a/code/__DEFINES/DNA.dm b/code/__DEFINES/DNA.dm index cc51f9d3e87352..2fc2da70abfa7d 100644 --- a/code/__DEFINES/DNA.dm +++ b/code/__DEFINES/DNA.dm @@ -124,7 +124,7 @@ // Other #define FEATURE_WINGS "wings" -#define FEATURE_WINGS_OPEN "[FEATURE_WINGS]_open" +#define FEATURE_WINGS_OPEN "wingsopen" #define FEATURE_TAIL_MONKEY "tail_monkey" #define FEATURE_TAIL_XENO "tail_xeno" #define FEATURE_TAILSPINES "tailspines" // Different from regular spines, these appear on tails @@ -142,8 +142,12 @@ #define ORGAN_SLOT_ADAMANTINE_RESONATOR "adamantine_resonator" #define ORGAN_SLOT_APPENDIX "appendix" #define ORGAN_SLOT_BRAIN "brain" -#define ORGAN_SLOT_BRAIN_CEREBELLUM "brain_antidrop" -#define ORGAN_SLOT_BRAIN_CNS "brain_antistun" +/// Brain implants that affect the mob's motor control (grabbing, moving, attacking) +#define ORGAN_SLOT_BRAIN_CEREBELLUM "brain_motorcontrol" +/// Brain implants that affect the mob's sensory systems (pain, vision, hearing, etc) +#define ORGAN_SLOT_BRAIN_CNS "brain_cns" +/// Brain implants that affect the mob's memory and cognition (skills, knowledge, etc) +#define ORGAN_SLOT_BRAIN_HIPPOCAMPUS "brain_memory" #define ORGAN_SLOT_BREATHING_TUBE "breathing_tube" #define ORGAN_SLOT_EARS "ears" #define ORGAN_SLOT_EYES "eye_sight" diff --git a/code/__DEFINES/__globals.dm b/code/__DEFINES/__globals.dm index 3639d5592553c6..9f3ea839e76e3b 100644 --- a/code/__DEFINES/__globals.dm +++ b/code/__DEFINES/__globals.dm @@ -49,6 +49,12 @@ /// Create a typed list global that is initialized as an empty list #define GLOBAL_LIST_EMPTY_TYPED(X, Typepath) GLOBAL_LIST_INIT_TYPED(X, Typepath, list()) +/// Create an alist global with an initializer expression +#define GLOBAL_ALIST_INIT(X, InitValue) GLOBAL_RAW(/alist/##X); GLOBAL_MANAGED(X, InitValue) + +// Create an alist global that is initialized as an empty list +#define GLOBAL_ALIST_EMPTY(X) GLOBAL_ALIST_INIT(X, alist()) + /// Create a typed global with an initializer expression #define GLOBAL_DATUM_INIT(X, Typepath, InitValue) GLOBAL_RAW(Typepath/##X); GLOBAL_MANAGED(X, InitValue) diff --git a/code/__DEFINES/_flags.dm b/code/__DEFINES/_flags.dm index ca65bcaf9dd247..53b1514ed6af03 100644 --- a/code/__DEFINES/_flags.dm +++ b/code/__DEFINES/_flags.dm @@ -100,52 +100,55 @@ GLOBAL_LIST_INIT(bitflags, list(1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 204 /// This atom is a pseudo-floor that blocks map generation's checkPlaceAtom() from placing things like trees ontop of it. #define TURF_BLOCKS_POPULATE_TERRAIN_FLORAFEATURES (1<<8) - ////////////////Area flags\\\\\\\\\\\\\\ /// If it's a valid territory for cult summoning or the CRAB-17 phone to spawn #define VALID_TERRITORY (1<<0) /// If blobs can spawn there and if it counts towards their score. #define BLOBS_ALLOWED (1<<1) -/// If mining tunnel generation is allowed in this area -#define CAVES_ALLOWED (1<<2) -/// If flora are allowed to spawn in this area randomly through tunnel generation -#define FLORA_ALLOWED (1<<3) -/// If mobs can be spawned by natural random generation -#define MOB_SPAWN_ALLOWED (1<<4) -/// If megafauna can be spawned by natural random generation -#define MEGAFAUNA_SPAWN_ALLOWED (1<<5) /// Are you forbidden from teleporting to the area? (centcom, mobs, wizard, hand teleporter) -#define NOTELEPORT (1<<6) +#define NOTELEPORT (1<<2) /// Hides area from player Teleport function. -#define HIDDEN_AREA (1<<7) -/// If false, loading multiple maps with this area type will create multiple instances. -#define UNIQUE_AREA (1<<8) +#define HIDDEN_AREA (1<<3) /// If people are allowed to suicide in it. Mostly for OOC stuff like minigames -#define BLOCK_SUICIDE (1<<9) +#define BLOCK_SUICIDE (1<<5) /// If set, this area will be innately traversable by Xenobiology camera consoles. -#define XENOBIOLOGY_COMPATIBLE (1<<10) +#define XENOBIOLOGY_COMPATIBLE (1<<6) /// If blood cultists can draw runes or build structures on this AREA. -#define CULT_PERMITTED (1<<11) -/// If engravings are persistent in this area -#define PERSISTENT_ENGRAVINGS (1<<12) +#define CULT_PERMITTED (1<<7) /// Mobs that die in this area don't produce a dead chat message -#define NO_DEATH_MESSAGE (1<<13) +#define NO_DEATH_MESSAGE (1<<8) /// This area should have extra shielding from certain event effects -#define EVENT_PROTECTED (1<<14) +#define EVENT_PROTECTED (1<<9) /// This Area Doesn't have Flood or Bomb Admin Messages, but will still log -#define QUIET_LOGS (1<<15) -/// This area does not allow virtual entities to enter. -#define VIRTUAL_SAFE_AREA (1<<16) +#define QUIET_LOGS (1<<10) /// This area does not allow the Binary channel -#define BINARY_JAMMING (1<<17) +#define BINARY_JAMMING (1<<11) /// This area prevents Bag of Holding rifts from being opened. -#define NO_BOH (1<<18) +#define NO_BOH (1<<12) /// This area prevents fishing from removing unique/limited loot from sources that're also used outside of it. -#define UNLIMITED_FISHING (1<<19) +#define UNLIMITED_FISHING (1<<13) /// This area is prevented from having gravity (ie. space, nearstation, or outside solars) -#define NO_GRAVITY (1<<20) +#define NO_GRAVITY (1<<14) /// This area can be teleported in, but -only- to locations within that same area. -#define LOCAL_TELEPORT (1<<21) +#define LOCAL_TELEPORT (1<<15) + +////////////////Area Mapping Flags\\\\\\\\\\\\\\ +/// If false, loading multiple maps with this area type will create multiple instances. +#define UNIQUE_AREA (1<<0) +/// If mining tunnel generation is allowed in this area +#define CAVES_ALLOWED (1<<1) +/// If flora are allowed to spawn in this area randomly through tunnel generation +#define FLORA_ALLOWED (1<<2) +/// If mobs can be spawned by natural random generation +#define MOB_SPAWN_ALLOWED (1<<3) +/// If megafauna can be spawned by natural random generation +#define MEGAFAUNA_SPAWN_ALLOWED (1<<4) +/// If engravings are persistent in this area +#define PERSISTENT_ENGRAVINGS (1<<5) +/// This is a virtual/bitrunning area +#define VIRTUAL_AREA (1<<6) +/// This area does not allow virtual entities to enter. +#define VIRTUAL_SAFE_AREA (1<<7) /* These defines are used specifically with the atom/pass_flags bitmask @@ -336,3 +339,23 @@ GLOBAL_LIST_INIT(bitflags, list(1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 204 #define EMOTE_IMPORTANT (1<<2) /// Emote only prints to runechat, not to the chat window #define EMOTE_RUNECHAT (1<<3) + +// Flags for the empath component +/// Can the empath see if a living mob has combat mode on +#define EMPATH_SEE_COMBAT (1<<0) +/// Can the empath see if living mob has over 10 oxyloss +#define EMPATH_SEE_OXY (1<<1) +/// Can the empath see if living mob has over 10 toxloss +#define EMPATH_SEE_TOX (1<<2) +/// Can the empath see if living mob's sanity is at distressed or below +#define EMPATH_SEE_SANITY (1<<3) +/// Can the empath see if living mob is blind +#define EMPATH_SEE_BLIND (1<<4) +/// Can the empath see if living mob is deaf +#define EMPATH_SEE_DEAF (1<<5) +/// Can the empath see if living mob's body temperature is too hot for their species +#define EMPATH_SEE_HOT (1<<6) +/// Can the empath see if living mob's body temperature is too low for their species +#define EMPATH_SEE_COLD (1<<7) +/// Can the empath see if living mob has the fundamentally evil trait +#define EMPATH_SEE_EVIL (1<<8) diff --git a/code/__DEFINES/access.dm b/code/__DEFINES/access.dm index 956f1d9c448417..b139ef6713b2af 100644 --- a/code/__DEFINES/access.dm +++ b/code/__DEFINES/access.dm @@ -28,6 +28,8 @@ #define ACCESS_ALL_PERSONAL_LOCKERS "all_personal_lockers" /// Access used for Access-Changing Programs, this one will unlock all options that can be ever given via that program. #define ACCESS_CHANGE_IDS "change_ids" +/// Access the PDA shopping app checks for to see if you can only request or place orders immediately +#define ACCESS_BUDGET "department_budget" /// Access used for the Captain's personal quarters in mapping, as well as what allows one to order emergency shuttles. #define ACCESS_CAPTAIN "captain" /// Access used for the Head of Personnel's personal quarters in mapping, as well as the security console and other HoP-related things. @@ -184,6 +186,7 @@ #define ACCESS_CENT_TELEPORTER "cent_teleporter" #define ACCESS_CENT_CAPTAIN "cent_captain" #define ACCESS_CENT_BAR "cent_bar" +#define ACCESS_CENT_OFFICER "cent_officer" /// Special Ops. Captain's display case, Marauder and Seraph mechs. #define ACCESS_CENT_SPECOPS "cent_specops" @@ -295,6 +298,7 @@ ACCESS_BIT_DEN, \ ACCESS_BRIG, \ ACCESS_BRIG_ENTRANCE, \ + ACCESS_BUDGET, \ ACCESS_CARGO, \ ACCESS_CHAPEL_OFFICE, \ ACCESS_CONSTRUCTION, \ @@ -338,6 +342,7 @@ ACCESS_SERVICE, \ ACCESS_SHIPPING, \ ACCESS_SURGERY, \ + ACCESS_TECH_STORAGE, \ ACCESS_THEATRE, \ ACCESS_VIROLOGY, \ ACCESS_WEAPONS, \ @@ -349,6 +354,7 @@ ACCESS_AI_UPLOAD, \ ACCESS_ALL_PERSONAL_LOCKERS, \ ACCESS_ARMORY, \ + ACCESS_BUDGET, \ ACCESS_CHANGE_IDS, \ ACCESS_COMMAND, \ ACCESS_EVA, \ @@ -356,7 +362,6 @@ ACCESS_MINISAT, \ ACCESS_RC_ANNOUNCE, \ ACCESS_TCOMMS, \ - ACCESS_TECH_STORAGE, \ ACCESS_TELEPORTER, \ ACCESS_VAULT, \ ) @@ -386,6 +391,7 @@ ACCESS_CENT_STORAGE, \ ACCESS_CENT_TELEPORTER, \ ACCESS_CENT_THUNDER, \ + ACCESS_CENT_OFFICER, \ ) /// Syndicate areas off station. Do not use direct, access via SSid_access.get_flag_access_list(ACCESS_FLAG_SYNDICATE) @@ -428,6 +434,7 @@ /// Used to seed the accesses_by_region list in SSid_access. A list of general service accesses that are overseen by the HoP. #define REGION_ACCESS_GENERAL list( \ ACCESS_BAR, \ + ACCESS_BUDGET, \ ACCESS_CHAPEL_OFFICE, \ ACCESS_CREMATORIUM, \ ACCESS_HYDROPONICS, \ @@ -445,6 +452,7 @@ ACCESS_ARMORY, \ ACCESS_BRIG, \ ACCESS_BRIG_ENTRANCE, \ + ACCESS_BUDGET, \ ACCESS_COURT, \ ACCESS_DETECTIVE, \ ACCESS_HOS, \ @@ -456,6 +464,7 @@ #define REGION_MEDBAY "Medbay" /// Used to seed the accesses_by_region list in SSid_access. A list of all medbay regional accesses that are overseen by the CMO. #define REGION_ACCESS_MEDBAY list( \ + ACCESS_BUDGET, \ ACCESS_CMO, \ ACCESS_MECH_MEDICAL, \ ACCESS_MEDICAL, \ @@ -473,6 +482,7 @@ /// Used to seed the accesses_by_region list in SSid_access. A list of all research regional accesses that are overseen by the RD. #define REGION_ACCESS_RESEARCH list( \ ACCESS_AI_UPLOAD, \ + ACCESS_BUDGET, \ ACCESS_GENETICS, \ ACCESS_MECH_SCIENCE, \ ACCESS_MINISAT, \ @@ -491,6 +501,7 @@ #define REGION_ACCESS_ENGINEERING list( \ ACCESS_ATMOSPHERICS, \ ACCESS_AUX_BASE, \ + ACCESS_BUDGET, \ ACCESS_CE, \ ACCESS_CONSTRUCTION, \ ACCESS_ENGINEERING, \ @@ -507,6 +518,7 @@ /// Used to seed the accesses_by_region list in SSid_access. A list of all cargo regional accesses that are overseen by the HoP. #define REGION_ACCESS_SUPPLY list( \ ACCESS_BIT_DEN, \ + ACCESS_BUDGET, \ ACCESS_CARGO, \ ACCESS_MECH_MINING, \ ACCESS_MINERAL_STOREROOM, \ @@ -522,6 +534,7 @@ #define REGION_ACCESS_COMMAND list( \ ACCESS_AI_UPLOAD, \ ACCESS_ALL_PERSONAL_LOCKERS, \ + ACCESS_BUDGET, \ ACCESS_CAPTAIN, \ ACCESS_CHANGE_IDS, \ ACCESS_COMMAND, \ diff --git a/code/__DEFINES/achievements.dm b/code/__DEFINES/achievements.dm index 47ba741764b212..d026e2f795e9b3 100644 --- a/code/__DEFINES/achievements.dm +++ b/code/__DEFINES/achievements.dm @@ -14,6 +14,7 @@ //Misc Medal hub IDs #define MEDAL_METEOR "Your Life Before Your Eyes" +#define MEDAL_METEOR_PUNCH "Your Life In Your Hands" #define MEDAL_PULSE "Jackpot" #define MEDAL_TIMEWASTE "Overextended The Joke" #define MEDAL_RODSUPLEX "Feat of Strength" diff --git a/code/__DEFINES/ai/ai.dm b/code/__DEFINES/ai/ai.dm index 7266ad449909f2..aafd3feb203d5e 100644 --- a/code/__DEFINES/ai/ai.dm +++ b/code/__DEFINES/ai/ai.dm @@ -76,6 +76,8 @@ //Generic subtree defines +/// default search range (tiles, passed to oview) when using find_and_set +#define SEARCH_TACTIC_DEFAULT_RANGE 7 /// probability that the pawn should try resisting out of restraints #define RESIST_SUBTREE_PROB 50 ///macro for whether it's appropriate to resist right now, used by resist subtree diff --git a/code/__DEFINES/ai/ai_blackboard.dm b/code/__DEFINES/ai/ai_blackboard.dm index ebcd71345ee7f6..3e9a65027af5a3 100644 --- a/code/__DEFINES/ai/ai_blackboard.dm +++ b/code/__DEFINES/ai/ai_blackboard.dm @@ -4,6 +4,8 @@ #define BB_CURRENT_MIN_MOVE_DISTANCE "min_move_distance" ///time until we should next eat, set by the generic hunger subtree #define BB_NEXT_HUNGRY "BB_NEXT_HUNGRY" +///When looking for food, ignore drinks +#define BB_IGNORE_DRINKS "bb_ignore_drinks" ///what we're going to eat next #define BB_FOOD_TARGET "bb_food_target" ///How close a mob must be for us to select it as a target, if that is less than how far we can maintain it as a target @@ -81,6 +83,7 @@ #define BB_BASIC_MOB_CURRENT_TARGET "BB_basic_current_target" #define BB_BASIC_MOB_CURRENT_TARGET_HIDING_LOCATION "BB_basic_current_target_hiding_location" #define BB_TARGETING_STRATEGY "targeting_strategy" +#define BB_HUNT_TARGETING_STRATEGY "hunt_targeting_strategy" ///some behaviors that check current_target also set this on deep crit mobs #define BB_BASIC_MOB_EXECUTION_TARGET "BB_basic_execution_target" ///Blackboard key for a whitelist typecache of "things we can target while trying to move" @@ -173,8 +176,6 @@ #define BB_MOD_TARGET "BB_mod_target" ///The module the AI was created from #define BB_MOD_MODULE "BB_mod_module" -///Range for a MOD AI controller. -#define MOD_AI_RANGE 200 ///Only target mobs with these traits #define BB_TARGET_ONLY_WITH_TRAITS "BB_target_only_with_traits" @@ -236,5 +237,3 @@ // Used to hold state without making bigass lists /// For /datum/ai_behavior/find_potential_targets, what if any field are we using currently #define BB_FIND_TARGETS_FIELD(type) "bb_find_targets_field_[type]" - - diff --git a/code/__DEFINES/ai/monkey.dm b/code/__DEFINES/ai/monkey.dm index 833514e2f0fdaf..f11ac96fefe2d9 100644 --- a/code/__DEFINES/ai/monkey.dm +++ b/code/__DEFINES/ai/monkey.dm @@ -15,3 +15,11 @@ #define BB_MONKEY_DISPOSING "BB_monkey_disposing" #define BB_MONKEY_RECRUIT_COOLDOWN "BB_monkey_recruit_cooldown" #define BB_RESISTING "BB_resisting" +/// Monkey is not necessarily a wild animal so it won't resort to fighting over food and such +#define BB_MONKEY_TAMED "BB_monkey_tamed" +/// Chance to give our held item to a nearby mob +#define BB_MONKEY_GIVE_CHANCE "BB_monkey_give_chance" +/// If set, the monkey will prefer this type of object when pressing things +#define BB_MONKEY_PRESS_TYPEPATH "BB_monkey_press_typepath" +/// The item the monkey is currently serving to someone +#define BB_MONKEY_CURRENT_SERVED_ITEM "BB_monkey_current_served_item" diff --git a/code/__DEFINES/atmospherics/atmos_piping.dm b/code/__DEFINES/atmospherics/atmos_piping.dm index 188798f95d2058..54d29ffa59d0cd 100644 --- a/code/__DEFINES/atmospherics/atmos_piping.dm +++ b/code/__DEFINES/atmospherics/atmos_piping.dm @@ -68,9 +68,9 @@ #define TANK_MERGE_OVERPRESSURE "tank_overpressure" // Indices for the reaction_results returned by explosion_information() /// Reactions that have happened in the tank. -#define TANK_RESULTS_REACTION 1 +#define TANK_RESULTS_REACTION "results_reaction" /// Additional information of the tank. -#define TANK_RESULTS_MISC 2 +#define TANK_RESULTS_MISC "results_misc" /// Color used by omni-color pipes #define ATMOS_COLOR_OMNI COLOR_VERY_LIGHT_GRAY diff --git a/code/__DEFINES/atom_hud.dm b/code/__DEFINES/atom_hud.dm index e28bf7ac9e5f66..a0f6e78ad050fd 100644 --- a/code/__DEFINES/atom_hud.dm +++ b/code/__DEFINES/atom_hud.dm @@ -79,6 +79,7 @@ #define SECHUD_SYNDICATE "hudsyndicate" #define SECHUD_SYNDICATE_INTERDYNE "hudsyndicateinterdyne" #define SECHUD_SYNDICATE_INTERDYNE_HEAD "hudsyndicateinterdynehead" +#define SECHUD_CLOWNOPS "hudclownop" #define SECHUD_ASSISTANT "hudassistant" #define SECHUD_ATMOSPHERIC_TECHNICIAN "hudatmospherictechnician" diff --git a/code/__DEFINES/basic_mobs.dm b/code/__DEFINES/basic_mobs.dm index a07997d40d2078..5b1d0283c5648e 100644 --- a/code/__DEFINES/basic_mobs.dm +++ b/code/__DEFINES/basic_mobs.dm @@ -39,40 +39,83 @@ #define MOOK_ATTACK_ACTIVE 2 #define MOOK_ATTACK_STRIKE 3 -///keeps track of how many gutlunches are born +/// Keeps track of how many gutlunches are born GLOBAL_VAR_INIT(gutlunch_count, 0) -///Pet customization settings saved for every client +/// Pet customization settings saved for every client GLOBAL_LIST_EMPTY(customized_pets) -//raptor defines +// Raptor defines +/// Raptor chick, tiny and very frail +#define RAPTOR_BABY "baby" +/// Raptor youngling, cannot be ridden and has reduced stats, but can hunt by itself just fine +#define RAPTOR_YOUNG "young" +/// Fully grown adult raptor +#define RAPTOR_ADULT "adult" -#define RAPTOR_RED "Red" -#define RAPTOR_GREEN "Green" -#define RAPTOR_PURPLE "Purple" -#define RAPTOR_WHITE "White" -#define RAPTOR_YELLOW "Yellow" -#define RAPTOR_BLACK "Black" -#define RAPTOR_BLUE "Blue" +/// Innate raptor offsets +#define RAPTOR_INNATE_SOURCE "raptor_innate" +// Growth values +/// How much does meal complexity affect our growth? +#define RAPTOR_MEAL_COMPLEXITY_GROWTH_FACTOR 5 +/// Base value for raptor growth from meat +#define RAPTOR_GROWTH_BASE_MEAT 10 +/// Base value for raptor growth from ash flora +#define RAPTOR_GROWTH_BASE_PLANT 5 +/// How much growth progress raptors need to accumulate to fully grow into an adult +#define RAPTOR_GROWTH_REQUIRED 100 +/// Minimum random growth value a baby raptor can gain per second +#define RAPTOR_BABY_GROWTH_LOWER 0.5 +/// Maximum random growth value a baby raptor can gain per second +#define RAPTOR_BABY_GROWTH_UPPER 0.8 +/// How long it takes for a raptor egg to grow up, in seconds +#define RAPTOR_EGG_GROWTH_PROGRESS 100 +/// How much happiness percentage affects our growth speed +#define RAPTOR_GROWTH_HAPPINESS_MULTIPLIER 0.005 // Full happiness increases growth rate by 50% + +/// Damage boost per happiness percent +#define RAPTOR_HAPPINESS_DAMAGE_BOOST 0.05 + +// Raptor inheritance stats +/// Maximum amount of traits a raptor can inherit +#define RAPTOR_TRAIT_INHERIT_AMOUNT 2 +/// Minimum modifier to base attack values a raptor can get +#define RAPTOR_INHERIT_MIN_ATTACK -5 +/// Maximum modifier to base attack values a raptor can get #define RAPTOR_INHERIT_MAX_ATTACK 5 +/// Minimum modifier to the base health value a raptor can get +#define RAPTOR_INHERIT_MIN_HEALTH -30 +/// Maximum modifier to the base health value a raptor can get #define RAPTOR_INHERIT_MAX_HEALTH 30 +/// Minimum modifier to base speed values a raptor can get +#define RAPTOR_INHERIT_MIN_SPEED -0.66 +/// Maximum modifier to base speed values a raptor can get +#define RAPTOR_INHERIT_MAX_SPEED 0.66 +/// Minimum modifier a raptor can get to their modifiers, such as ability effect and growth speed +#define RAPTOR_INHERIT_MIN_MODIFIER -0.25 +/// Maximum modifier a raptor can get to their modifiers, such as ability effect and growth speed +#define RAPTOR_INHERIT_MAX_MODIFIER 0.25 +/// Genetic drift for raptors, aka min/max value from the cap that stats can receive when breeding +#define RAPTOR_GENETIC_DRIFT 0.2 -///this mob suffers depression +/// This mob suffers depression #define BB_BASIC_DEPRESSED "basic_depressed" -///this mob will care for its young +/// This mob will care for its young #define BB_RAPTOR_MOTHERLY "raptor_motherly" -///this mob will be playful around their owners +/// This mob will be playful around their owners #define BB_RAPTOR_PLAYFUL "raptor_playful" -///this mob will flee combat when it feels threatened +/// This mob will flee combat when it feels threatened #define BB_RAPTOR_COWARD "raptor_coward" -///our raptor baby target we will take care of +/// Our raptor baby target we will take care of #define BB_RAPTOR_BABY "raptor_baby" -///the raptor we will heal up +/// The raptor we will heal up #define BB_INJURED_RAPTOR "injured_raptor" -///the cooldown for next time we eat +/// The cooldown for next time we eat #define BB_RAPTOR_EAT_COOLDOWN "raptor_eat_cooldown" -///our trough target +/// Our trough target #define BB_RAPTOR_TROUGH_TARGET "raptor_trough_target" +/// HP level at which we'll flee from attackers +#define BB_RAPTOR_FLEE_THRESHOLD "raptor_flee_threshold" #define MAX_RAPTOR_POP 64 diff --git a/code/__DEFINES/bitrunning.dm b/code/__DEFINES/bitrunning.dm index 639ae26c3fc5b1..900182eb43d787 100644 --- a/code/__DEFINES/bitrunning.dm +++ b/code/__DEFINES/bitrunning.dm @@ -27,13 +27,14 @@ /// Camera network bitrunner bodycams are on #define BITRUNNER_CAMERA_NET "bitrunner" -/** - * Bitrunner Domain External Load Restriction Bitflags - */ /// Domain forbids external sources from loading items onto avatars #define DOMAIN_FORBIDS_ITEMS (1<<0) /// Domain forbids external sources from loading abilities onto avatars #define DOMAIN_FORBIDS_ABILITIES (1<<1) +/// Block nohit bonus from applying +#define DOMAIN_NO_NOHIT_BONUS (1<<2) +/// Test domain, don't let it be loaded normally +#define DOMAIN_TEST_ONLY (1<<3) /// Combination flag for blocking anything from being loaded onto avatars by external sources #define DOMAIN_FORBIDS_ALL ALL diff --git a/code/__DEFINES/bodyparts.dm b/code/__DEFINES/bodyparts.dm index 5c6bb1b496059d..ffeff072f457a0 100644 --- a/code/__DEFINES/bodyparts.dm +++ b/code/__DEFINES/bodyparts.dm @@ -66,3 +66,119 @@ #define BODYPART_OVERLAY_CARP_INFUSION 2 #define BODYPART_OVERLAY_CSS_SUICIDE 3 #define BODYPART_OVERLAY_VOIDWALKER_CURSE 4 + +/// This limb cannot be disabled via damage thresholds +#define LIMB_NO_DISABLE -1 + +// Bodypart surgery state +/// An incision has been made into the skin +#define SURGERY_SKIN_CUT (1<<0) +/// Skin has been pulled back - 99% of surgeries require this +#define SURGERY_SKIN_OPEN (1<<1) +/// Blood vessels are accessible, cut, and bleeding +#define SURGERY_VESSELS_UNCLAMPED (1<<2) +/// Blood vessels are accessible but clamped +#define SURGERY_VESSELS_CLAMPED (1<<3) +/// Indicates either an incision has been made into the organs present in the limb or organs have been incised from the limb +#define SURGERY_ORGANS_CUT (1<<4) +/// Holes have been drilled in our bones, exclusive with sawed +#define SURGERY_BONE_DRILLED (1<<5) +/// Bones have been sawed apart +#define SURGERY_BONE_SAWED (1<<6) +/// Used in advanced plastic surgery: Has plastic been applied +#define SURGERY_PLASTIC_APPLIED (1<<7) +/// Used in prosthetic surgery: Is the prosthetic unsecured +#define SURGERY_PROSTHETIC_UNSECURED (1<<8) +/// Used for cavity implants +#define SURGERY_CAVITY_WIDENED (1<<9) + +DEFINE_BITFIELD(surgery_state, list( + "SKIN CUT" = SURGERY_SKIN_CUT, + "SKIN OPEN" = SURGERY_SKIN_OPEN, + "VESSELS UNCLAMPED" = SURGERY_VESSELS_UNCLAMPED, + "VESSELS CLAMPED" = SURGERY_VESSELS_CLAMPED, + "ORGANS CUT" = SURGERY_ORGANS_CUT, + "BONE DRILLED" = SURGERY_BONE_DRILLED, + "BONE SAWED" = SURGERY_BONE_SAWED, + "PLASTIC APPLIED" = SURGERY_PLASTIC_APPLIED, + "PROSTHETIC UNSECURED" = SURGERY_PROSTHETIC_UNSECURED, + "CAVITY OPENED" = SURGERY_CAVITY_WIDENED, +)) + +/// For use in translating bitfield to human readable strings. Keep in the correct order! +#define SURGERY_STATE_READABLE list(\ + "Skin is cut" = SURGERY_SKIN_CUT, \ + "Skin is open" = SURGERY_SKIN_OPEN, \ + "Blood vessels are unclamped" = SURGERY_VESSELS_UNCLAMPED, \ + "Blood vessels are clamped" = SURGERY_VESSELS_CLAMPED, \ + "Organs are cut" = SURGERY_ORGANS_CUT, \ + "Bone is drilled" = SURGERY_BONE_DRILLED, \ + "Bone is sawed" = SURGERY_BONE_SAWED, \ + "Plastic is applied" = SURGERY_PLASTIC_APPLIED, \ + "Prosthetic is unsecured" = SURGERY_PROSTHETIC_UNSECURED, \ + "Cavity is opened wide" = SURGERY_CAVITY_WIDENED, \ +) + +/// For use in translating bitfield to steps required for surgery. Keep in the correct order! +#define SURGERY_STATE_GUIDES(must_must_not) list(\ + "the skin [must_must_not] be cut" = SURGERY_SKIN_CUT, \ + "the skin [must_must_not] be open" = SURGERY_SKIN_OPEN, \ + "the blood vessels [must_must_not] be unclamped" = SURGERY_VESSELS_UNCLAMPED, \ + "the blood vessels [must_must_not] be clamped" = SURGERY_VESSELS_CLAMPED, \ + "the organs [must_must_not] be cut" = SURGERY_ORGANS_CUT, \ + "the bone [must_must_not] be drilled" = SURGERY_BONE_DRILLED, \ + "the bone [must_must_not] be sawed" = SURGERY_BONE_SAWED, \ + "plastic [must_must_not] be applied" = SURGERY_PLASTIC_APPLIED, \ + "the prosthetic [must_must_not] be unsecured" = SURGERY_PROSTHETIC_UNSECURED, \ + "the chest cavity [must_must_not] be opened wide" = SURGERY_CAVITY_WIDENED, \ +) + +// Yes these are glorified bitflag manipulation macros, they're meant to make reading surgical operations a bit easier +/// Checks if the input surgery state has all of the bitflags passed +#define HAS_SURGERY_STATE(input_state, check_state) ((input_state & (check_state)) == (check_state)) +/// Checks if the input surgery state has any of the bitflags passed +#define HAS_ANY_SURGERY_STATE(input_state, check_state) ((input_state & (check_state))) +/// Checks if the limb has all of the bitflags passed +#define LIMB_HAS_SURGERY_STATE(limb, check_state) HAS_SURGERY_STATE(limb?.surgery_state, check_state) +/// Checks if the limb has any of the bitflags passed +#define LIMB_HAS_ANY_SURGERY_STATE(limb, check_state) HAS_ANY_SURGERY_STATE(limb?.surgery_state, check_state) + +/// All states that concern itself with the skin +#define ALL_SURGERY_SKIN_STATES (SURGERY_SKIN_CUT|SURGERY_SKIN_OPEN) +/// All states that concern itself with the blood vessels +#define ALL_SURGERY_VESSEL_STATES (SURGERY_VESSELS_UNCLAMPED|SURGERY_VESSELS_CLAMPED) +/// All states that concern itself with the bones +#define ALL_SURGERY_BONE_STATES (SURGERY_BONE_DRILLED|SURGERY_BONE_SAWED) +/// All states that concern itself with internal organs +#define ALL_SURGERY_ORGAN_STATES (SURGERY_ORGANS_CUT) + +/// These states are automatically cleared when the surgery is closed for ease of use +#define ALL_SURGERY_STATES_UNSET_ON_CLOSE (ALL_SURGERY_SKIN_STATES|ALL_SURGERY_VESSEL_STATES|ALL_SURGERY_BONE_STATES|ALL_SURGERY_ORGAN_STATES|SURGERY_CAVITY_WIDENED) +/// Surgery state required for a limb with a certain zone to... be... fished... in... +#define ALL_SURGERY_FISH_STATES(for_zone) (SURGERY_SKIN_OPEN|SURGERY_ORGANS_CUT|(for_zone == BODY_ZONE_CHEST ? SURGERY_BONE_SAWED : NONE)) + +/// Surgery states flipped on automatically if the bodypart lacks a form of skin +#define SKINLESS_SURGERY_STATES (SURGERY_SKIN_OPEN) +// (These are normally mutually exclusive, but as a bonus for lacking bones, you can do drill and saw operations simultaneously!) +/// Surgery states flipped on automatically if the bodypart lacks bones +#define BONELESS_SURGERY_STATES (SURGERY_BONE_DRILLED|SURGERY_BONE_SAWED) +/// Surgery states flipped on automatically if the bodypart lacks vessels +#define VESSELLESS_SURGERY_STATES (SURGERY_VESSELS_CLAMPED|SURGERY_ORGANS_CUT) + +/// Biological state that has some kind of skin that can be cut. +#define BIOSTATE_HAS_SKIN (BIO_FLESH|BIO_METAL|BIO_CHITIN) +/// Checks if a bodypart lacks both flesh and metal, meaning it has no skin to cut. +#define LIMB_HAS_SKIN(limb) (limb?.biological_state & BIOSTATE_HAS_SKIN) +/// Biological state that has some kind of bones that can be sawed. +#define BIOSTATE_HAS_BONES (BIO_BONE|BIO_METAL) +/// Checks if a bodypart lacks both bone and metal, meaning it has no bones to saw. +#define LIMB_HAS_BONES(limb) (limb?.biological_state & BIOSTATE_HAS_BONES) +/// Biological state that has some kind of vessels that can be clamped. +#define BIOSTATE_HAS_VESSELS (BIO_BLOODED|BIO_WIRED) +/// Checks if a bodypart lacks both blood and wires, meaning it has no vessels to manipulate. +#define LIMB_HAS_VESSELS(limb) (limb?.biological_state & BIOSTATE_HAS_VESSELS) + +/// How much blood is lost from unclamped vessels? +#define UNCLAMPED_VESSELS_BLEEDING 1.5 +/// How much blood is lost from clamped vessels or cut organs? +#define CLAMPED_VESSELS_BLEEDING 0.2 diff --git a/code/__DEFINES/cameranets.dm b/code/__DEFINES/cameranets.dm index 7b00ebe52ebb56..75cdb072ea9ad7 100644 --- a/code/__DEFINES/cameranets.dm +++ b/code/__DEFINES/cameranets.dm @@ -32,6 +32,7 @@ #define OPERATIVE_CAMERA_NET "operative" #define CAMERANET_NETWORK_CURATOR "curator" #define CAMERANET_NETWORK_FILMSTUDIO "filmstudio" +#define CAMERANET_NETWORK_MONASTERY "monastery" // Ruins/Away missiosn/Misc camera nets #define CAMERANET_NETWORK_MOON19_XENO "mo19x" diff --git a/code/__DEFINES/cargo.dm b/code/__DEFINES/cargo.dm index f17c56482ecbae..f81b5d08b9401c 100644 --- a/code/__DEFINES/cargo.dm +++ b/code/__DEFINES/cargo.dm @@ -41,6 +41,28 @@ ///Used by coupons to define that they're cursed #define COUPON_OMEN "omen" +// Supply pack flags determining ordering properties +/// Order is literally never visible, presumably it's an abstract type or something +#define ORDER_INVISIBLE (1 << 0) +/// Only orderable on emagged consoles +#define ORDER_EMAG_ONLY (1 << 1) +/// Only orderable on consoles with doctored boards +#define ORDER_CONTRABAND (1 << 2) +/// Can only be ordered privately, can use discount coupons, and arrives in a bag instead of a crate +#define ORDER_GOODY (1 << 3) +/// Can only be ordered via the express order console +#define ORDER_POD_ONLY (1 << 4) +/// Can only be ordered if the following flag is also enabled, for conditionally provided options +#define ORDER_SPECIAL (1 << 5) +/// If present then a special order can be ordered +#define ORDER_SPECIAL_ENABLED (1 << 6) +/// Unavailable to departmental order consoles even if it is in an appropriate category +#define ORDER_NOT_DEPARTMENTAL (1 << 7) +/// This will notify admins when it is purchased +#define ORDER_DANGEROUS (1 << 8) +/// This is set when something is created by an admin to make sure its contents is also marked as such +#define ORDER_ADMIN_SPAWNED (1 << 9) + ///Discount categories for coupons. This one is for anything that isn't discountable. #define SUPPLY_PACK_NOT_DISCOUNTABLE null ///Discount category for the standard stuff, mostly goodies. diff --git a/code/__DEFINES/chat.dm b/code/__DEFINES/chat.dm index 21901a9344564f..b3df6e3585c1c5 100644 --- a/code/__DEFINES/chat.dm +++ b/code/__DEFINES/chat.dm @@ -31,19 +31,19 @@ //debug printing macros (for development and testing) /// Used for debug messages to the world -#define debug_world(msg) if (GLOB.Debug2) to_chat(world, \ +#define debug_world(msg) if (GLOB.debugging_enabled) to_chat(world, \ type = MESSAGE_TYPE_DEBUG, \ text = "DEBUG: [msg]") /// Used for debug messages to the player -#define debug_usr(msg) if (GLOB.Debug2 && usr) to_chat(usr, \ +#define debug_usr(msg) if (GLOB.debugging_enabled && usr) to_chat(usr, \ type = MESSAGE_TYPE_DEBUG, \ text = "DEBUG: [msg]") /// Used for debug messages to the admins -#define debug_admins(msg) if (GLOB.Debug2) to_chat(GLOB.admins, \ +#define debug_admins(msg) if (GLOB.debugging_enabled) to_chat(GLOB.admins, \ type = MESSAGE_TYPE_DEBUG, \ text = "DEBUG: [msg]") /// Used for debug messages to the server -#define debug_world_log(msg) if (GLOB.Debug2) log_world("DEBUG: [msg]") +#define debug_world_log(msg) if (GLOB.debugging_enabled) log_world("DEBUG: [msg]") /// Adds a generic box around whatever message you're sending in chat. Really makes things stand out. #define boxed_message(str) ("
" + str + "
") /// Adds a box around whatever message you're sending in chat. Can apply color and/or additional classes. Available colors: red, green, blue, purple. Use it like red_box diff --git a/code/__DEFINES/colors.dm b/code/__DEFINES/colors.dm index 82bb005670a926..d4db41fdbe87d7 100644 --- a/code/__DEFINES/colors.dm +++ b/code/__DEFINES/colors.dm @@ -125,6 +125,7 @@ #define COLOR_MOSTLY_PURE_PINK "#E4005B" #define COLOR_ADMIN_PINK "#D100D1" #define COLOR_TONGUE_PINK "#ff6ea0" +#define COLOR_PUCE "#cc8899" #define COLOR_BLUSH_PINK "#DE5D83" #define COLOR_FADED_PINK "#ff80d5" #define COLOR_MAGENTA "#FF00FF" diff --git a/code/__DEFINES/combat.dm b/code/__DEFINES/combat.dm index 7d9276b08c7ec3..4a483268e8180d 100644 --- a/code/__DEFINES/combat.dm +++ b/code/__DEFINES/combat.dm @@ -285,11 +285,6 @@ DEFINE_BITFIELD(ammo_box_multiload, list( #define BODY_ZONE_L_LEG "l_leg" #define BODY_ZONE_R_LEG "r_leg" -GLOBAL_LIST_INIT(all_body_zones, list(BODY_ZONE_HEAD, BODY_ZONE_CHEST, BODY_ZONE_R_ARM, BODY_ZONE_L_ARM, BODY_ZONE_R_LEG, BODY_ZONE_L_LEG)) -GLOBAL_LIST_INIT(limb_zones, list(BODY_ZONE_R_ARM, BODY_ZONE_L_ARM, BODY_ZONE_R_LEG, BODY_ZONE_L_LEG)) -GLOBAL_LIST_INIT(arm_zones, list(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM)) -GLOBAL_LIST_INIT(leg_zones, list(BODY_ZONE_R_LEG, BODY_ZONE_L_LEG)) - #define BODY_ZONE_PRECISE_EYES "eyes" #define BODY_ZONE_PRECISE_MOUTH "mouth" #define BODY_ZONE_PRECISE_GROIN "groin" @@ -298,6 +293,12 @@ GLOBAL_LIST_INIT(leg_zones, list(BODY_ZONE_R_LEG, BODY_ZONE_L_LEG)) #define BODY_ZONE_PRECISE_L_FOOT "l_foot" #define BODY_ZONE_PRECISE_R_FOOT "r_foot" +GLOBAL_LIST_INIT(all_body_zones, list(BODY_ZONE_HEAD, BODY_ZONE_CHEST, BODY_ZONE_R_ARM, BODY_ZONE_L_ARM, BODY_ZONE_R_LEG, BODY_ZONE_L_LEG)) +GLOBAL_LIST_INIT(limb_zones, list(BODY_ZONE_R_ARM, BODY_ZONE_L_ARM, BODY_ZONE_R_LEG, BODY_ZONE_L_LEG)) +GLOBAL_LIST_INIT(arm_zones, list(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM)) +GLOBAL_LIST_INIT(leg_zones, list(BODY_ZONE_R_LEG, BODY_ZONE_L_LEG)) +GLOBAL_LIST_INIT(all_precise_body_zones, list(BODY_ZONE_PRECISE_EYES, BODY_ZONE_PRECISE_MOUTH, BODY_ZONE_PRECISE_GROIN, BODY_ZONE_PRECISE_L_HAND, BODY_ZONE_PRECISE_R_HAND, BODY_ZONE_PRECISE_L_FOOT, BODY_ZONE_PRECISE_R_FOOT)) + //We will round to this value in damage calculations. #define DAMAGE_PRECISION 0.1 @@ -354,7 +355,7 @@ GLOBAL_LIST_INIT(leg_zones, list(BODY_ZONE_R_LEG, BODY_ZONE_L_LEG)) /// Armor can't block more than this as a percentage #define ARMOR_MAX_BLOCK 90 /// Calculates the new armour value after armour penetration. Can return negative values, and those must be caught. -#define PENETRATE_ARMOUR(armour, penetration) (penetration == 100 ? 0 : 100 * (armour - penetration) / (100 - penetration)) +#define PENETRATE_ARMOUR(armour, penetration) (penetration >= 100 ? 0 : 100 * (armour - penetration) / (100 - penetration)) // Defines for combo attack component /// LMB Attack diff --git a/code/__DEFINES/construction/material.dm b/code/__DEFINES/construction/material.dm index f01ea621183c72..462e69334ae391 100644 --- a/code/__DEFINES/construction/material.dm +++ b/code/__DEFINES/construction/material.dm @@ -68,7 +68,7 @@ */ #define MATERIAL_NO_EDIBILITY (1<<6) -//Special return values of [/datum/component/material_container/insert_item] +//Special return values of [/datum/material_container/insert_item] /// No material was found inside them item #define MATERIAL_INSERT_ITEM_NO_MATS -1 /// The container does not have the space for the item diff --git a/code/__DEFINES/construction/structures.dm b/code/__DEFINES/construction/structures.dm index e48dc078ca4bc9..874978a8cc9e1a 100644 --- a/code/__DEFINES/construction/structures.dm +++ b/code/__DEFINES/construction/structures.dm @@ -1,12 +1,12 @@ //Defines for construction states //ai core defines -#define EMPTY_CORE 0 -#define CIRCUIT_CORE 1 -#define SCREWED_CORE 2 -#define CABLED_CORE 3 -#define GLASS_CORE 4 -#define AI_READY_CORE 5 +#define CORE_STATE_EMPTY 0 +#define CORE_STATE_CIRCUIT 1 +#define CORE_STATE_SCREWED 2 +#define CORE_STATE_CABLED 3 +#define CORE_STATE_GLASSED 4 +#define CORE_STATE_FINISHED 5 //girder construction states #define GIRDER_NORMAL 0 diff --git a/code/__DEFINES/crafting.dm b/code/__DEFINES/crafting.dm index b4bbff71ce93f3..a5e217ae2b4036 100644 --- a/code/__DEFINES/crafting.dm +++ b/code/__DEFINES/crafting.dm @@ -26,16 +26,24 @@ #define CRAFT_ON_SOLID_GROUND (1<<4) /// If the craft checks that there are objects with density in the same turf when being built #define CRAFT_CHECK_DENSITY (1<<5) -/// If the created atom will gain custom mat datums -#define CRAFT_APPLIES_MATS (1<<6) /// Crafting passes reagents of components to the finished product -#define CRAFT_TRANSFERS_REAGENTS (1<<7) +#define CRAFT_TRANSFERS_REAGENTS (1<<6) /// Crafting clears all reagents present in the finished product -#define CRAFT_CLEARS_REAGENTS (1<<8) -/// For the crafting unit test, ensures that the custom materials of an item are the same when crafted and spawned. -#define CRAFT_ENFORCE_MATERIALS_PARITY (1<<9) +#define CRAFT_CLEARS_REAGENTS (1<<7) +/// For the crafting unit test, we don't check if the custom materials of an item are the same when crafted and spawned should its recipe have this flag. +#define CRAFT_SKIP_MATERIALS_PARITY (1<<8) /// Exclusive to the personal_crafting component, skips the time spent crafting the recipe. -#define CRAFT_IGNORE_DO_AFTER (1<<10) +#define CRAFT_IGNORE_DO_AFTER (1<<9) +/// This craft won't change the materials of the resulting item to match that of the combined components +#define CRAFT_NO_MATERIALS (1<<10) + +//Crafting blacklist behaviors +/// By default, blacklist the result if it's not in reqs +#define BLACKLIST_RESULT_IF_NOT_IN_REQS null +/// Always blacklist - override default behavior +#define ALWAYS_BLACKLIST_RESULT TRUE +/// Never blacklist - override default behavior +#define NEVER_BLACKLIST_RESULT FALSE //food/drink crafting defines //When adding new defines, please make sure to also add them to the encompassing list diff --git a/code/__DEFINES/dcs/signals/signals_action.dm b/code/__DEFINES/dcs/signals/signals_action.dm index 514a88b2beadbd..fe57adae363a57 100644 --- a/code/__DEFINES/dcs/signals/signals_action.dm +++ b/code/__DEFINES/dcs/signals/signals_action.dm @@ -57,3 +57,6 @@ /// From /datum/action/vehicle/ridden/wheelchair/bell/Trigger(): #define COMSIG_WHEELCHAIR_BELL_RANG "wheelchair_bell_rang" + +/// From /datum/action/cooldown/spell/touch/lay_on_hands/proc/determine_if_this_hurts_instead(), sent to the /mob/living/carbon/hurtguy: (/mob/living/carbon/mendicant) +#define COMSIG_ON_LAY_ON_HANDS "mob_ability_lay_on_hands" diff --git a/code/__DEFINES/dcs/signals/signals_atom/signals_atom_attack.dm b/code/__DEFINES/dcs/signals/signals_atom/signals_atom_attack.dm index 0219f795c320b3..16c3fb9eb12ffb 100644 --- a/code/__DEFINES/dcs/signals/signals_atom/signals_atom_attack.dm +++ b/code/__DEFINES/dcs/signals/signals_atom/signals_atom_attack.dm @@ -14,7 +14,7 @@ #define COMPONENT_NO_AFTERATTACK (1<<0) ///from base of atom/attack_hulk(): (/mob/living/carbon/human) #define COMSIG_ATOM_HULK_ATTACK "hulk_attack" -///from base of atom/animal_attack(): (/mob/user) +///from base of atom/animal_attack(): (/mob/user, list/modifiers) #define COMSIG_ATOM_ATTACK_ANIMAL "attack_animal" //from base of atom/attack_basic_mob(): (/mob/user) #define COMSIG_ATOM_ATTACK_BASIC_MOB "attack_basic_mob" @@ -43,16 +43,18 @@ #define COMSIG_ATOM_ATTACK_GHOST "atom_attack_ghost" ///from base of atom/attack_hand(): (mob/user, list/modifiers) #define COMSIG_ATOM_ATTACK_HAND "atom_attack_hand" -///from base of atom/attack_paw(): (mob/user) +///from base of atom/attack_paw(): (mob/user, list/modifiers) #define COMSIG_ATOM_ATTACK_PAW "atom_attack_paw" ///from base of atom/mech_melee_attack(): (obj/vehicle/sealed/mecha/mecha_attacker, mob/living/user) #define COMSIG_ATOM_ATTACK_MECH "atom_attack_mech" -/// from base of atom/attack_robot(): (mob/user) +/// from base of atom/attack_robot(): (mob/user, list/modifiers) #define COMSIG_ATOM_ATTACK_ROBOT "atom_attack_robot" /// from base of atom/attack_robot_secondary(): (mob/user) #define COMSIG_ATOM_ATTACK_ROBOT_SECONDARY "atom_attack_robot_secondary" /// from base of atom/attack_ai(): (mob/user, params) #define COMSIG_ATOM_ATTACK_AI "atom_attack_ai" +/// from base of atom/attack_larva(): (mob/user, list/modifiers) +#define COMSIG_ATOM_ATTACK_LARVA "atom_attack_larva" ///from relay_attackers element: (atom/attacker, attack_flags) #define COMSIG_ATOM_WAS_ATTACKED "atom_was_attacked" ///Called before a atom gets something tilted on them. If [COMPONENT_IMMUNE_TO_TILT_AND_CRUSH] is returned in a signal, the atom will be unaffected: (atom/target, atom/source) diff --git a/code/__DEFINES/dcs/signals/signals_atom/signals_atom_main.dm b/code/__DEFINES/dcs/signals/signals_atom/signals_atom_main.dm index 9a8f4002a44de1..b6cc94584beb2e 100644 --- a/code/__DEFINES/dcs/signals/signals_atom/signals_atom_main.dm +++ b/code/__DEFINES/dcs/signals/signals_atom/signals_atom_main.dm @@ -9,6 +9,8 @@ #define COMSIG_ATOM_AFTER_SUCCESSFUL_INITIALIZED_ON "atom_init_success_on" ///from base of atom/examine(): (/mob, list/examine_text) #define COMSIG_ATOM_EXAMINE "atom_examine" +/// from base of atom/examine(): (/mob, list/examine_text) +#define COMSIG_CARBON_MID_EXAMINE "carbon_mid_examine" ///from base of atom/examine_tags(): (/mob, list/examine_tags) #define COMSIG_ATOM_EXAMINE_TAGS "atom_examine_tags" ///from base of atom/get_examine_name(): (/mob, list/overrides) diff --git a/code/__DEFINES/dcs/signals/signals_bitrunning.dm b/code/__DEFINES/dcs/signals/signals_bitrunning.dm index fcce7ea68d0ca5..ccf47c22604401 100644 --- a/code/__DEFINES/dcs/signals/signals_bitrunning.dm +++ b/code/__DEFINES/dcs/signals/signals_bitrunning.dm @@ -41,7 +41,7 @@ /// from /obj/machienry/quantum_server/station_spawn() #define COMSIG_BITRUNNER_STATION_SPAWN "bitrunner_station_spawn" -/// from /obj/machinery/quantum_server/stock_gear(): (mob/living/carbon/human/avatar, external_load_flags) +/// from /obj/machinery/quantum_server/stock_gear(): (mob/living/carbon/human/avatar, domain_flags) #define COMSIG_BITRUNNER_STOCKING_GEAR "bitrunner_stocking_gear" // Ladder diff --git a/code/__DEFINES/dcs/signals/signals_fish.dm b/code/__DEFINES/dcs/signals/signals_fish.dm index 3dda733df1c73a..079db4a92cc6ef 100644 --- a/code/__DEFINES/dcs/signals/signals_fish.dm +++ b/code/__DEFINES/dcs/signals/signals_fish.dm @@ -52,8 +52,6 @@ /// Rolling a reward path for a fishing challenge #define COMSIG_FISHING_CHALLENGE_ROLL_REWARD "fishing_roll_reward" -/// Adjusting the difficulty of a rishing challenge, often based on the reward path -#define COMSIG_FISHING_CHALLENGE_GET_DIFFICULTY "fishing_get_difficulty" /// From /datum/fishing_challenge/start_minigame_phase, called after the fish movement datum is spawned: (datum/fish_movement/mover) #define COMSIG_FISHING_CHALLENGE_MOVER_INITIALIZED "fishing_mover_initialized" /// Fishing challenge completed diff --git a/code/__DEFINES/dcs/signals/signals_food.dm b/code/__DEFINES/dcs/signals/signals_food.dm index 0041076802c56b..9dca9d304d08ac 100644 --- a/code/__DEFINES/dcs/signals/signals_food.dm +++ b/code/__DEFINES/dcs/signals/signals_food.dm @@ -7,6 +7,9 @@ /// From datum/component/edible/proc/TakeBite: (mob/living/eater, mob/feeder, bitecount, bitesize) #define COMSIG_FOOD_EATEN "food_eaten" #define DESTROY_FOOD (1<<0) +/// From datum/component/edible/proc/AttemptEat: (mob/living/eater, mob/feeder) +#define COMSIG_FOOD_ATTEMPT_EAT "food_attempt_eat" + // #define BLOCK_EAT_ATTEMPT (1<<0) /// From base of datum/component/edible/on_entered: (mob/crosser, bitecount) #define COMSIG_FOOD_CROSSED "food_crossed" /// From base of Component/edible/On_Consume: (mob/living/eater, mob/living/feeder) @@ -74,6 +77,9 @@ ///Sent to the newly spawned object when it's baked in an oven. #define COMSIG_ITEM_BAKED_RESULT "item_baked_result" +/// From /datum/element/basic_eating/finish_eating() : (mob/living/eater, mob/living/feeder) +#define COMSIG_ITEM_EATEN_BY_BASIC_MOB "item_eaten_by_basic_mob" + ///Called on the result spawned during decomposition: (obj/decomposed) #define COMSIG_OBJ_DECOMPOSITION_RESULT "obj_decomposition_result" diff --git a/code/__DEFINES/dcs/signals/signals_lasertag.dm b/code/__DEFINES/dcs/signals/signals_lasertag.dm new file mode 100644 index 00000000000000..ac7fd7c05b5209 --- /dev/null +++ b/code/__DEFINES/dcs/signals/signals_lasertag.dm @@ -0,0 +1,13 @@ +///Sending this signal will return either BLOCK_FIRE bitflag or ALLOW_FIRE bitflag +#define COMSIG_LIVING_FIRING_PIN_CHECK "lasertag_firing_pin_check" + ///blocks the lasertag firing pin from authorizing the shot + #define BLOCK_FIRE (1 << 0) + ///allows the lasertag firing pin to authorize the shot + #define ALLOW_FIRE (1 << 1) + +///Neutral Lasertag team +#define LASERTAG_TEAM_NEUTRAL "neutral" +///Red Lasertag team +#define LASERTAG_TEAM_RED "red" +///Blue Lasertag team +#define LASERTAG_TEAM_BLUE "blue" diff --git a/code/__DEFINES/dcs/signals/signals_material_container.dm b/code/__DEFINES/dcs/signals/signals_material_container.dm index 86056976bce69f..f5faf4b9a67792 100644 --- a/code/__DEFINES/dcs/signals/signals_material_container.dm +++ b/code/__DEFINES/dcs/signals/signals_material_container.dm @@ -1,13 +1,13 @@ //Material Container Signals -/// Called from datum/component/material_container/proc/can_hold_material() : (mat) +/// Called from datum/material_container/proc/can_hold_material() : (mat) #define COMSIG_MATCONTAINER_MAT_CHECK "matcontainer_mat_check" #define MATCONTAINER_ALLOW_MAT (1<<0) -/// Called from datum/component/material_container/proc/user_insert() : (target_item, user) +/// Called from datum/material_container/proc/user_insert() : (target_item, user) #define COMSIG_MATCONTAINER_PRE_USER_INSERT "matcontainer_pre_user_insert" #define MATCONTAINER_BLOCK_INSERT (1<<1) -/// Called from datum/component/material_container/proc/insert_item() : (item, primary_mat, mats_consumed, material_amount, context) +/// Called from datum/material_container/proc/insert_item() : (item, primary_mat, mats_consumed, material_amount, context) #define COMSIG_MATCONTAINER_ITEM_CONSUMED "matcontainer_item_consumed" -/// Called from datum/component/material_container/proc/retrieve_stack() : (new_stack, context) +/// Called from datum/material_container/proc/retrieve_stack() : (new_stack, context) #define COMSIG_MATCONTAINER_STACK_RETRIEVED "matcontainer_stack_retrieved" //mat container signals but from the ore silo's perspective diff --git a/code/__DEFINES/dcs/signals/signals_medical.dm b/code/__DEFINES/dcs/signals/signals_medical.dm index 39bcb1d7cdde25..4f79b79ddd770e 100644 --- a/code/__DEFINES/dcs/signals/signals_medical.dm +++ b/code/__DEFINES/dcs/signals/signals_medical.dm @@ -1,11 +1,11 @@ -/// From /datum/surgery/New(): (datum/surgery/surgery, surgery_location (body zone), obj/item/bodypart/targeted_limb) -#define COMSIG_MOB_SURGERY_STARTED "mob_surgery_started" - -/// From /datum/surgery/Destroy(): (surgery_type, surgery_location, obj/item/bodypart/targeted_limb) -#define COMSIG_MOB_SURGERY_FINISHED "mob_surgery_finished" - -/// From /datum/surgery_step/success(): (datum/surgery_step/step, mob/living/target, target_zone, obj/item/tool, datum/surgery/surgery, default_display_results) -#define COMSIG_MOB_SURGERY_STEP_SUCCESS "mob_surgery_step_success" +/// From /datum/surgery_operation/try_perform(): (datum/surgery_operation/operation, atom/movable/operating_on, tool) +#define COMSIG_ATOM_SURGERY_STARTED "atom_surgery_started" +/// From /datum/surgery_operation/try_perform(): (datum/surgery_operation/operation, atom/movable/operating_on, tool) +#define COMSIG_ATOM_SURGERY_FINISHED "atom_surgery_finished" +/// From /datum/surgery_operation/success(): (datum/surgery_operation/operation, atom/movable/operating_on, tool) +#define COMSIG_ATOM_SURGERY_SUCCESS "atom_surgery_step_success" +/// From /datum/surgery_operation/failure(): (datum/surgery_operation/operation, atom/movable/operating_on, tool) +#define COMSIG_ATOM_SURGERY_FAILED "atom_surgery_step_failed" /// From /obj/item/shockpaddles/do_help, after the defib do_after is complete, but before any effects are applied: (mob/living/defibber, obj/item/shockpaddles/source) #define COMSIG_DEFIBRILLATOR_PRE_HELP_ZAP "carbon_being_defibbed" @@ -19,7 +19,7 @@ /// From /obj/item/shockpaddles/proc/do_disarm(), sent to the shock-ee in non-revival scenarios: (obj/item/shockpaddles/source) #define COMSIG_HEARTATTACK_DEFIB "heartattack_defib" -/// From /datum/surgery/can_start(): (mob/source, datum/surgery/surgery, mob/living/patient) -#define COMSIG_SURGERY_STARTING "surgery_starting" - #define COMPONENT_CANCEL_SURGERY (1<<0) - #define COMPONENT_FORCE_SURGERY (1<<1) +/// Sent from /mob/living/perform_surgery: (atom/movable/operating_on, list/possible_operations) +#define COMSIG_LIVING_OPERATING_ON "living_operating_on" +/// Sent from /mob/living/perform_surgery: (mob/living/surgeon, list/possible_operations) +#define COMSIG_ATOM_BEING_OPERATED_ON "atom_being_operated_on" diff --git a/code/__DEFINES/dcs/signals/signals_mob/signals_mob_basic.dm b/code/__DEFINES/dcs/signals/signals_mob/signals_mob_basic.dm index 01df92ebcc25f5..83084005dd51ed 100644 --- a/code/__DEFINES/dcs/signals/signals_mob/signals_mob_basic.dm +++ b/code/__DEFINES/dcs/signals/signals_mob/signals_mob_basic.dm @@ -28,3 +28,8 @@ #define COMSIG_BASICMOB_MUTATED "basicmob_mutated" ///cancel further mutation modifications to the mob such as shiny mutation. #define MUTATED_NO_FURTHER_MUTATIONS (1 << 0) + +/// from /mob/living/basic/raptor/proc/change_growth_stage() : (new_stage, prev_stage) +#define COMSIG_RAPTOR_GROWTH_STAGE_CHANGE "raptor_growth_stage_change" + /// Cancel raptor growth + #define COMPONENT_CANCEL_RAPTOR_GROWTH (1<<0) diff --git a/code/__DEFINES/dcs/signals/signals_mob/signals_mob_carbon.dm b/code/__DEFINES/dcs/signals/signals_mob/signals_mob_carbon.dm index 67d69dc5b05ed4..a463510a438c71 100644 --- a/code/__DEFINES/dcs/signals/signals_mob/signals_mob_carbon.dm +++ b/code/__DEFINES/dcs/signals/signals_mob/signals_mob_carbon.dm @@ -19,7 +19,7 @@ #define COMSIG_CARBON_GAIN_WOUND "carbon_gain_wound" //from /datum/wound/proc/apply_wound() (/mob/living/carbon/C, /datum/wound/W, /obj/item/bodypart/L) #define COMSIG_CARBON_LOSE_WOUND "carbon_lose_wound" //from /datum/wound/proc/remove_wound() (/mob/living/carbon/C, /datum/wound/W, /obj/item/bodypart/L) /// Called after limb AND victim has been unset -#define COMSIG_CARBON_POST_LOSE_WOUND "carbon_post_lose_wound" //from /datum/wound/proc/remove_wound() (/datum/wound/lost_wound, /obj/item/bodypart/part, ignore_limb, replaced) +#define COMSIG_CARBON_POST_LOSE_WOUND "carbon_post_lose_wound" //from /datum/wound/proc/remove_wound() (/datum/wound/lost_wound, /obj/item/bodypart/part, ignore_limb, replaced, destroying) ///from base of /obj/item/bodypart/proc/can_attach_limb(): (new_limb, special) allows you to fail limb attachment #define COMSIG_ATTEMPT_CARBON_ATTACH_LIMB "attempt_carbon_attach_limb" #define COMPONENT_NO_ATTACH (1<<0) @@ -60,8 +60,9 @@ /// Called from bodypart being removed /obj/item/bodypart/proc/drop_limb(mob/living/carbon/old_owner, special, dismembered) #define COMSIG_BODYPART_REMOVED "bodypart_removed" -///from base of mob/living/carbon/soundbang_act(): (list(intensity)) -#define COMSIG_CARBON_SOUNDBANG "carbon_soundbang" +/// Sent to a limb when something *attempts* to change its surgery state (old_state, new_state, changed_states) +#define COMSIG_BODYPART_UPDATING_SURGERY_STATE "bodypart_updating_surgery_state" + ///from /item/organ/proc/Insert() (/obj/item/organ/) #define COMSIG_CARBON_GAIN_ORGAN "carbon_gain_organ" ///from /item/organ/proc/Remove() (/obj/item/organ/) @@ -99,8 +100,8 @@ #define COMSIG_CARBON_MOOD_UPDATE "carbon_mood_update" ///Called when a carbon attempts to eat (eating) #define COMSIG_CARBON_ATTEMPT_EAT "carbon_attempt_eat" - // Prevents the breath - #define COMSIG_CARBON_BLOCK_EAT (1 << 0) + // Prevents eating the food + #define BLOCK_EAT_ATTEMPT (1 << 0) ///Called when a carbon vomits : (distance, force) #define COMSIG_CARBON_VOMITED "carbon_vomited" ///Called from apply_overlay(cache_index, overlay) @@ -146,7 +147,7 @@ ///from base of /mob/living/carbon/regenerate_limbs(): (excluded_limbs) #define COMSIG_CARBON_REGENERATE_LIMBS "living_regen_limbs" -/// Sent from /mob/living/carbon/human/handle_blood(): (seconds_per_tick, times_fired) +/// Sent from /mob/living/carbon/human/handle_blood(): (seconds_per_tick) #define COMSIG_HUMAN_ON_HANDLE_BLOOD "human_on_handle_blood" /// Return to prevent all default blood handling #define HANDLE_BLOOD_HANDLED (1<<0) @@ -182,3 +183,19 @@ //from base of [/obj/effect/particle_effect/fluid/smoke/proc/smoke_mob]: (seconds_per_tick) #define COMSIG_CARBON_EXPOSED_TO_SMOKE "carbon_exposed_to_smoke" + +/// From /mob/living/carbon/human/proc/update_mob_height() : (old_height) +#define COMSIG_HUMAN_HEIGHT_UPDATED "human_height_updated" + +/// From /mob/living/carbon/proc/can_defib() : () +/// Return a defib result flag to override default defib brain check +#define COMSIG_CARBON_DEFIB_BRAIN_CHECK "carbon_defib_brain_check" + +/// From /mob/living/carbon/human/proc/defib_check() : () +/// Return a defib result flag to override default defib heart check +#define COMSIG_CARBON_DEFIB_HEART_CHECK "carbon_defib_heart_check" + +/// From /mob/living/carbon/human/proc/smart_equip_targeted(): (mob/living/carbon/human/user, obj/item/possible_container) +#define COMSIG_HUMAN_NON_STORAGE_HOTKEY "human_storage_hotkey" + /// Return to prevent the storage fail message + #define COMPONENT_STORAGE_HOTKEY_HANDLED (1<<0) diff --git a/code/__DEFINES/dcs/signals/signals_mob/signals_mob_living.dm b/code/__DEFINES/dcs/signals/signals_mob/signals_mob_living.dm index e57699a34a96b6..e6d71fefae7e71 100644 --- a/code/__DEFINES/dcs/signals/signals_mob/signals_mob_living.dm +++ b/code/__DEFINES/dcs/signals/signals_mob/signals_mob_living.dm @@ -60,7 +60,7 @@ #define COMSIG_LIVING_TRY_SYRINGE_WITHDRAW "living_try_syringe_withdraw" ///from base of mob/living/set_usable_legs() #define COMSIG_LIVING_LIMBLESS_SLOWDOWN "living_limbless_slowdown" -///From living/Life(). (deltatime, times_fired) +///From living/Life(). (deltatime) #define COMSIG_LIVING_LIFE "living_life" /// Block the Life() proc from proceeding... this should really only be done in some really wacky situations. #define COMPONENT_LIVING_CANCEL_LIFE_PROCESSING (1<<0) @@ -146,7 +146,7 @@ #define COMPONENT_CANT_TRACK (1<<0) ///from end of fully_heal(): (heal_flags) #define COMSIG_LIVING_POST_FULLY_HEAL "living_post_fully_heal" -/// from start of /mob/living/handle_breathing(): (seconds_per_tick, times_fired) +/// from start of /mob/living/handle_breathing(): (seconds_per_tick) #define COMSIG_LIVING_HANDLE_BREATHING "living_handle_breathing" ///from /obj/item/hand_item/slapper/attack_atom(): (source=mob/living/slammer, obj/structure/table/slammed_table) #define COMSIG_LIVING_SLAM_TABLE "living_slam_table" @@ -197,6 +197,9 @@ #define TREAT_TTS_FILTER_ARG 3 #define TREAT_CAPITALIZE_MESSAGE 4 +/// From mob/living/send_speech(): (atom/source, list/listeners) +#define COMSIG_LIVING_SEND_SPEECH "living_send_speech" + ///From obj/item/toy/crayon/spraycan #define COMSIG_LIVING_MOB_PAINTED "living_mob_painted" @@ -315,9 +318,13 @@ /// From /obj/item/melee/baton/baton_effect(): (datum/source, mob/living/user, /obj/item/melee/baton) #define COMSIG_MOB_BATONED "mob_batoned" -/// From /obj/machinery/gibber/startgibbing(): (mob/living/user, /obj/machinery/gibber, list/results) +/// From /obj/machinery/gibber/start_gibbing(): (mob/living/user, /obj/machinery/gibber, list/results) #define COMSIG_LIVING_GIBBER_ACT "living_gibber_act" +/// From /mob/living/get_eye_protection() (list/reflist) +#define COMSIG_LIVING_GET_EAR_PROTECTION "living_get_ear_protection" + #define EAR_PROTECTION_ARG 1 + /// Sent to the mob when their mind is slaved #define COMSIG_MOB_ENSLAVED_TO "mob_enslaved_to" /// From /obj/item/proc/attack_atom: (mob/living/attacker, atom/attacked, list/modifiers) @@ -338,14 +345,6 @@ /// From /obj/item/book/bible/attack() : (mob/living/user, obj/item/book/bible/bible, bless_result) #define COMSIG_LIVING_BLESSED "living_blessed" -/// From /datum/surgery_step/initiate() : (mob/living/user, mob/living/target, target_zone, obj/item/tool, datum/surgery/surgery, datum/surgery_step/step, list/modifiers) -#define COMSIG_LIVING_INITIATE_SURGERY_STEP "living_initiate_surgery_step" -#define COMSIG_LIVING_SURGERY_STEP_INITIATED_ON "living_surgery_step_initiated_on" - /// Index in modifiers containing the modifier to failure chance - #define FAIL_PROB_INDEX 1 - /// Index in modifiers containing the modifer to surgery speed - #define SPEED_MOD_INDEX 2 - /// From /datum/status_effect/proc/on_creation() : (datum/status_effect/effect) #define COMSIG_LIVING_STATUS_APPLIED "living_status_applied" @@ -365,3 +364,17 @@ #define COMSIG_LIVING_DROP_LOOT "living_drop_loot" /// Prevent loot from being dropped #define COMPONENT_NO_LOOT_DROP (1<<0) +/// From /datum/element/death_drops/on_death(mob/living/target, gibbed) : (list/loot, gibbed) +#define COMSIG_LIVING_DROPPED_LOOT "living_dropped_loot" + +/// From /mob/living/proc/mob_pickup() : (mob/living/user, obj/item/mob_holder/holder) +#define COMSIG_LIVING_SCOOPED_UP "living_scooped_up" + +/// From /mob/living/proc/update_blood_status(), sent when the return value of /mob/living/proc/can_have_blood() changes : (had_blood, has_blood, old_blood_volume, new_blood_volume) +#define COMSIG_LIVING_UPDATE_BLOOD_STATUS "living_update_blood_status" + +/// From /mob/living/proc/update_nutrition() +#define COMSIG_LIVING_UPDATE_NUTRITION "living_update_nutrition" + +/// Sent to a mob when one of their bodypart's surgery state changes, OR sent from the basic_surgery_state holder when its surgery state changes (old_state, new_state, changed_states) +#define COMSIG_LIVING_UPDATING_SURGERY_STATE "carbon_updating_surgery_state" diff --git a/code/__DEFINES/dcs/signals/signals_mob/signals_mob_main.dm b/code/__DEFINES/dcs/signals/signals_mob/signals_mob_main.dm index 2db139bceedfb4..8b710d030f3710 100644 --- a/code/__DEFINES/dcs/signals/signals_mob/signals_mob_main.dm +++ b/code/__DEFINES/dcs/signals/signals_mob/signals_mob_main.dm @@ -8,7 +8,7 @@ #define COMSIG_MOB_MIND_INITIALIZED "mob_mind_inited" ///from base of mob/set_stat(): (new_stat, old_stat) #define COMSIG_MOB_STATCHANGE "mob_statchange" -///from base of mob/reagent_tick(): (datum/reagent/chem, seconds_per_tick, times_fired) +///from base of mob/reagent_tick(): (datum/reagent/chem, seconds_per_tick) #define COMSIG_MOB_REAGENT_TICK "mob_reagent_tick" ///stops the reagent check call #define COMSIG_MOB_STOP_REAGENT_TICK (1<<0) diff --git a/code/__DEFINES/dcs/signals/signals_mob/signals_mob_silicon.dm b/code/__DEFINES/dcs/signals/signals_mob/signals_mob_silicon.dm index 564465dfcf2bbf..f68b084020599a 100644 --- a/code/__DEFINES/dcs/signals/signals_mob/signals_mob_silicon.dm +++ b/code/__DEFINES/dcs/signals/signals_mob/signals_mob_silicon.dm @@ -8,10 +8,6 @@ #define COMSIG_BORG_HUG_HANDLED 1 ///called from /mob/living/silicon/attack_hand proc #define COMSIG_MOB_PAT_BORG "mob_pat_borg" -///called when someone is inquiring about an AI's linked core -#define COMSIG_SILICON_AI_CORE_STATUS "AI_core_status" - #define COMPONENT_CORE_ALL_GOOD (1<<0) - #define COMPONENT_CORE_DISCONNECTED (1<<1) ///called when an AI (malf or perhaps combat upgraded or some other circumstance that has them inhabit ///an APC) enters an APC #define COMSIG_SILICON_AI_OCCUPY_APC "AI_occupy_apc" diff --git a/code/__DEFINES/dcs/signals/signals_object.dm b/code/__DEFINES/dcs/signals/signals_object.dm index 8c221d28d1de8f..487872df053693 100644 --- a/code/__DEFINES/dcs/signals/signals_object.dm +++ b/code/__DEFINES/dcs/signals/signals_object.dm @@ -226,6 +226,8 @@ #define COMSIG_MULTITOOL_REMOVE_BUFFER "multitool_remove_buffer" ///from [/obj/effect/mine/proc/triggermine]: #define COMSIG_MINE_TRIGGERED "minegoboom" +///from [/obj/structure/closet/supplypod/proc/handleReturnAfterDeparting]: +#define COMSIG_SUPPLYPOD_RETURNING "supplypodgohome" ///from [/obj/structure/closet/supplypod/proc/preOpen]: #define COMSIG_SUPPLYPOD_LANDED "supplypodgoboom" @@ -377,7 +379,7 @@ #define COMPONENT_CANCEL_SAWING_OFF (1<<0) #define COMSIG_GUN_SAWN_OFF "gun_sawn_off" -///called in /obj/item/firing_pin/proc/gun_insert(mob/living/user, obj/item/gun/new_gun): (obj/item/firing_pin/pin, mob/living/user) +///called in /obj/item/firing_pin/proc/gun_insert(mob/living/user, obj/item/gun/new_gun, starting): (obj/item/firing_pin/pin, mob/living/user, starting) #define COMSIG_GUN_PIN_INSERTED "gun_pin_inserted" ///called in /obj/item/firing_pin/proc/gun_remove(mob/living/user): (obj/item/firing_pin/pin, mob/living/user) @@ -637,3 +639,9 @@ /// Sent from /obj/machinert/console/camera_advanced/attack_hand() : (mob/eye/camera/remote/new_camera) #define COMSIG_ADVANCED_CAMERA_EYE_CREATED "advanced_camera_eye_created" + +/// Sent from /obj/item/mob_holder/purple_raptor/proc/toggle_wings() : (mob/living/carbon/human/user) +#define COMSIG_RAPTOR_WINGS_OPENED "raptor_wings_opened" + +/// Sent from /obj/item/mob_holder/purple_raptor/proc/toggle_wings() : (mob/living/carbon/human/user) +#define COMSIG_RAPTOR_WINGS_CLOSED "raptor_wings_closed" diff --git a/code/__DEFINES/dcs/signals/signals_shuttle.dm b/code/__DEFINES/dcs/signals/signals_shuttle.dm index 69aa13c39003ed..1f4f596fc74d6c 100644 --- a/code/__DEFINES/dcs/signals/signals_shuttle.dm +++ b/code/__DEFINES/dcs/signals/signals_shuttle.dm @@ -9,3 +9,9 @@ //from base of /proc/expand_shuttle() : (list/turfs) #define COMSIG_SHUTTLE_EXPANDED "shuttle_expanded" + +//from base of /turf/fromShuttleMove() : (turf/new_turf, move_mode) +#define COMSIG_SHUTTLE_TURF_SHOULD_MOVE_SPECIAL "shuttle_turf_should_move_special" + +//from base of /obj/docking_port/mobile/proc/takeoff() : (turf/new_turf, movement_force, movement_direction, /obj/docking_port/stationary/old_dock, /obj/docking_port/mobile/shuttle) +#define COMSIG_SHUTTLE_TURF_ON_MOVE_SPECIAL "shuttle_turf_on_move_special" diff --git a/code/__DEFINES/dcs/signals/signals_techweb.dm b/code/__DEFINES/dcs/signals/signals_techweb.dm index 7765bfe5a3a6ab..ce0b5bc3f45fa9 100644 --- a/code/__DEFINES/dcs/signals/signals_techweb.dm +++ b/code/__DEFINES/dcs/signals/signals_techweb.dm @@ -3,3 +3,6 @@ /// Called when a techweb design is removed (datum/design/removed_design, custom) #define COMSIG_TECHWEB_REMOVE_DESIGN "techweb_remove_design" + +/// Called when an experiment is completed (datum/experiment/completed_experiment,) +#define COMSIG_TECHWEB_EXPERIMENT_COMPLETED "techweb_experiment_completed" diff --git a/code/__DEFINES/directional.dm b/code/__DEFINES/directional.dm index 83d8ce01d0a873..37ec9abd49d97c 100644 --- a/code/__DEFINES/directional.dm +++ b/code/__DEFINES/directional.dm @@ -45,3 +45,25 @@ dir = WEST; \ pixel_x = -offset; \ } + +/// Create diagonal subtypes for a path to simplify mapping. +#define MAPPING_DIAGONAL_HELPERS(path, offset) ##path/directional/northeast {\ + dir = NORTHEAST; \ + pixel_x = offset; \ + pixel_y = offset; \ +} \ +##path/directional/northwest {\ + dir = NORTHWEST; \ + pixel_x = -offset; \ + pixel_y = offset; \ +} \ +##path/directional/southeast {\ + dir = SOUTHEAST; \ + pixel_x = offset; \ + pixel_y = -offset; \ +} \ +##path/directional/southwest {\ + dir = SOUTHWEST; \ + pixel_x = -offset; \ + pixel_y = -offset; \ +} diff --git a/code/__DEFINES/economy.dm b/code/__DEFINES/economy.dm index a1108ba7fb0fbe..a44bc26079ec76 100644 --- a/code/__DEFINES/economy.dm +++ b/code/__DEFINES/economy.dm @@ -81,3 +81,18 @@ #define MARKET_TREND_STABLE 0 #define MARKET_EVENT_PROBABILITY 8 //Probability of a market event firing, in percent. Fires once per material, every stock market tick. + +// Fair warning that these defines at present are not used in all tgui, static descriptions, or any varible names or comments +/// The symbol for the default type of money used in the code. +#define MONEY_SYMBOL "cr" +/// The name for the default type of money used in the code. +#define MONEY_NAME "credits" +#define MONEY_NAME_SINGULAR "credit" +#define MONEY_NAME_CAPITALIZED "Credits" +// Due to the ways macros work, I cant just directly use credit\s. +// You will need to verify there is no loose use cases of credit\s. +// As of present there is none left floating around. +#define MONEY_NAME_AUTOPURAL(amount) "credit[##amount == 1 ? "" : "s"]" + +#define MONEY_MINING_SYMBOL "mp" +#define MONEY_BITRUNNING_SYMBOL "np" diff --git a/code/__DEFINES/experisci.dm b/code/__DEFINES/experisci.dm index c74290ff5f7512..a1ffbc0b4b84dd 100644 --- a/code/__DEFINES/experisci.dm +++ b/code/__DEFINES/experisci.dm @@ -39,3 +39,5 @@ #define EXPERIMENT_CONFIG_SILENT_FAIL (1 << 2) /// Experiment handlers with this flag will bypass any delay when trying to scan something #define EXPERIMENT_CONFIG_IMMEDIATE_ACTION (1 << 3) +/// Experiment handlers with this flag will announce when an experiment is completed even if it isn't compatible with them. +#define EXPERIMENT_CONFIG_ALWAYS_ANNOUNCE (1 << 4) diff --git a/code/__DEFINES/files.dm b/code/__DEFINES/files.dm new file mode 100644 index 00000000000000..6f0d36727a386d --- /dev/null +++ b/code/__DEFINES/files.dm @@ -0,0 +1,11 @@ +// None of these should be trusted for the purpose of user input +// They do not check the actual type of the file, a user could just rename it + +/// File types we can sniff the duration from using rustg. +#define IS_SOUND_FILE_SAFE(file) is_file_type_in_list(##file, SSsounds.safe_formats) + +#define IS_SOUND_FILE(file) is_file_type_in_list(##file, SSsounds.byond_sound_formats) + +#define IS_OGG_FILE(file) is_file_type(##file, "ogg") +#define IS_WAV_FILE(file) is_file_type(##file, "wav") +#define IS_MP3_FILE(file) is_file_type(##file, "mp3") diff --git a/code/__DEFINES/fish.dm b/code/__DEFINES/fish.dm index 48a914482fc324..e3ab4ba5bd1039 100644 --- a/code/__DEFINES/fish.dm +++ b/code/__DEFINES/fish.dm @@ -61,6 +61,8 @@ #define FISHING_LINE_STIFF (1 << 2) ///Skip the biting phase and go straight to the fishing phase. #define FISHING_LINE_AUTOREEL (1 << 3) +///Allow the fishing line to be cast through dense objects and walls +#define FISHING_LINE_PHASE (1 << 4) ///Keeps the bait from falling from gravity, instead allowing the player to move the bait down with right click. #define FISHING_MINIGAME_RULE_BIDIRECTIONAL (1 << 0) diff --git a/code/__DEFINES/food.dm b/code/__DEFINES/food.dm index 1e6df2fdb9af72..d8022408841a55 100644 --- a/code/__DEFINES/food.dm +++ b/code/__DEFINES/food.dm @@ -126,7 +126,7 @@ DEFINE_BITFIELD(foodtypes, list( #define FOOD_COMPLEXITY_5 5 /// Labels for food quality -GLOBAL_LIST_INIT(food_quality_description, list( +GLOBAL_ALIST_INIT(food_quality_description, alist( FOOD_QUALITY_NORMAL = "okay", FOOD_QUALITY_NICE = "nice", FOOD_QUALITY_GOOD = "good", @@ -137,7 +137,7 @@ GLOBAL_LIST_INIT(food_quality_description, list( )) /// Weighted lists of crafted food buffs randomly given according to crafting_complexity unless the food has a specific buff -GLOBAL_LIST_INIT(food_buffs, list( +GLOBAL_ALIST_INIT(food_buffs, alist( FOOD_COMPLEXITY_1 = list( /datum/status_effect/food/haste = 1, ), diff --git a/code/__DEFINES/ghost.dm b/code/__DEFINES/ghost.dm index 526c08e790c57d..40deb225da2891 100644 --- a/code/__DEFINES/ghost.dm +++ b/code/__DEFINES/ghost.dm @@ -65,6 +65,10 @@ #define GHOST_HEALTH (1<<2) #define GHOST_CHEM (1<<3) #define GHOST_GAS (1<<4) +/// Represents tray view. Not a real view flag, as tray is not persistent, but used as an identifier for one. +#define GHOST_TRAY (1<<5) +/// Repesents darkness level setting. Not a real view flag, as darkness level cycles through values, but used as an identifier for one. +#define GHOST_DARKNESS_LEVEL (1<<6) #define ALL_GHOST_FLAGS list( \ GHOST_DATA_HUDS, \ diff --git a/code/__DEFINES/inventory.dm b/code/__DEFINES/inventory.dm index d7ef9e846bdd04..e7964919d21775 100644 --- a/code/__DEFINES/inventory.dm +++ b/code/__DEFINES/inventory.dm @@ -220,7 +220,7 @@ GLOBAL_LIST_INIT(any_suit_storage, typecacheof(list( /obj/item/radio, /obj/item/storage/bag/books, /obj/item/storage/fancy/cigarettes, - /obj/item/tank/jetpack/oxygen/captain, + /obj/item/tank/jetpack/captain, /obj/item/stack/spacecash, /obj/item/storage/wallet, /obj/item/folder, diff --git a/code/__DEFINES/is_helpers.dm b/code/__DEFINES/is_helpers.dm index 35724f263f227b..08e0c1539a30cc 100644 --- a/code/__DEFINES/is_helpers.dm +++ b/code/__DEFINES/is_helpers.dm @@ -350,3 +350,4 @@ GLOBAL_LIST_INIT(book_types, typecacheof(list( #define is_multi_tile_object(atom) (atom.bound_width > ICON_SIZE_X || atom.bound_height > ICON_SIZE_Y) #define is_area_nearby_station(checked_area) (istype(checked_area, /area/space) || istype(checked_area, /area/space/nearstation) || istype(checked_area, /area/station/asteroid)) +#define is_area_virtual(checked_area) (GLOB.virtual_areas && GLOB.virtual_areas[(checked_area).type]) diff --git a/code/__DEFINES/jobs.dm b/code/__DEFINES/jobs.dm index d5c47bbecce484..b62ee0545f0aae 100644 --- a/code/__DEFINES/jobs.dm +++ b/code/__DEFINES/jobs.dm @@ -291,3 +291,7 @@ DEFINE_BITFIELD(job_flags, list( #define HEAD_OF_STAFF_MIND_TRAITS TRAIT_FAST_TYING, TRAIT_HIGH_VALUE_RANSOM #define MEDICAL_MIND_TRAITS TRAIT_DESENSITIZED #define SECURITY_MIND_TRAITS TRAIT_DESENSITIZED + +/// Statistically average probability of a random cop or cop-adjacent person consisting of meat of sus domesticus of suidae family, +/// also known as swine or hogs, calculated by the university of random numbers +#define PIG_COP_PROBABILITY 40 diff --git a/code/__DEFINES/jukebox.dm b/code/__DEFINES/jukebox.dm new file mode 100644 index 00000000000000..29b4cdea7c9f19 --- /dev/null +++ b/code/__DEFINES/jukebox.dm @@ -0,0 +1,4 @@ +#define CONFIG_JUKEBOX_SOUNDS "[global.config.directory]/jukebox_music/sounds/" + +#define JUKEBOX_NAME 1 +#define JUKEBOX_BEATS 2 diff --git a/code/__DEFINES/layers.dm b/code/__DEFINES/layers.dm index fd6369f9d72f98..a32e2907d83127 100644 --- a/code/__DEFINES/layers.dm +++ b/code/__DEFINES/layers.dm @@ -159,6 +159,9 @@ // NOTICE: we break from the pattern of increasing in steps of like 0.01 here // Because TOPDOWN_LAYER is 10000 and that's enough to floating point our modifications away +/// Used to shift all topdown layer emissives to a the game plane equivalent layers, as otherwise they render above everything else due to being KEEP_APART +#define TOPDOWN_TO_EMISSIVE_LAYER(layer) LERP(FLOOR_EMISSIVE_START_LAYER, FLOOR_EMISSIVE_END_LAYER, (layer - (TOPDOWN_LAYER + 1)) / TOPDOWN_LAYER_COUNT) + // Must be equal to the offset of the highest topdown layer #define TOPDOWN_LAYER_COUNT 18 diff --git a/code/__DEFINES/living.dm b/code/__DEFINES/living.dm index 920b80544452bc..ac2cb64efaeeae 100644 --- a/code/__DEFINES/living.dm +++ b/code/__DEFINES/living.dm @@ -12,9 +12,15 @@ #define STOP_OVERLAY_UPDATE_BODY_PARTS (1<<2) /// Nutrition changed last life tick, so we should bulk update this tick #define QUEUE_NUTRITION_UPDATE (1<<3) +/// Blood volume has changed since the last [proc/update_blood_effects] call +#define QUEUE_BLOOD_UPDATE (1<<4) +/// This mob can have blood, cached value of [proc/can_have_blood] +#define LIVING_CAN_HAVE_BLOOD (1<<5) /// Getter for a mob/living's lying angle, otherwise protected #define GET_LYING_ANGLE(mob) (UNLINT(mob.lying_angle)) +/// Checks if the mob can have blood +#define CAN_HAVE_BLOOD(mob) (mob.living_flags & LIVING_CAN_HAVE_BLOOD) // Used in living mob offset list for determining pixel offsets #define PIXEL_W_OFFSET "w" diff --git a/code/__DEFINES/map_switch.dm b/code/__DEFINES/map_switch.dm index dbb0059786ee1a..90ac0b78a98644 100644 --- a/code/__DEFINES/map_switch.dm +++ b/code/__DEFINES/map_switch.dm @@ -3,6 +3,10 @@ // or if map tools ever agree on a standard, this should switch to use that. #ifdef CBT #define MAP_SWITCH(compile_time, map_time) ##compile_time +#define WHEN_MAP(map_time) // Not mapping, nothing here +#define WHEN_COMPILE(compile_time) ##compile_time #else #define MAP_SWITCH(compile_time, map_time) ##map_time +#define WHEN_MAP(map_time) ##map_time +#define WHEN_COMPILE(compile_time) // Not compiling, nothing here #endif diff --git a/code/__DEFINES/maps.dm b/code/__DEFINES/maps.dm index 080f3a379a3857..23e9f5cc0f518a 100644 --- a/code/__DEFINES/maps.dm +++ b/code/__DEFINES/maps.dm @@ -253,6 +253,7 @@ Always compile, always use that verb, and always make sure that it works for wha #define AWAYSTART_SNOWCABIN "AWAYSTART_SNOWCABIN" #define AWAYSTART_SNOWDIN "AWAYSTART_SNOWDIN" #define AWAYSTART_UNDERGROUND "AWAYSTART_UNDERGROUND" +#define AWAYSTART_HERETIC "AWAYSTART_HERETIC" // Minetypes for maps #define MINETYPE_NONE "none" diff --git a/code/__DEFINES/melee.dm b/code/__DEFINES/melee.dm index 6cfffb7dcd6372..8ce90cc36d64cb 100644 --- a/code/__DEFINES/melee.dm +++ b/code/__DEFINES/melee.dm @@ -4,7 +4,7 @@ #define MARTIALART_CQC "CQC" #define MARTIALART_EVIL_BOXING "evil boxing" #define MARTIALART_HUNTER_BOXING "hunter boxing" -#define MARTIALART_KRAVMAGA "krav maga" +#define MARTIALART_KAZA_RUK "Kaza Ruk" #define MARTIALART_MUSHPUNCH "mushroom punch" #define MARTIALART_PLASMAFIST "plasma fist" #define MARTIALART_PSYCHOBRAWL "psychotic brawling" diff --git a/code/__DEFINES/mob_spawn.dm b/code/__DEFINES/mob_spawn.dm index 6e9fec3bed0553..a54ca799307548 100644 --- a/code/__DEFINES/mob_spawn.dm +++ b/code/__DEFINES/mob_spawn.dm @@ -2,3 +2,12 @@ #define CORPSE_INSTANT 1 ///this mob spawn creates the corpse during GAME_STATE_PLAYING #define CORPSE_ROUNDSTART 2 + +// Flags for using your static for a ghost role +/// Ghost role will take on the player's species +#define GHOSTROLE_TAKE_PREFS_SPECIES (1<<0) +/// Ghost role will take on the player's apperance (though exlcuding name) +#define GHOSTROLE_TAKE_PREFS_APPEARANCE (1<<1) + +/// Return from create to stop the spawn process. Falsy value so one can just check !create() +#define CANCEL_SPAWN FALSE diff --git a/code/__DEFINES/mobs.dm b/code/__DEFINES/mobs.dm index c26926d5af457e..987090f09d8a57 100644 --- a/code/__DEFINES/mobs.dm +++ b/code/__DEFINES/mobs.dm @@ -3,8 +3,8 @@ //Misc mob defines //Ready states at roundstart for mob/dead/new_player -#define PLAYER_NOT_READY 0 -#define PLAYER_READY_TO_PLAY 1 +#define PLAYER_NOT_READY "Not Ready" +#define PLAYER_READY_TO_PLAY "Ready" //movement intent defines for the move_intent var #define MOVE_INTENT_WALK "walk" @@ -130,6 +130,8 @@ #define MOB_MINING (1 << 13) ///The mob is a crustacean. Like crabs. Or lobsters. #define MOB_CRUSTACEAN (1 << 14) +///The mob is all boney +#define MOB_SKELETAL (1 << 15) //Lung respiration type flags #define RESPIRATION_OXYGEN (1 << 0) @@ -166,6 +168,8 @@ #define BODYSHAPE_DIGITIGRADE (1<<2) ///The limb is snouted. #define BODYSHAPE_SNOUTED (1<<3) +/// Golem's wacky rocky limbs +#define BODYSHAPE_GOLEM (1<<4) /// DOPPLER SHIFT ADDITION BEGIN // This is where our custom bodyshapes are going to go. Keeping these in one place is critical for readability. @@ -239,6 +243,7 @@ #define BODYPART_ID_PSYKER "psyker" #define BODYPART_ID_MEAT "meat" #define BODYPART_ID_PEG "peg" +#define BODYPART_ID_BONE "bone" //See: datum/species/var/digitigrade_customization @@ -515,7 +520,7 @@ #define REM REAGENTS_EFFECT_MULTIPLIER //! Shorthand for the above define for ease of use in equations and the like // Eye protection -// THese values are additive to determine your overall flash protection. +// These values are additive to determine your overall flash protection. #define FLASH_PROTECTION_HYPER_SENSITIVE -2 #define FLASH_PROTECTION_SENSITIVE -1 #define FLASH_PROTECTION_NONE 0 @@ -524,6 +529,29 @@ #define FLASH_PROTECTION_WELDER_SENSITIVE 3 #define FLASH_PROTECTION_WELDER_HYPER_SENSITIVE 4 +/** + * Ear protection + * These values are additive to determine your overall ear/soundbang protection + */ +#define EAR_PROTECTION_NONE 0 +#define EAR_PROTECTION_NORMAL 1 +#define EAR_PROTECTION_HEAVY 2 +#define EAR_PROTECTION_VACUUM 3 +#define EAR_PROTECTION_FULL INFINITY + +/** + * Soundbang defines + * These values are used as argument to determine the strength of the soundbang_act call + */ +///Soundbang strength for most things like flashbangs, honkblasts and harm control modules +#define SOUNDBANG_NORMAL 1 +///Soundbang strength for things like flashbangs in proximity and emagged harm alarm megaphones, cannot be countered by standard ear protection equipment +#define SOUNDBANG_STRONG 2 +///Soundbang strength for things like changeling shrieks, which can affect robots and aliens as well. +#define SOUNDBANG_MASSIVE 3 +///Soundbang strength for anything that cannot be stopped unless you're stacked on multiple effects and equipment to counter it (or are simply deaf) +#define SOUNDBANG_OVERWHELMING 4 + // AI Toggles #define AI_CAMERA_LUMINOSITY 5 #define AI_VOX // Comment out if you don't want VOX to be enabled and have players download the voice sounds. @@ -589,9 +617,10 @@ #define DEFIB_FAIL_NO_INTELLIGENCE (1<<8) #define DEFIB_FAIL_BLACKLISTED (1<<9) #define DEFIB_NOGRAB_AGHOST (1<<10) +#define DEFIB_FAIL_GOLEM (1<<11) // Bit mask of possible return values by can_defib that would result in a revivable patient -#define DEFIB_REVIVABLE_STATES (DEFIB_FAIL_NO_HEART | DEFIB_FAIL_FAILING_HEART | DEFIB_FAIL_HUSK | DEFIB_FAIL_TISSUE_DAMAGE | DEFIB_FAIL_FAILING_BRAIN | DEFIB_POSSIBLE) +#define DEFIB_REVIVABLE_STATES (DEFIB_FAIL_NO_HEART | DEFIB_FAIL_FAILING_HEART | DEFIB_FAIL_HUSK | DEFIB_FAIL_TISSUE_DAMAGE | DEFIB_FAIL_FAILING_BRAIN | DEFIB_FAIL_GOLEM | DEFIB_POSSIBLE) #define SLEEP_CHECK_DEATH(X, A) \ sleep(X); \ @@ -658,7 +687,7 @@ #define AI_EMOTION_UNSURE "Unsure" #define AI_EMOTION_CONFUSED "Confused" #define AI_EMOTION_SAD "Sad" -#define AI_EMOTION_BSOD "BSOD" +#define AI_EMOTION_BSOD "BSOD" //It is used only on EMP pulse displays. #define AI_EMOTION_BLANK "Blank" #define AI_EMOTION_PROBLEMS "Problems?" #define AI_EMOTION_AWESOME "Awesome" @@ -668,6 +697,8 @@ #define AI_EMOTION_DORFY "Dorfy" #define AI_EMOTION_BLUE_GLOW "Blue Glow" #define AI_EMOTION_RED_GLOW "Red Glow" +#define AI_EMOTION_DEAD "Dead" //This one is used when deactivating the AI +#define AI_EMOTION_DOWNLOAD "Download" // Defines for AI holograms #define AI_HOLOGRAM_CATEGORY_ANIMAL "Animal" @@ -703,8 +734,8 @@ #define GET_TARGETS_FROM(who) (who.targets_from ? who.get_targets_from() : who) //defines for grad_color and grad_styles list access keys -#define GRADIENT_HAIR_KEY 1 -#define GRADIENT_FACIAL_HAIR_KEY 2 +#define GRADIENT_HAIR_KEY "1" +#define GRADIENT_FACIAL_HAIR_KEY "2" // /datum/sprite_accessory/gradient defines #define GRADIENT_APPLIES_TO_HAIR (1<<0) @@ -1091,7 +1122,7 @@ GLOBAL_LIST_INIT(layers_to_offset, list( #define MINING_MOB_PROJECTILE_VULNERABILITY list(BRUTE) /// Helper macro that determines if the mob is at the threshold to start vomitting due to high toxin levels -#define AT_TOXIN_VOMIT_THRESHOLD(mob) (mob.getToxLoss() > 45 && mob.nutrition > 20) +#define AT_TOXIN_VOMIT_THRESHOLD(mob) (mob.get_tox_loss() > 45 && mob.nutrition > 20) /// The duration of the flip emote animation #define FLIP_EMOTE_DURATION 0.7 SECONDS diff --git a/code/__DEFINES/mod.dm b/code/__DEFINES/mod.dm index 07077970e2ba14..86b913cc0fcd14 100644 --- a/code/__DEFINES/mod.dm +++ b/code/__DEFINES/mod.dm @@ -60,6 +60,10 @@ #define GAUNTLET_SEAL_MESSAGE "tighten around your fingers and wrists" #define BOOT_UNSEAL_MESSAGE "relax their grip on your legs" #define BOOT_SEAL_MESSAGE "seal around your feet" +#define GLASSES_UNSEAL_MESSAGE "moves away from your eyes" +#define GLASSES_SEAL_MESSAGE "settle onto your eyes" +#define NECKWEAR_UNSEAL_MESSAGE "looses around your neck" +#define NECKWEAR_SEAL_MESSAGE "tightens around your neck" /// Global list of all /datum/mod_theme GLOBAL_LIST_INIT(mod_themes, setup_mod_themes()) diff --git a/code/__DEFINES/monkeys.dm b/code/__DEFINES/monkeys.dm index f487f805d508bb..a4929bb84dcb42 100644 --- a/code/__DEFINES/monkeys.dm +++ b/code/__DEFINES/monkeys.dm @@ -30,6 +30,8 @@ #define MONKEY_HATRED_AMOUNT 4 /// amount of aggro to add to an enemy when a monkey is recruited #define MONKEY_RECRUIT_HATED_AMOUNT 2 +/// amount of aggro to add if someone stole the food we wanted +#define MONKEY_FOOD_HATRED_AMOUNT 2 /// probability of reducing aggro by one when the monkey attacks #define MONKEY_HATRED_REDUCTION_PROB 20 diff --git a/code/__DEFINES/mood.dm b/code/__DEFINES/mood.dm index 5ed6b32e834d78..0dcdc9340d6baf 100644 --- a/code/__DEFINES/mood.dm +++ b/code/__DEFINES/mood.dm @@ -51,7 +51,7 @@ #define TERROR_HANDLER_EFFECT "effect" // Default cooldown for terror messages, to not get spammy -#define TERROR_MESSAGE_CD 30 SECONDS +#define TERROR_MESSAGE_CD 15 SECONDS // Values for terror buildup effects /// Initial value for effects that apply the component from spooking you @@ -76,6 +76,20 @@ /// How much terror being hugged reduces, or increases if its done by a nightmare or someone you're afraid of #define HUG_TERROR_AMOUNT 90 +/// Cooldown for phobia checks, to avoid constantly refreshing views +#define PHOBIA_CHECK_DELAY 5 SECONDS +/// Delay between phobia freakouts, also the time it takes for the buildup effect to fade away +#define PHOBIA_FREAKOUT_DELAY 12 SECONDS +/// Amount of terror granted whenever we hear a word we're afraid of +#define PHOBIA_WORD_TERROR_BUILDUP 40 +/// Amount of terror granted by each phobia trigger +#define PHOBIA_FREAKOUT_TERROR_BUILDUP 120 + +/// Cooldown for fear screams +#define TERROR_STARTLE_COOLDOWN 12 SECONDS +/// Minimum difference in fear per tick for screams to actually trigger, so we don't proc from minor fears +#define TERROR_STARTLE_MINIMUM_DIFFERENCE 40 + /// Relates to fear or resisting fear #define MOOD_EVENT_FEAR (1<<0) /// Relates to art diff --git a/code/__DEFINES/obj_flags.dm b/code/__DEFINES/obj_flags.dm index 4ea38724cd3bde..b01406bf631bdf 100644 --- a/code/__DEFINES/obj_flags.dm +++ b/code/__DEFINES/obj_flags.dm @@ -1,21 +1,35 @@ // Flags for the obj_flags var on /obj - +/// Object has been affected by a cryptographic sequencer (EMAG) disabling it or causing other malicious effects #define EMAGGED (1<<0) -#define CAN_BE_HIT (1<<1) //can this be bludgeoned by items? -#define DANGEROUS_POSSESSION (1<<2) //Admin possession yes/no -#define UNIQUE_RENAME (1<<3) // can you customize the description/name of the thing? -#define RENAME_NO_DESC (1<<4) // if it can be renamed, is its description excluded? -#define BLOCK_Z_OUT_DOWN (1<<5) // Should this object block z falling from loc? -#define BLOCK_Z_OUT_UP (1<<6) // Should this object block z uprise from loc? -#define BLOCK_Z_IN_DOWN (1<<7) // Should this object block z falling from above? -#define BLOCK_Z_IN_UP (1<<8) // Should this object block z uprise from below? -#define BLOCKS_CONSTRUCTION (1<<9) //! Does this object prevent things from being built on it? -#define BLOCKS_CONSTRUCTION_DIR (1<<10) //! Does this object prevent same-direction things from being built on it? -#define IGNORE_DENSITY (1<<11) //! Can we ignore density when building on this object? (for example, directional windows and grilles) -#define INFINITE_RESKIN (1<<12) // We can reskin this item infinitely -#define CONDUCTS_ELECTRICITY (1<<13) //! Can this object conduct electricity? -#define NO_DEBRIS_AFTER_DECONSTRUCTION (1<<14) //! Atoms don't spawn anything when deconstructed. They just vanish +/// Can this be bludgeoned by items +#define CAN_BE_HIT (1<<1) +/// Admin possession yes/no +#define DANGEROUS_POSSESSION (1<<2) +/// Can you customize the description/name of the thing +#define UNIQUE_RENAME (1<<3) +/// If it can be renamed, is its description excluded +#define RENAME_NO_DESC (1<<4) +/// Should this object block z falling from loc +#define BLOCK_Z_OUT_DOWN (1<<5) +/// Should this object block z uprise from loc +#define BLOCK_Z_OUT_UP (1<<6) +/// Should this object block z falling from above +#define BLOCK_Z_IN_DOWN (1<<7) +/// Should this object block z uprise from below +#define BLOCK_Z_IN_UP (1<<8) +/// Does this object prevent things from being built on it +#define BLOCKS_CONSTRUCTION (1<<9) +/// Does this object prevent same-direction things from being built on it +#define BLOCKS_CONSTRUCTION_DIR (1<<10) +/// Can we ignore density when building on this object (for example, directional windows and grilles) +#define IGNORE_DENSITY (1<<11) +/// Can this object conduct electricity +#define CONDUCTS_ELECTRICITY (1<<12) +/// Atoms don't spawn anything when deconstructed (they just vanish) +#define NO_DEBRIS_AFTER_DECONSTRUCTION (1<<13) +/// Flag which tells an object to hang onto an support atom on late initialize. Usefull only during mapload and supported by some atoms only +#define MOUNT_ON_LATE_INITIALIZE (1<<14) // If you add new ones, be sure to add them to /obj/Initialize as well for complete mapping support @@ -95,6 +109,10 @@ #define HEADINTERNALS (1<<16) /// Prevents masks from getting adjusted from enabling internals #define INTERNALS_ADJUST_EXEMPT (1<<17) +/// Indicates that the piece of clothing contributes towards Sleeping Carp's style factor, which determines evasion probabilities. See /datums/martial/sleeping_carp/carp_style_check(). +#define CARP_STYLE_FACTOR (1<<18) +/// Prevents clothing from losing bodyparts coverage when shredded +#define NO_ZONE_DISABLING (1<<19) /// Integrity defines for clothing (not flags but close enough) #define CLOTHING_PRISTINE 0 // We have no damage on the clothing diff --git a/code/__DEFINES/plumbing.dm b/code/__DEFINES/plumbing.dm index 432f8ca4357c67..0a701246014889 100644 --- a/code/__DEFINES/plumbing.dm +++ b/code/__DEFINES/plumbing.dm @@ -8,5 +8,7 @@ #define MACHINE_REAGENT_TRANSFER 10 //the default max plumbing machinery transfers -/// Name of omni color -#define DUCT_COLOR_OMNI "omni" +///IV drip operation mode when it sucks blood from the object +#define IV_TAKING 0 +///IV drip operation mode when it injects reagents into the object +#define IV_INJECTING 1 diff --git a/code/__DEFINES/preferences.dm b/code/__DEFINES/preferences.dm index 42e4d3869d2bff..1ae8403c644fad 100644 --- a/code/__DEFINES/preferences.dm +++ b/code/__DEFINES/preferences.dm @@ -164,8 +164,6 @@ #define LOADOUT_FLAG_GREYSCALING_ALLOWED (1<<2) /// Allows the item to be renamed by the player. #define LOADOUT_FLAG_ALLOW_NAMING (1<<3) -/// Allows the item to be reskinned by the player. Only applicable to items with unique_reskin defined. -#define LOADOUT_FLAG_ALLOW_RESKIN (1<<4) // Loadout item info keys // Changing these will break existing loadouts diff --git a/code/__DEFINES/reagents.dm b/code/__DEFINES/reagents.dm index 0bd3d59a5e7812..8faa0aeae93c22 100644 --- a/code/__DEFINES/reagents.dm +++ b/code/__DEFINES/reagents.dm @@ -206,6 +206,48 @@ #define REACTION_TAG_PLANT (1<<19) /// This reaction is produces a product that affects plants #define REACTION_TAG_COMPETITIVE (1<<20) +/// Reaction produces a reagent that is a common component for other reactions +#define REACTION_TAG_COMPONENT (1<<21) +/// Denotes reactions that will immediately do something on reaction, like an explosion, smoke, etc. +#define REACTION_TAG_ACTIVE (1<<22) + +/// Readable list of reagent reaction tags (in the same order as they are defined!) +#define REACTION_TAG_READABLE list(\ + "BRUTE" = REACTION_TAG_BRUTE,\ + "BURN" = REACTION_TAG_BURN,\ + "TOXIN" = REACTION_TAG_TOXIN,\ + "OXY" = REACTION_TAG_OXY,\ + "HEALING" = REACTION_TAG_HEALING,\ + "DAMAGING" = REACTION_TAG_DAMAGING,\ + "EXPLOSIVE" = REACTION_TAG_EXPLOSIVE,\ + "OTHER" = REACTION_TAG_OTHER,\ + "DANGEROUS" = REACTION_TAG_DANGEROUS,\ + "EASY" = REACTION_TAG_EASY,\ + "MODERATE" = REACTION_TAG_MODERATE,\ + "HARD" = REACTION_TAG_HARD,\ + "ORGAN" = REACTION_TAG_ORGAN,\ + "DRINK" = REACTION_TAG_DRINK,\ + "FOOD" = REACTION_TAG_FOOD,\ + "SLIME" = REACTION_TAG_SLIME,\ + "DRUG" = REACTION_TAG_DRUG,\ + "UNIQUE" = REACTION_TAG_UNIQUE,\ + "CHEMICAL" = REACTION_TAG_CHEMICAL,\ + "PLANT" = REACTION_TAG_PLANT,\ + "COMPETITIVE" = REACTION_TAG_COMPETITIVE,\ + "COMPONENT" = REACTION_TAG_COMPONENT,\ + "ACTIVE" = REACTION_TAG_ACTIVE,\ +) + +/// Reaction tags for basic damgae types +#define DAMAGE_HEALING_REACTION_TAGS (REACTION_TAG_BRUTE | REACTION_TAG_BURN | REACTION_TAG_TOXIN | REACTION_TAG_OXY) +/// Reaction tags for medication +#define MEDICATION_REACTION_TAGS (REACTION_TAG_HEALING | REACTION_TAG_DAMAGING | REACTION_TAG_ORGAN | REACTION_TAG_DRUG) +/// Reaction tags for things the chemist would make +#define CHEMIST_REACTION_TAGS (REACTION_TAG_EXPLOSIVE | REACTION_TAG_CHEMICAL | REACTION_TAG_COMPETITIVE | REACTION_TAG_EXPLOSIVE | REACTION_TAG_COMPONENT) +/// Reaction tags for botanist stuff +#define BOTANIST_REACTION_TAGS (REACTION_TAG_PLANT | REACTION_TAG_COMPONENT) +/// Reaction tags for food and drink mainly +#define KITCHEN_REACTION_TAGS (REACTION_TAG_FOOD | REACTION_TAG_DRINK | REACTION_TAG_COMPONENT) //flags used by holder.dm to locate an reagent ///Direct type diff --git a/code/__DEFINES/research.dm b/code/__DEFINES/research.dm index f3b2cf81948950..96a2c74ef8b3c6 100644 --- a/code/__DEFINES/research.dm +++ b/code/__DEFINES/research.dm @@ -74,11 +74,12 @@ //Defines how many percent of vat grown atoms come out as hue shifted color mutants. A flat chance for now, maybe in the future dependant on the cell line. #define CYTO_SHINY_CHANCE 15 -#define SCIPAPER_COOPERATION_INDEX 1 -#define SCIPAPER_FUNDING_INDEX 2 +#define SCIPAPER_COOPERATION_INDEX "cooperation" +#define SCIPAPER_FUNDING_INDEX "funding" #define SCIENTIFIC_COOPERATION_PURCHASE_MULTIPLIER 0.01 /// How much money is one point of gain worth. #define SCIPAPER_GAIN_TO_MONEY 125 +#define SCIPAPER_ALREADY_BOUGHT 2 ///Connects the 'server_var' to a valid research server on your Z level. ///Used for machines in LateInitialize, to ensure that RND servers are loaded first. diff --git a/code/__DEFINES/research/anomalies.dm b/code/__DEFINES/research/anomalies.dm index f0dabae02509af..b2b39d4d08cef6 100644 --- a/code/__DEFINES/research/anomalies.dm +++ b/code/__DEFINES/research/anomalies.dm @@ -8,6 +8,7 @@ #define MAX_CORES_BIOSCRAMBLER 8 #define MAX_CORES_DIMENSIONAL 8 #define MAX_CORES_ECTOPLASMIC 8 +#define MAX_CORES_WEATHER 8 ///Defines for the different types of explosion a flux anomaly can have #define FLUX_NO_EMP 0 diff --git a/code/__DEFINES/research/techweb_nodes.dm b/code/__DEFINES/research/techweb_nodes.dm index 8fcd954e1a66ff..baf220fda68884 100644 --- a/code/__DEFINES/research/techweb_nodes.dm +++ b/code/__DEFINES/research/techweb_nodes.dm @@ -83,6 +83,7 @@ #define TECHWEB_NODE_MOD_ENGI_ADV "mod_engi_adv" #define TECHWEB_NODE_MOD_ENTERTAINMENT "mod_entertainment" #define TECHWEB_NODE_MOD_EQUIP "mod_equip" +#define TECHWEB_NODE_MOD_SERVICE "mod_service" #define TECHWEB_NODE_MOD_EXPERIMENTAL "mod_experimental" #define TECHWEB_NODE_MOD_MEDICAL "mod_medical" #define TECHWEB_NODE_MOD_MEDICAL_ADV "mod_medical_adv" diff --git a/code/__DEFINES/reskin.dm b/code/__DEFINES/reskin.dm new file mode 100644 index 00000000000000..250b3959fe22c3 --- /dev/null +++ b/code/__DEFINES/reskin.dm @@ -0,0 +1,18 @@ +/// Global list of available atom skins +GLOBAL_LIST_INIT_TYPED(atom_skins, /datum/atom_skin, init_subtypes_w_path_keys(/datum/atom_skin)) + +/// Sets the atom's varname to newvalue if newvalue is not null, otherwise resets it to its initial value if resetcondition is true +#define APPLY_VAR_OR_RESET_INITIAL(atom, varname, newvalue, resetcondition) \ + if(newvalue) {atom.##varname = (##newvalue) } else if(resetcondition) { atom.##varname = initial(atom.##varname) } + +/// Sets the atom's varname to newvalue if newvalue is not null, otherwise sets it to resetvalue if resetcondition is true +#define APPLY_VAR_OR_RESET_TO(atom, varname, newvalue, resetcondition, resetvalue) \ + if(newvalue) {atom.##varname = (##newvalue) } else if(resetcondition) { atom.##varname = (resetvalue) } + +/// Resets the atom's varname to its initial value if oldvalue is not null +#define RESET_INITIAL_IF_SET(atom, varname, oldvalue) \ + if(oldvalue) { atom.##varname = initial(atom.##varname) } + +/// Sets the atom's varname to resetvalue if oldvalue is not null +#define RESET_TO_IF_SET(atom, varname, oldvalue, resetvalue) \ + if(oldvalue) { atom.##varname = (resetvalue) } diff --git a/code/__DEFINES/rust_g.dm b/code/__DEFINES/rust_g.dm index 048ea0bd0b752c..877d06ed19f6f9 100644 --- a/code/__DEFINES/rust_g.dm +++ b/code/__DEFINES/rust_g.dm @@ -168,6 +168,9 @@ */ #define rustg_dmi_inject_metadata(path, metadata) RUSTG_CALL(RUST_G, "dmi_inject_metadata")(path, metadata) +#define rustg_create_qr_code_png(path, data) RUSTG_CALL(RUST_G, "create_qr_code_png")(path, data) +#define rustg_create_qr_code_svg(data) RUSTG_CALL(RUST_G, "create_qr_code_svg")(data) + #define rustg_file_read(fname) RUSTG_CALL(RUST_G, "file_read")(fname) #define rustg_file_exists(fname) (RUSTG_CALL(RUST_G, "file_exists")(fname) == "true") #define rustg_file_write(text, fname) RUSTG_CALL(RUST_G, "file_write")(text, fname) @@ -280,6 +283,21 @@ #define rustg_iconforge_generate(file_path, spritesheet_name, sprites, hash_icons, generate_dmi, flatten) RUSTG_CALL(RUST_G, "iconforge_generate")(file_path, spritesheet_name, sprites, "[hash_icons]", "[generate_dmi]", "[flatten]") /// Returns a job_id for use with rustg_iconforge_check() #define rustg_iconforge_generate_async(file_path, spritesheet_name, sprites, hash_icons, generate_dmi, flatten) RUSTG_CALL(RUST_G, "iconforge_generate_async")(file_path, spritesheet_name, sprites, "[hash_icons]", "[generate_dmi]", "[flatten]") +/// Creates a single DMI or PNG using 'sprites' as a list of icon states / images. +/// This function is intended for generating icons with only a few states that have little in common with each other, and only one size. +/// For icons with a large number of states, potentially variable sizes, that re-use sets of transforms more than once, or that benefit from caching, use rustg_iconforge_generate. +/// sprites - follows the same format as rustg_iconforge_generate. +/// file_path - the full relative path at which the PNG or DMI will be written. It must be a full filepath such as tmp/my_icon.dmi or my_icon.png +/// flatten - boolean (0 or 1) determines if the DMI output will be flattened to a single frame/dir if unscoped (null/0 dir or frame values). +/// +/// Returns a HeadlessResult, decoded to a BYOND list (always, it's not possible for this to panic unless rustg itself has an issue) containing the following fields: +/// list( +/// "file_path" = "tmp/my_icon.dmi" // [whatever you input returned back to you, null if there was a fatal error] +/// "width" = 32 // the width, which is determined by the first entry of 'sprites', null if there was a fatal error +/// "height" = 32 // the height, which is determined by the first entry of 'sprites', null if there was a fatal error +/// "error" = "[A string, null if there were no errors.]" +/// ) +#define rustg_iconforge_generate_headless(file_path, sprites, flatten) json_decode(RUSTG_CALL(RUST_G, "iconforge_generate_headless")(file_path, sprites, "[flatten]")) /// Returns the status of an async job_id, or its result if it is completed. See RUSTG_JOB DEFINEs. #define rustg_iconforge_check(job_id) RUSTG_CALL(RUST_G, "iconforge_check")("[job_id]") /// Clears all cached DMIs and images, freeing up memory. diff --git a/code/__DEFINES/say.dm b/code/__DEFINES/say.dm index b78637778dccc0..c83815755a2a8b 100644 --- a/code/__DEFINES/say.dm +++ b/code/__DEFINES/say.dm @@ -117,7 +117,8 @@ #define MAX_CHARTER_LEN 80 #define MAX_PLAQUE_LEN 144 #define MAX_LABEL_LEN 64 -#define MAX_DESC_LEN 560 // DOPPLER EDIT CHANGE - orig: #define MAX_DESC_LEN 560 +#define MAX_DESC_LEN 560 // DOPPLER EDIT - Longer descriptions - ORIGINAL: #define MAX_DESC_LEN 280 +#define MAX_AAS_LENGTH 168 // Audio/Visual Flags. Used to determine what sense are required to notice a message. #define MSG_VISUAL (1<<0) diff --git a/code/__DEFINES/shuttles.dm b/code/__DEFINES/shuttles.dm index fb7b57e4184484..34b0bf4242a5cc 100644 --- a/code/__DEFINES/shuttles.dm +++ b/code/__DEFINES/shuttles.dm @@ -14,7 +14,7 @@ #define EMERGENCY_IDLE_OR_RECALLED (SSshuttle.emergency && ((SSshuttle.emergency.mode == SHUTTLE_IDLE) || (SSshuttle.emergency.mode == SHUTTLE_RECALL))) #define EMERGENCY_ESCAPED_OR_ENDGAMED (SSshuttle.emergency && ((SSshuttle.emergency.mode == SHUTTLE_ESCAPE) || (SSshuttle.emergency.mode == SHUTTLE_ENDGAME))) #define EMERGENCY_AT_LEAST_DOCKED (SSshuttle.emergency && SSshuttle.emergency.mode != SHUTTLE_IDLE && SSshuttle.emergency.mode != SHUTTLE_RECALL && SSshuttle.emergency.mode != SHUTTLE_CALL) -#define EMERGENCY_PAST_POINT_OF_NO_RETURN ((SSshuttle.emergency && SSshuttle.emergency.mode == SHUTTLE_CALL && !SSshuttle.canRecall()) || EMERGENCY_AT_LEAST_DOCKED) +#define EMERGENCY_PAST_POINT_OF_NO_RETURN ((SSshuttle.emergency && SSshuttle.emergency.mode == SHUTTLE_CALL && !SSshuttle.past_restriction_point()) || EMERGENCY_AT_LEAST_DOCKED) // Shuttle return values #define SHUTTLE_CAN_DOCK "can_dock" @@ -81,9 +81,10 @@ #define DOCKING_NULL_SOURCE (1<<4) //Docking turf movements -#define MOVE_TURF 1 -#define MOVE_AREA 2 -#define MOVE_CONTENTS 4 +#define MOVE_TURF (1<<0) +#define MOVE_AREA (1<<1) +#define MOVE_CONTENTS (1<<2) +#define MOVE_SPECIAL (1<<3) //Rotation params #define ROTATE_DIR 1 diff --git a/code/__DEFINES/sound.dm b/code/__DEFINES/sound.dm index 474e8523aa1e99..23fc91dca3b666 100644 --- a/code/__DEFINES/sound.dm +++ b/code/__DEFINES/sound.dm @@ -44,7 +44,7 @@ /* Calculates the volume of a sound based on distance * - * https://www.desmos.com/calculator/sqdfl8ipgf + * https://www.desmos.com/calculator/shjpmz3ck7 * * Arguments: * * volume: The initial volume of the sound being played diff --git a/code/__DEFINES/species_clothing_paths.dm b/code/__DEFINES/species_clothing_paths.dm index 99fe7baab1ddfc..828510bf7cb394 100644 --- a/code/__DEFINES/species_clothing_paths.dm +++ b/code/__DEFINES/species_clothing_paths.dm @@ -9,7 +9,3 @@ //DIGITIGRADE PATHS ///The dmi containing digitigrade uniforms #define DIGITIGRADE_UNIFORM_FILE 'icons/mob/human/species/misc/digitigrade.dmi' -///The dmi containing digitigrade shoes -#define DIGITIGRADE_SHOES_FILE 'icons/mob/human/species/misc/digitigrade_shoes.dmi' -///The dmi containing digitigrade oversuits -#define DIGITIGRADE_SUIT_FILE 'icons/mob/human/species/misc/digitigrade_suits.dmi' diff --git a/code/__DEFINES/stat_tracking.dm b/code/__DEFINES/stat_tracking.dm index 9bd697440406c6..e71a073daafd0d 100644 --- a/code/__DEFINES/stat_tracking.dm +++ b/code/__DEFINES/stat_tracking.dm @@ -15,7 +15,8 @@ #define INIT_COST(costs, counting) \ var/list/_costs = costs; \ var/list/_counting = counting; \ - var/_usage = TICK_USAGE; + var/_usage = TICK_USAGE; \ + var/_cost = 0; // STATIC cost tracking macro. Uses static lists instead of the normal global ones // Good for debug stuff, and for running before globals init @@ -33,10 +34,22 @@ } \ _usage = TICK_USAGE; +#define SET_COST_BOUNDS(category) \ + do { \ + _cost = TICK_USAGE; \ + var/_tmp_delta = TICK_DELTA_TO_MS(_cost - _usage);\ + _costs[category] += _tmp_delta;\ + _counting[category] += 1;\ + _costs["[category]_min"] = min(_tmp_delta, _costs["[category]_min"] || INFINITY);\ + _counting["[category]_min"] += 1;\ + _costs["[category]_max"] = max(_tmp_delta, _costs["[category]_max"] || 0);\ + _counting["[category]_max"] += 1;\ + } while(FALSE); \ + _usage = TICK_USAGE; #define SET_COST(category) \ do { \ - var/_cost = TICK_USAGE; \ + _cost = TICK_USAGE; \ _costs[category] += TICK_DELTA_TO_MS(_cost - _usage);\ _counting[category] += 1; \ } while(FALSE); \ diff --git a/code/__DEFINES/status_effects.dm b/code/__DEFINES/status_effects.dm index ceecdb729da25c..4b0767091b93f5 100644 --- a/code/__DEFINES/status_effects.dm +++ b/code/__DEFINES/status_effects.dm @@ -57,7 +57,6 @@ // Grouped effect sources, see also code/__DEFINES/traits.dm #define STASIS_MACHINE_EFFECT "stasis_machine" -#define STASIS_CHEMICAL_EFFECT "stasis_chemical" #define STASIS_SHAPECHANGE_EFFECT "stasis_shapechange" #define STASIS_ADMIN "stasis_admin" #define STASIS_LEGION_EATEN "stasis_eaten" diff --git a/code/__DEFINES/subsystems.dm b/code/__DEFINES/subsystems.dm index a002b4bef93364..9521983acd8fbb 100644 --- a/code/__DEFINES/subsystems.dm +++ b/code/__DEFINES/subsystems.dm @@ -158,6 +158,7 @@ #define FIRE_PRIORITY_PARALLAX 65 #define FIRE_PRIORITY_INSTRUMENTS 80 #define FIRE_PRIORITY_FLUIDS 80 +#define FIRE_PRIORITY_CAMERAS 85 #define FIRE_PRIORITY_PRIORITY_EFFECTS 90 #define FIRE_PRIORITY_MOBS 100 #define FIRE_PRIORITY_TGUI 110 diff --git a/code/__DEFINES/surgery.dm b/code/__DEFINES/surgery.dm index 9d73f12a980e95..1a7945b2bf7cd6 100644 --- a/code/__DEFINES/surgery.dm +++ b/code/__DEFINES/surgery.dm @@ -36,6 +36,11 @@ #define ORGAN_GHOST (1<<14) /// This is a mutant organ, having this makes you a -derived mutant to health analyzers. #define ORGAN_MUTANT (1<<15) +/// The organ has been chomped or otherwise rendered unusable. +#define ORGAN_UNUSABLE (1<<16) + +/// Organ flags that correspond to bodytypes +#define ORGAN_TYPE_FLAGS (ORGAN_ORGANIC | ORGAN_ROBOTIC | ORGAN_MINERAL | ORGAN_GHOST) /// Scarring on the right eye #define RIGHT_EYE_SCAR (1<<0) @@ -85,28 +90,90 @@ /// Default for most heads #define HEAD_DEFAULT_FEATURES (HEAD_HAIR|HEAD_FACIAL_HAIR|HEAD_LIPS|HEAD_EYESPRITES|HEAD_EYECOLOR|HEAD_EYEHOLES|HEAD_DEBRAIN) -/// Return value when the surgery step fails :( -#define SURGERY_STEP_FAIL -1 - -// Flags for surgery_flags on surgery datums -///Will allow the surgery to bypass clothes -#define SURGERY_IGNORE_CLOTHES (1<<0) -///Will allow the surgery to be performed by the user on themselves. -#define SURGERY_SELF_OPERABLE (1<<1) -///Will allow the surgery to work on mobs that aren't lying down. -#define SURGERY_REQUIRE_RESTING (1<<2) -///Will allow the surgery to work only if there's a limb. -#define SURGERY_REQUIRE_LIMB (1<<3) -///Will allow the surgery to work only if there's a real (eg. not pseudopart) limb. -#define SURGERY_REQUIRES_REAL_LIMB (1<<4) -///Will grant a bonus during surgery steps to users with TRAIT_MORBID while they're using tools with CRUEL_IMPLEMENT -#define SURGERY_MORBID_CURIOSITY (1<<5) -/** - * Instead of checking if the tool used is an actual surgery tool to avoid accidentally whacking patients with the wrong tool, - * it'll check if it has a defined tool behaviour instead. Useful for surgeries that use mechanical tools instead of medical ones, - * like hardware manipulation. - */ -#define SURGERY_CHECK_TOOL_BEHAVIOUR (1<<6) - -///Return true if target is not in a valid body position for the surgery -#define IS_IN_INVALID_SURGICAL_POSITION(target, surgery) ((surgery.surgery_flags & SURGERY_REQUIRE_RESTING) && (target.mobility_flags & MOBILITY_LIEDOWN && target.body_position != LYING_DOWN)) +/// Checks if the mob is lying down if they can lie down, otherwise always passes +#define IS_LYING_OR_CANNOT_LIE(mob) ((mob.mobility_flags & MOBILITY_LIEDOWN) ? (mob.body_position == LYING_DOWN) : TRUE) + +/// Applies moodlets after the surgical operation is complete +#define OPERATION_AFFECTS_MOOD (1<<0) +/// Notable operations are specially logged and also leave memories +#define OPERATION_NOTABLE (1<<1) +/// Operation will automatically repeat until it can no longer be performed +#define OPERATION_LOOPING (1<<2) +/// Grants a speed bonus if the user is morbid and their tool is morbid +#define OPERATION_MORBID (1<<3) +/// Not innately available to doctors, must be added via COMSIG_MOB_ATTEMPT_SURGERY to show up +#define OPERATION_LOCKED (1<<4) +/// A surgeon can perform this operation on themselves +#define OPERATION_SELF_OPERABLE (1<<5) +/// Operation can be performed on standing patients - note: mobs that cannot lie down are *always* considered lying down for surgery +#define OPERATION_STANDING_ALLOWED (1<<6) +/// Some traits may cause operations to be infalliable - this flag disables that behavior, always allowing it to be failed +#define OPERATION_ALWAYS_FAILABLE (1<<7) +/// If set, the operation will ignore clothing when checking for access to the target body part. +#define OPERATION_IGNORE_CLOTHES (1<<8) +/// This operation should be prioritized as the next step in a surgery sequence. (In the operating computer it will flash red) +#define OPERATION_PRIORITY_NEXT_STEP (1<<9) +/// Operation is a mechanic / robotic surgery +#define OPERATION_MECHANIC (1<<10) +/// Hides the operation from autowiki generation +#define OPERATION_NO_WIKI (1<<11) +/// This operation can be performed on a detached limb +#define OPERATION_NO_PATIENT_REQUIRED (1<<12) + +DEFINE_BITFIELD(operation_flags, list( + "AFFECTS MOOD" = OPERATION_AFFECTS_MOOD, + "NOTABLE" = OPERATION_NOTABLE, + "LOOPING" = OPERATION_LOOPING, + "MORBID" = OPERATION_MORBID, + "LOCKED" = OPERATION_LOCKED, + "SELF OPERABLE" = OPERATION_SELF_OPERABLE, + "STANDING ALLOWED" = OPERATION_STANDING_ALLOWED, + "ALWAYS FAILABLE" = OPERATION_ALWAYS_FAILABLE, + "IGNORE CLOTHES" = OPERATION_IGNORE_CLOTHES, + "PRIORITY NEXT STEP" = OPERATION_PRIORITY_NEXT_STEP, + "MECHANIC" = OPERATION_MECHANIC, +)) + +/// All of these equipment slots are ignored when checking for clothing coverage during surgery +#define IGNORED_OPERATION_CLOTHING_SLOTS (ITEM_SLOT_NECK) + +// Surgery related mood defines +#define SURGERY_STATE_STARTED "surgery_started" +#define SURGERY_STATE_FAILURE "surgery_failed" +#define SURGERY_STATE_SUCCESS "surgery_success" +#define SURGERY_MOOD_CATEGORY "surgery" + +/// Dummy "tool" for surgeries which use hands +#define IMPLEMENT_HAND "hands" + +/// Surgery speed modifiers are soft-capped at this value +/// The actual modifier can exceed this but it gets +#define SURGERY_MODIFIER_FAILURE_THRESHOLD 2.5 +/// There is an x percent chance of failure per second beyond 2.5x the base surgery time +#define FAILURE_CHANCE_PER_SECOND 10 +/// Calculates failure chance of an operation based on the base time and the effective speed modifier +/// This may look something like: Base time 1 second and 4x effective multiplier -> 4 seconds - 2.5 seconds = 1.5 seconds * 10 = 15% failure chance +/// Or: Base time 2 seconds and 1x effective multiplier -> 2 seconds - 5 seconds = -3 seconds * 10 = -30% failure chance (clamped to 0%) +#define GET_FAILURE_CHANCE(base_time, speed_mod) (FAILURE_CHANCE_PER_SECOND * (((speed_mod * (base_time)) - (SURGERY_MODIFIER_FAILURE_THRESHOLD * (base_time))) / (1 SECONDS))) + +// Operation argument indexes +/// Total speed/failure modifier applied to the operation +#define OPERATION_SPEED "speed_modifier" +/// The action being performed, simply "default" for 95% of surgeries +#define OPERATION_ACTION "action" +/// Whether the operation should automatically fail +#define OPERATION_FORCE_FAIL "force_fail" +/// The body zone being targeted by the operation +#define OPERATION_TARGET_ZONE "target_zone" +/// The specific target of the operation, usually a bodypart or organ, generally redundant +#define OPERATION_TARGET "target" +// For tend wounds - only reason these aren't local is we use them in unit testing +#define OPERATION_BRUTE_HEAL "brute_heal" +#define OPERATION_BURN_HEAL "burn_heal" +#define OPERATION_BRUTE_MULTIPLIER "brute_multiplier" +#define OPERATION_BURN_MULTIPLIER "burn_multiplier" + +/// Used in string formatting to print a limb as "John's right arm" or "the human right arm" +#define FORMAT_LIMB_OWNER(limb) (limb.owner ? "[limb.owner]'s [limb.plaintext_zone]" : limb) +/// Used in string formatting to print an organ's location as "John" or "the human chest" +#define FORMAT_ORGAN_OWNER(organ) (organ.owner || organ.loc) diff --git a/code/__DEFINES/tgs.config.dm b/code/__DEFINES/tgs.config.dm index 0dc0e64f9a14f8..116539fb6e15e2 100644 --- a/code/__DEFINES/tgs.config.dm +++ b/code/__DEFINES/tgs.config.dm @@ -2,7 +2,7 @@ #define TGS_DEFINE_AND_SET_GLOBAL(Name, Value) GLOBAL_VAR_INIT(##Name, ##Value); GLOBAL_PROTECT(##Name) #define TGS_READ_GLOBAL(Name) GLOB.##Name #define TGS_WRITE_GLOBAL(Name, Value) GLOB.##Name = ##Value -#define TGS_WORLD_ANNOUNCE(message) to_chat(world, span_boldannounce("[html_encode(##message)]")) +#define TGS_WORLD_ANNOUNCE(message) to_chat(world, span_boldannounce("SYSTEM MESSAGE: [html_encode(##message)]")) #define TGS_INFO_LOG(message) log_world("TGS Info: [##message]") #define TGS_WARNING_LOG(message) log_world("TGS Warn: [##message]") #define TGS_ERROR_LOG(message) stack_trace("TGS Error: [##message]") diff --git a/code/__DEFINES/traits/declarations.dm b/code/__DEFINES/traits/declarations.dm index 4d2eab10640ff7..33510904c754e7 100644 --- a/code/__DEFINES/traits/declarations.dm +++ b/code/__DEFINES/traits/declarations.dm @@ -103,6 +103,8 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai #define TRAIT_HUSK "husk" ///Blacklisted from being revived via defibrillator #define TRAIT_DEFIB_BLACKLISTED "defib_blacklisted" +/// This carbon doesn't need a brain to be revived, though some revival methods like defibbing will still check for a functional brain +#define TRAIT_BRAINLESS_CARBON "brainless_carbon" #define TRAIT_BADDNA "baddna" #define TRAIT_CLUMSY "clumsy" /// Trait that means you are capable of holding items in some form @@ -220,7 +222,7 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai #define TRAIT_NO_AUGMENTS "no_augments" /// This carbon doesn't get hungry #define TRAIT_NOHUNGER "no_hunger" -/// This carbon doesn't bleed +/// This carbon doesn't have blood #define TRAIT_NOBLOOD "noblood" /// This just means that the carbon will always have functional liverless metabolism #define TRAIT_LIVERLESS_METABOLISM "liverless_metabolism" @@ -330,6 +332,8 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai #define TRAIT_WOUND_LICKER "wound_licker" /// Mobs with this trait are allowed to use silicon emotes #define TRAIT_SILICON_EMOTES_ALLOWED "silicon_emotes_allowed" +/// Mobs with this trait can tell when other mobs whisper even if their mouth is covered. They still can't tell what was whispered though. +#define TRAIT_SEE_MASK_WHISPER "see_mask_whisper" /// This trait designate that the mob was originally a monkey #define TRAIT_BORN_MONKEY "born_as_a_monkey" @@ -359,6 +363,7 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai #define TRAIT_NODEATH "nodeath" #define TRAIT_NOHARDCRIT "nohardcrit" #define TRAIT_NOSOFTCRIT "nosoftcrit" +#define TRAIT_NO_OXYLOSS_PASSOUT "nooxylosspassout" /// Makes someone show up as mindshielded on sechuds. Does NOT actually make them unconvertable - See TRAIT_UNCONVERTABLE for that #define TRAIT_MINDSHIELD "mindshield" /// Makes it impossible for someone to be converted by cult/revs/etc. @@ -419,7 +424,6 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai #define TRAIT_SPINNING_WEB_TURF "spinning_web_turf" #define TRAIT_ABDUCTOR_TRAINING "abductor-training" #define TRAIT_ABDUCTOR_SCIENTIST_TRAINING "abductor-scientist-training" -#define TRAIT_SURGEON "surgeon" #define TRAIT_STRONG_GRABBER "strong_grabber" #define TRAIT_SOOTHED_THROAT "soothed-throat" #define TRAIT_SOOTHED_HEADACHE "soothed-headache" @@ -466,8 +470,6 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai #define TRAIT_PERCEPTUAL_TRAUMA_BYPASS "trauma_bypass" /// mob is immune to hallucinations #define TRAIT_HALLUCINATION_IMMUNE "hallucination_immune" -/// Increases chance of getting special traumas, makes them harder to cure -#define TRAIT_SPECIAL_TRAUMA_BOOST "special_trauma_boost" //---- Brain trauma resists /// Unable to gain any brain trauma whatsoever @@ -973,6 +975,8 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai #define TRAIT_DUCT_TAPE_UNREPAIRABLE "duct_tape_unrepairable" /// An item is ALWAYS considered baseline reachable and will pipe into CanBeReached(). #define TRAIT_SKIP_BASIC_REACH_CHECK "skip_basic_reach_check" +/// Increases chance of this brain getting special traumas, makes them harder to cure +#define TRAIT_SPECIAL_TRAUMA_BOOST "special_trauma_boost" //---- Heretic Traits /// Hides the heretic overlay that outs them as the heretic @@ -1009,7 +1013,6 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai #define TRAIT_PHOTOGRAPHER "photographer" #define TRAIT_MUSICIAN "musician" #define TRAIT_LIGHT_DRINKER "light_drinker" -#define TRAIT_EMPATH "empath" #define TRAIT_EVIL "evil" #define TRAIT_FRIENDLY "friendly" #define TRAIT_GRABWEAKNESS "grab_weakness" @@ -1189,6 +1192,8 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai #define TRAIT_FISH_SURVIVE_COOKING "fish_survive_cooking" ///This fish is healed by milk and hurt by bone hurting juice #define TRAIT_FISH_MADE_OF_BONE "fish_made_of_bone" +///The traits of this fish have been edited by a fish gene-gun at least once. It'll die the next time the fish genegun is used on them. +#define TRAIT_FISH_GENEGUNNED "fish_genegunned" /** * This fish has been fed teslium without the electrogenesis having trait. * Gives the electrogenesis, but at halved output, and it hurts the fish over time. @@ -1583,8 +1588,13 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai ///Attached to objects currently on tables and such, allowing them to walk on other objects without the climbing delay #define TRAIT_ON_CLIMBABLE "on_climbable" -/// Trait that allows mobs to perform surgery on themselves +/// Allows a mob to perform any operation on themselves (with a penalty), where normally only specific operations allow self-surgery. #define TRAIT_SELF_SURGERY "self_surgery" +/// This mob's surgical operations ignore ALL speed modifiers (even positive ones!) besides tool quality. +/// The mob can also no longer fail their operations, unless the operation says otherwise +#define TRAIT_IGNORE_SURGERY_MODIFIERS "ignore_surgery_modifiers" +/// Trait applied to mobs or bodyparts which allows for them to be operated on +#define TRAIT_READY_TO_OPERATE "ready_to_operate" /// Trait that makes mobs with it immune to mining gear AOE attacks #define TRAIT_MINING_AOE_IMMUNE "mining_aoe_immune" @@ -1598,7 +1608,17 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai /// Trait specifying that an AI has a remote connection to an integrated circuit #define TRAIT_CONNECTED_TO_CIRCUIT "connected_to_circuit" +/// Applied to an organ that has been operated on - some organs can't be operated on multiple times +#define TRAIT_ORGAN_OPERATED_ON "organ_operated_on" + /// Mob is artificially spawned rather than being created through more natural means - applied to monkey cubes and such #define TRAIT_SPAWNED_MOB "spawned_mob" +/// Turf is one that ai mobs will generally avoid pathing through +/// Doesn't need to be applied to any turfs that override can_cross_safely +#define TRAIT_AI_AVOID_TURF "warning_turf" + +/// Object is dangerous to mobs buckled to it +#define TRAIT_DANGEROUS_BUCKLE "dangerous_buckle" + // END TRAIT DEFINES diff --git a/code/__DEFINES/traits/sources.dm b/code/__DEFINES/traits/sources.dm index 14bf919dc62cea..153e7c389f02c4 100644 --- a/code/__DEFINES/traits/sources.dm +++ b/code/__DEFINES/traits/sources.dm @@ -30,6 +30,8 @@ #define PERSONALITY_TRAIT "personality_trait" /// (B)admins only. #define ADMIN_TRAIT "admin" +/// Traits that were granted via modify_traits in vv or the mass_modify_traits verb +#define TRAIT_ADMIN_GRANTED "adminabuse" /// Any traits given through a smite. #define SMITE_TRAIT "smite" #define CHANGELING_TRAIT "changeling" @@ -327,3 +329,9 @@ /// Permanent trait from an overdose effect #define OVERDOSE_TRAIT "overdose" + +/// Trait gained from bioware surgeries +#define BIOWARE_TRAIT "bioware" + +/// Trait gained from skeleton "limbs", such as husking from a butchered chest +#define SKELETON_TRAIT "skeleton" diff --git a/code/__DEFINES/transport.dm b/code/__DEFINES/transport.dm index 09d4f39280a8d8..0a36c27979dab7 100644 --- a/code/__DEFINES/transport.dm +++ b/code/__DEFINES/transport.dm @@ -19,6 +19,7 @@ #define HILBERT_LINE_1 "hilb_1" #define BIRDSHOT_LINE_1 "bird_1" #define BIRDSHOT_LINE_2 "bird_2" +#define HERETIC_LINE_1 "heretic_1" // Destinations/platforms #define TRAMSTATION_WEST 1 @@ -32,6 +33,10 @@ #define BIRDSHOT_PRISON_WING 1 #define BIRDSHOT_SECURITY_WING 2 +#define HERETIC_PORT 1 +#define HERETIC_CENTRAL 2 +#define HERETIC_STARBOARD 3 + #define BIRDSHOT_MAINTENANCE_LEFT 1 #define BRIDSHOT_MAINTENANCE_RIGHT 2 diff --git a/code/__DEFINES/weather.dm b/code/__DEFINES/weather.dm index 7cc84cc8a4ea8c..0bd041a497c736 100644 --- a/code/__DEFINES/weather.dm +++ b/code/__DEFINES/weather.dm @@ -35,7 +35,7 @@ GLOBAL_LIST_INIT(thunder_chance_options, list( "Regular - Standard Storm Activity" = THUNDER_CHANCE_AVERAGE, "Occasional - A polite amount of thunder" = THUNDER_CHANCE_RARE, "Rare - Like finding a four-leaf clover, but in the sky" = THUNDER_CHANCE_VERY_RARE, - "None - Admin Safe Space (Thunder Disabled)" = NONE, + "None - Admin Safe Space (Thunder Disabled)" = 0, )) //WEATHER FLAGS @@ -53,6 +53,17 @@ GLOBAL_LIST_INIT(thunder_chance_options, list( #define WEATHER_BAROMETER (1<<5) /// If weather temperature ignores clothing insulation when adjusting bodytemperature #define WEATHER_TEMPERATURE_BYPASS_CLOTHING (1<<6) +/// Alerts are only sent to people within affected area rather than on affected z-levels +#define WEATHER_STRICT_ALERT (1<<7) /// Does weather have any type of processing related to mobs, turfs, or thunder? #define FUNCTIONAL_WEATHER (WEATHER_TURFS|WEATHER_MOBS|WEATHER_THUNDER) + +// Indexes for weather_data list to override behaviors +#define WEATHER_FORCED_AREAS "Areas" +#define WEATHER_FORCED_FLAGS "Flags" +#define WEATHER_FORCED_REAGENT "Reagent" +#define WEATHER_FORCED_THUNDER "Thunder Chance" +#define WEATHER_FORCED_TELEGRAPH "Telegraph Duration" +#define WEATHER_FORCED_END "End Duration" +#define WEATHER_FORCED_DURATION "Weather Duration" diff --git a/code/__DEFINES/wounds.dm b/code/__DEFINES/wounds.dm index 47801d69aaa932..63c7fafec81188 100644 --- a/code/__DEFINES/wounds.dm +++ b/code/__DEFINES/wounds.dm @@ -80,12 +80,16 @@ GLOBAL_LIST_INIT(wound_severities_chronological, list( #define BIO_FLESH (1<<1) /// Has metal - allows the victim to suffer robotic blunt and burn wounds #define BIO_METAL (1<<2) +/// Has wood - should probably be able to catch on fire, or something +#define BIO_WOOD (1<<3) /// Is wired internally - allows the victim to suffer electrical wounds (robotic T1-T3 slash/pierce) -#define BIO_WIRED (1<<3) +#define BIO_WIRED (1<<4) /// Has bloodflow - can suffer bleeding wounds and can bleed -#define BIO_BLOODED (1<<4) +#define BIO_BLOODED (1<<5) /// Is connected by a joint - can suffer T1 bone blunt wounds (dislocation) -#define BIO_JOINTED (1<<5) +#define BIO_JOINTED (1<<6) +/// Skin is covered in thick chitin and is resistant to cutting +#define BIO_CHITIN (1<<7) /// Robotic - can suffer all metal/wired wounds, such as: UNIMPLEMENTED PLEASE UPDATE ONCE SYNTH WOUNDS 9/5/2023 ~Niko #define BIO_ROBOTIC (BIO_METAL|BIO_WIRED) /// Has flesh and bone - See BIO_BONE and BIO_FLESH @@ -94,6 +98,8 @@ GLOBAL_LIST_INIT(wound_severities_chronological, list( #define BIO_STANDARD_UNJOINTED (BIO_FLESH_BONE|BIO_BLOODED) /// Standard humanoid limbs - can bleed and suffer all flesh/bone wounds, such as: T1-3 slash/pierce/burn/blunt. Can also bleed, and be dislocated. Think human arms and legs #define BIO_STANDARD_JOINTED (BIO_STANDARD_UNJOINTED|BIO_JOINTED) +/// Xenomorph limbs (xenos are immune to wounds anyhow) +#define BIO_STANDARD_ALIEN (BIO_CHITIN|BIO_BONE|BIO_BLOODED|BIO_JOINTED) // "Where" a specific biostate is within a given limb // Interior is hard shit, the last line, shit like bones @@ -115,6 +121,7 @@ GLOBAL_LIST_INIT(bio_state_anatomy, list( "[BIO_METAL]" = ANATOMY_INTERIOR, "[BIO_FLESH]" = ANATOMY_EXTERIOR, "[BIO_BONE]" = ANATOMY_INTERIOR, + "[BIO_CHITIN]" = ANATOMY_EXTERIOR, )) // Wound series diff --git a/code/__HELPERS/_lists.dm b/code/__HELPERS/_lists.dm index 97ca579156e8b3..26dee9a5f22f70 100644 --- a/code/__HELPERS/_lists.dm +++ b/code/__HELPERS/_lists.dm @@ -541,6 +541,27 @@ . = pick_weight(list_to_pick) list_to_pick[.]-- +/** +* Picks n items from a list. The same index will not be chosen more than once. +* e.g. pick_n(list_of_stuff, 10) would return a list of 10 items from the list, chosen randomly. +*/ +/proc/pick_n(list/list_to_pick, n) + var/list_to_pick_length + if(islist(list_to_pick)) + list_to_pick_length = length(list_to_pick) + + if(!list_to_pick_length || n <= 0) + return list() + + /// length of our list_to_pick + n = min(n, list_to_pick_length) + + // Shuffle and slice the first n indices + var/list/copy_to_shuffle = list_to_pick.Copy() + shuffle_inplace(copy_to_shuffle) + + return copy_to_shuffle.Copy(1, n + 1) + /** * Given a list, return a copy where values without defined weights are given weight 1. * For example, fill_with_ones(list(A, B=2, C)) = list(A=1, B=2, C=1) @@ -657,7 +678,7 @@ return inserted_list -///same as shuffle, but returns nothing and acts on list in place +///same as shuffle, but acts on list in place, and returns same list /proc/shuffle_inplace(list/inserted_list) if(!inserted_list) return @@ -665,6 +686,8 @@ for(var/i in 1 to inserted_list.len - 1) inserted_list.Swap(i, rand(i, inserted_list.len)) + return inserted_list + ///Return a list with no duplicate entries /proc/unique_list(list/inserted_list) . = list() diff --git a/code/__HELPERS/abstract_types.dm b/code/__HELPERS/abstract_types.dm index 796f5d294e477e..5a1f800b5111a6 100644 --- a/code/__HELPERS/abstract_types.dm +++ b/code/__HELPERS/abstract_types.dm @@ -12,3 +12,7 @@ /// Like subtypesof, but automatically excludes abstract typepaths /proc/valid_subtypesof(datum/sometype) return subtypesof(sometype) - get_abstract_types() + +/// Like typesof, but automatically excludes abstract typepaths +/proc/valid_typesof(datum/sometype) + return typesof(sometype) - get_abstract_types() diff --git a/code/__HELPERS/ai.dm b/code/__HELPERS/ai.dm index 7e7179c39891d4..81595c3f8a72ab 100644 --- a/code/__HELPERS/ai.dm +++ b/code/__HELPERS/ai.dm @@ -28,15 +28,3 @@ top_force = item.force return top_force_item - -///returns if something can be consumed, drink or food -/proc/IsEdible(obj/item/thing) - if(!istype(thing)) - return FALSE - if(IS_EDIBLE(thing)) - return TRUE - if(istype(thing, /obj/item/reagent_containers/cup/glass/drinkingglass)) - var/obj/item/reagent_containers/cup/glass/drinkingglass/glass = thing - if(glass.reagents.total_volume) // The glass has something in it, time to drink the mystery liquid! - return TRUE - return FALSE diff --git a/code/__HELPERS/areas.dm b/code/__HELPERS/areas.dm index 11548f468bdde5..ce482645ef76f7 100644 --- a/code/__HELPERS/areas.dm +++ b/code/__HELPERS/areas.dm @@ -6,7 +6,7 @@ GLOBAL_LIST_INIT(typecache_powerfailure_safe_areas, typecacheof(list( /area/station/engineering/main, /area/station/engineering/supermatter, /area/station/engineering/atmospherics_engine, - /area/station/ai_monitored/turret_protected/ai, + /area/station/ai/satellite/chamber, /area/ruin/comms_agent //fixes icemoon comms station being affected ))) diff --git a/code/__HELPERS/atmospherics.dm b/code/__HELPERS/atmospherics.dm index 9ebafd5fbb528e..6264823b7f2e22 100644 --- a/code/__HELPERS/atmospherics.dm +++ b/code/__HELPERS/atmospherics.dm @@ -173,16 +173,20 @@ GLOBAL_LIST_EMPTY(gas_handbook) return null /** - * A simple helped proc that checks if the contents of a list of gases are within acceptable terms. + * A simple helper proc that checks if the contents of a list of gases are within acceptable terms. * * Arguments: * * gases: The list of gases which contents are being checked - * * gases to check: An associated list of gas types and acceptable boundaries in moles. e.g. /datum/gas/oxygen = list(16, 30) + * * acceptable_gas_bounds: An associated list of gas types and acceptable boundaries in moles. e.g. /datum/gas/oxygen = list(16, 30) * * * if the assoc list is null, then it'll be considered a safe gas and won't return FALSE. * * extraneous_gas_limit: If a gas not in gases is found, this is the limit above which the proc will return FALSE. + * + * Returns TRUE if the list of gases is acceptable, FALSE otherwise. */ -/proc/check_gases(list/gases, list/gases_to_check, extraneous_gas_limit = 0.1) - gases_to_check = gases_to_check.Copy() +/proc/check_gases(list/gases, list/acceptable_gas_bounds, extraneous_gas_limit = 0.1) + SHOULD_BE_PURE(TRUE) + + var/list/gases_to_check = acceptable_gas_bounds.Copy() // thank you spaceman for(var/id in gases) var/gas_moles = gases[id][MOLES] if(!(id in gases_to_check)) diff --git a/code/__HELPERS/atoms.dm b/code/__HELPERS/atoms.dm index dfe731eddfed69..bf304813b24dca 100644 --- a/code/__HELPERS/atoms.dm +++ b/code/__HELPERS/atoms.dm @@ -370,14 +370,14 @@ rough example of the "cone" made by the 3 dirs checked /// Returns an x and y value require to reverse the transformations made to center an oversized icon /atom/proc/get_oversized_icon_offsets() - if (pixel_x == 0 && pixel_y == 0) + if (!base_pixel_x && !base_pixel_y && !base_pixel_w && !base_pixel_z) return list("x" = 0, "y" = 0) var/list/icon_dimensions = get_icon_dimensions(icon) var/icon_width = icon_dimensions["width"] var/icon_height = icon_dimensions["height"] return list( - "x" = icon_width > ICON_SIZE_X && pixel_x != 0 ? (icon_width - ICON_SIZE_X) * 0.5 : 0, - "y" = icon_height > ICON_SIZE_Y && pixel_y != 0 ? (icon_height - ICON_SIZE_Y) * 0.5 : 0, + "x" = icon_width > ICON_SIZE_X && (base_pixel_x || base_pixel_w) ? (icon_width - ICON_SIZE_X) * 0.5 : 0, + "y" = icon_height > ICON_SIZE_Y && (base_pixel_y || base_pixel_z) ? (icon_height - ICON_SIZE_Y) * 0.5 : 0, ) /// Helper for easily adding blood from INSIDE a mob to an atom (NOT blood ON the mob) diff --git a/code/__HELPERS/construction.dm b/code/__HELPERS/construction.dm index b2766952e1cbb5..49a048c01607c3 100644 --- a/code/__HELPERS/construction.dm +++ b/code/__HELPERS/construction.dm @@ -1,5 +1,5 @@ /// Makes sure only integer values are used when consuming, removing & checking for mats -#define OPTIMAL_COST(cost)(max(1, round(cost))) +#define OPTIMAL_COST(cost)(max(1, floor(cost))) /// Wrapper for fetching material references. Exists exclusively so that people don't need to wrap everything in a list every time. #define GET_MATERIAL_REF(arguments...) SSmaterials._GetMaterialRef(list(##arguments)) @@ -31,7 +31,7 @@ */ /proc/amount2sheet(amt) if(amt >= SHEET_MATERIAL_AMOUNT) - return round(amt / SHEET_MATERIAL_AMOUNT) + return floor(amt / SHEET_MATERIAL_AMOUNT) return 0 /** diff --git a/code/__HELPERS/fade_into_nothing.dm b/code/__HELPERS/fade_into_nothing.dm index d8df8ced78eb4e..eb84ababf528b0 100644 --- a/code/__HELPERS/fade_into_nothing.dm +++ b/code/__HELPERS/fade_into_nothing.dm @@ -1,8 +1,13 @@ /// Deletes the atom with a little fading out animation after a specified time /atom/proc/fade_into_nothing(life_time = 5 SECONDS, fade_time = 3 SECONDS) QDEL_IN(src, life_time) - if (life_time > fade_time && fade_time > 0) + if (fade_time <= 0) + return + + if (life_time > fade_time) addtimer(CALLBACK(src, PROC_REF(fade_into_nothing_animate), fade_time), life_time - fade_time, TIMER_DELETE_ME) + else + fade_into_nothing_animate(fade_time) /// Actually does the fade out, used by fade_into_nothing() /atom/proc/fade_into_nothing_animate(fade_time) diff --git a/code/__HELPERS/files.dm b/code/__HELPERS/files.dm index 6f28592b7fc805..fc2fca91a2d9ae 100644 --- a/code/__HELPERS/files.dm +++ b/code/__HELPERS/files.dm @@ -136,3 +136,46 @@ GLOBAL_VAR_INIT(fileaccess_timer, 0) if(.) . += delimiter // Add the delimiter before each successive node. . += SANITIZE_FILENAME(node) + +/** + * Verifys wether a string or file ends with a given file type. + * + * this does not at all check the actual type of the file, a user could just rename it + * + * Arguments: + * * file - A string or file. No checks for if this file ACCTALLY exists + * * file_types - A list of strings to check against [e.g. list("ogg" = TRUE, "mp3" = TRUE)] + */ +/proc/is_file_type_in_list(file, file_types = list()) + var/extstart = findlasttext("[file]", ".") + if(!extstart) + return FALSE + var/ext = copytext("[file]", extstart + 1) + if(file_types[ext]) + return TRUE + +/** + * Verifys wether a string or file ends with a given file type + * + * this does not at all check the actual type of the file, a user could just rename it + * + * Arguments: + * * file - A string or file. No checks for if this file ACCTALLY exists + * * file_type - A string to check against [e.g. "ogg"] + */ +/proc/is_file_type(file, file_type) + var/extstart = findlasttext("[file]", ".") + if(!extstart) + return FALSE + var/ext = copytext("[file]", extstart + 1) + if(ext == file_type) + return TRUE + +/proc/strip_filepath_extension(file, file_types) + var/extstart = findlasttext("[file]", ".") + if(!extstart) + return "[file]" + var/ext = copytext("[file]", extstart + 1) + if(ext in file_types) + return copytext("[file]", 1, extstart) + return "[file]" diff --git a/code/__HELPERS/global_lists.dm b/code/__HELPERS/global_lists.dm index d0b871d41a04bc..46d8b7f4693b6b 100644 --- a/code/__HELPERS/global_lists.dm +++ b/code/__HELPERS/global_lists.dm @@ -2,14 +2,6 @@ /////Initial Building///// ////////////////////////// -/// Inits GLOB.surgeries -/proc/init_surgeries() - var/surgeries = list() - for(var/path in subtypesof(/datum/surgery)) - surgeries += new path() - sort_list(surgeries, GLOBAL_PROC_REF(cmp_typepaths_asc)) - return surgeries - /// Legacy procs that really should be replaced with proper _INIT macros /proc/make_datum_reference_lists() // I tried to eliminate this proc but I couldn't untangle their init-order interdependencies -Dominion/Cyberboss @@ -20,11 +12,9 @@ init_crafting_recipes_atoms() /// Inits crafting recipe lists -/proc/init_crafting_recipes(list/crafting_recipes) - for(var/path in subtypesof(/datum/crafting_recipe)) - if(ispath(path, /datum/crafting_recipe/stack)) - continue - var/datum/crafting_recipe/recipe = new path() +/proc/init_crafting_recipes() + for(var/datum/crafting_recipe_path as anything in valid_subtypesof(/datum/crafting_recipe)) + var/datum/crafting_recipe/recipe = new crafting_recipe_path() var/is_cooking = (recipe.category in GLOB.crafting_category_food) recipe.reqs = sort_list(recipe.reqs, GLOBAL_PROC_REF(cmp_crafting_req_priority)) if(recipe.name != "" && recipe.result) @@ -138,29 +128,21 @@ for(var/atom/req_atom as anything in recipe.structures) atom_list |= req_atom -//creates every subtype of prototype (excluding prototype) and adds it to list L. -//if no list/L is provided, one is created. +/// Creates every subtype of prototype (excluding prototype and abstract types) and adds it to list L. +/// If no list/L is provided, one is created. /proc/init_subtypes(prototype, list/L) if(!istype(L)) L = list() - for(var/path in subtypesof(prototype)) + for(var/path in valid_subtypesof(prototype)) L += new path() return L -//returns a list of paths to every subtype of prototype (excluding prototype) -//if no list/L is provided, one is created. -/proc/init_paths(prototype, list/L) - if(!istype(L)) - L = list() - for(var/path in subtypesof(prototype)) - L+= path - return L - /// Functions like init_subtypes, but uses the subtype's path as a key for easy access +/// If no list/L is provided, one is created. /proc/init_subtypes_w_path_keys(prototype, list/L) if(!istype(L)) L = list() - for(var/path in subtypesof(prototype)) + for(var/path in valid_subtypesof(prototype)) L[path] = new path() return L diff --git a/code/__HELPERS/hallucinations.dm b/code/__HELPERS/hallucinations.dm index 110a94e862d155..006497b4aa582c 100644 --- a/code/__HELPERS/hallucinations.dm +++ b/code/__HELPERS/hallucinations.dm @@ -41,8 +41,8 @@ GLOBAL_LIST_EMPTY(all_ongoing_hallucinations) CRASH("cause_hallucination called with no arguments.") var/datum/hallucination/hallucination_type = raw_args[HALLUCINATION_ARG_TYPE] // first arg is the type always - if(!ispath(hallucination_type)) - CRASH("cause_hallucination was given a non-hallucination type.") + if(!ispath(hallucination_type, /datum/hallucination)) + CRASH("cause_hallucination was given a non-hallucination type. (Got: [hallucination_type || "null"])") var/hallucination_source = raw_args[HALLUCINATION_ARG_SOURCE] // and second arg, the source var/datum/hallucination/new_hallucination diff --git a/code/__HELPERS/lighting.dm b/code/__HELPERS/lighting.dm index 086b0e99c4a474..4f1b29d436ade2 100644 --- a/code/__HELPERS/lighting.dm +++ b/code/__HELPERS/lighting.dm @@ -1,5 +1,3 @@ -#define TOPDOWN_TO_EMISSIVE_LAYER(layer) LERP(FLOOR_EMISSIVE_START_LAYER, FLOOR_EMISSIVE_END_LAYER, (layer - (TOPDOWN_LAYER + 1)) / TOPDOWN_LAYER_COUNT) - /// Produces a mutable appearance glued to the [EMISSIVE_PLANE] dyed to be the [EMISSIVE_COLOR]. /proc/emissive_appearance(icon, icon_state = "", atom/offset_spokesman, layer, alpha = 255, appearance_flags = NONE, offset_const, effect_type = EMISSIVE_BLOOM) if((isnull(layer) || layer == FLOAT_LAYER) && IS_TOPDOWN_PLANE(offset_spokesman.plane)) @@ -99,5 +97,3 @@ var/atom/movable/vis_cast = make_blocker vis_cast.vis_contents += hand_back return hand_back - -#undef TOPDOWN_TO_EMISSIVE_LAYER diff --git a/code/__HELPERS/logging/virus.dm b/code/__HELPERS/logging/virus.dm index 050ae9434e4793..b2ee4789107b8b 100644 --- a/code/__HELPERS/logging/virus.dm +++ b/code/__HELPERS/logging/virus.dm @@ -11,4 +11,4 @@ var/list/name_symptoms = list() for(var/datum/symptom/S in symptoms) name_symptoms += S.name - return "[name] - sym: [english_list(name_symptoms)] re:[totalResistance()] st:[totalStealth()] ss:[totalStageSpeed()] tr:[totalTransmittable()]" + return "[name] - sym: [english_list(name_symptoms)] re:[totalResistance()] st:[totalStealth()] ss:[totalStageSpeed()] tr:[totalTransmittable()] se:[totalSeverity()]" diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm index b1210932f47ffc..a93f3d7402a1aa 100644 --- a/code/__HELPERS/mobs.dm +++ b/code/__HELPERS/mobs.dm @@ -205,8 +205,10 @@ GLOBAL_LIST_INIT(skin_tone_names, list( * @param {icon} icon - The icon file of the cog. Default: 'icons/effects/progressbar.dmi' * * @param {iconstate} iconstate - The icon state of the cog. Default: "Cog" + * + * @param {mob} bar_override - Mob which should see the bar instead of the user */ -/proc/do_after(mob/user, delay, atom/target, timed_action_flags = NONE, progress = TRUE, datum/callback/extra_checks, interaction_key, max_interact_count = 1, hidden = FALSE, icon = 'icons/effects/progressbar.dmi', iconstate = "cog") +/proc/do_after(mob/user, delay, atom/target, timed_action_flags = NONE, progress = TRUE, datum/callback/extra_checks, interaction_key, max_interact_count = 1, hidden = FALSE, icon = 'icons/effects/progressbar.dmi', iconstate = "cog", mob/bar_override = null) if(!user) return FALSE if(!isnum(delay)) @@ -240,11 +242,11 @@ GLOBAL_LIST_INIT(skin_tone_names, list( var/datum/cogbar/cog if(progress) - if(user.client) - progbar = new(user, delay, target || user) + if(user.client || bar_override?.client) + progbar = new(bar_override || user, delay, target || user) if(!hidden && delay >= 1 SECONDS) - cog = new(user, icon, iconstate) + cog = new(bar_override || user, icon, iconstate) SEND_SIGNAL(user, COMSIG_DO_AFTER_BEGAN) diff --git a/code/__HELPERS/names.dm b/code/__HELPERS/names.dm index 98693c646fe815..adfe9a54ca222d 100644 --- a/code/__HELPERS/names.dm +++ b/code/__HELPERS/names.dm @@ -397,10 +397,10 @@ GLOBAL_DATUM(syndicate_code_response_regex, /regex) return FALSE return TRUE -/// Build a list of strings containing the numbers 1-99 as both arabic and roman numerals +/// Generates and returns a list of both arabic and roman numerals for 1 through 99 /proc/generate_number_strings() - var/list/L[198] + var/list/numbers = list() for(var/i in 1 to 99) - L += "[i]" - L += "\Roman[i]" - return L + numbers += "[i]" + numbers += "\Roman[i]" + return numbers diff --git a/code/__HELPERS/roundend.dm b/code/__HELPERS/roundend.dm index 9f7c95d42ea4f9..8e21e78b1b2554 100644 --- a/code/__HELPERS/roundend.dm +++ b/code/__HELPERS/roundend.dm @@ -289,12 +289,15 @@ GLOBAL_LIST_INIT(achievements_unlocked, list()) //stop collecting feedback during grifftime SSblackbox.Seal() - world.TgsTriggerEvent("tg-Roundend", wait_for_completion = TRUE) + TriggerRoundEndTgsEvent() sleep(5 SECONDS) ready_for_reboot = TRUE standard_reboot() +/datum/controller/subsystem/ticker/proc/TriggerRoundEndTgsEvent() + world.TgsTriggerEvent("tg-Roundend", wait_for_completion = TRUE) + /datum/controller/subsystem/ticker/proc/standard_reboot() if(ready_for_reboot) if(GLOB.station_was_nuked) @@ -523,9 +526,9 @@ GLOBAL_LIST_INIT(achievements_unlocked, list()) for(var/venue_path in SSrestaurant.all_venues) var/datum/venue/venue = SSrestaurant.all_venues[venue_path] tourist_income += venue.total_income - parts += "The [venue] served [venue.customers_served] customer\s and made [venue.total_income] credits.
" - parts += "In total, they earned [tourist_income] credits[tourist_income ? "!" : "..."]
" - log_econ("Roundend service income: [tourist_income] credits.") + parts += "The [venue] served [venue.customers_served] customer\s and made [venue.total_income] [MONEY_NAME].
" + parts += "In total, they earned [tourist_income] [MONEY_NAME][tourist_income ? "!" : "..."]
" + log_econ("Roundend service income: [tourist_income] [MONEY_NAME].") // Award service achievements based on tourist income switch(tourist_income) @@ -538,7 +541,7 @@ GLOBAL_LIST_INIT(achievements_unlocked, list()) switch(tourist_income) if(0) - parts += "[span_redtext("Service did not earn any credits...")]
" + parts += "[span_redtext("Service did not earn any [MONEY_NAME]...")]
" if(1 to 2000) parts += "[span_redtext("Centcom is displeased. Come on service, surely you can do better than that.")]
" if(2001 to 4999) @@ -547,12 +550,12 @@ GLOBAL_LIST_INIT(achievements_unlocked, list()) parts += "Centcom is incredibly impressed with service today! What a team!
" parts += "General Statistics:
" - parts += "There were [station_vault] credits collected by crew this shift.
" + parts += "There were [station_vault] [MONEY_NAME] collected by crew this shift.
" if(total_players > 0) - parts += "An average of [station_vault/total_players] credits were collected.
" - log_econ("Roundend credit total: [station_vault] credits. Average Credits: [station_vault/total_players]") + parts += "An average of [station_vault/total_players] [MONEY_NAME] were collected.
" + log_econ("Roundend [MONEY_NAME_SINGULAR] total: [station_vault] [MONEY_NAME]. Average [MONEY_NAME_CAPITALIZED]: [station_vault/total_players]") if(mr_moneybags) - parts += "The most affluent crew member at shift end was [mr_moneybags.account_holder] with [mr_moneybags.account_balance] cr!" + parts += "The most affluent crew member at shift end was [mr_moneybags.account_holder] with [mr_moneybags.account_balance] [MONEY_SYMBOL]!" else parts += "Somehow, nobody made any money this shift! This'll result in some budget cuts..." return parts.Join() diff --git a/code/__HELPERS/shuttle.dm b/code/__HELPERS/shuttle.dm index 31c43b1cf1908d..6dbbd51b617a51 100644 --- a/code/__HELPERS/shuttle.dm +++ b/code/__HELPERS/shuttle.dm @@ -333,9 +333,7 @@ GLOBAL_LIST_EMPTY(shuttle_frames_by_turf) if(turfs_not_in_frame_count) if(custom_area.apc) var/obj/machinery/power/apc/apc = custom_area.apc - var/list/wallmount_comps = apc.GetComponents(/datum/component/wall_mounted) - var/datum/component/wall_mounted/wallmount_comp = length(wallmount_comps) && wallmount_comps[1] - if(turfs[get_turf(apc)] || (wallmount_comp && turfs[wallmount_comp.hanging_wall_turf])) + if(turfs[get_turf(apc)]) . |= CUSTOM_AREA_NOT_COMPLETELY_CONTAINED else if(areas) areas[custom_area] = area_turfs - turfs_not_in_frame @@ -348,9 +346,7 @@ GLOBAL_LIST_EMPTY(shuttle_frames_by_turf) . |= INTERSECTS_NON_WHITELISTED_AREA if(checked_area.apc) var/obj/machinery/power/apc/apc = checked_area.apc - var/list/wallmount_comps = apc.GetComponents(/datum/component/wall_mounted) - var/datum/component/wall_mounted/wallmount_comp = length(wallmount_comps) && wallmount_comps[1] - if(turfs[get_turf(apc)] || (wallmount_comp && turfs[wallmount_comp.hanging_wall_turf])) + if(turfs[get_turf(apc)]) . |= CONTAINS_APC_OF_NON_CUSTOM_AREA turfs -= area_turfs @@ -517,7 +513,7 @@ GLOBAL_LIST_EMPTY(shuttle_frames_by_turf) turfs = turfs.Copy() for(var/turf/turf as anything in turfs) var/move_mode = turf.fromShuttleMove(move_mode = MOVE_AREA) - if(move_mode & (MOVE_TURF | MOVE_CONTENTS)) + if(move_mode & (MOVE_TURF | MOVE_CONTENTS | MOVE_SPECIAL)) continue for(var/atom/movable/movable as anything in turf.contents) //CHECK_TICK diff --git a/code/__HELPERS/spatial_info.dm b/code/__HELPERS/spatial_info.dm index 2f3ae7533273b0..1135c93b055ba1 100644 --- a/code/__HELPERS/spatial_info.dm +++ b/code/__HELPERS/spatial_info.dm @@ -218,9 +218,15 @@ /// Modifies input list. /proc/mob_only_listeners(list/atom/movable/hearers) RETURN_TYPE(/list/mob) - for(var/hearer_index in 1 to hearers.len) + + var/hearers_length + if(isnull(hearers) || !(hearers_length = hearers.len)) // note on var assignment in the conditional: this is a micro op so we do not have to do a length() check before assigning hearers.len and so we only have to isnull() once. + return list() + + for(var/hearer_index in 1 to hearers_length) var/atom/movable/hearer = hearers[hearer_index] hearers[hearer_index] = hearer.get_listening_mob() + list_clear_nulls(hearers) return hearers @@ -397,6 +403,15 @@ . = view(range, source) source.luminosity = lum +/// get_hear that only gets turfs so we can use as_anything +/proc/get_hear_turfs(range, atom/source) + var/lum = source.luminosity + source.luminosity = 6 + . = list() + for(var/turf/turf in view(range, source)) + . += turf + source.luminosity = lum + ///Returns the open turf next to the center in a specific direction /proc/get_open_turf_in_dir(atom/center, dir) var/turf/open/get_turf = get_step(center, dir) diff --git a/code/__HELPERS/tts.dm b/code/__HELPERS/tts.dm index 9d96d3d4e3e264..a20df389506273 100644 --- a/code/__HELPERS/tts.dm +++ b/code/__HELPERS/tts.dm @@ -2,3 +2,9 @@ // Only allow alphanumeric characters and whitespace var/static/regex/bad_chars_regex = regex("\[^a-zA-Z0-9 ,?.!'&-]", "g") return bad_chars_regex.Replace(text, " ") + +/proc/tts_filter_encode(text, atom/movable/speaker, blips) + text = replacetext(text, "%PITCH%", SStts.pitch_enabled ? speaker.pitch : 0) + text = replacetext(text, "%FEMALE%", !!findtext(speaker.voice, "Woman")) + text = replacetext(text, "%BLIPS%", blips) + return url_encode(text) diff --git a/code/__HELPERS/turfs.dm b/code/__HELPERS/turfs.dm index 902bfbf585ef54..764fc79621a66f 100644 --- a/code/__HELPERS/turfs.dm +++ b/code/__HELPERS/turfs.dm @@ -463,7 +463,7 @@ Turf and target are separate in case you want to teleport some distance from a t subtypesof(/area/station/service), \ subtypesof(/area/station/command), \ subtypesof(/area/station/hallway), \ - subtypesof(/area/station/ai_monitored), \ + subtypesof(/area/station/ai), \ subtypesof(/area/station/cargo) ) diff --git a/code/__HELPERS/type2type.dm b/code/__HELPERS/type2type.dm index c7b7cdd4bc1f53..4b8e02699f88bf 100644 --- a/code/__HELPERS/type2type.dm +++ b/code/__HELPERS/type2type.dm @@ -181,6 +181,8 @@ GLOBAL_LIST_INIT(modulo_angle_to_dir, list(NORTH,NORTHEAST,EAST,SOUTHEAST,SOUTH, switch(def_zone) if(BODY_ZONE_CHEST) return CHEST|GROIN + if(BODY_ZONE_PRECISE_GROIN) + return GROIN if(BODY_ZONE_HEAD) return HEAD if(BODY_ZONE_L_ARM) @@ -198,50 +200,33 @@ GLOBAL_LIST_INIT(modulo_angle_to_dir, list(NORTH,NORTHEAST,EAST,SOUTHEAST,SOUTH, var/list/covered_parts = list() if(!bpc) - return 0 - - if(bpc == FULL_BODY) - covered_parts |= list(BODY_ZONE_L_ARM,BODY_ZONE_R_ARM,BODY_ZONE_HEAD,BODY_ZONE_CHEST,BODY_ZONE_L_LEG,BODY_ZONE_R_LEG) - - else - if(bpc & HEAD) - covered_parts |= list(BODY_ZONE_HEAD) - if(bpc & CHEST) - covered_parts |= list(BODY_ZONE_CHEST) - if(bpc & GROIN) - covered_parts |= list(BODY_ZONE_CHEST) - - if(bpc & ARMS) - covered_parts |= list(BODY_ZONE_L_ARM,BODY_ZONE_R_ARM) - else - if(bpc & ARM_LEFT) - covered_parts |= list(BODY_ZONE_L_ARM) - if(bpc & ARM_RIGHT) - covered_parts |= list(BODY_ZONE_R_ARM) - - if(bpc & HANDS) - covered_parts |= list(BODY_ZONE_L_ARM,BODY_ZONE_R_ARM) - else - if(bpc & HAND_LEFT) - covered_parts |= list(BODY_ZONE_L_ARM) - if(bpc & HAND_RIGHT) - covered_parts |= list(BODY_ZONE_R_ARM) - - if(bpc & LEGS) - covered_parts |= list(BODY_ZONE_L_LEG,BODY_ZONE_R_LEG) - else - if(bpc & LEG_LEFT) - covered_parts |= list(BODY_ZONE_L_LEG) - if(bpc & LEG_RIGHT) - covered_parts |= list(BODY_ZONE_R_LEG) - - if(bpc & FEET) - covered_parts |= list(BODY_ZONE_L_LEG,BODY_ZONE_R_LEG) - else - if(bpc & FOOT_LEFT) - covered_parts |= list(BODY_ZONE_L_LEG) - if(bpc & FOOT_RIGHT) - covered_parts |= list(BODY_ZONE_R_LEG) + return covered_parts + + if(bpc & HEAD) + covered_parts |= list(BODY_ZONE_HEAD, BODY_ZONE_PRECISE_EYES, BODY_ZONE_PRECISE_MOUTH) + + if(bpc & CHEST) + covered_parts |= list(BODY_ZONE_CHEST, BODY_ZONE_PRECISE_GROIN) + else if(bpc & GROIN) + covered_parts |= BODY_ZONE_PRECISE_GROIN + + if(bpc & HAND_LEFT) + covered_parts |= list(BODY_ZONE_L_ARM, BODY_ZONE_PRECISE_L_HAND) + else if(bpc & ARM_LEFT) + covered_parts |= BODY_ZONE_L_ARM + if(bpc & HAND_RIGHT) + covered_parts |= list(BODY_ZONE_R_ARM, BODY_ZONE_PRECISE_R_HAND) + else if(bpc & ARM_RIGHT) + covered_parts |= BODY_ZONE_R_ARM + + if(bpc & FOOT_LEFT) + covered_parts |= list(BODY_ZONE_L_LEG, BODY_ZONE_PRECISE_L_FOOT) + else if(bpc & LEG_LEFT) + covered_parts |= BODY_ZONE_L_LEG + if(bpc & FOOT_RIGHT) + covered_parts |= list(BODY_ZONE_R_LEG, BODY_ZONE_PRECISE_R_FOOT) + else if(bpc & LEG_RIGHT) + covered_parts |= BODY_ZONE_R_LEG return covered_parts diff --git a/code/__HELPERS/type_processing.dm b/code/__HELPERS/type_processing.dm index 180079cf65a7f7..dd07d1fc9aac84 100644 --- a/code/__HELPERS/type_processing.dm +++ b/code/__HELPERS/type_processing.dm @@ -1,112 +1,118 @@ +// Longer paths should come after shorter ones +GLOBAL_LIST_INIT(fancy_type_replacements, list( + /datum = "DATUM", + /area = "AREA", + /atom/movable = "MOVABLE", + /obj = "OBJ", + /turf = "TURF", + /turf/closed = "CLOSED", + /turf/open = "OPEN", + + /mob = "MOB", + /mob/living = "LIVING", + /mob/living/carbon = "CARBON", + /mob/living/carbon/human = "HUMANOID", + /mob/living/simple_animal = "SIMPLE", + /mob/living/basic = "BASIC", + /mob/living/silicon = "SILICON", + /mob/living/silicon/robot = "CYBORG", + + /obj/item = "ITEM", + /obj/item/mecha_parts/mecha_equipment = "MECHA_EQUIP", + /obj/item/mecha_parts/mecha_equipment/weapon = "MECHA_WEAPON", + /obj/item/organ = "ORGAN", + /obj/item/mod/control = "MODSUIT", + /obj/item/mod/module = "MODSUIT_MOD", + /obj/item/ammo_box = "AMMOBOX", + /obj/item/ammo_box/magazine = "AMMOBOX_MAGAZINE", + /obj/item/ammo_box/speedloader = "AMMOBOX_SPEEDLOADER", + /obj/item/gun = "GUN", + /obj/item/gun/magic = "GUN_MAGIC", + /obj/item/gun/energy = "GUN_ENERGY", + /obj/item/gun/energy/laser = "GUN_LASER", + /obj/item/gun/ballistic = "GUN_BALLISTIC", + /obj/item/gun/ballistic/automatic = "GUN_AUTOMATIC", + /obj/item/gun/ballistic/revolver = "GUN_REVOLVER", + /obj/item/gun/ballistic/rifle = "GUN_RIFLE", + /obj/item/gun/ballistic/shotgun = "GUN_SHOTGUN", + /obj/item/stack/sheet = "SHEET", + /obj/item/stack/sheet/mineral = "MINERAL_SHEET", + /obj/item/stack/ore = "ORE", + /obj/item/ai_module = "AI_LAW_MODULE", + /obj/item/circuitboard = "CIRCUITBOARD", + /obj/item/circuitboard/machine = "MACHINE_BOARD", + /obj/item/circuitboard/computer = "COMPUTER_BOARD", + /obj/item/reagent_containers = "REAGENT_CONTAINERS", + /obj/item/reagent_containers/applicator/pill = "PILL", + /obj/item/reagent_containers/applicator/patch = "MEDPATCH", + /obj/item/reagent_containers/hypospray/medipen = "MEDIPEN", + /obj/item/reagent_containers/cup/glass = "DRINK", + /obj/item/food = "FOOD", + /obj/item/bodypart = "BODYPART", + /obj/effect/decal/cleanable = "CLEANABLE", + /obj/item/radio/headset = "HEADSET", + /obj/item/clothing = "CLOTHING", + /obj/item/clothing/accessory = "ACCESSORY", + /obj/item/clothing/mask/gas = "GASMASK", + /obj/item/clothing/mask = "MASK", + /obj/item/clothing/gloves = "GLOVES", + /obj/item/clothing/shoes = "SHOES", + /obj/item/clothing/under/plasmaman = "PLASMAMAN_SUIT", + /obj/item/clothing/under = "JUMPSUIT", + /obj/item/clothing/suit/armor = "ARMOR", + /obj/item/clothing/suit = "SUIT", + /obj/item/clothing/head/helmet = "HELMET", + /obj/item/clothing/head = "HEAD", + /obj/item/clothing/neck = "NECK", + /obj/item/storage/backpack = "BACKPACK", + /obj/item/storage/belt = "BELT", + /obj/item/storage/pill_bottle = "PILL_BOTTLE", + /obj/item/book/manual = "MANUAL", + + /obj/structure = "STRUCTURE", + /obj/structure/closet = "CLOSET", + /obj/structure/closet/crate = "CRATE", + /obj/structure/closet/crate/secure = "LOCKED_CRATE", + /obj/structure/closet/secure_closet = "LOCKED_CLOSET", + + /obj/machinery = "MACHINERY", + /obj/machinery/atmospherics = "ATMOS_MECH", + /obj/machinery/portable_atmospherics = "PORT_ATMOS", + /obj/machinery/door = "DOOR", + /obj/machinery/door/airlock = "AIRLOCK", + /obj/machinery/rnd/production = "RND_FABRICATOR", + /obj/machinery/computer = "COMPUTER", + /obj/machinery/computer/camera_advanced/shuttle_docker = "DOCKING_COMPUTER", + /obj/machinery/vending = "VENDING", + /obj/machinery/vending/wardrobe = "JOBDROBE", + /obj/effect = "EFFECT", + /obj/projectile = "PROJECTILE", +)) + /proc/make_types_fancy(list/types) if (ispath(types)) types = list(types) var/static/list/types_to_replacement var/static/list/replacement_to_text if(!types_to_replacement) - // Longer paths come after shorter ones, try and keep the structure - var/list/work_from = list( - /datum = "DATUM", - /area = "AREA", - /atom/movable = "MOVABLE", - /obj = "OBJ", - /turf = "TURF", - /turf/closed = "CLOSED", - /turf/open = "OPEN", - - /mob = "MOB", - /mob/living = "LIVING", - /mob/living/carbon = "CARBON", - /mob/living/carbon/human = "HUMANOID", - /mob/living/simple_animal = "SIMPLE", - /mob/living/basic = "BASIC", - /mob/living/silicon = "SILICON", - /mob/living/silicon/robot = "CYBORG", - - /obj/item = "ITEM", - /obj/item/mecha_parts/mecha_equipment = "MECHA_EQUIP", - /obj/item/mecha_parts/mecha_equipment/weapon = "MECHA_WEAPON", - /obj/item/organ = "ORGAN", - /obj/item/mod/control = "MODSUIT", - /obj/item/mod/module = "MODSUIT_MOD", - /obj/item/ammo_box = "AMMOBOX", - /obj/item/ammo_box/magazine = "AMMOBOX_MAGAZINE", - /obj/item/ammo_box/speedloader = "AMMOBOX_SPEEDLOADER", - /obj/item/gun = "GUN", - /obj/item/gun/magic = "GUN_MAGIC", - /obj/item/gun/energy = "GUN_ENERGY", - /obj/item/gun/energy/laser = "GUN_LASER", - /obj/item/gun/ballistic = "GUN_BALLISTIC", - /obj/item/gun/ballistic/automatic = "GUN_AUTOMATIC", - /obj/item/gun/ballistic/revolver = "GUN_REVOLVER", - /obj/item/gun/ballistic/rifle = "GUN_RIFLE", - /obj/item/gun/ballistic/shotgun = "GUN_SHOTGUN", - /obj/item/stack/sheet = "SHEET", - /obj/item/stack/sheet/mineral = "MINERAL_SHEET", - /obj/item/stack/ore = "ORE", - /obj/item/ai_module = "AI_LAW_MODULE", - /obj/item/circuitboard = "CIRCUITBOARD", - /obj/item/circuitboard/machine = "MACHINE_BOARD", - /obj/item/circuitboard/computer = "COMPUTER_BOARD", - /obj/item/reagent_containers = "REAGENT_CONTAINERS", - /obj/item/reagent_containers/applicator/pill = "PILL", - /obj/item/reagent_containers/applicator/patch = "MEDPATCH", - /obj/item/reagent_containers/hypospray/medipen = "MEDIPEN", - /obj/item/reagent_containers/cup/glass = "DRINK", - /obj/item/food = "FOOD", - /obj/item/bodypart = "BODYPART", - /obj/effect/decal/cleanable = "CLEANABLE", - /obj/item/radio/headset = "HEADSET", - /obj/item/clothing = "CLOTHING", - /obj/item/clothing/accessory = "ACCESSORY", - /obj/item/clothing/mask/gas = "GASMASK", - /obj/item/clothing/mask = "MASK", - /obj/item/clothing/gloves = "GLOVES", - /obj/item/clothing/shoes = "SHOES", - /obj/item/clothing/under/plasmaman = "PLASMAMAN_SUIT", - /obj/item/clothing/under = "JUMPSUIT", - /obj/item/clothing/suit/armor = "ARMOR", - /obj/item/clothing/suit = "SUIT", - /obj/item/clothing/head/helmet = "HELMET", - /obj/item/clothing/head = "HEAD", - /obj/item/clothing/neck = "NECK", - /obj/item/storage/backpack = "BACKPACK", - /obj/item/storage/belt = "BELT", - /obj/item/storage/pill_bottle = "PILL_BOTTLE", - /obj/item/book/manual = "MANUAL", - - /obj/structure = "STRUCTURE", - /obj/structure/closet = "CLOSET", - /obj/structure/closet/crate = "CRATE", - /obj/structure/closet/crate/secure = "LOCKED_CRATE", - /obj/structure/closet/secure_closet = "LOCKED_CLOSET", - - /obj/machinery = "MACHINERY", - /obj/machinery/atmospherics = "ATMOS_MECH", - /obj/machinery/portable_atmospherics = "PORT_ATMOS", - /obj/machinery/door = "DOOR", - /obj/machinery/door/airlock = "AIRLOCK", - /obj/machinery/rnd/production = "RND_FABRICATOR", - /obj/machinery/computer = "COMPUTER", - /obj/machinery/computer/camera_advanced/shuttle_docker = "DOCKING_COMPUTER", - /obj/machinery/vending = "VENDING", - /obj/machinery/vending/wardrobe = "JOBDROBE", - /obj/effect = "EFFECT", - /obj/projectile = "PROJECTILE", - ) // ignore_root_path so we can draw the root normally - types_to_replacement = zebra_typecacheof(work_from, ignore_root_path = TRUE) - replacement_to_text = list() - for(var/key in work_from) - replacement_to_text[work_from[key]] = "[key]" + var/list/fancy_type_cache = GLOB.fancy_type_replacements + var/list/local_replacements = zebra_typecacheof(fancy_type_cache, ignore_root_path = TRUE) + var/list/local_texts = list() + for(var/key in fancy_type_cache) + local_texts[local_replacements[key]] = "[key]" + types_to_replacement = local_replacements + replacement_to_text = local_texts . = list() + var/list/local_replacements = types_to_replacement + var/list/local_texts = replacement_to_text for(var/type in types) - var/replace_with = types_to_replacement[type] + var/replace_with = local_replacements[type] if(!replace_with) .["[type]"] = type continue - var/cut_out = replacement_to_text[replace_with] + var/cut_out = local_texts[replace_with] // + 1 to account for / .[replace_with + copytext("[type]", length(cut_out) + 1)] = type @@ -141,13 +147,19 @@ if (endtype) var/list/split_filter = splittext("[key]", filter) if (!findtext(split_filter[length(split_filter)], "/")) - matches[key] = value + if (value) + matches[key] = value + else + matches += key continue else - matches[key] = value + if (value) + matches[key] = value + else + matches += key continue - if (findtext("[value]", filter, -end_len)) + if (value && findtext("[value]", filter, -end_len)) if (endtype) var/list/split_filter = splittext("[value]", filter) if (findtext(split_filter[length(split_filter)], "/")) diff --git a/code/_compile_options.dm b/code/_compile_options.dm index 857bdec8099d75..ed6205e25d85d8 100644 --- a/code/_compile_options.dm +++ b/code/_compile_options.dm @@ -108,6 +108,9 @@ /// Prefer the autowiki build target instead. // #define AUTOWIKI +/// If defined, we boot up, run world.run_performance_tests() and then shut down the server +// #define PERFORMANCE_TESTS + /// If this is uncommented, will profile mapload atom initializations // #define PROFILE_MAPLOAD_INIT_ATOM diff --git a/code/_globalvars/bitfields.dm b/code/_globalvars/bitfields.dm index e68c9060f593b7..166f71c3113ec7 100644 --- a/code/_globalvars/bitfields.dm +++ b/code/_globalvars/bitfields.dm @@ -61,22 +61,32 @@ DEFINE_BITFIELD(appearance_flags, list( )) DEFINE_BITFIELD(area_flags, list( + "VALID_TERRITORY" = VALID_TERRITORY, "BLOBS_ALLOWED" = BLOBS_ALLOWED, + "NOTELEPORT" = NOTELEPORT, + "HIDDEN_AREA" = HIDDEN_AREA, "BLOCK_SUICIDE" = BLOCK_SUICIDE, - "CAVES_ALLOWED" = CAVES_ALLOWED, + "XENOBIOLOGY_COMPATIBLE" = XENOBIOLOGY_COMPATIBLE, "CULT_PERMITTED" = CULT_PERMITTED, - "FLORA_ALLOWED" = FLORA_ALLOWED, - "HIDDEN_AREA" = HIDDEN_AREA, - "MEGAFAUNA_SPAWN_ALLOWED" = MEGAFAUNA_SPAWN_ALLOWED, - "MOB_SPAWN_ALLOWED" = MOB_SPAWN_ALLOWED, - "NOTELEPORT" = NOTELEPORT, "NO_DEATH_MESSAGE" = NO_DEATH_MESSAGE, - "PERSISTENT_ENGRAVINGS" = PERSISTENT_ENGRAVINGS, - "UNIQUE_AREA" = UNIQUE_AREA, - "VALID_TERRITORY" = VALID_TERRITORY, - "XENOBIOLOGY_COMPATIBLE" = XENOBIOLOGY_COMPATIBLE, + "EVENT_PROTECTED" = EVENT_PROTECTED, + "QUIET_LOGS" = QUIET_LOGS, + "BINARY_JAMMING" = BINARY_JAMMING, "NO_BOH" = NO_BOH, "UNLIMITED_FISHING" = UNLIMITED_FISHING, + "NO_GRAVITY" = NO_GRAVITY, + "LOCAL_TELEPORT" = LOCAL_TELEPORT, +)) + +DEFINE_BITFIELD(area_flags_mapping, list( + "UNIQUE_AREA" = UNIQUE_AREA, + "CAVES_ALLOWED" = CAVES_ALLOWED, + "FLORA_ALLOWED" = FLORA_ALLOWED, + "MOB_SPAWN_ALLOWED" = MOB_SPAWN_ALLOWED, + "MEGAFAUNA_SPAWN_ALLOWED" = MEGAFAUNA_SPAWN_ALLOWED, + "PERSISTENT_ENGRAVINGS" = PERSISTENT_ENGRAVINGS, + "VIRTUAL_AREA" = VIRTUAL_AREA, + "VIRTUAL_SAFE_AREA" = VIRTUAL_SAFE_AREA, )) DEFINE_BITFIELD(turf_flags, list( @@ -112,6 +122,7 @@ DEFINE_BITFIELD(clothing_flags, list( "VOICEBOX_DISABLED" = VOICEBOX_DISABLED, "VOICEBOX_TOGGLABLE" = VOICEBOX_TOGGLABLE, "INTERNALS_ADJUST_EXEMPT" = INTERNALS_ADJUST_EXEMPT, + "NO_ZONE_DISABLING" = NO_ZONE_DISABLING, )) DEFINE_BITFIELD(datum_flags, list( @@ -324,12 +335,14 @@ DEFINE_BITFIELD(mob_respiration_type, list( DEFINE_BITFIELD(mobility_flags, list( "MOVE" = MOBILITY_MOVE, - "PICKUP" = MOBILITY_PICKUP, - "PULL" = MOBILITY_PULL, "STAND" = MOBILITY_STAND, - "STORAGE" = MOBILITY_STORAGE, - "UI" = MOBILITY_UI, + "PICKUP" = MOBILITY_PICKUP, "USE" = MOBILITY_USE, + "UI" = MOBILITY_UI, + "STORAGE" = MOBILITY_STORAGE, + "PULL" = MOBILITY_PULL, + "REST" = MOBILITY_REST, + "LIE DOWN" = MOBILITY_LIEDOWN, )) DEFINE_BITFIELD(movement_type, list( @@ -353,7 +366,6 @@ DEFINE_BITFIELD(obj_flags, list( "BLOCKS_CONSTRUCTION" = BLOCKS_CONSTRUCTION, "BLOCKS_CONSTRUCTION_DIR" = BLOCKS_CONSTRUCTION_DIR, "IGNORE_DENSITY" = IGNORE_DENSITY, - "INFINITE_RESKIN" = INFINITE_RESKIN, "CONDUCTS_ELECTRICITY" = CONDUCTS_ELECTRICITY, "NO_DEBRIS_AFTER_DECONSTRUCTION" = NO_DEBRIS_AFTER_DECONSTRUCTION, )) @@ -497,6 +509,18 @@ DEFINE_BITFIELD(bodypart_flags, list( "BODYPART_IMPLANTED" = BODYPART_IMPLANTED, )) +DEFINE_BITFIELD(biological_state, list( + "BIO_INORGANIC" = BIO_INORGANIC, + "BIO_BONE" = BIO_BONE, + "BIO_FLESH" = BIO_FLESH, + "BIO_METAL" = BIO_METAL, + "BIO_WOOD" = BIO_WOOD, + "BIO_WIRED" = BIO_WIRED, + "BIO_BLOODED" = BIO_BLOODED, + "BIO_JOINTED" = BIO_JOINTED, + "BIO_CHITIN" = BIO_CHITIN, +)) + DEFINE_BITFIELD(change_exempt_flags, list( "BP_BLOCK_CHANGE_SPECIES" = BP_BLOCK_CHANGE_SPECIES, )) @@ -668,4 +692,22 @@ DEFINE_BITFIELD(weather_flags, list( "WEATHER_ENDLESS" = WEATHER_ENDLESS, "WEATHER_BAROMETER" = WEATHER_BAROMETER, "WEATHER_TEMPERATURE_BYPASS_CLOTHING" = WEATHER_TEMPERATURE_BYPASS_CLOTHING, + "WEATHER_STRICT_ALERT" = WEATHER_STRICT_ALERT, +)) + +DEFINE_BITFIELD(visible_info, list( + "EMPATH_SEE_COMBAT" = EMPATH_SEE_COMBAT, + "EMPATH_SEE_OXY" = EMPATH_SEE_OXY, + "EMPATH_SEE_TOX" = EMPATH_SEE_TOX, + "EMPATH_SEE_SANITY" = EMPATH_SEE_SANITY, + "EMPATH_SEE_BLIND" = EMPATH_SEE_BLIND, + "EMPATH_SEE_DEAF" = EMPATH_SEE_DEAF, + "EMPATH_SEE_HOT" = EMPATH_SEE_HOT, + "EMPATH_SEE_COLD" = EMPATH_SEE_COLD, + "EMPATH_SEE_EVIL" = EMPATH_SEE_EVIL, +)) + +DEFINE_BITFIELD(allow_custom_character, list( + "GHOSTROLE_TAKE_PREFS_SPECIES" = GHOSTROLE_TAKE_PREFS_SPECIES, + "GHOSTROLE_TAKE_PREFS_APPEARANCE" = GHOSTROLE_TAKE_PREFS_APPEARANCE, )) diff --git a/code/_globalvars/configuration.dm b/code/_globalvars/configuration.dm index 5bece07319c78d..0ff6b651a54ca1 100644 --- a/code/_globalvars/configuration.dm +++ b/code/_globalvars/configuration.dm @@ -13,10 +13,10 @@ GLOBAL_VAR_INIT(ooc_allowed, TRUE) // used with admin verbs to disable ooc - not GLOBAL_VAR_INIT(dooc_allowed, TRUE) -// Debug is used exactly once (in living.dm) but is commented out in a lot of places. It is not set anywhere and only checked. -// Debug2 is used in conjunction with a lot of admin verbs and therefore is actually legit. -GLOBAL_VAR_INIT(Debug, FALSE) // global debug switch -GLOBAL_VAR_INIT(Debug2, FALSE) +// debugging_enabled is used in conjunction with a lot of admin verbs and therefore is actually legit. +// im not sure why you would ever add behavoir, likely use a define like TESTING or even checking `Debugger?.enabled` +/// global debug switch +GLOBAL_VAR_INIT(debugging_enabled, FALSE) //This was a define, but I changed it to a variable so it can be changed in-game.(kept the all-caps definition because... code...) -Errorage //Protecting these because the proper way to edit them is with the config/secrets diff --git a/code/_globalvars/lists/engineering.dm b/code/_globalvars/lists/engineering.dm index 70114905b5f4b9..602452d4789e14 100644 --- a/code/_globalvars/lists/engineering.dm +++ b/code/_globalvars/lists/engineering.dm @@ -21,3 +21,46 @@ GLOBAL_LIST_INIT(all_tool_behaviours, list( TOOL_WIRECUTTER, TOOL_WRENCH, )) + +GLOBAL_LIST_INIT(all_mechanical_tools, list( + TOOL_ANALYZER, + TOOL_CROWBAR, + TOOL_MULTITOOL, + TOOL_SCREWDRIVER, + TOOL_WELDER, + TOOL_WIRECUTTER, + TOOL_WRENCH, +)) + +GLOBAL_LIST_INIT(all_surgical_tools, list( + TOOL_BONESET, + TOOL_CAUTERY, + TOOL_HEMOSTAT, + TOOL_RETRACTOR, + TOOL_SAW, + TOOL_SCALPEL, +)) + +/// Mapping of tool types to icons that represent them +GLOBAL_LIST_INIT(tool_to_image, list( + TOOL_CROWBAR = image(/obj/item/crowbar), + TOOL_MULTITOOL = image(/obj/item/multitool), + TOOL_SCREWDRIVER = image(/obj/item/screwdriver), + TOOL_WIRECUTTER = image(/obj/item/wirecutters), + TOOL_WRENCH = image(/obj/item/wrench), + TOOL_WELDER = image(/obj/item/weldingtool/mini), + TOOL_ANALYZER = image(/obj/item/analyzer), + TOOL_MINING = image(/obj/item/pickaxe), + TOOL_SHOVEL = image(/obj/item/shovel), + TOOL_RETRACTOR = image(/obj/item/retractor), + TOOL_HEMOSTAT = image(/obj/item/hemostat), + TOOL_CAUTERY = image(/obj/item/cautery), + TOOL_DRILL = image(/obj/item/surgicaldrill), + TOOL_SCALPEL = image(/obj/item/scalpel), + TOOL_SAW = image(/obj/item/circular_saw), + TOOL_BONESET = image(/obj/item/bonesetter), + TOOL_KNIFE = image(/obj/item/knife/kitchen), + TOOL_BLOODFILTER = image(/obj/item/blood_filter), + TOOL_ROLLINGPIN = image(/obj/item/kitchen/rollingpin), + TOOL_RUSTSCRAPER = image(/obj/item/wirebrush), +)) diff --git a/code/_globalvars/lists/languages.dm b/code/_globalvars/lists/languages.dm index 31fe0e8707509f..3e2d3c31fe5d64 100644 --- a/code/_globalvars/lists/languages.dm +++ b/code/_globalvars/lists/languages.dm @@ -4,9 +4,12 @@ GLOBAL_LIST_INIT_TYPED(language_datum_instances, /datum/language, init_language_ GLOBAL_LIST_INIT(all_languages, init_all_languages()) /// /List of language prototypes to reference, assoc "name" = typepath GLOBAL_LIST_INIT(language_types_by_name, init_language_types_by_name()) -/// 1000 element long list containing the 1000 most common words in the English language. +/// ~1400 element long list containing the 1000 most common words in the English language in alphabetical order. /// Indexed by word, value is the rank of the word in the list. So accessing it is fasta. -GLOBAL_LIST_INIT(most_common_words, init_common_words()) +GLOBAL_LIST_INIT(most_common_words_alphabetical, init_common_words_by_alphabetical()) +/// ~1000 element long list containing the 1000 most common words in the English language in frequency order. +/// Indexed by word, value is the rank of the word in the list. So accessing it is fasta. +GLOBAL_LIST_INIT(most_common_words_frequency, init_common_words_by_frequency()) /proc/init_language_prototypes() var/list/lang_list = list() @@ -34,10 +37,22 @@ GLOBAL_LIST_INIT(most_common_words, init_common_words()) lang_list[initial(lang_type.name)] = lang_type return lang_list -/proc/init_common_words() +/proc/init_common_words_by_alphabetical() + var/list/word_to_commonness_list = list() + var/i = 1 + for(var/word in world.file2list("strings/1400_most_common_alpha.txt")) + word_to_commonness_list[word] = i + i += 1 + return word_to_commonness_list + +/proc/init_common_words_by_frequency() var/list/word_to_commonness_list = list() var/i = 1 - for(var/word in world.file2list("strings/1000_most_common.txt")) + for(var/word in world.file2list("strings/1000_most_common_frequency.txt")) word_to_commonness_list[word] = i i += 1 + // alphabetical list has a few more entries than the frequency list, so + // if there are any words we're missing, add them with a default "commonness" of 500 + for(var/word in world.file2list("strings/1400_most_common_alpha.txt")) + word_to_commonness_list[word] ||= 500 return word_to_commonness_list diff --git a/code/_globalvars/lists/mobs.dm b/code/_globalvars/lists/mobs.dm index a0e5cd8b89264b..492306d497a10f 100644 --- a/code/_globalvars/lists/mobs.dm +++ b/code/_globalvars/lists/mobs.dm @@ -8,32 +8,15 @@ GLOBAL_LIST_EMPTY(stealthminID) //reference list with IDs that store ckeys, for /// List of types of abstract mob which shouldn't usually exist in the world on its own if we're spawning random mobs GLOBAL_LIST_INIT(abstract_mob_types, list( - /mob/living/basic, - /mob/living/basic/blob_minion, - /mob/living/basic/bot, /mob/living/basic/construct, /mob/living/basic/guardian, /mob/living/basic/heretic_summon, - /mob/living/basic/mimic, // Cannot exist if spawned without being passed an item reference - /mob/living/basic/mining, - /mob/living/basic/pet, + /mob/living/basic/mimic/copy, // Cannot exist if spawned without being passed an item reference /mob/living/basic/soulscythe, // This is just a way for players to control the soulscythe item - /mob/living/basic/spider, - /mob/living/carbon, - /mob/living/carbon/alien, - /mob/living/carbon/alien/adult, /mob/living/carbon/human/consistent, /mob/living/carbon/human/dummy, /mob/living/carbon/human/dummy/consistent, - /mob/living/carbon/human/species, - /mob/living/silicon, - /mob/living/simple_animal, - /mob/living/simple_animal/bot, - /mob/living/simple_animal/hostile, - /mob/living/simple_animal/hostile/asteroid, - /mob/living/simple_animal/hostile/asteroid/elite, - /mob/living/simple_animal/hostile/megafauna, -)) + )) //Since it didn't really belong in any other category, I'm putting this here diff --git a/code/_globalvars/lists/objects.dm b/code/_globalvars/lists/objects.dm index 968991a62a1518..7041a11392dbd8 100644 --- a/code/_globalvars/lists/objects.dm +++ b/code/_globalvars/lists/objects.dm @@ -33,12 +33,6 @@ GLOBAL_LIST_EMPTY_TYPED(singularities, /datum/component/singularity) GLOBAL_LIST_EMPTY(item_to_design_list) -/// list of all surgeries by name, associated with their path. -GLOBAL_LIST_INIT(surgeries_list, init_surgeries()) - -/// list of all surgery steps, associated by their path. -GLOBAL_LIST_INIT(surgery_steps, init_subtypes_w_path_keys(/datum/surgery_step, list())) - /// Global list of all non-cooking related crafting recipes. GLOBAL_LIST_EMPTY(crafting_recipes) /// This is a global list of typepaths, these typepaths are atoms or reagents that are associated with crafting recipes. @@ -104,4 +98,3 @@ GLOBAL_LIST_INIT(prototype_organs, typecacheof(list( /obj/item/organ/eyes/dullahan, /obj/item/organ/taur_body // DOPPLER SHIFT EDIT - Taurs ), only_root_path = TRUE)) - diff --git a/code/_globalvars/lists/poll_ignore.dm b/code/_globalvars/lists/poll_ignore.dm index 7fc93081ad2463..2a88c05de6a60f 100644 --- a/code/_globalvars/lists/poll_ignore.dm +++ b/code/_globalvars/lists/poll_ignore.dm @@ -16,6 +16,7 @@ #define POLL_IGNORE_GOLEM "golem" #define POLL_IGNORE_HERETIC_MONSTER "heretic_monster" #define POLL_IGNORE_HOLOPARASITE "holoparasite" +#define POLL_IGNORE_HORRIFIC_NECKTIE "horrific_necktie" #define POLL_IGNORE_IMAGINARYFRIEND "imaginary_friend" #define POLL_IGNORE_LAVALAND_ELITE "lavaland_elite" #define POLL_IGNORE_MAID_IN_MIRROR "maid_in_mirror" @@ -57,6 +58,7 @@ GLOBAL_LIST_INIT(poll_ignore_desc, list( POLL_IGNORE_GOLEM = "Golems", POLL_IGNORE_HERETIC_MONSTER = "Heretic Monster", POLL_IGNORE_HOLOPARASITE = "Holoparasite", + POLL_IGNORE_HORRIFIC_NECKTIE = "Horrific Necktie", POLL_IGNORE_IMAGINARYFRIEND = "Imaginary Friend", POLL_IGNORE_LAVALAND_ELITE = "Lavaland elite", POLL_IGNORE_MAID_IN_MIRROR = "Maid in the Mirror", diff --git a/code/_globalvars/lists/reagents.dm b/code/_globalvars/lists/reagents.dm index 481465e074c309..35bb0d073bc80c 100644 --- a/code/_globalvars/lists/reagents.dm +++ b/code/_globalvars/lists/reagents.dm @@ -172,7 +172,12 @@ GLOBAL_LIST_INIT(plant_traits, init_plant_traits()) if(!is_type_in_typecache(reaction.type, blacklist)) //Master list of ALL reactions that is used in the UI lookup table. This is expensive to make, and we don't want to lag the server by creating it on UI request, so it's cached to send to UIs instantly. - GLOB.chemical_reactions_results_lookup_list += list(list("name" = product_name, "id" = reaction.type, "bitflags" = bitflags, "reactants" = reagents)) + GLOB.chemical_reactions_results_lookup_list += list(list( + "name" = product_name, + "id" = reaction.type, + "bitflags" = bitflags, + "reactants" = reagents, + )) // Create filters based on each reagent id in the required reagents list - this is specifically for finding reactions from product(reagent) ids/typepaths. for(var/id in product_ids) diff --git a/code/_globalvars/traits/_traits.dm b/code/_globalvars/traits/_traits.dm index e784b820a9d60a..ac1f7ecbaa1318 100644 --- a/code/_globalvars/traits/_traits.dm +++ b/code/_globalvars/traits/_traits.dm @@ -51,6 +51,7 @@ GLOBAL_LIST_INIT(traits_by_type, list( "TRAIT_CASTABLE_LOC" = TRAIT_CASTABLE_LOC, "TRAIT_CHASM_STOPPER" = TRAIT_CHASM_STOPPER, "TRAIT_COMBAT_MODE_SKIP_INTERACTION" = TRAIT_COMBAT_MODE_SKIP_INTERACTION, + "TRAIT_DANGEROUS_BUCKLE" = TRAIT_DANGEROUS_BUCKLE, "TRAIT_DEL_ON_SPACE_DUMP" = TRAIT_DEL_ON_SPACE_DUMP, "TRAIT_FOOD_DONT_INHERIT_NAME_FROM_PROCESSED" = TRAIT_FOOD_DONT_INHERIT_NAME_FROM_PROCESSED, "TRAIT_FROZEN" = TRAIT_FROZEN, @@ -279,7 +280,6 @@ GLOBAL_LIST_INIT(traits_by_type, list( "TRAIT_ELDRITCH_PAINTING_EXAMINE" = TRAIT_ELDRITCH_PAINTING_EXAMINE, "TRAIT_ELITE_CHALLENGER" = TRAIT_ELITE_CHALLENGER, "TRAIT_EMOTEMUTE" = TRAIT_EMOTEMUTE, - "TRAIT_EMPATH" = TRAIT_EMPATH, "TRAIT_ENTRAILS_READER" = TRAIT_ENTRAILS_READER, "TRAIT_EVIL" = TRAIT_EVIL, "TRAIT_EXAMINE_DEEPER_FISH" = TRAIT_EXAMINE_DEEPER_FISH, @@ -352,8 +352,9 @@ GLOBAL_LIST_INIT(traits_by_type, list( "TRAIT_HUSK" = TRAIT_HUSK, "TRAIT_HYPOTHERMIC" = TRAIT_HYPOTHERMIC, "TRAIT_ID_APPRAISER" = TRAIT_ID_APPRAISER, - "TRAIT_IGNORE_ELEVATION" = TRAIT_IGNORE_ELEVATION, "TRAIT_IGNORESLOWDOWN" = TRAIT_IGNORESLOWDOWN, + "TRAIT_IGNORE_ELEVATION" = TRAIT_IGNORE_ELEVATION, + "TRAIT_IGNORE_SURGERY_MODIFIERS" = TRAIT_IGNORE_SURGERY_MODIFIERS, "TRAIT_IGNORING_GRAVITY" = TRAIT_IGNORING_GRAVITY, "TRAIT_ILLITERATE" = TRAIT_ILLITERATE, "TRAIT_IMMOBILIZED" = TRAIT_IMMOBILIZED, @@ -437,6 +438,7 @@ GLOBAL_LIST_INIT(traits_by_type, list( "TRAIT_NOMOBSWAP" = TRAIT_NOMOBSWAP, "TRAIT_HEAD_ATMOS_SEALED" = TRAIT_HEAD_ATMOS_SEALED, "TRAIT_NOSOFTCRIT" = TRAIT_NOSOFTCRIT, + "TRAIT_NO_OXYLOSS_PASSOUT" = TRAIT_NO_OXYLOSS_PASSOUT, "TRAIT_NO_AUGMENTS" = TRAIT_NO_AUGMENTS, "TRAIT_NO_BLOOD_OVERLAY" = TRAIT_NO_BLOOD_OVERLAY, "TRAIT_NO_BREATHLESS_DAMAGE" = TRAIT_NO_BREATHLESS_DAMAGE, @@ -503,6 +505,7 @@ GLOBAL_LIST_INIT(traits_by_type, list( "TRAIT_QUICK_CARRY" = TRAIT_QUICK_CARRY, "TRAIT_RADIMMUNE" = TRAIT_RADIMMUNE, "TRAIT_RDS_SUPPRESSED" = TRAIT_RDS_SUPPRESSED, + "TRAIT_READY_TO_OPERATE" = TRAIT_READY_TO_OPERATE, "TRAIT_REAGENT_SCANNER" = TRAIT_REAGENT_SCANNER, "TRAIT_RECENTLY_BLOCKED_MAGIC" = TRAIT_RECENTLY_BLOCKED_MAGIC, "TRAIT_RECENTLY_TREATED" = TRAIT_RECENTLY_TREATED, @@ -529,6 +532,7 @@ GLOBAL_LIST_INIT(traits_by_type, list( "TRAIT_SABRAGE_PRO" = TRAIT_SABRAGE_PRO, "TRAIT_SECURITY_HUD" = TRAIT_SECURITY_HUD, "TRAIT_SECURITY_HUD_ID_ONLY" = TRAIT_SECURITY_HUD_ID_ONLY, + "TRAIT_SEE_MASK_WHISPER" = TRAIT_SEE_MASK_WHISPER, "TRAIT_SEE_WORN_COLOURS" = TRAIT_SEE_WORN_COLOURS, "TRAIT_SELF_AWARE" = TRAIT_SELF_AWARE, "TRAIT_SELF_SURGERY" = TRAIT_SELF_SURGERY, @@ -557,7 +561,6 @@ GLOBAL_LIST_INIT(traits_by_type, list( "TRAIT_SPARRING" = TRAIT_SPARRING, "TRAIT_SPAWNED_MOB" = TRAIT_SPAWNED_MOB, "TRAIT_SPEAKS_CLEARLY" = TRAIT_SPEAKS_CLEARLY, - "TRAIT_SPECIAL_TRAUMA_BOOST" = TRAIT_SPECIAL_TRAUMA_BOOST, "TRAIT_SPELLS_LOTTERY" = TRAIT_SPELLS_LOTTERY, "TRAIT_SPIDER_CONSUMED" = TRAIT_SPIDER_CONSUMED, "TRAIT_SPIRITUAL" = TRAIT_SPIRITUAL, @@ -577,7 +580,6 @@ GLOBAL_LIST_INIT(traits_by_type, list( "TRAIT_SUCCUMB_OVERRIDE" = TRAIT_SUCCUMB_OVERRIDE, "TRAIT_SUICIDED" = TRAIT_SUICIDED, "TRAIT_SUPERMATTER_SOOTHER" = TRAIT_SUPERMATTER_SOOTHER, - "TRAIT_SURGEON" = TRAIT_SURGEON, "TRAIT_SURGICALLY_ANALYZED" = TRAIT_SURGICALLY_ANALYZED, "TRAIT_SWIMMER" = TRAIT_SWIMMER, "TRAIT_TACKLING_FRAIL_ATTACKER" = TRAIT_TACKLING_FRAIL_ATTACKER, @@ -664,6 +666,9 @@ GLOBAL_LIST_INIT(traits_by_type, list( "TRAIT_FLOATING_HELD" = TRAIT_FLOATING_HELD, // DOPPLER EDIT ADDITION "TRAIT_RECYCLE_LIKE_ITEM" = TRAIT_RECYCLE_LIKE_ITEM, // DOPPLER EDIT ADDITION ), + /mob/living/carbon = list( + "TRAIT_BRAINLESS_CARBON" = TRAIT_BRAINLESS_CARBON, + ), /mob/dead/observer = list( "TRAIT_NO_OBSERVE" = TRAIT_NO_OBSERVE, ), @@ -740,6 +745,7 @@ GLOBAL_LIST_INIT(traits_by_type, list( "TRAIT_FISH_ELECTROGENESIS" = TRAIT_FISH_ELECTROGENESIS, "TRAIT_FISH_FED_LUBE" = TRAIT_FISH_FED_LUBE, "TRAIT_FISH_FLOPPING" = TRAIT_FISH_FLOPPING, + "TRAIT_FISH_GENEGUNNED" = TRAIT_FISH_GENEGUNNED, "TRAIT_FISH_INK_ON_COOLDOWN" = TRAIT_FISH_INK_ON_COOLDOWN, "TRAIT_FISH_LOW_PRICE" = TRAIT_FISH_LOW_PRICE, "TRAIT_FISH_MADE_OF_BONE" = TRAIT_FISH_MADE_OF_BONE, @@ -784,9 +790,11 @@ GLOBAL_LIST_INIT(traits_by_type, list( "TRAIT_CLIENT_STARTING_ORGAN" = TRAIT_CLIENT_STARTING_ORGAN, "TRAIT_LIVING_HEART" = TRAIT_LIVING_HEART, "TRAIT_USED_ORGAN" = TRAIT_USED_ORGAN, + "TRAIT_ORGAN_OPERATED_ON" = TRAIT_ORGAN_OPERATED_ON, ), /obj/item/organ/brain = list( "TRAIT_BRAIN_DAMAGE_NODEATH" = TRAIT_BRAIN_DAMAGE_NODEATH, + "TRAIT_SPECIAL_TRAUMA_BOOST" = TRAIT_SPECIAL_TRAUMA_BOOST, ), /obj/item/organ/liver = list( "TRAIT_BALLMER_SCIENTIST" = TRAIT_BALLMER_SCIENTIST, @@ -815,6 +823,7 @@ GLOBAL_LIST_INIT(traits_by_type, list( "TRAIT_MECHA_DIAGNOSTIC_CREATED" = TRAIT_MECHA_DIAGNOSTIC_CREATED, ), /turf = list( + "TRAIT_AI_AVOID_TURF" = TRAIT_AI_AVOID_TURF, "TRAIT_CHASM_STOPPED" = TRAIT_CHASM_STOPPED, "TRAIT_CONTAINMENT_FIELD" = TRAIT_CONTAINMENT_FIELD, "TRAIT_ELEVATED_TURF" = TRAIT_ELEVATED_TURF, diff --git a/code/_globalvars/traits/admin_tooling.dm b/code/_globalvars/traits/admin_tooling.dm index ce95a0af58be88..caa7233b157288 100644 --- a/code/_globalvars/traits/admin_tooling.dm +++ b/code/_globalvars/traits/admin_tooling.dm @@ -103,7 +103,6 @@ GLOBAL_LIST_INIT(admin_visible_traits, list( "TRAIT_EASILY_WOUNDED" = TRAIT_EASILY_WOUNDED, "TRAIT_EASYDISMEMBER" = TRAIT_EASYDISMEMBER, "TRAIT_EMOTEMUTE" = TRAIT_EMOTEMUTE, - "TRAIT_EMPATH" = TRAIT_EMPATH, "TRAIT_ENTRAILS_READER" = TRAIT_ENTRAILS_READER, "TRAIT_EVIL" = TRAIT_EVIL, "TRAIT_EXAMINE_FISHING_SPOT" = TRAIT_EXAMINE_FISHING_SPOT, @@ -232,6 +231,7 @@ GLOBAL_LIST_INIT(admin_visible_traits, list( "TRAIT_NOLIMBDISABLE" = TRAIT_NOLIMBDISABLE, "TRAIT_NOMOBSWAP" = TRAIT_NOMOBSWAP, "TRAIT_NOSOFTCRIT" = TRAIT_NOSOFTCRIT, + "TRAIT_NO_OXYLOSS_PASSOUT" = TRAIT_NO_OXYLOSS_PASSOUT, "TRAIT_OFF_BALANCE_TACKLER" = TRAIT_OFF_BALANCE_TACKLER, "TRAIT_OIL_FRIED" = TRAIT_OIL_FRIED, "TRAIT_OVERDOSEIMMUNE" = TRAIT_OVERDOSEIMMUNE, @@ -273,6 +273,7 @@ GLOBAL_LIST_INIT(admin_visible_traits, list( "TRAIT_ROD_SUPLEX" = TRAIT_ROD_SUPLEX, "TRAIT_ROUGHRIDER" = TRAIT_ROUGHRIDER, "TRAIT_SABRAGE_PRO" = TRAIT_SABRAGE_PRO, + "TRAIT_SEE_MASK_WHISPER" = TRAIT_SEE_MASK_WHISPER, "TRAIT_SECURITY_HUD" = TRAIT_SECURITY_HUD, "TRAIT_SECURITY_HUD_ID_ONLY" = TRAIT_SECURITY_HUD_ID_ONLY, "TRAIT_SELF_AWARE" = TRAIT_SELF_AWARE, @@ -292,7 +293,6 @@ GLOBAL_LIST_INIT(admin_visible_traits, list( "TRAIT_SOOTHED_THROAT" = TRAIT_SOOTHED_THROAT, "TRAIT_SOOTHED_HEADACHE" = TRAIT_SOOTHED_HEADACHE, "TRAIT_SPACEWALK" = TRAIT_SPACEWALK, - "TRAIT_SPECIAL_TRAUMA_BOOST" = TRAIT_SPECIAL_TRAUMA_BOOST, "TRAIT_SPIRITUAL" = TRAIT_SPIRITUAL, "TRAIT_STABLEHEART" = TRAIT_STABLEHEART, "TRAIT_STABLELIVER" = TRAIT_STABLELIVER, @@ -303,7 +303,6 @@ GLOBAL_LIST_INIT(admin_visible_traits, list( "TRAIT_STUNIMMUNE" = TRAIT_STUNIMMUNE, "TRAIT_STURDY_FRAME" = TRAIT_STURDY_FRAME, "TRAIT_SUPERMATTER_SOOTHER" = TRAIT_SUPERMATTER_SOOTHER, - "TRAIT_SURGEON" = TRAIT_SURGEON, "TRAIT_SWIMMER" = TRAIT_SWIMMER, "TRAIT_SURGICALLY_ANALYZED" = TRAIT_SURGICALLY_ANALYZED, "TRAIT_TACKLING_FRAIL_ATTACKER" = TRAIT_TACKLING_FRAIL_ATTACKER, @@ -411,6 +410,9 @@ GLOBAL_LIST_INIT(admin_visible_traits, list( "TRAIT_LIVING_HEART" = TRAIT_LIVING_HEART, "TRAIT_USED_ORGAN" = TRAIT_USED_ORGAN, ), + /obj/item/organ/brain = list( + "TRAIT_SPECIAL_TRAUMA_BOOST" = TRAIT_SPECIAL_TRAUMA_BOOST, + ), /obj/item/organ/liver = list( "TRAIT_BALLMER_SCIENTIST" = TRAIT_BALLMER_SCIENTIST, "TRAIT_COMEDY_METABOLISM" = TRAIT_COMEDY_METABOLISM, diff --git a/code/_onclick/ai.dm b/code/_onclick/ai.dm index 1f5c943d4544d0..394fe4cd206c97 100644 --- a/code/_onclick/ai.dm +++ b/code/_onclick/ai.dm @@ -294,4 +294,4 @@ // /mob/living/silicon/ai/TurfAdjacent(turf/target_turf) - return (GLOB.cameranet && GLOB.cameranet.checkTurfVis(target_turf)) + return (SScameras.is_visible_by_cameras(target_turf)) diff --git a/code/_onclick/hud/alert.dm b/code/_onclick/hud/alert.dm index 0087df9f773d8f..a157661683b060 100644 --- a/code/_onclick/hud/alert.dm +++ b/code/_onclick/hud/alert.dm @@ -53,8 +53,8 @@ if(new_master) thealert.master_ref = master_ref thealert.RegisterSignal(new_master, COMSIG_ATOM_UPDATE_APPEARANCE, TYPE_PROC_REF(/atom/movable/screen/alert, on_master_update_appearance)) - thealert.update_appearance(UPDATE_OVERLAYS) - else + thealert.update_appearance() + else if(severity) thealert.icon_state = "[initial(thealert.icon_state)][severity]" thealert.severity = severity @@ -95,7 +95,7 @@ /atom/movable/screen/alert icon = 'icons/hud/screen_alert.dmi' - icon_state = "default" + icon_state = "template" name = "Alert" desc = "Something seems to have gone wrong with this alert, so report this bug please" mouse_opacity = MOUSE_OPACITY_ICON @@ -112,12 +112,20 @@ ///If set true, instead of using the default icon file for screen alerts, it will use the hud's ui style var/use_user_hud_icon = FALSE + ///If set, this overlay will be added to the icon. + var/overlay_state + ///The file to fetch the overlay from + var/overlay_icon = 'icons/hud/screen_alert.dmi' /atom/movable/screen/alert/Initialize(mapload, datum/hud/hud_owner) . = ..() + if(PERFORM_ALL_TESTS(focus_only/screen_alert_overlay) && overlay_state && !icon_exists(overlay_icon, overlay_state)) + stack_trace("overlay_state: \"[overlay_state || "null"]\" that couldn't be found overlay_icon: \"[overlay_icon || "null"]\"") if(clickable_glow) add_filter("clickglow", 2, outline_filter(color = COLOR_GOLD, size = 1)) mouse_over_pointer = MOUSE_HAND_POINTER + if(overlay_state) + update_appearance() /atom/movable/screen/alert/MouseEntered(location,control,params) . = ..() @@ -129,14 +137,15 @@ /atom/movable/screen/alert/proc/on_master_update_appearance(datum/source) SIGNAL_HANDLER - update_appearance(UPDATE_OVERLAYS) + update_appearance() /atom/movable/screen/alert/update_overlays() . = ..() var/atom/our_master = master_ref?.resolve() - if(!istype(our_master) || QDELETED(our_master)) - return - . += add_atom_icon(our_master) + if(istype(our_master) && !QDELETED(our_master)) + . += add_atom_icon(our_master) + if(overlay_state) + . += mutable_appearance(overlay_icon, overlay_state) ///Returns a copy of the appearance of the atom, with its base pixel coordinates. Useful for overlays /atom/movable/screen/alert/proc/add_atom_icon(atom/atom) @@ -149,8 +158,7 @@ atom_appearance.pixel_y = atom.base_pixel_y atom_appearance.pixel_w = atom.base_pixel_w atom_appearance.pixel_z = atom.base_pixel_z - strip_appearance_underlays(atom_appearance) - return atom_appearance + return strip_appearance_underlays(atom_appearance) /atom/movable/screen/alert/Click(location, control, params) SHOULD_CALL_PARENT(TRUE) @@ -252,26 +260,33 @@ name = "Bronchodilated" desc = "You feel like your lungs are larger than usual! You're taking deeper breaths!" icon_state = "bronchodilated" + use_user_hud_icon = TRUE + overlay_icon = 'icons/obj/medical/organs/organs.dmi' + overlay_state = "lungs" /atom/movable/screen/alert/bronchoconstricted name = "Bronchocontracted" desc = "You feel like your lungs are smaller than usual! You might need a higher pressure environment/internals to breathe!" - icon_state = "bronchoconstricted" + use_user_hud_icon = TRUE + overlay_state = "bronchoconstricted" /atom/movable/screen/alert/gross name = "Grossed out." desc = "That was kind of gross..." - icon_state = "gross" + use_user_hud_icon = TRUE + overlay_state = "gross" /atom/movable/screen/alert/verygross name = "Very grossed out." desc = "You're not feeling very well..." - icon_state = "gross2" + use_user_hud_icon = TRUE + overlay_state = "gross2" /atom/movable/screen/alert/disgusted name = "DISGUSTED" desc = "ABSOLUTELY DISGUSTIN'" - icon_state = "gross3" + use_user_hud_icon = TRUE + overlay_state = "gross3" /atom/movable/screen/alert/hot name = "Too Hot" @@ -296,13 +311,15 @@ /atom/movable/screen/alert/hypnosis name = "Hypnosis" desc = "Something's hypnotizing you, but you're not really sure about what." - icon_state = ALERT_HYPNOSIS + use_user_hud_icon = TRUE + overlay_state = "hypnosis" var/phrase /atom/movable/screen/alert/mind_control name = "Mind Control" desc = "Your mind has been hijacked! Click to view the mind control command." - icon_state = ALERT_MIND_CONTROL + use_user_hud_icon = TRUE + overlay_state = "mind_control" clickable_glow = TRUE var/command @@ -316,7 +333,8 @@ name = "Embedded Object" desc = "Something got lodged into your flesh and is causing major bleeding. It might fall out with time, but surgery is the safest way. \ If you're feeling frisky, examine yourself and click the underlined item to pull the object out." - icon_state = ALERT_EMBEDDED_OBJECT + use_user_hud_icon = TRUE + overlay_state = "embeddedobject" clickable_glow = TRUE /atom/movable/screen/alert/embeddedobject/Click() @@ -330,25 +348,29 @@ /atom/movable/screen/alert/negative name = "Negative Gravity" desc = "You're getting pulled upwards. While you won't have to worry about falling down anymore, you may accidentally fall upwards!" - icon_state = "negative" + use_user_hud_icon = TRUE + overlay_state = "negative" /atom/movable/screen/alert/weightless name = "Weightless" desc = "Gravity has ceased affecting you, and you're floating around aimlessly. You'll need something large and heavy, like a \ -wall or lattice, to push yourself off if you want to move. A jetpack would enable free range of motion. A pair of \ -magboots would let you walk around normally on the floor. Barring those, you can throw things, use a fire extinguisher, \ -or shoot a gun to move around via Newton's 3rd Law of Motion." - icon_state = "weightless" + wall or lattice, to push yourself off if you want to move. A jetpack would enable free range of motion. A pair of \ + magboots would let you walk around normally on the floor. Barring those, you can throw things, use a fire extinguisher, \ + or shoot a gun to move around via Newton's 3rd Law of Motion." + use_user_hud_icon = TRUE + overlay_state = "weightless" /atom/movable/screen/alert/highgravity name = "High Gravity" desc = "You're getting crushed by high gravity, picking up items and movement will be slowed." - icon_state = "paralysis" + use_user_hud_icon = TRUE + overlay_state = "paralysis" /atom/movable/screen/alert/veryhighgravity name = "Crushing Gravity" desc = "You're getting crushed by high gravity, picking up items and movement will be slowed. You'll also accumulate brute damage!" - icon_state = "paralysis" + use_user_hud_icon = TRUE + overlay_state = "paralysis" /atom/movable/screen/alert/fire name = "On Fire" @@ -547,7 +569,9 @@ or shoot a gun to move around via Newton's 3rd Law of Motion." /atom/movable/screen/alert/succumb name = "Succumb" desc = "Shuffle off this mortal coil." - icon_state = ALERT_SUCCUMB + use_user_hud_icon = TRUE + overlay_icon = 'icons/mob/simple/mob.dmi' + overlay_state = "ghost" clickable_glow = TRUE var/static/list/death_titles = list( "Goodnight, Sweet Prince", @@ -1078,9 +1102,24 @@ or shoot a gun to move around via Newton's 3rd Law of Motion." /atom/movable/screen/alert/buckled name = "Buckled" desc = "You've been buckled to something. Click the alert to unbuckle unless you're handcuffed." - icon_state = ALERT_BUCKLED + use_user_hud_icon = TRUE + overlay_state = "buckled" + click_master = FALSE clickable_glow = TRUE +/atom/movable/screen/alert/buckled/Click() + . = ..() + if(!.) + return + + var/mob/living/living_owner = owner + + if(!living_owner.can_resist()) + return + living_owner.changeNext_move(CLICK_CD_RESIST) + if(living_owner.last_special <= world.time) + return living_owner.resist_buckle() + /atom/movable/screen/alert/restrained icon_state = "template" use_user_hud_icon = TRUE @@ -1110,28 +1149,10 @@ or shoot a gun to move around via Newton's 3rd Law of Motion." if((living_owner.mobility_flags & MOBILITY_MOVE) && (living_owner.last_special <= world.time)) return living_owner.resist_restraints() -/atom/movable/screen/alert/buckled/Click() - . = ..() - if(!.) - return - - var/mob/living/living_owner = owner - - if(!living_owner.can_resist()) - return - living_owner.changeNext_move(CLICK_CD_RESIST) - if(living_owner.last_special <= world.time) - return living_owner.resist_buckle() - -/atom/movable/screen/alert/shoes/untied - name = "Untied Shoes" - desc = "Your shoes are untied! Click the alert or your shoes to tie them." - icon_state = ALERT_SHOES_KNOT - -/atom/movable/screen/alert/shoes/knotted - name = "Knotted Shoes" - desc = "Someone tied your shoelaces together! Click the alert or your shoes to undo the knot." - icon_state = ALERT_SHOES_KNOT +/atom/movable/screen/alert/shoes + use_user_hud_icon = TRUE + overlay_icon = /obj/item/clothing/shoes/sneakers::icon + overlay_state = /obj/item/clothing/shoes/sneakers::icon_state clickable_glow = TRUE /atom/movable/screen/alert/shoes/Click() @@ -1147,10 +1168,22 @@ or shoot a gun to move around via Newton's 3rd Law of Motion." carbon_owner.changeNext_move(CLICK_CD_RESIST) carbon_owner.shoes.handle_tying(carbon_owner) +/atom/movable/screen/alert/shoes/untied + name = "Untied Shoes" + desc = "Your shoes are untied! Click the alert or your shoes to tie them." + use_user_hud_icon = TRUE + overlay_icon = /obj/item/clothing/shoes/sneakers::icon + overlay_state = /obj/item/clothing/shoes/sneakers::icon_state + +/atom/movable/screen/alert/shoes/knotted + name = "Knotted Shoes" + desc = "Someone tied your shoelaces together! Click the alert or your shoes to undo the knot." + /atom/movable/screen/alert/unpossess_object name = "Unpossess" desc = "You are possessing an object. Click this alert to unpossess it." - icon_state = "buckled" + use_user_hud_icon = TRUE + overlay_state = "buckled" clickable_glow = TRUE /atom/movable/screen/alert/unpossess_object/Click() diff --git a/code/_onclick/hud/credits.dm b/code/_onclick/hud/credits.dm index 2ce3923c88740a..44749e0e4a2ef6 100644 --- a/code/_onclick/hud/credits.dm +++ b/code/_onclick/hud/credits.dm @@ -1,7 +1,7 @@ -#define CREDIT_ROLL_SPEED 125 -#define CREDIT_SPAWN_SPEED 10 +#define CREDIT_ROLL_SPEED (12.5 SECONDS) +#define CREDIT_SPAWN_SPEED (1 SECONDS) #define CREDIT_ANIMATE_HEIGHT (14 * ICON_SIZE_Y) -#define CREDIT_EASE_DURATION 22 +#define CREDIT_EASE_DURATION (2.2 SECONDS) #define CREDITS_PATH "[global.config.directory]/contributors.dmi" /client/proc/RollCredits() @@ -37,7 +37,6 @@ screen_loc = "12,1" plane = SPLASHSCREEN_PLANE var/client/parent - var/matrix/target /atom/movable/screen/credit/Initialize(mapload, datum/hud/hud_owner, credited, client/P, icon/I) . = ..() @@ -47,11 +46,10 @@ maptext = MAPTEXT_PIXELLARI(credited) maptext_x = ICON_SIZE_X + 8 maptext_y = (ICON_SIZE_Y / 2) - 4 - maptext_width = ICON_SIZE_X * 3 + maptext_width = ICON_SIZE_X * 6 var/matrix/M = matrix(transform) M.Translate(0, CREDIT_ANIMATE_HEIGHT) animate(src, transform = M, time = CREDIT_ROLL_SPEED) - target = M animate(src, alpha = 255, time = CREDIT_EASE_DURATION, flags = ANIMATION_PARALLEL) addtimer(CALLBACK(src, PROC_REF(FadeOut)), CREDIT_ROLL_SPEED - CREDIT_EASE_DURATION) QDEL_IN(src, CREDIT_ROLL_SPEED) @@ -67,7 +65,7 @@ return ..() /atom/movable/screen/credit/proc/FadeOut() - animate(src, alpha = 0, transform = target, time = CREDIT_EASE_DURATION) + animate(src, alpha = 0, time = CREDIT_EASE_DURATION, flags = ANIMATION_PARALLEL) #undef CREDIT_ANIMATE_HEIGHT #undef CREDIT_EASE_DURATION diff --git a/code/_onclick/hud/fullscreen.dm b/code/_onclick/hud/fullscreen.dm index e26eb16f6ccc74..ed01cf11d6bb2c 100644 --- a/code/_onclick/hud/fullscreen.dm +++ b/code/_onclick/hud/fullscreen.dm @@ -129,6 +129,11 @@ /atom/movable/screen/fullscreen/blind/cyborg show_when_dead = TRUE +/atom/movable/screen/fullscreen/blind/noflicker + icon_state = "blackimageoverlaystatic" + layer = BLIND_LAYER + plane = FULLSCREEN_PLANE + /atom/movable/screen/fullscreen/curse icon_state = "curse" layer = CURSE_LAYER diff --git a/code/_onclick/hud/ghost.dm b/code/_onclick/hud/ghost.dm index f3a82df466bf70..c3a856638853d2 100644 --- a/code/_onclick/hud/ghost.dm +++ b/code/_onclick/hud/ghost.dm @@ -64,6 +64,83 @@ var/mob/dead/observer/observer = usr observer.open_minigames_menu() +/atom/movable/screen/ghost/hudbox + icon_state = "smallbox" + abstract_type = /atom/movable/screen/ghost/hudbox + /// Icon state used for the overlay representing this hudbox + var/hud_icon_state + /// The flag this hudbox toggles + var/relevant_flag + +/atom/movable/screen/ghost/hudbox/update_overlays() + . = ..() + . += hud_icon_state + +/atom/movable/screen/ghost/hudbox/update_icon_state() + . = ..() + var/mob/dead/observer/observer = hud?.mymob + if(!istype(observer)) + return + + icon_state = "smallbox[is_active(observer) ? "_active" : ""]" + +/atom/movable/screen/ghost/hudbox/proc/is_active(mob/dead/observer/observer) + return (observer.ghost_hud_flags & relevant_flag) + +/atom/movable/screen/ghost/hudbox/Click(location, control, params) + var/mob/dead/observer/observer = usr + switch(relevant_flag) + if(GHOST_DARKNESS_LEVEL) + observer.toggle_darkness() + if(GHOST_TRAY) + observer.tray_view() + else + observer.toggle_ghost_hud_flag(relevant_flag) + + update_appearance(UPDATE_ICON_STATE) + +/atom/movable/screen/ghost/hudbox/health_scanner + name = "Health Scanner" + desc = "Toggles your ability to health scan mobs on click." + hud_icon_state = "health_vision" + relevant_flag = GHOST_HEALTH + +/atom/movable/screen/ghost/hudbox/chem_scanner + name = "Chem Scanner" + desc = "Toggles your ability to chemical scan mobs on click." + hud_icon_state = "chem_vision" + relevant_flag = GHOST_CHEM + +/atom/movable/screen/ghost/hudbox/gas_scanner + name = "Gas Scanner" + desc = "Toggles your ability to gas scan objects on click." + hud_icon_state = "atmos_vision" + relevant_flag = GHOST_GAS + +/atom/movable/screen/ghost/hudbox/ghost + name = "Ghost Vision" + desc = "Toggles whether you can see other ghosts." + hud_icon_state = "ghost_vision" + relevant_flag = GHOST_VISION + +/atom/movable/screen/ghost/hudbox/data_huds + name = "Data HUDs" + desc = "Toggles the display of data HUDs (health, security, diagnostics, etc)." + hud_icon_state = "data_vision" + relevant_flag = GHOST_DATA_HUDS + +/atom/movable/screen/ghost/hudbox/tray_icon + name = "Tray View" + desc = "Shows the t-ray view of the area around your ghost." + hud_icon_state = "tray_vision" + relevant_flag = GHOST_TRAY + +/atom/movable/screen/ghost/hudbox/darkness_level + name = "Darkness Level" + desc = "Cycles through different darkness levels for ghost vision." + hud_icon_state = "darkness_vision" + relevant_flag = GHOST_DARKNESS_LEVEL + /datum/hud/ghost/New(mob/owner) ..() var/atom/movable/screen/using @@ -111,6 +188,19 @@ floor_change.screen_loc = ui_ghost_floor_changer static_inventory += floor_change + var/list/hudboxes = valid_subtypesof(/atom/movable/screen/ghost/hudbox) + for(var/i in 1 to length(hudboxes)) + var/hudbox_type = hudboxes[i] + var/atom/movable/screen/ghost/hudbox/hudbox = new hudbox_type(null, src) + hudbox.screen_loc = position_hudbox(i - 1) + static_inventory += hudbox + hudbox.update_appearance() + +/datum/hud/ghost/proc/position_hudbox(i) + var/row = floor(i / 3) + var/column = i % 3 + return "SOUTH:[6 + row * 16], CENTER+5:[7 + column * 15]" + /datum/hud/ghost/show_hud(version = 0, mob/viewmob) // don't show this HUD if observing; show the HUD of the observee var/mob/dead/observer/O = mymob @@ -123,7 +213,9 @@ return var/mob/screenmob = viewmob || mymob if(screenmob.client.prefs.read_preference(/datum/preference/toggle/ghost_hud)) - screenmob.client.screen += static_inventory + screenmob.client.screen |= static_inventory + for(var/atom/movable/screen/ghost/hudbox/hud in static_inventory) + hud.update_appearance() else screenmob.client.screen -= static_inventory diff --git a/code/_onclick/hud/hud.dm b/code/_onclick/hud/hud.dm index c94347b4427245..41367d95d81c48 100644 --- a/code/_onclick/hud/hud.dm +++ b/code/_onclick/hud/hud.dm @@ -408,6 +408,7 @@ GLOBAL_LIST_INIT(available_ui_styles, list( for(var/M in mymob.observers) show_hud(hud_version, M) else if (viewmob.hud_used) + viewmob.hide_other_mob_action_buttons(mymob) viewmob.hud_used.plane_masters_update() viewmob.show_other_mob_action_buttons(mymob) @@ -840,4 +841,4 @@ GLOBAL_LIST_INIT(available_ui_styles, list( /datum/action_group/listed/refresh_actions() . = ..() - owner.palette_actions.refresh_actions() // We effect them, so we gotta refresh em + owner?.palette_actions.refresh_actions() // We effect them, so we gotta refresh em diff --git a/code/_onclick/hud/living.dm b/code/_onclick/hud/living.dm index 71e88d5357d873..e0d684a4bd52c5 100644 --- a/code/_onclick/hud/living.dm +++ b/code/_onclick/hud/living.dm @@ -22,3 +22,6 @@ //mob health doll! assumes whatever sprite the mob is healthdoll = new /atom/movable/screen/healthdoll/living(null, src) infodisplay += healthdoll + + stamina = new /atom/movable/screen/stamina(null, src) + infodisplay += stamina diff --git a/code/_onclick/hud/new_player.dm b/code/_onclick/hud/new_player.dm index e363240b72e34a..d4e57cc82d41a9 100644 --- a/code/_onclick/hud/new_player.dm +++ b/code/_onclick/hud/new_player.dm @@ -2,6 +2,10 @@ #define SHUTTER_WAIT_DURATION 0.2 SECONDS /// Maximum number of station trait buttons we will display, please think hard before creating scenarios where there are more than this #define MAX_STATION_TRAIT_BUTTONS_VERTICAL 3 +#define TRAIT_BUTTON_Y_ORIGIN 397 +#define TRAIT_BUTTON_X_ORIGIN 233 +#define TRAIT_BUTTON_OFFSET 27 +#define SQUARE_VIEWPORT_OFFSET 64 /datum/hud/new_player ///Whether the menu is currently on the client's screen or not @@ -34,6 +38,10 @@ start_button.RegisterSignal(src, COMSIG_HUD_LOBBY_COLLAPSED, TYPE_PROC_REF(/atom/movable/screen/lobby, collapse_button)) start_button.RegisterSignal(src, COMSIG_HUD_LOBBY_EXPANDED, TYPE_PROC_REF(/atom/movable/screen/lobby, expand_button)) +/datum/hud/new_player/on_viewdata_update() + . = ..() + place_station_trait_buttons() + /// Load and then display the buttons for relevant station traits /datum/hud/new_player/proc/show_station_trait_buttons() if (!mymob?.client || mymob.client.interviewee || !length(GLOB.lobby_station_traits)) @@ -54,14 +62,17 @@ /// Display the buttosn for relevant station traits. /datum/hud/new_player/proc/place_station_trait_buttons() + SIGNAL_HANDLER if(hud_version != HUD_STYLE_STANDARD || !mymob?.client) return - var/y_offset = 397 - var/x_offset = 233 - var/y_button_offset = 27 - var/x_button_offset = -27 + var/y_offset = TRAIT_BUTTON_Y_ORIGIN + var/x_offset = TRAIT_BUTTON_X_ORIGIN + var/y_button_offset = TRAIT_BUTTON_OFFSET + var/x_button_offset = -TRAIT_BUTTON_OFFSET var/iteration = 0 + if(mymob.client.view == SQUARE_VIEWPORT_SIZE) + x_offset -= SQUARE_VIEWPORT_OFFSET for(var/trait in shown_station_trait_buttons) var/atom/movable/screen/lobby/button/sign_up/sign_up_button = shown_station_trait_buttons[trait] iteration++ @@ -69,7 +80,7 @@ mymob.client.screen |= sign_up_button if (iteration >= MAX_STATION_TRAIT_BUTTONS_VERTICAL) iteration = 0 - y_offset = 397 + y_offset = TRAIT_BUTTON_Y_ORIGIN x_offset += x_button_offset else y_offset += y_button_offset @@ -237,8 +248,6 @@ icon = 'icons/hud/lobby/ready.dmi' icon_state = "not_ready" base_icon_state = "not_ready" - ///Whether we are readied up for the round or not - var/ready = FALSE /atom/movable/screen/lobby/button/ready/Initialize(mapload, datum/hud/hud_owner) . = ..() @@ -268,14 +277,16 @@ if(!.) return var/mob/dead/new_player/new_player = hud.mymob - ready = !ready - if(ready) + + // switch based on the user, if they aren't ready then we change them to ready, and vice versa + if(new_player.ready == PLAYER_NOT_READY) new_player.auto_deadmin_on_ready_or_latejoin() new_player.ready = PLAYER_READY_TO_PLAY base_icon_state = "ready" else new_player.ready = PLAYER_NOT_READY base_icon_state = "not_ready" + update_appearance(UPDATE_ICON) SEND_SIGNAL(hud, COMSIG_HUD_PLAYER_READY_TOGGLE) @@ -594,7 +605,7 @@ var/blip_icon_state = "ready_blip" if(blip_enabled && hud) var/mob/dead/new_player/new_player = hud.mymob - blip_icon_state += "_[new_player.ready ? "" : "not_"]ready" + blip_icon_state += "_[new_player.is_ready_to_play() ? "" : "not_"]ready" else blip_icon_state += "_disabled" var/mutable_appearance/ready_blip = mutable_appearance(icon, blip_icon_state) @@ -806,3 +817,7 @@ #undef SHUTTER_MOVEMENT_DURATION #undef SHUTTER_WAIT_DURATION #undef MAX_STATION_TRAIT_BUTTONS_VERTICAL +#undef TRAIT_BUTTON_Y_ORIGIN +#undef TRAIT_BUTTON_X_ORIGIN +#undef TRAIT_BUTTON_OFFSET +#undef SQUARE_VIEWPORT_OFFSET diff --git a/code/_onclick/hud/radial.dm b/code/_onclick/hud/radial.dm index e71876ba1e5642..d960724f75bf7c 100644 --- a/code/_onclick/hud/radial.dm +++ b/code/_onclick/hud/radial.dm @@ -429,7 +429,7 @@ GLOBAL_LIST_EMPTY(radial_menus) /// Can be provided to choices in radial menus if you want to provide more information /datum/radial_menu_choice /// Required -- what to display for this button - var/image + var/image/image /// If provided, this will be the name the radial slice hud button. This has priority over everything else. var/name diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm index f54a5bcd15dbce..42a9e4f5c68d3d 100644 --- a/code/_onclick/hud/screen_objects.dm +++ b/code/_onclick/hud/screen_objects.dm @@ -1169,12 +1169,12 @@ INITIALIZE_IMMEDIATE(/atom/movable/screen/splash) return INITIALIZE_HINT_QDEL RegisterSignal(hud_owner.mymob, COMSIG_LIVING_LIFE, PROC_REF(on_mob_life)) -/atom/movable/screen/blood_level/proc/on_mob_life(mob/living/source, seconds_per_tick, times_fired) +/atom/movable/screen/blood_level/proc/on_mob_life(mob/living/source, seconds_per_tick) SIGNAL_HANDLER if(!isliving(source)) return - maptext = FORMAT_BLOOD_LEVEL_HUD_MAPTEXT(source.blood_volume) + maptext = FORMAT_BLOOD_LEVEL_HUD_MAPTEXT(source.get_blood_volume()) #undef FORMAT_BLOOD_LEVEL_HUD_MAPTEXT diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index d185b8c834f75d..7f057a85bf8e00 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -181,13 +181,18 @@ return attacking_item.attack_atom(src, user, modifiers, attack_modifiers) /mob/living/item_interaction(mob/living/user, obj/item/tool, list/modifiers) - for(var/datum/surgery/operation as anything in surgeries) - if(IS_IN_INVALID_SURGICAL_POSITION(src, operation)) - continue - if(!(operation.surgery_flags & SURGERY_SELF_OPERABLE) && (user == src) && !HAS_TRAIT(user, TRAIT_SELF_SURGERY)) - continue - if(operation.next_step(user, modifiers)) - return ITEM_INTERACT_SUCCESS + if(user.combat_mode) + return NONE + + if(HAS_TRAIT(src, TRAIT_READY_TO_OPERATE)) + var/surgery_ret = user.perform_surgery(src, tool, LAZYACCESS(modifiers, RIGHT_CLICK)) + if(surgery_ret) + return surgery_ret + + if(src == user) + var/manual_cauterization = try_manual_cauterize(tool) + if(manual_cauterization & ITEM_INTERACT_ANY_BLOCKER) + return manual_cauterization return NONE @@ -333,11 +338,11 @@ ), ARMOR_MAX_BLOCK) var/final_force = CALCULATE_FORCE(attacking_item, attack_modifiers) - if(mob_biotypes & MOB_ROBOTIC) + if(mob_biotypes & (MOB_ROBOTIC|MOB_MINERAL|MOB_SKELETAL)) // this should probably check hit bodypart for humanoids final_force *= attacking_item.get_demolition_modifier(src) var/wounding = attacking_item.wound_bonus - if((attacking_item.item_flags & SURGICAL_TOOL) && !user.combat_mode && body_position == LYING_DOWN && (LAZYLEN(surgeries) > 0)) + if((attacking_item.item_flags & SURGICAL_TOOL) && !user.combat_mode && HAS_TRAIT(user, TRAIT_READY_TO_OPERATE)) wounding = CANT_WOUND if(user != src) @@ -421,7 +426,7 @@ if(!attacking_item.get_sharpness() && !HAS_TRAIT(src, TRAIT_HEAD_INJURY_BLOCKED) && attacking_item.damtype == BRUTE) if(prob(damage_done)) - adjustOrganLoss(ORGAN_SLOT_BRAIN, 20) + adjust_organ_loss(ORGAN_SLOT_BRAIN, 20) if(stat == CONSCIOUS) visible_message( span_danger("[src] is knocked senseless!"), @@ -432,7 +437,7 @@ if(prob(10)) gain_trauma(/datum/brain_trauma/mild/concussion) else - adjustOrganLoss(ORGAN_SLOT_BRAIN, damage_done * 0.2) + adjust_organ_loss(ORGAN_SLOT_BRAIN, damage_done * 0.2) // rev deconversion through blunt trauma. // this can be signalized to the rev datum diff --git a/code/_onclick/other_mobs.dm b/code/_onclick/other_mobs.dm index eab5f0a7cd9c9d..1cd89773c55a3d 100644 --- a/code/_onclick/other_mobs.dm +++ b/code/_onclick/other_mobs.dm @@ -175,7 +175,7 @@ * Called when a simple animal is unarmed attacking / clicking on this atom. */ /atom/proc/attack_animal(mob/user, list/modifiers) - SEND_SIGNAL(src, COMSIG_ATOM_ATTACK_ANIMAL, user) + SEND_SIGNAL(src, COMSIG_ATOM_ATTACK_ANIMAL, user, modifiers) /** * Called when a simple animal or basic mob right clicks an atom. @@ -235,7 +235,7 @@ return TRUE /atom/proc/attack_larva(mob/user, list/modifiers) - return + SEND_SIGNAL(src, COMSIG_ATOM_ATTACK_LARVA, user, modifiers) /** * Called when an alien larva right clicks an atom. diff --git a/code/controllers/configuration/entries/general.dm b/code/controllers/configuration/entries/general.dm index 9e68577921241c..f960e6f4d62ad4 100644 --- a/code/controllers/configuration/entries/general.dm +++ b/code/controllers/configuration/entries/general.dm @@ -181,9 +181,6 @@ /// allow votes to change map /datum/config_entry/flag/allow_vote_map -/// allow players to vote to re-do the map vote -/datum/config_entry/flag/allow_rock_the_vote - /// the number of times we allow players to rock the vote /datum/config_entry/number/max_rocking_votes default = 1 @@ -333,6 +330,9 @@ /datum/config_entry/string/githuburl default = "https://www.github.com/tgstation/tgstation" +/datum/config_entry/string/configurl + default = "https://github.com/tgstation-operations/server-config" + /datum/config_entry/string/discordbotcommandprefix default = "?" diff --git a/code/controllers/configuration/entries/resources.dm b/code/controllers/configuration/entries/resources.dm index 1fb8a6237d45c7..591e1850f4de56 100644 --- a/code/controllers/configuration/entries/resources.dm +++ b/code/controllers/configuration/entries/resources.dm @@ -28,3 +28,7 @@ if (str_var && str_var[length(str_var)] != "/") str_var += "/" return ..(str_var) + +/datum/config_entry/string/storage_cdn_iframe + protection = CONFIG_ENTRY_LOCKED + default = "https://tgstation.github.io/byond-client-storage/iframe.html" diff --git a/code/controllers/master.dm b/code/controllers/master.dm index 9b5d3b745028b2..80a0c486fae19e 100644 --- a/code/controllers/master.dm +++ b/code/controllers/master.dm @@ -390,11 +390,11 @@ ADMIN_VERB(cmd_controller_view_ui, R_SERVER|R_DEBUG, "Controller Overview", "Vie // Topological sorting algorithm end if(length(subsystems) != length(sorted_subsystems)) - var/list/circular_dependency = subsystems.Copy() - sorted_subsystems + var/list/circular_dependency = subsystems - sorted_subsystems var/list/debug_msg = list() var/list/usr_msg = list() for(var/datum/controller/subsystem/subsystem as anything in circular_dependency) - usr_msg += "[subsystem.name]" + usr_msg += subsystem.name var/list/datum/controller/subsystem/nodes = list(circular_dependency[1]) var/list/loop = list() @@ -610,10 +610,19 @@ ADMIN_VERB(cmd_controller_view_ui, R_SERVER|R_DEBUG, "Controller Overview", "Vie if ((SS.flags & (SS_TICKER|SS_BACKGROUND)) == SS_TICKER) tickersubsystems += SS // Timer subsystems aren't allowed to bunch up, so we offset them a bit - timer += world.tick_lag * rand(0, 1) + timer += TICKS2DS(rand(0, 1)) SS.next_fire = timer continue + // Now, we have to set starting next_fires for all our new non ticker kids + if(SS.init_stage == init_stage - 1 && (SS.runlevels & current_runlevel)) + // Give em a random offset so things don't clump up too bad + var/delay = SS.wait + if(SS.flags & SS_TICKER) + delay = TICKS2DS(delay) + // Gotta convert to ticks cause rand needs integers + SS.next_fire = world.time + TICKS2DS(rand(0, DS2TICKS(min(delay, 2 SECONDS)))) + var/ss_runlevels = SS.runlevels var/added_to_any = FALSE for(var/I in 1 to GLOB.bitflags.len) @@ -709,7 +718,11 @@ ADMIN_VERB(cmd_controller_view_ui, R_SERVER|R_DEBUG, "Controller Overview", "Vie //we only want to offset it if it's new and also behind if(SS.next_fire > world.time || (SS in old_subsystems)) continue - SS.next_fire = world.time + world.tick_lag * rand(0, DS2TICKS(min(SS.wait, 2 SECONDS))) + // If they're new, give em a random offset so things don't clump up too bad + var/delay = SS.wait + if(SS.flags & SS_TICKER) + delay = TICKS2DS(delay) + SS.next_fire = world.time + TICKS2DS(rand(0, DS2TICKS(min(delay, 2 SECONDS)))) subsystems_to_check = current_runlevel_subsystems else @@ -804,6 +817,8 @@ ADMIN_VERB(cmd_controller_view_ui, R_SERVER|R_DEBUG, "Controller Overview", "Vie if (SS_flags & SS_NO_FIRE) subsystemstocheck -= SS continue + // If we're keeping timing and running behind, + // fire at most 25% faster then normal to try and make up the gap without spamming if ((SS_flags & (SS_TICKER|SS_KEEP_TIMING)) == SS_KEEP_TIMING && SS.last_fire + (SS.wait * 0.75) > world.time) continue if (SS.postponed_fires >= 1) diff --git a/code/controllers/subsystem/air.dm b/code/controllers/subsystem/air.dm index 52782370128796..b991b73918da5f 100644 --- a/code/controllers/subsystem/air.dm +++ b/code/controllers/subsystem/air.dm @@ -325,7 +325,7 @@ SUBSYSTEM_DEF(air) currentrun.len-- if(!M) atmos_machinery -= M - if(M.process_atmos() == PROCESS_KILL) + if(M.process_atmos(wait * 0.1) == PROCESS_KILL) stop_processing_machine(M) if(MC_TICK_CHECK) return diff --git a/code/controllers/subsystem/ambience.dm b/code/controllers/subsystem/ambience.dm index a5a1d277f931c0..f49604b058a523 100644 --- a/code/controllers/subsystem/ambience.dm +++ b/code/controllers/subsystem/ambience.dm @@ -54,12 +54,17 @@ SUBSYSTEM_DEF(ambience) ///Attempts to play an ambient sound to a mob, returning the cooldown in deciseconds /area/proc/play_ambience(mob/M, sound/override_sound, volume = 27) var/sound/new_sound = override_sound || pick(ambientsounds) + if(!new_sound) // Dont try to play a sound if we dont have any. + return 1 MINUTES /// volume modifier for ambience as set by the player in preferences. var/volume_modifier = (M.client?.prefs.read_preference(/datum/preference/numeric/volume/sound_ambience_volume))/100 new_sound = sound(new_sound, repeat = 0, wait = 0, volume = volume*volume_modifier, channel = CHANNEL_AMBIENCE) SEND_SOUND(M, new_sound) var/sound_length = SSsounds.get_sound_length(new_sound.file) + if(!sound_length) + // This will cause sounds to cut into eachother if the sound is longer then the min_ambience_cooldown + stack_trace("play_ambience failed to get soundlength from [new_sound] with a file of [new_sound.file].") return sound_length + rand(min_ambience_cooldown, max_ambience_cooldown) /datum/controller/subsystem/ambience/proc/remove_ambience_client(client/to_remove) diff --git a/code/controllers/subsystem/blackbox.dm b/code/controllers/subsystem/blackbox.dm index 48353a075e1dce..df00a2703c46dd 100644 --- a/code/controllers/subsystem/blackbox.dm +++ b/code/controllers/subsystem/blackbox.dm @@ -327,7 +327,7 @@ Versioning first_death["role"] = null first_death["role"] = L.mind.assigned_role.title first_death["area"] = "[AREACOORD(L)]" - first_death["damage"] = "[L.getBruteLoss()]/[L.getFireLoss()]/[L.getToxLoss()]/[L.getOxyLoss()]" + first_death["damage"] = "[L.get_brute_loss()]/[L.get_fire_loss()]/[L.get_tox_loss()]/[L.get_oxy_loss()]" first_death["last_words"] = L.last_words if(!SSdbcore.Connect()) @@ -344,12 +344,12 @@ Versioning "pod" = get_area_name(L, TRUE), "laname" = L.lastattacker, "lakey" = L.lastattackerckey, - "brute" = L.getBruteLoss(), - "fire" = L.getFireLoss(), + "brute" = L.get_brute_loss(), + "fire" = L.get_fire_loss(), "brain" = L.get_organ_loss(ORGAN_SLOT_BRAIN) || BRAIN_DAMAGE_DEATH, //get_organ_loss returns null without a brain but a value is required for this column - "oxy" = L.getOxyLoss(), - "tox" = L.getToxLoss(), - "stamina" = L.getStaminaLoss(), + "oxy" = L.get_oxy_loss(), + "tox" = L.get_tox_loss(), + "stamina" = L.get_stamina_loss(), "x_coord" = L.x, "y_coord" = L.y, "z_coord" = L.z, diff --git a/code/controllers/subsystem/cameras.dm b/code/controllers/subsystem/cameras.dm new file mode 100644 index 00000000000000..5f5e9a2ec1b26b --- /dev/null +++ b/code/controllers/subsystem/cameras.dm @@ -0,0 +1,296 @@ +/// Manages the security cameras and camera chunks +SUBSYSTEM_DEF(cameras) + name = "Cameras" + flags = SS_BACKGROUND + priority = FIRE_PRIORITY_CAMERAS + runlevels = RUNLEVEL_GAME | RUNLEVEL_POSTGAME + wait = 2 MINUTES + dependencies = list( + // Required to get plane offset for static images + /datum/controller/subsystem/mapping, + ) + + /// The cameras on the map, no matter if they work or not. + /// Updated in obj/machinery/camera.dm in Initialize() and Destroy(). + var/list/obj/machinery/camera/cameras = list() + /// The chunks of the map, mapping the areas that the cameras can see. + var/list/chunks = list() + /// Chunks that must be updated + var/list/chunks_to_update = list() + /// List of images cloned by all chunk static images put onto turfs cameras cant see + /// Indexed by the plane offset to use + var/list/image/obscured_images = list() + /// Primarily for debugging, outright prevents all camera chunk updates + var/disable_camera_updates = FALSE + /// Tracks current subsystem run + var/list/current_run = list() + +/datum/controller/subsystem/cameras/Initialize() + update_offsets(SSmapping.max_plane_offset) + RegisterSignal(SSmapping, COMSIG_PLANE_OFFSET_INCREASE, PROC_REF(on_offset_growth)) + return SS_INIT_SUCCESS + +/datum/controller/subsystem/cameras/fire(resumed = FALSE) + if(!resumed) + src.current_run = chunks_to_update.Copy() + chunks_to_update = list() + + var/list/current_run = src.current_run + while(current_run.len) + var/datum/camerachunk/chunk = current_run[current_run.len] + chunk.force_update(only_if_necessary = TRUE) // Forces an update if necessary + current_run.len-- + if(MC_TICK_CHECK) + break + +/datum/controller/subsystem/cameras/stat_entry(msg) + msg = "Cams: [length(cameras)] | Chunks: [length(chunks)] | Updating: [length(chunks_to_update)]" + return ..() + +/// Updates the images for new plane offsets +/datum/controller/subsystem/cameras/proc/update_offsets(new_offset) + for(var/i in length(obscured_images) to new_offset) + var/image/obscured = new('icons/effects/cameravis.dmi') + SET_PLANE_W_SCALAR(obscured, CAMERA_STATIC_PLANE, i) + obscured.appearance_flags = RESET_TRANSFORM | RESET_ALPHA | RESET_COLOR | KEEP_APART + obscured.override = TRUE + obscured_images += obscured + +/datum/controller/subsystem/cameras/proc/on_offset_growth(datum/source, old_offset, new_offset) + SIGNAL_HANDLER + update_offsets(new_offset) + +/// Checks if a chunk has been generated in x, y, z. +/datum/controller/subsystem/cameras/proc/get_camera_chunk(x, y, z) + x = GET_CHUNK_COORD(x) + y = GET_CHUNK_COORD(y) + if(GET_LOWEST_STACK_OFFSET(z) != 0) + var/turf/lowest = get_lowest_turf(locate(x, y, z)) + return chunks["[x],[y],[lowest.z]"] + + return chunks["[x],[y],[z]"] + +// Returns the chunk in the x, y, z. +// If there is no chunk, it creates a new chunk and returns that. +/datum/controller/subsystem/cameras/proc/generate_chunk(x, y, z) + x = GET_CHUNK_COORD(x) + y = GET_CHUNK_COORD(y) + var/turf/lowest = get_lowest_turf(locate(x, y, z)) + var/key = "[x],[y],[lowest.z]" + . = chunks[key] + if(!.) + . = new /datum/camerachunk(x, y, lowest.z) + chunks[key] = . + +/// Updates what the camera eye can see. +/// It is recommended you use this when a camera eye moves or its location is set. +/datum/controller/subsystem/cameras/proc/update_eye_chunk(mob/eye/camera/eye) + var/list/visibleChunks = list() + //Get the eye's turf in case its located in an object like a mecha + var/turf/eye_turf = get_turf(eye) + if(eye.loc) + var/static_range = eye.static_visibility_range + var/x1 = max(1, eye_turf.x - static_range) + var/y1 = max(1, eye_turf.y - static_range) + var/x2 = min(world.maxx, eye_turf.x + static_range) + var/y2 = min(world.maxy, eye_turf.y + static_range) + + for(var/x = x1; x <= x2; x += CHUNK_SIZE) + for(var/y = y1; y <= y2; y += CHUNK_SIZE) + visibleChunks |= generate_chunk(x, y, eye_turf.z) + + var/list/remove = eye.visibleCameraChunks - visibleChunks + var/list/add = visibleChunks - eye.visibleCameraChunks + + for(var/datum/camerachunk/chunk as anything in remove) + chunk.remove(eye) + + for(var/datum/camerachunk/chunk as anything in add) + chunk.add(eye) + +/// Used in [/proc/major_chunk_change] - indicates the camera should be removed from the chunk list. +#define REMOVE_CAMERA 0 +/// Used in [/proc/major_chunk_change] - indicates the camera should be added to the chunk list. +#define ADD_CAMERA 1 +/// Used in [/proc/major_chunk_change] - indicates the chunk should be updated without adding/removing a camera. +#define IGNORE_CAMERA 2 + +/// Updates the chunks that the turf is located in. Use this when obstacles are destroyed or when doors open. +/datum/controller/subsystem/cameras/proc/update_visibility(atom/relevant_atom) + if(!SSticker) + return + major_chunk_change(relevant_atom, IGNORE_CAMERA) + +/// Removes a camera from a chunk. +/datum/controller/subsystem/cameras/proc/remove_camera_from_chunk(obj/machinery/camera/old_cam) + major_chunk_change(old_cam, REMOVE_CAMERA) + +/// Add a camera to a chunk. +/datum/controller/subsystem/cameras/proc/add_camera_to_chunk(obj/machinery/camera/new_cam) + if(new_cam.can_use()) + major_chunk_change(new_cam, ADD_CAMERA) + +/** + * Used for Cyborg/mecha cameras. Since portable cameras can be in ANY chunk. + * update_delay_buffer is passed all the way to queue_update() from their camera updates on movement + * to change the time between static updates. +*/ +/datum/controller/subsystem/cameras/proc/update_portable_camera(obj/machinery/camera/updating_camera, update_delay_buffer) + if(updating_camera.can_use()) + major_chunk_change(updating_camera, ADD_CAMERA, update_delay_buffer) + +/** + * Never access this proc directly!!!! + * This will update the chunk and all the surrounding chunks. + * It will also add the atom to the cameras list if you set the choice to 1. + * Setting the choice to 0 will remove the camera from the chunks. + * If you want to update the chunks around an object, without adding/removing a camera, use choice 2. + * update_delay_buffer is passed all the way to queue_update() from portable camera updates on movement + * to change the time between static updates. + */ +/datum/controller/subsystem/cameras/proc/major_chunk_change(atom/center_or_camera, choice = IGNORE_CAMERA, update_delay_buffer = 0) + PROTECTED_PROC(TRUE) + + if(QDELETED(center_or_camera) && choice == ADD_CAMERA) + CRASH("Tried to add a qdeleting camera to the net") + + var/turf/chunk_turf = get_turf(center_or_camera) + if(isnull(chunk_turf)) + return + + var/x1 = max(1, chunk_turf.x - (CHUNK_SIZE / 2)) + var/y1 = max(1, chunk_turf.y - (CHUNK_SIZE / 2)) + var/x2 = min(world.maxx, chunk_turf.x + (CHUNK_SIZE / 2)) + var/y2 = min(world.maxy, chunk_turf.y + (CHUNK_SIZE / 2)) + for(var/x = x1; x <= x2; x += CHUNK_SIZE) + for(var/y = y1; y <= y2; y += CHUNK_SIZE) + var/datum/camerachunk/chunk = get_camera_chunk(x, y, chunk_turf.z) + if(isnull(chunk)) + continue + if(choice == REMOVE_CAMERA) + // Remove the camera. + chunk.cameras[chunk_turf.z] -= center_or_camera + if(choice == ADD_CAMERA) + // You can't have the same camera in the list twice. + chunk.cameras[chunk_turf.z] |= center_or_camera + chunk.queue_update(center_or_camera, update_delay_buffer) + +/// A faster, turf only version of [/datum/controller/subsystem/cameras/proc/major_chunk_change] +/// For use in sensitive code, be careful with it +/datum/controller/subsystem/cameras/proc/bare_major_chunk_change(turf/changed) + var/x1 = max(1, changed.x - (CHUNK_SIZE / 2)) + var/y1 = max(1, changed.y - (CHUNK_SIZE / 2)) + var/x2 = min(world.maxx, changed.x + (CHUNK_SIZE / 2)) + var/y2 = min(world.maxy, changed.y + (CHUNK_SIZE / 2)) + for(var/x = x1; x <= x2; x += CHUNK_SIZE) + for(var/y = y1; y <= y2; y += CHUNK_SIZE) + var/datum/camerachunk/chunk = get_camera_chunk(x, y, changed.z) + chunk?.queue_update(changed, 0) + +/// Will check if an atom is on a viewable turf. +/// Returns TRUE if the atom is visible by any camera, FALSE otherwise. +/datum/controller/subsystem/cameras/proc/is_visible_by_cameras(atom/target) + return turf_visible_by_cameras(get_turf(target)) + +/// Checks if the passed turf is visible by any camera. +/// Returns TRUE if the turf is visible by any camera, FALSE otherwise. +/datum/controller/subsystem/cameras/proc/turf_visible_by_cameras(turf/position) + PRIVATE_PROC(TRUE) + if(isnull(position)) + return FALSE + var/datum/camerachunk/chunk = generate_chunk(position.x, position.y, position.z) + if(isnull(chunk)) + return FALSE + chunk.force_update(only_if_necessary = TRUE) // Update NOW if necessary + if(chunk.visibleTurfs[position]) + return TRUE + return FALSE + +/// Gets the camera chunk the passed turf is in. +/// Returns the chunk if it exists and is visible, null otherwise. +/datum/controller/subsystem/cameras/proc/get_turf_camera_chunk(turf/position) + RETURN_TYPE(/datum/camerachunk) + var/datum/camerachunk/chunk = generate_chunk(position.x, position.y, position.z) + if(!chunk) + return null + chunk.force_update(only_if_necessary = TRUE) // Update NOW if necessary + if(chunk.visibleTurfs[position]) + return chunk + return null + +/// Returns list of available cameras, ready to use for UIs displaying list of them +/// The format is: list("name" = "camera.c_tag", ref = REF(camera)) +/datum/controller/subsystem/cameras/proc/get_available_cameras_data(list/networks_available, list/z_levels_available) + var/list/available_cameras_data = list() + for(var/obj/machinery/camera/camera as anything in get_filtered_and_sorted_cameras(networks_available, z_levels_available)) + available_cameras_data += list(list( + name = camera.c_tag, + ref = REF(camera), + )) + + return available_cameras_data + +/** + * get_available_camera_by_tag_list + * + * Builds a list of all available cameras that can be seen to networks_available and in z_levels_available. + * Entries are stored in `c_tag[camera.can_use() ? null : " (Deactivated)"]` => `camera` format + * Args: + * networks_available - List of networks that we use to see which cameras are visible to it. + * z_levels_available - List of z levels to filter camera by. If empty, all z levels are considered valid. + * sort_by_ctag - If the resulting list should be sorted by `c_tag`. + */ +/datum/controller/subsystem/cameras/proc/get_available_camera_by_tag_list(list/networks_available, list/z_levels_available) + var/list/available_cameras_by_tag = list() + for(var/obj/machinery/camera/camera as anything in get_filtered_and_sorted_cameras(networks_available, z_levels_available)) + available_cameras_by_tag["[camera.c_tag][camera.can_use() ? null : " (Deactivated)"]"] = camera + + return available_cameras_by_tag + +/// Returns list of all cameras that passed `is_camera_available` filter and sorted by `cmp_camera_ctag_asc` +/datum/controller/subsystem/cameras/proc/get_filtered_and_sorted_cameras(list/networks_available, list/z_levels_available) + PRIVATE_PROC(TRUE) + + var/list/filtered_cameras = list() + for(var/obj/machinery/camera/camera as anything in cameras) + if(!is_camera_available(camera, networks_available, z_levels_available)) + continue + + filtered_cameras += camera + + return sortTim(filtered_cameras, GLOBAL_PROC_REF(cmp_camera_ctag_asc)) + +/// Checks if the `camera_to_check` meets the requirements of availability. +/datum/controller/subsystem/cameras/proc/is_camera_available(obj/machinery/camera/camera_to_check, list/networks_available, list/z_levels_available) + PRIVATE_PROC(TRUE) + + if(!camera_to_check.c_tag) + return FALSE + + if(length(z_levels_available) && !(camera_to_check.z in z_levels_available)) + return FALSE + + return length(camera_to_check.network & networks_available) > 0 + +#undef ADD_CAMERA +#undef REMOVE_CAMERA +#undef IGNORE_CAMERA + +/obj/effect/overlay/camera_static + name = "static" + icon = null + icon_state = null + anchored = TRUE // should only appear in vis_contents, but to be safe + appearance_flags = RESET_TRANSFORM | TILE_BOUND | LONG_GLIDE + // this combination makes the static block clicks to everything below it, + // without appearing in the right-click menu for non-AI clients + mouse_opacity = MOUSE_OPACITY_ICON + invisibility = INVISIBILITY_ABSTRACT + + plane = CAMERA_STATIC_PLANE + +ADMIN_VERB(pause_camera_updates, R_ADMIN, "Toggle Camera Updates", "Stop security cameras from updating, meaning what they see now is what they will see forever.", ADMIN_CATEGORY_DEBUG) + SScameras.disable_camera_updates = !SScameras.disable_camera_updates + log_admin("[key_name_admin(user)] [SScameras.disable_camera_updates ? "disabled" : "enabled"] camera updates.") + message_admins("Admin [key_name_admin(user)] has [SScameras.disable_camera_updates ? "disabled" : "enabled"] camera updates.") + BLACKBOX_LOG_ADMIN_VERB("Toggle Camera Updates") diff --git a/code/controllers/subsystem/dbcore.dm b/code/controllers/subsystem/dbcore.dm index e1a43605613ada..17b2bf737ddd41 100644 --- a/code/controllers/subsystem/dbcore.dm +++ b/code/controllers/subsystem/dbcore.dm @@ -182,11 +182,12 @@ SUBSYSTEM_DEF(dbcore) /datum/controller/subsystem/dbcore/Shutdown() shutting_down = TRUE - var/msg = "Clearing DB queries standby:[length(queries_standby)] active: [length(queries_active)] all: [length(all_queries)]" - to_chat(world, span_boldannounce(msg)) - log_world(msg) + var/initial_msg = "Clearing DB Queries. (Standby: [length(queries_standby)]; Active: [length(queries_active)]; All: [length(all_queries)])" + to_chat(world, span_boldannounce(initial_msg)) + log_world(initial_msg) + var/start_time = REALTIMEOFDAY //This is as close as we can get to the true round end before Disconnect() without changing where it's called, defeating the reason this is a subsystem - var/endtime = REALTIMEOFDAY + SHUTDOWN_QUERY_TIMELIMIT + var/end_time = start_time + SHUTDOWN_QUERY_TIMELIMIT if(SSdbcore.Connect()) //Take over control of all active queries var/queries_to_check = queries_active.Copy() @@ -200,7 +201,7 @@ SUBSYSTEM_DEF(dbcore) //wait for them all to finish for(var/datum/db_query/query in queries_to_check) - UNTIL(query.process() || REALTIMEOFDAY > endtime) + UNTIL(query.process() || REALTIMEOFDAY > end_time) //log shutdown to the db var/datum/db_query/query_round_shutdown = SSdbcore.NewQuery( @@ -211,9 +212,9 @@ SUBSYSTEM_DEF(dbcore) query_round_shutdown.Execute(FALSE) qdel(query_round_shutdown) - msg = "Done clearing DB queries standby:[length(queries_standby)] active: [length(queries_active)] all: [length(all_queries)]" - to_chat(world, span_boldannounce(msg)) - log_world(msg) + var/completed_message = "Done clearing DB queries in [DisplayTimeText(REALTIMEOFDAY - start_time)] (Standby: [length(queries_standby)]; Active: [length(queries_active)]; All: [length(all_queries)])]" + to_chat(world, span_boldannounce(completed_message)) + log_world(completed_message) if(IsConnected()) Disconnect() stop_db_daemon() @@ -334,6 +335,8 @@ SUBSYSTEM_DEF(dbcore) GLOB.round_id = "[query_round_initialize.last_insert_id]" qdel(query_round_initialize) + log_world("Round ID: [GLOB.round_id]") + /datum/controller/subsystem/dbcore/proc/SetRoundStart() if(!Connect()) return diff --git a/code/controllers/subsystem/discord.dm b/code/controllers/subsystem/discord.dm index 2e7936f17e3a98..2313a1a0a289a7 100644 --- a/code/controllers/subsystem/discord.dm +++ b/code/controllers/subsystem/discord.dm @@ -154,7 +154,7 @@ SUBSYSTEM_DEF(discord) // While there's a collision in the token, generate a new one (should rarely happen) while(not_unique) //Column is varchar 100, so we trim just in case someone does us the dirty later - one_time_token = trim("[pick(GLOB.most_common_words)]-[pick(GLOB.most_common_words)]-[pick(GLOB.most_common_words)]-[pick(GLOB.most_common_words)]-[pick(GLOB.most_common_words)]-[pick(GLOB.most_common_words)]", 100) + one_time_token = trim("[pick(GLOB.most_common_words_alphabetical)]-[pick(GLOB.most_common_words_alphabetical)]-[pick(GLOB.most_common_words_alphabetical)]-[pick(GLOB.most_common_words_alphabetical)]-[pick(GLOB.most_common_words_alphabetical)]-[pick(GLOB.most_common_words_alphabetical)]", 100) not_unique = find_discord_link_by_token(one_time_token, timebound = TRUE) diff --git a/code/controllers/subsystem/dynamic/_dynamic_ruleset.dm b/code/controllers/subsystem/dynamic/_dynamic_ruleset.dm index e03f733eb7ae28..282c83d8f0f1d1 100644 --- a/code/controllers/subsystem/dynamic/_dynamic_ruleset.dm +++ b/code/controllers/subsystem/dynamic/_dynamic_ruleset.dm @@ -33,7 +33,7 @@ * Or * - A single weight for all tiers. */ - var/list/weight = 0 + var/alist/weight = 0 /** * The min population for which this ruleset is available. * @@ -43,7 +43,7 @@ * Or * - A single min population for all tiers. */ - var/list/min_pop = 0 + var/alist/min_pop = 0 /// List of roles that are blacklisted from this ruleset /// For roundstart rulesets, it will prevent players from being selected for this ruleset if they have one of these roles /// For latejoin or midround rulesets, it will prevent players from being assigned to this ruleset if they have one of these roles @@ -110,6 +110,7 @@ if(new_var in locked_config_values) log_dynamic("Bad config edit rejected: [new_var]") return FALSE + if(islist(new_val) && (new_var == NAMEOF(src, weight) || new_var == NAMEOF(src, min_pop))) new_val = load_tier_list(new_val) @@ -121,46 +122,23 @@ return FALSE return ..() -/// Used to create tier lists for weights and min_pop values +/// Used to create tier alists for weights and min_pop values /datum/dynamic_ruleset/proc/load_tier_list(list/incoming_list) PRIVATE_PROC(TRUE) - var/list/tier_list = new /list(4) - // loads a list of list("2" = 1, "3" = 3) into a list(null, 1, 3, null) + var/alist/tier_list = alist() + // loads a list of list("2" = 1, "3" = 3) into an alist(2 = 1, 3 = 3) for(var/tier in incoming_list) - tier_list[text2num(tier)] = incoming_list[tier] - - // turn list(null, 1, 3, null) into list(1, 1, 3, null) - for(var/i in 1 to length(tier_list)) - var/val = tier_list[i] - if(isnum(val)) - break - for(var/j in i to length(tier_list)) - var/other_val = tier_list[j] - if(!isnum(other_val)) - continue - tier_list[i] = other_val - break - - // turn list(1, 1, 3, null) into list(1, 1, 3, 3) - for(var/i in length(tier_list) to 1 step -1) - var/val = tier_list[i] - if(isnum(val)) - break - for(var/j in i to 1 step -1) - var/other_val = tier_list[j] - if(!isnum(other_val)) - continue - tier_list[i] = other_val - break - - // we can assert that tier[1] and tier[4] are not null, but we cannot say the same for tier[2] and tier[3] - // this can be happen due to the following setup: list(1, null, null, 4) - // (which is an invalid config, and should be fixed by the operator) - if(isnull(tier_list[2])) - tier_list[2] = tier_list[1] - if(isnull(tier_list[3])) - tier_list[3] = tier_list[4] + var/tier_value = text2num(tier) + if (tier_value > DYNAMIC_TIER_HIGH) + stack_trace("Dynamic config for [name] encountered a tier value exceeding DYNAMIC_TIER_HIGH!") + message_admins(span_boldannounce("Dynamic config for [name] encountered a tier value exceeding DYNAMIC_TIER_HIGH!")) + tier_value = DYNAMIC_TIER_HIGH + else if (tier_value < DYNAMIC_TIER_GREEN) + stack_trace("Dynamic config for [name] encountered a negative tier value, below DYNAMIC_TIER_GREEN!") + message_admins(span_boldannounce("Dynamic config for [name] encountered a negative tier value, below DYNAMIC_TIER_GREEN!")) + tier_value = DYNAMIC_TIER_GREEN + tier_list[tier_value] = incoming_list[tier] return tier_list @@ -170,6 +148,25 @@ /datum/dynamic_ruleset/proc/can_be_selected() return TRUE +/// Gets the list value for the given tier, otherwise use next highest tier, +/// or failing that, next lowest +/datum/dynamic_ruleset/proc/get_tier_specific_value(alist/values, tier) + PRIVATE_PROC(TRUE) + if(isnum(values[tier])) + return values[tier] + + // search higher tiers + for(var/i in tier to 4) + if(isnum(values[i])) + return values[i] + + // no dice, lower tiers? + for(var/i in tier to 1 step -1) + if(isnum(values[i])) + return values[i] + + return 0 + /** * Calculates the weight of this ruleset for the given tier. * @@ -183,11 +180,11 @@ return 0 if(!can_be_selected()) return 0 - var/final_minpop = islist(min_pop) ? min_pop[tier] : min_pop + var/final_minpop = islist(min_pop) ? get_tier_specific_value(min_pop, tier) : min_pop if(final_minpop > population_size) return 0 - var/final_weight = islist(weight) ? weight[tier] : weight + var/final_weight = islist(weight) ? get_tier_specific_value(weight, tier) : weight for(var/datum/dynamic_ruleset/other_ruleset as anything in SSdynamic.executed_rulesets) if(other_ruleset == src) continue diff --git a/code/controllers/subsystem/dynamic/dynamic_ruleset_latejoin.dm b/code/controllers/subsystem/dynamic/dynamic_ruleset_latejoin.dm index 88e20ce349bd6b..0fc37d0daf6a84 100644 --- a/code/controllers/subsystem/dynamic/dynamic_ruleset_latejoin.dm +++ b/code/controllers/subsystem/dynamic/dynamic_ruleset_latejoin.dm @@ -35,9 +35,6 @@ /datum/dynamic_ruleset/latejoin/traitor/assign_role(datum/mind/candidate) candidate.add_antag_datum(/datum/antagonist/traitor) -/datum/dynamic_ruleset/latejoin/heretic/assign_role(datum/mind/candidate) - candidate.add_antag_datum(/datum/antagonist/heretic) - /datum/dynamic_ruleset/latejoin/changeling name = "Changeling" config_tag = "Latejoin Changeling" diff --git a/code/controllers/subsystem/dynamic/dynamic_ruleset_midround.dm b/code/controllers/subsystem/dynamic/dynamic_ruleset_midround.dm index 6df942b5242230..95672517f9c9d0 100644 --- a/code/controllers/subsystem/dynamic/dynamic_ruleset_midround.dm +++ b/code/controllers/subsystem/dynamic/dynamic_ruleset_midround.dm @@ -26,7 +26,7 @@ midround_type = HEAVY_MIDROUND false_alarm_able = TRUE ruleset_flags = RULESET_INVADER - weight = list( + weight = alist( DYNAMIC_TIER_LOW = 0, DYNAMIC_TIER_LOWMEDIUM = 0, DYNAMIC_TIER_MEDIUMHIGH = 1, @@ -271,7 +271,7 @@ pref_flag = ROLE_WIZARD_MIDROUND jobban_flag = ROLE_WIZARD ruleset_flags = RULESET_INVADER|RULESET_HIGH_IMPACT - weight = list( + weight = alist( DYNAMIC_TIER_LOW = 0, DYNAMIC_TIER_LOWMEDIUM = 0, DYNAMIC_TIER_MEDIUMHIGH = 1, @@ -294,7 +294,7 @@ pref_flag = ROLE_OPERATIVE_MIDROUND jobban_flag = ROLE_OPERATIVE ruleset_flags = RULESET_INVADER|RULESET_HIGH_IMPACT - weight = list( + weight = alist( DYNAMIC_TIER_LOW = 0, DYNAMIC_TIER_LOWMEDIUM = 1, DYNAMIC_TIER_MEDIUMHIGH = 3, @@ -378,7 +378,7 @@ false_alarm_able = TRUE pref_flag = ROLE_BLOB ruleset_flags = RULESET_INVADER - weight = list( + weight = alist( DYNAMIC_TIER_LOW = 0, DYNAMIC_TIER_LOWMEDIUM = 1, DYNAMIC_TIER_MEDIUMHIGH = 3, @@ -418,7 +418,7 @@ false_alarm_able = TRUE pref_flag = ROLE_ALIEN ruleset_flags = RULESET_INVADER - weight = list( + weight = alist( DYNAMIC_TIER_LOW = 0, DYNAMIC_TIER_LOWMEDIUM = 1, DYNAMIC_TIER_MEDIUMHIGH = 5, @@ -505,7 +505,7 @@ false_alarm_able = TRUE pref_flag = ROLE_SPACE_DRAGON ruleset_flags = RULESET_INVADER - weight = list( + weight = alist( DYNAMIC_TIER_LOW = 0, DYNAMIC_TIER_LOWMEDIUM = 3, DYNAMIC_TIER_MEDIUMHIGH = 5, @@ -575,7 +575,7 @@ midround_type = HEAVY_MIDROUND pref_flag = ROLE_NINJA ruleset_flags = RULESET_INVADER - weight = list( + weight = alist( DYNAMIC_TIER_LOW = 0, DYNAMIC_TIER_LOWMEDIUM = 0, DYNAMIC_TIER_MEDIUMHIGH = 1, @@ -678,7 +678,7 @@ min_antag_cap = 2 max_antag_cap = 3 repeatable_weight_decrease = 4 - weight = list( + weight = alist( DYNAMIC_TIER_LOW = 0, DYNAMIC_TIER_LOWMEDIUM = 3, DYNAMIC_TIER_MEDIUMHIGH = 4, @@ -1104,7 +1104,7 @@ max_antag_cap = 4 repeatable_weight_decrease = 8 blacklisted_roles = list() - weight = list( + weight = alist( DYNAMIC_TIER_LOW = 0, DYNAMIC_TIER_LOWMEDIUM = 3, DYNAMIC_TIER_MEDIUMHIGH = 8, @@ -1119,7 +1119,7 @@ pref_flag = ROLE_MALF_MIDROUND jobban_flag = ROLE_MALF ruleset_flags = RULESET_HIGH_IMPACT - weight = list( + weight = alist( DYNAMIC_TIER_LOW = 0, DYNAMIC_TIER_LOWMEDIUM = 1, DYNAMIC_TIER_MEDIUMHIGH = 3, @@ -1147,7 +1147,7 @@ midround_type = HEAVY_MIDROUND pref_flag = ROLE_BLOB_INFECTION jobban_flag = ROLE_BLOB - weight = list( + weight = alist( DYNAMIC_TIER_LOW = 0, DYNAMIC_TIER_LOWMEDIUM = 1, DYNAMIC_TIER_MEDIUMHIGH = 3, @@ -1171,7 +1171,7 @@ midround_type = LIGHT_MIDROUND pref_flag = ROLE_OBSESSED blacklisted_roles = list() - weight = list( + weight = alist( DYNAMIC_TIER_LOW = 5, DYNAMIC_TIER_LOWMEDIUM = 5, DYNAMIC_TIER_MEDIUMHIGH = 3, diff --git a/code/controllers/subsystem/dynamic/dynamic_ruleset_roundstart.dm b/code/controllers/subsystem/dynamic/dynamic_ruleset_roundstart.dm index 7bea57bffe8818..417f7164c21930 100644 --- a/code/controllers/subsystem/dynamic/dynamic_ruleset_roundstart.dm +++ b/code/controllers/subsystem/dynamic/dynamic_ruleset_roundstart.dm @@ -49,7 +49,7 @@ pref_flag = ROLE_MALF preview_antag_datum = /datum/antagonist/malf_ai ruleset_flags = RULESET_HIGH_IMPACT - weight = list( + weight = alist( DYNAMIC_TIER_LOW = 0, DYNAMIC_TIER_LOWMEDIUM = 1, DYNAMIC_TIER_MEDIUMHIGH = 3, @@ -116,7 +116,7 @@ preview_antag_datum = /datum/antagonist/wizard pref_flag = ROLE_WIZARD ruleset_flags = RULESET_INVADER|RULESET_HIGH_IMPACT - weight = list( + weight = alist( DYNAMIC_TIER_LOW = 0, DYNAMIC_TIER_LOWMEDIUM = 0, DYNAMIC_TIER_MEDIUMHIGH = 1, @@ -147,7 +147,7 @@ preview_antag_datum = /datum/antagonist/cult pref_flag = ROLE_CULTIST ruleset_flags = RULESET_HIGH_IMPACT - weight = list( + weight = alist( DYNAMIC_TIER_LOW = 0, DYNAMIC_TIER_LOWMEDIUM = 1, DYNAMIC_TIER_MEDIUMHIGH = 3, @@ -208,7 +208,7 @@ preview_antag_datum = /datum/antagonist/nukeop pref_flag = ROLE_OPERATIVE ruleset_flags = RULESET_INVADER|RULESET_HIGH_IMPACT - weight = list( + weight = alist( DYNAMIC_TIER_LOW = 0, DYNAMIC_TIER_LOWMEDIUM = 1, DYNAMIC_TIER_MEDIUMHIGH = 3, @@ -292,7 +292,7 @@ preview_antag_datum = /datum/antagonist/rev/head pref_flag = ROLE_REV_HEAD ruleset_flags = RULESET_HIGH_IMPACT - weight = list( + weight = alist( DYNAMIC_TIER_LOW = 0, DYNAMIC_TIER_LOWMEDIUM = 1, DYNAMIC_TIER_MEDIUMHIGH = 3, @@ -367,7 +367,7 @@ config_tag = "Roundstart Spies" preview_antag_datum = /datum/antagonist/spy pref_flag = ROLE_SPY - weight = list( + weight = alist( DYNAMIC_TIER_LOW = 0, DYNAMIC_TIER_LOWMEDIUM = 1, DYNAMIC_TIER_MEDIUMHIGH = 3, diff --git a/code/controllers/subsystem/economy.dm b/code/controllers/subsystem/economy.dm index 5fa4677fcc5949..0766834fa86b7f 100644 --- a/code/controllers/subsystem/economy.dm +++ b/code/controllers/subsystem/economy.dm @@ -173,9 +173,9 @@ SUBSYSTEM_DEF(economy) fluff_string = ", but company countermeasures protect YOU from being affected!" else fluff_string = ", and company countermeasures are failing to protect YOU from being affected. We're all doomed!" - earning_report = "Sector Economic Report

Sector vendor prices is currently at [SSeconomy.inflation_value()*100]%[fluff_string]

The station spending power is currently [station_total] Libre, and the crew's targeted allowance is at [station_target] Credits.

[SSstock_market.news_string]" // DOPPLER EDIT, Credit > Libre + earning_report = "Sector Economic Report

Sector vendor prices is currently at [SSeconomy.inflation_value()*100]%[fluff_string]

The station spending power is currently [station_total] [MONEY_NAME_CAPITALIZED], and the crew's targeted allowance is at [station_target] [MONEY_NAME_CAPITALIZED].

[SSstock_market.news_string]" var/update_alerts = FALSE - if(HAS_TRAIT(SSstation, STATION_TRAIT_ECONOMY_ALERTS)) + if(HAS_TRAIT(SSstation, STATION_TRAIT_ECONOMY_ALERTS) && (living_player_count() > 1)) var/datum/bank_account/moneybags var/static/list/typecache_bank = typecacheof(list(/datum/bank_account/department, /datum/bank_account/remote)) for(var/i in bank_accounts_by_id) @@ -185,7 +185,7 @@ SUBSYSTEM_DEF(economy) if(!moneybags || moneybags.account_balance < current_acc.account_balance) moneybags = current_acc if (moneybags) - earning_report += "Our GMM Spotlight would like to alert you that [moneybags.account_holder] is your station's most affulent crewmate! They've hit it big with [moneybags.account_balance] Libre saved. " // DOPPLER EDIT, Credit > Libre + earning_report += "Our GMM Spotlight would like to alert you that [moneybags.account_holder] is your station's most affulent crewmate! They've hit it big with [moneybags.account_balance] [MONEY_NAME] saved. " update_alerts = TRUE inflict_moneybags(moneybags) earning_report += "That's all from the Nanotrasen Economist Division." diff --git a/code/controllers/subsystem/explosions.dm b/code/controllers/subsystem/explosions.dm index 9fb15c8087ed1c..f8062a8a2247e7 100644 --- a/code/controllers/subsystem/explosions.dm +++ b/code/controllers/subsystem/explosions.dm @@ -472,8 +472,7 @@ ADMIN_VERB(check_bomb_impacts, R_DEBUG, "Check Bomb Impact", "See what the effec var/took = (REALTIMEOFDAY - started_at) / 10 //You need to press the DebugGame verb to see these now....they were getting annoying and we've collected a fair bit of data. Just -test- changes to explosion code using this please so we can compare - if(GLOB.Debug2) - log_world("## DEBUG: Explosion([x0],[y0],[z0])(d[devastation_range],h[heavy_impact_range],l[light_impact_range]): Took [took] seconds.") + debug_world("Explosion([x0],[y0],[z0])(d[devastation_range],h[heavy_impact_range],l[light_impact_range]): Took [took] seconds.") explosion_index += 1 diff --git a/code/controllers/subsystem/library.dm b/code/controllers/subsystem/library.dm index 7933bbae0c7579..87b64f1af8701c 100644 --- a/code/controllers/subsystem/library.dm +++ b/code/controllers/subsystem/library.dm @@ -58,7 +58,7 @@ SUBSYSTEM_DEF(library) /datum/controller/subsystem/library/proc/prepare_official_posters() printable_posters = list() for(var/obj/structure/sign/poster/official/poster_type as anything in subtypesof(/obj/structure/sign/poster/official)) - if (initial(poster_type.printable) == TRUE) //Mostly this check exists to keep directionals from ending up in the printable list + if (initial(poster_type.pixel_x) == 0 && initial(poster_type.pixel_y) == 0) //Anything with an initial pixel offset is a directional subtype, keep it out the list printable_posters[initial(poster_type.name)] = poster_type /datum/controller/subsystem/library/proc/prepare_library_areas() diff --git a/code/controllers/subsystem/mapping.dm b/code/controllers/subsystem/mapping.dm index be1e8fea28896a..d038e22dcf0c99 100644 --- a/code/controllers/subsystem/mapping.dm +++ b/code/controllers/subsystem/mapping.dm @@ -518,7 +518,7 @@ GLOBAL_LIST_EMPTY(the_station_areas) /// Generates the global station area list, filling it with typepaths of unique areas found on the station Z. /datum/controller/subsystem/mapping/proc/generate_station_area_list() for(var/area/station/station_area in GLOB.areas) - if (!(station_area.area_flags & UNIQUE_AREA)) + if (!(station_area.area_flags_mapping & UNIQUE_AREA)) continue if (is_station_level(station_area.z)) GLOB.the_station_areas += station_area.type diff --git a/code/controllers/subsystem/materials.dm b/code/controllers/subsystem/materials.dm index 22101aa2e8d240..41bafa367e0e18 100644 --- a/code/controllers/subsystem/materials.dm +++ b/code/controllers/subsystem/materials.dm @@ -21,16 +21,16 @@ SUBSYSTEM_DEF(materials) var/list/list/material_combos ///List of stackcrafting recipes for materials using base recipes var/list/base_stack_recipes = list( - new /datum/stack_recipe("Chair", /obj/structure/chair/greyscale, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_APPLIES_MATS, category = CAT_FURNITURE), - new /datum/stack_recipe("Toilet", /obj/structure/toilet/greyscale, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_APPLIES_MATS, category = CAT_FURNITURE), - new /datum/stack_recipe("Sink Frame", /obj/structure/sinkframe, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_APPLIES_MATS, category = CAT_FURNITURE), - new /datum/stack_recipe("Material floor tile", /obj/item/stack/tile/material, 1, 4, 20, crafting_flags = CRAFT_APPLIES_MATS, category = CAT_TILES), - new /datum/stack_recipe("Material airlock assembly", /obj/structure/door_assembly/door_assembly_material, 4, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_APPLIES_MATS, category = CAT_DOORS), - new /datum/stack_recipe("Material platform", /obj/structure/platform/material, 2, time = 3 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_APPLIES_MATS, trait_booster = TRAIT_QUICK_BUILD, trait_modifier = 0.75, category = CAT_STRUCTURE), \ + new /datum/stack_recipe("Chair", /obj/structure/chair/greyscale, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_SKIP_MATERIALS_PARITY, category = CAT_FURNITURE), + new /datum/stack_recipe("Toilet", /obj/structure/toilet/greyscale, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_SKIP_MATERIALS_PARITY, category = CAT_FURNITURE), + new /datum/stack_recipe("Sink Frame", /obj/structure/sinkframe, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_SKIP_MATERIALS_PARITY, category = CAT_FURNITURE), + new /datum/stack_recipe("Material floor tile", /obj/item/stack/tile/material, 1, 4, 20, crafting_flags = CRAFT_SKIP_MATERIALS_PARITY, category = CAT_TILES), + new /datum/stack_recipe("Material airlock assembly", /obj/structure/door_assembly/door_assembly_material, 4, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_SKIP_MATERIALS_PARITY, category = CAT_DOORS), + new /datum/stack_recipe("Material platform", /obj/structure/platform/material, 2, time = 3 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_SKIP_MATERIALS_PARITY, trait_booster = TRAIT_QUICK_BUILD, trait_modifier = 0.75, category = CAT_STRUCTURE), \ ) ///List of stackcrafting recipes for materials using rigid recipes var/list/rigid_stack_recipes = list( - new /datum/stack_recipe("Carving block", /obj/structure/carving_block, 5, time = 3 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_APPLIES_MATS, category = CAT_STRUCTURE), + new /datum/stack_recipe("Carving block", /obj/structure/carving_block, 5, time = 3 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_SKIP_MATERIALS_PARITY, category = CAT_STRUCTURE), ) ///A list of dimensional themes used by the dimensional anomaly and other things, most of which require materials to function. @@ -157,8 +157,7 @@ SUBSYSTEM_DEF(materials) if(!material_combos) InitializeMaterials() var/list/combo_params = list() - for(var/x in materials_declaration) - var/datum/material/mat = x + for(var/datum/material/mat as anything in materials_declaration) combo_params += "[istype(mat) ? mat.id : mat]=[OPTIMAL_COST(materials_declaration[mat] * multiplier)]" sortTim(combo_params, GLOBAL_PROC_REF(cmp_text_asc)) // We have to sort now in case the declaration was not in order var/combo_index = combo_params.Join("-") diff --git a/code/controllers/subsystem/mobs.dm b/code/controllers/subsystem/mobs.dm index 1faa2e102ad909..7f500e08289c7e 100644 --- a/code/controllers/subsystem/mobs.dm +++ b/code/controllers/subsystem/mobs.dm @@ -32,13 +32,12 @@ SUBSYSTEM_DEF(mobs) //cache for sanic speed (lists are references anyways) var/list/currentrun = src.currentrun - var/times_fired = src.times_fired var/seconds_per_tick = wait / (1 SECONDS) while(currentrun.len) var/mob/living/processing_mob = currentrun[currentrun.len] currentrun.len-- if(processing_mob) - processing_mob.Life(seconds_per_tick, times_fired) + processing_mob.Life(seconds_per_tick) else GLOB.mob_living_list.Remove(processing_mob) if (MC_TICK_CHECK) diff --git a/code/controllers/subsystem/networks/bitrunning.dm b/code/controllers/subsystem/networks/bitrunning.dm index 5e6a1c6bd345b8..51b7f329a4a6de 100644 --- a/code/controllers/subsystem/networks/bitrunning.dm +++ b/code/controllers/subsystem/networks/bitrunning.dm @@ -19,7 +19,7 @@ SUBSYSTEM_DEF(bitrunning) var/list/levels = list() for(var/datum/lazy_template/virtual_domain/domain as anything in all_domains) - if(domain.test_only) + if(domain.domain_flags & DOMAIN_TEST_ONLY) continue var/can_view = domain.difficulty < scanner_tier && domain.cost <= points + 5 var/can_view_reward = domain.difficulty < (scanner_tier + 1) && domain.cost <= points + 3 diff --git a/code/controllers/subsystem/networks/id_access.dm b/code/controllers/subsystem/networks/id_access.dm index a51c07f70e8817..0973ca7b328d44 100644 --- a/code/controllers/subsystem/networks/id_access.dm +++ b/code/controllers/subsystem/networks/id_access.dm @@ -249,87 +249,89 @@ SUBSYSTEM_DEF(id_access) /// Setup dictionary that converts access levels to text descriptions. /datum/controller/subsystem/id_access/proc/setup_access_descriptions() - desc_by_access["[ACCESS_CARGO]"] = "Cargo Bay" - desc_by_access["[ACCESS_SECURITY]"] = "Security" - desc_by_access["[ACCESS_BRIG]"] = "Holding Cells" - desc_by_access["[ACCESS_COURT]"] = "Courtroom" - desc_by_access["[ACCESS_DETECTIVE]"] = "Detective Office" - desc_by_access["[ACCESS_MEDICAL]"] = "Medical" - desc_by_access["[ACCESS_GENETICS]"] = "Genetics Lab" - desc_by_access["[ACCESS_MORGUE]"] = "Morgue" - desc_by_access["[ACCESS_MORGUE_SECURE]"] = "Coroner" - desc_by_access["[ACCESS_SCIENCE]"] = "R&D Lab" - desc_by_access["[ACCESS_ORDNANCE]"] = "Ordnance Lab" - desc_by_access["[ACCESS_ORDNANCE_STORAGE]"] = "Ordnance Storage" - desc_by_access["[ACCESS_PLUMBING]"] = "Chemistry Lab" - desc_by_access["[ACCESS_RD]"] = "RD Office" - desc_by_access["[ACCESS_BAR]"] = "Bar" - desc_by_access["[ACCESS_JANITOR]"] = "Custodial Closet" - desc_by_access["[ACCESS_ENGINEERING]"] = "Engineering" - desc_by_access["[ACCESS_ENGINE_EQUIP]"] = "Power and Engineering Equipment" - desc_by_access["[ACCESS_MAINT_TUNNELS]"] = "Maintenance" - desc_by_access["[ACCESS_EXTERNAL_AIRLOCKS]"] = "External Airlocks" - desc_by_access["[ACCESS_CHANGE_IDS]"] = "ID Console" - desc_by_access["[ACCESS_AI_UPLOAD]"] = "AI Chambers" - desc_by_access["[ACCESS_TELEPORTER]"] = "Teleporter" - desc_by_access["[ACCESS_EVA]"] = "EVA" - desc_by_access["[ACCESS_COMMAND]"] = "Command" - desc_by_access["[ACCESS_CAPTAIN]"] = "Captain" - desc_by_access["[ACCESS_ALL_PERSONAL_LOCKERS]"] = "Personal Lockers" - desc_by_access["[ACCESS_CHAPEL_OFFICE]"] = "Chapel Office" - desc_by_access["[ACCESS_TECH_STORAGE]"] = "Technical Storage" - desc_by_access["[ACCESS_ATMOSPHERICS]"] = "Atmospherics" - desc_by_access["[ACCESS_CREMATORIUM]"] = "Crematorium" - desc_by_access["[ACCESS_ARMORY]"] = "Armory" - desc_by_access["[ACCESS_CONSTRUCTION]"] = "Construction" - desc_by_access["[ACCESS_KITCHEN]"] = "Kitchen" - desc_by_access["[ACCESS_HYDROPONICS]"] = "Hydroponics" - desc_by_access["[ACCESS_LIBRARY]"] = "Library" - desc_by_access["[ACCESS_LAWYER]"] = "Sophont Resources Office" // DOPPLER EDIT CHANGE - Security Lore Rework - Original: desc_by_access["[ACCESS_LAWYER]"] = "Law Office" - desc_by_access["[ACCESS_ROBOTICS]"] = "Robotics" - desc_by_access["[ACCESS_VIROLOGY]"] = "Virology" - desc_by_access["[ACCESS_PSYCHOLOGY]"] = "Psychology" - desc_by_access["[ACCESS_CMO]"] = "CMO Office" - desc_by_access["[ACCESS_PARAMEDIC]"] = "Paramedic Office" - desc_by_access["[ACCESS_QM]"] = "QM Office" - desc_by_access["[ACCESS_SURGERY]"] = "Surgery" - desc_by_access["[ACCESS_THEATRE]"] = "Theatre" - desc_by_access["[ACCESS_RESEARCH]"] = "Science" - desc_by_access["[ACCESS_MINING]"] = "Mining Dock" - desc_by_access["[ACCESS_SHIPPING]"] = "Cargo Shipping" - desc_by_access["[ACCESS_VAULT]"] = "Main Vault" - desc_by_access["[ACCESS_MINING_STATION]"] = "Mining Outpost" - desc_by_access["[ACCESS_XENOBIOLOGY]"] = "Xenobiology Lab" - desc_by_access["[ACCESS_HOP]"] = "HoP Office" - desc_by_access["[ACCESS_HOS]"] = "CG Office" // DOPPLER EDIT CHANGE - Security Lore Rework - Original: desc_by_access["[ACCESS_HOS]"] = "HoS Office" - desc_by_access["[ACCESS_CE]"] = "CE Office" - desc_by_access["[ACCESS_PHARMACY]"] = "Pharmacy" - desc_by_access["[ACCESS_RC_ANNOUNCE]"] = "RC Announcements" - desc_by_access["[ACCESS_KEYCARD_AUTH]"] = "Keycode Auth." - desc_by_access["[ACCESS_TCOMMS]"] = "Telecommunications" - desc_by_access["[ACCESS_GATEWAY]"] = "Gateway" - desc_by_access["[ACCESS_BRIG_ENTRANCE]"] = "Brig" - desc_by_access["[ACCESS_MINERAL_STOREROOM]"] = "Mineral Storage" - desc_by_access["[ACCESS_MINISAT]"] = "AI Satellite" - desc_by_access["[ACCESS_WEAPONS]"] = "Weapon Permit" - desc_by_access["[ACCESS_NETWORK]"] = "Network Access" - desc_by_access["[ACCESS_MECH_MINING]"] = "Mining Mech Access" - desc_by_access["[ACCESS_MECH_MEDICAL]"] = "Medical Mech Access" - desc_by_access["[ACCESS_MECH_SECURITY]"] = "Security Mech Access" - desc_by_access["[ACCESS_MECH_SCIENCE]"] = "Science Mech Access" - desc_by_access["[ACCESS_MECH_ENGINE]"] = "Engineering Mech Access" - desc_by_access["[ACCESS_AUX_BASE]"] = "Auxiliary Base" - desc_by_access["[ACCESS_SERVICE]"] = "Service Hallway" - desc_by_access["[ACCESS_CENT_GENERAL]"] = "Code Grey" - desc_by_access["[ACCESS_CENT_THUNDER]"] = "Code Yellow" - desc_by_access["[ACCESS_CENT_STORAGE]"] = "Code Orange" - desc_by_access["[ACCESS_CENT_LIVING]"] = "Code Green" - desc_by_access["[ACCESS_CENT_MEDICAL]"] = "Code White" - desc_by_access["[ACCESS_CENT_TELEPORTER]"] = "Code Blue" - desc_by_access["[ACCESS_CENT_SPECOPS]"] = "Code Black" - desc_by_access["[ACCESS_CENT_CAPTAIN]"] = "Code Gold" - desc_by_access["[ACCESS_CENT_BAR]"] = "Code Scotch" - desc_by_access["[ACCESS_BIT_DEN]"] = "Bitrunner Den" + desc_by_access[ACCESS_CARGO] = "Cargo Bay" + desc_by_access[ACCESS_SECURITY] = "Security" + desc_by_access[ACCESS_BRIG] = "Holding Cells" + desc_by_access[ACCESS_COURT] = "Courtroom" + desc_by_access[ACCESS_DETECTIVE] = "Detective Office" + desc_by_access[ACCESS_MEDICAL] = "Medical" + desc_by_access[ACCESS_GENETICS] = "Genetics Lab" + desc_by_access[ACCESS_MORGUE] = "Morgue" + desc_by_access[ACCESS_MORGUE_SECURE] = "Coroner" + desc_by_access[ACCESS_SCIENCE] = "R&D Lab" + desc_by_access[ACCESS_ORDNANCE] = "Ordnance Lab" + desc_by_access[ACCESS_ORDNANCE_STORAGE] = "Ordnance Storage" + desc_by_access[ACCESS_PLUMBING] = "Chemistry Lab" + desc_by_access[ACCESS_RD] = "RD Office" + desc_by_access[ACCESS_BAR] = "Bar" + desc_by_access[ACCESS_JANITOR] = "Custodial Closet" + desc_by_access[ACCESS_ENGINEERING] = "Engineering" + desc_by_access[ACCESS_ENGINE_EQUIP] = "Power and Engineering Equipment" + desc_by_access[ACCESS_MAINT_TUNNELS] = "Maintenance" + desc_by_access[ACCESS_EXTERNAL_AIRLOCKS] = "External Airlocks" + desc_by_access[ACCESS_CHANGE_IDS] = "ID Console" + desc_by_access[ACCESS_AI_UPLOAD] = "AI Chambers" + desc_by_access[ACCESS_TELEPORTER] = "Teleporter" + desc_by_access[ACCESS_EVA] = "EVA" + desc_by_access[ACCESS_BUDGET] = "Department Budget" + desc_by_access[ACCESS_COMMAND] = "Command" + desc_by_access[ACCESS_CAPTAIN] = "Captain" + desc_by_access[ACCESS_ALL_PERSONAL_LOCKERS] = "Personal Lockers" + desc_by_access[ACCESS_CHAPEL_OFFICE] = "Chapel Office" + desc_by_access[ACCESS_TECH_STORAGE] = "Technical Storage" + desc_by_access[ACCESS_ATMOSPHERICS] = "Atmospherics" + desc_by_access[ACCESS_CREMATORIUM] = "Crematorium" + desc_by_access[ACCESS_ARMORY] = "Armory" + desc_by_access[ACCESS_CONSTRUCTION] = "Construction" + desc_by_access[ACCESS_KITCHEN] = "Kitchen" + desc_by_access[ACCESS_HYDROPONICS] = "Hydroponics" + desc_by_access[ACCESS_LIBRARY] = "Library" + desc_by_access[ACCESS_LAWYER] = "Sophont Resources Office" // DOPPLER EDIT CHANGE - Security Lore Rework - Original: desc_by_access[ACCESS_LAWYER] = "Law Office" + desc_by_access[ACCESS_ROBOTICS] = "Robotics" + desc_by_access[ACCESS_VIROLOGY] = "Virology" + desc_by_access[ACCESS_PSYCHOLOGY] = "Psychology" + desc_by_access[ACCESS_CMO] = "CMO Office" + desc_by_access[ACCESS_PARAMEDIC] = "Paramedic Office" + desc_by_access[ACCESS_QM] = "QM Office" + desc_by_access[ACCESS_SURGERY] = "Surgery" + desc_by_access[ACCESS_THEATRE] = "Theatre" + desc_by_access[ACCESS_RESEARCH] = "Science" + desc_by_access[ACCESS_MINING] = "Mining Dock" + desc_by_access[ACCESS_SHIPPING] = "Cargo Shipping" + desc_by_access[ACCESS_VAULT] = "Main Vault" + desc_by_access[ACCESS_MINING_STATION] = "Mining Outpost" + desc_by_access[ACCESS_XENOBIOLOGY] = "Xenobiology Lab" + desc_by_access[ACCESS_HOP] = "HoP Office" + desc_by_access[ACCESS_HOS] = "CG Office" // DOPPLER EDIT CHANGE - Security Lore Rework - Original: desc_by_access[ACCESS_HOS] = "HoS Office" + desc_by_access[ACCESS_CE] = "CE Office" + desc_by_access[ACCESS_PHARMACY] = "Pharmacy" + desc_by_access[ACCESS_RC_ANNOUNCE] = "RC Announcements" + desc_by_access[ACCESS_KEYCARD_AUTH] = "Keycode Auth." + desc_by_access[ACCESS_TCOMMS] = "Telecommunications" + desc_by_access[ACCESS_GATEWAY] = "Gateway" + desc_by_access[ACCESS_BRIG_ENTRANCE] = "Brig" + desc_by_access[ACCESS_MINERAL_STOREROOM] = "Mineral Storage" + desc_by_access[ACCESS_MINISAT] = "AI Satellite" + desc_by_access[ACCESS_WEAPONS] = "Weapon Permit" + desc_by_access[ACCESS_NETWORK] = "Network Access" + desc_by_access[ACCESS_MECH_MINING] = "Mining Mech Access" + desc_by_access[ACCESS_MECH_MEDICAL] = "Medical Mech Access" + desc_by_access[ACCESS_MECH_SECURITY] = "Security Mech Access" + desc_by_access[ACCESS_MECH_SCIENCE] = "Science Mech Access" + desc_by_access[ACCESS_MECH_ENGINE] = "Engineering Mech Access" + desc_by_access[ACCESS_AUX_BASE] = "Auxiliary Base" + desc_by_access[ACCESS_SERVICE] = "Service Hallway" + desc_by_access[ACCESS_CENT_GENERAL] = "CentCom General Access" + desc_by_access[ACCESS_CENT_THUNDER] = "CentCom Thunderdome" + desc_by_access[ACCESS_CENT_STORAGE] = "CentCom Storage" + desc_by_access[ACCESS_CENT_LIVING] = "CentCom Living Quarters" + desc_by_access[ACCESS_CENT_MEDICAL] = "CentCom Medical" + desc_by_access[ACCESS_CENT_TELEPORTER] = "CentCom Teleporter" + desc_by_access[ACCESS_CENT_SPECOPS] = "CentCom SpecOps" + desc_by_access[ACCESS_CENT_CAPTAIN] = "CentCom Captain" + desc_by_access[ACCESS_CENT_BAR] = "CentCom Bar" + desc_by_access[ACCESS_CENT_OFFICER] = "CentCom Officer" + desc_by_access[ACCESS_BIT_DEN] = "Bitrunner Den" /** * Returns the access bitflags associated with any given access level. diff --git a/code/controllers/subsystem/networks/research.dm b/code/controllers/subsystem/networks/research.dm index dece0f78e01ebc..8a48e90c26613e 100644 --- a/code/controllers/subsystem/networks/research.dm +++ b/code/controllers/subsystem/networks/research.dm @@ -66,6 +66,7 @@ SUBSYSTEM_DEF(research) /obj/item/assembly/signaler/anomaly/bioscrambler = MAX_CORES_BIOSCRAMBLER, /obj/item/assembly/signaler/anomaly/dimensional = MAX_CORES_DIMENSIONAL, /obj/item/assembly/signaler/anomaly/ectoplasm = MAX_CORES_ECTOPLASMIC, + /obj/item/assembly/signaler/anomaly/weather = MAX_CORES_WEATHER, ) /// Lookup list for ordnance briefers. diff --git a/code/controllers/subsystem/persistence/engravings.dm b/code/controllers/subsystem/persistence/engravings.dm index ad00c7909d7234..c60f5ae524b09f 100644 --- a/code/controllers/subsystem/persistence/engravings.dm +++ b/code/controllers/subsystem/persistence/engravings.dm @@ -62,7 +62,7 @@ if(!engraving.persistent_save) continue var/area/engraved_area = get_area(engraving.parent) - if(!(engraved_area.area_flags & PERSISTENT_ENGRAVINGS)) + if(!(engraved_area.area_flags_mapping & PERSISTENT_ENGRAVINGS)) continue saved_data["entries"] += engraving.save_persistent() diff --git a/code/controllers/subsystem/persistence/scars.dm b/code/controllers/subsystem/persistence/scars.dm index fa378f24dd4376..5c6a76f4e13444 100644 --- a/code/controllers/subsystem/persistence/scars.dm +++ b/code/controllers/subsystem/persistence/scars.dm @@ -5,7 +5,7 @@ if(!istype(ending_human) || !ending_human.mind?.original_character_slot_index || !ending_human.client?.prefs.read_preference(/datum/preference/toggle/persistent_scars)) continue - var/mob/living/carbon/human/original_human = ending_human.mind.original_character.resolve() + var/mob/living/carbon/human/original_human = ending_human.mind.original_character?.resolve() if(!original_human) continue diff --git a/code/controllers/subsystem/processing/priority_effects.dm b/code/controllers/subsystem/processing/priority_effects.dm index ee4fb7f7f6dc2d..f3be081ec50c4d 100644 --- a/code/controllers/subsystem/processing/priority_effects.dm +++ b/code/controllers/subsystem/processing/priority_effects.dm @@ -1,6 +1,6 @@ PROCESSING_SUBSYSTEM_DEF(priority_effects) name = "Priority Status Effects" - flags = SS_TICKER | SS_KEEP_TIMING | SS_NO_INIT - wait = 2 // Not seconds - we're running on SS_TICKER, so this is ticks. + flags = SS_KEEP_TIMING | SS_NO_INIT + wait = 0.2 SECONDS // Same as SSfastprocess, but can be anything, assuming you refactor all high-priority status effect intervals and durations to be a multiple of it. priority = FIRE_PRIORITY_PRIORITY_EFFECTS stat_tag = "PEFF" diff --git a/code/controllers/subsystem/processing/processing.dm b/code/controllers/subsystem/processing/processing.dm index 81ff1a5640b49b..d2b255211686ef 100644 --- a/code/controllers/subsystem/processing/processing.dm +++ b/code/controllers/subsystem/processing/processing.dm @@ -40,7 +40,7 @@ SUBSYSTEM_DEF(processing) * Additionally, any "prob" you use in this proc should instead use the SPT_PROB define to make sure that the final probability per second stays the same even if the subsystem's wait is altered. * Examples where this must be considered: * - Implementing a cooldown timer, use `mytimer -= seconds_per_tick`, not `mytimer -= 1`. This way, `mytimer` will always have the unit of seconds - * - Damaging a mob, do `L.adjustFireLoss(20 * seconds_per_tick)`, not `L.adjustFireLoss(20)`. This way, the damage per second stays constant even if the wait of the subsystem is changed + * - Damaging a mob, do `L.adjust_fire_loss(20 * seconds_per_tick)`, not `L.adjust_fire_loss(20)`. This way, the damage per second stays constant even if the wait of the subsystem is changed * - Probability of something happening, do `if(SPT_PROB(25, seconds_per_tick))`, not `if(prob(25))`. This way, if the subsystem wait is e.g. lowered, there won't be a higher chance of this event happening per second * * If you override this do not call parent, as it will return PROCESS_KILL. This is done to prevent objects that dont override process() from staying in the processing list diff --git a/code/controllers/subsystem/processing/station.dm b/code/controllers/subsystem/processing/station.dm index 7ca7b2832047ea..c19e04559cd62a 100644 --- a/code/controllers/subsystem/processing/station.dm +++ b/code/controllers/subsystem/processing/station.dm @@ -7,7 +7,7 @@ PROCESSING_SUBSYSTEM_DEF(station) ///A list of currently active station traits var/list/station_traits = list() ///Assoc list of trait type || assoc list of traits with weighted value. Used for picking traits from a specific category. - var/list/selectable_traits_by_types = list(STATION_TRAIT_POSITIVE = list(), STATION_TRAIT_NEUTRAL = list(), STATION_TRAIT_NEGATIVE = list()) + var/alist/selectable_traits_by_types = alist(STATION_TRAIT_POSITIVE = list(), STATION_TRAIT_NEUTRAL = list(), STATION_TRAIT_NEGATIVE = list()) ///Currently active announcer. Starts as a type but gets initialized after traits are selected var/datum/centcom_announcer/announcer = /datum/centcom_announcer/default ///A list of trait roles that should be protected from antag diff --git a/code/controllers/subsystem/radioactive_nebula.dm b/code/controllers/subsystem/radioactive_nebula.dm index c9fa5699222d22..0778725accbee1 100644 --- a/code/controllers/subsystem/radioactive_nebula.dm +++ b/code/controllers/subsystem/radioactive_nebula.dm @@ -12,6 +12,13 @@ SUBSYSTEM_DEF(radioactive_nebula) VAR_PRIVATE datum/station_trait/nebula/hostile/radiation/radioactive_nebula + // List of /atom/movable's that should never be irradiated + var/static/list/blacklisted_atoms = typecacheof(list( + /atom/movable/mirage_holder, + /obj/docking_port, + /obj/effect/landmark, + /obj/effect/abstract, + )) /datum/controller/subsystem/radioactive_nebula/Initialize() radioactive_nebula = locate() in SSstation.station_traits @@ -31,6 +38,10 @@ SUBSYSTEM_DEF(radioactive_nebula) if (HAS_TRAIT(target, TRAIT_RADIOACTIVE_NEBULA_FAKE_IRRADIATED)) return + /// Things that should not be irradiated, like mirage_holders + if(is_type_in_typecache(target, blacklisted_atoms)) + return + ADD_TRAIT(target, TRAIT_RADIOACTIVE_NEBULA_FAKE_IRRADIATED, REF(src)) if(iscarbon(target))//Don't actually make EVERY. SINGLE. THING. RADIOACTIVE. Just irradiate people diff --git a/code/controllers/subsystem/security_level.dm b/code/controllers/subsystem/security_level.dm index 11bb96b3d2da31..2e48d593faec07 100644 --- a/code/controllers/subsystem/security_level.dm +++ b/code/controllers/subsystem/security_level.dm @@ -20,7 +20,7 @@ SUBSYSTEM_DEF(security_level) if(!current_security_level.looping_sound) // No sound? No play. can_fire = FALSE return - sound_to_playing_players(current_security_level.looping_sound) + sound_to_playing_players(current_security_level.looping_sound, volume_preference = /datum/preference/numeric/volume/sound_ambience_volume) /** diff --git a/code/controllers/subsystem/shuttle.dm b/code/controllers/subsystem/shuttle.dm index 4078f4d57fa6cc..ed7117fe6bb76c 100644 --- a/code/controllers/subsystem/shuttle.dm +++ b/code/controllers/subsystem/shuttle.dm @@ -419,10 +419,14 @@ SUBSYSTEM_DEF(shuttle) var/datum/signal/status_signal = new(list("command" = "update")) frequency.post_signal(src, status_signal) -/datum/controller/subsystem/shuttle/proc/centcom_recall(old_timer, admiral_message) - if(emergency.mode != SHUTTLE_CALL || emergency.timer != old_timer) - return - emergency.cancel() +/// Does a fluffy CentCom recall of the emergency shuttle with additional message as desired. +/// Returns TRUE on success, FALSE otherwise. +/datum/controller/subsystem/shuttle/proc/centcom_recall(mob/user, old_timer, admiral_message) + if(emergency.timer != old_timer) + return FALSE + + if(!cancel_evac(user)) + return FALSE //feedback handled in cancel_evac() if(!admiral_message) admiral_message = pick(GLOB.admiral_messages) @@ -441,6 +445,8 @@ SUBSYSTEM_DEF(shuttle) [admiral_message]" print_command_report(intercepttext, announce = TRUE) + return TRUE + // Called when an emergency shuttle mobile docking port is // destroyed, which will only happen with admin intervention /datum/controller/subsystem/shuttle/proc/emergencyDeregister() @@ -448,29 +454,76 @@ SUBSYSTEM_DEF(shuttle) // backup shuttle. src.emergency = src.backup_shuttle -/datum/controller/subsystem/shuttle/proc/cancelEvac(mob/user) - if(canRecall()) - emergency.cancel(get_area(user)) - log_shuttle("[key_name(user)] has recalled the shuttle.") - message_admins("[ADMIN_LOOKUPFLW(user)] has recalled the shuttle.") - deadchat_broadcast(" has recalled the shuttle from [span_name("[get_area_name(user, TRUE)]")].", span_name("[user.real_name]"), user, message_type=DEADCHAT_ANNOUNCEMENT) - return 1 +/// Actually work on canceling the emergency shuttle recall. Returns TRUE if successful, FALSE otherwise. +/datum/controller/subsystem/shuttle/proc/cancel_evac(mob/user) + if(!can_recall(user)) + return FALSE -/datum/controller/subsystem/shuttle/proc/canRecall() - if(!emergency || emergency.mode != SHUTTLE_CALL || admin_emergency_no_recall || emergency_no_recall) - return + emergency.cancel(get_area(user)) + log_shuttle("[key_name(user)] has recalled the shuttle.") + message_admins("[ADMIN_LOOKUPFLW(user)] has recalled the shuttle.") + deadchat_broadcast(" has recalled the shuttle from [span_name("[get_area_name(user, TRUE)]")].", span_name("[user.real_name]"), user, message_type = DEADCHAT_ANNOUNCEMENT) + return TRUE + +/// Can this user recall the emergency shuttle? Returns TRUE if they can, otherwise returns FALSE. +/datum/controller/subsystem/shuttle/proc/can_recall(mob/user) + if(isnull(emergency) || emergency.mode != SHUTTLE_CALL) + return FALSE + + var/is_admin = !!user.client?.holder + if(is_admin) + return admin_recall(user) + + if(admin_emergency_no_recall || emergency_no_recall) + return FALSE + + return past_restriction_point() + +/// Are we past the restriction point (i.e. more than half of the shuttle timer has elapsed) for recalling the shuttle? Returns TRUE if we are, FALSE otherwise. +/datum/controller/subsystem/shuttle/proc/past_restriction_point() var/security_num = SSsecurity_level.get_current_level_as_number() switch(security_num) if(SEC_LEVEL_GREEN) if(emergency.timeLeft(1) < emergency_call_time) - return + return FALSE if(SEC_LEVEL_BLUE) if(emergency.timeLeft(1) < emergency_call_time * 0.5) - return + return FALSE else if(emergency.timeLeft(1) < emergency_call_time * 0.25) - return - return 1 + return FALSE + + return TRUE + +/// Handle admin level overrides of recalling the shuttle. We assume that the user passed is an admin. +/// If a special state exists, we prompt the admin to confirm they want to override the wishes of other admins/game code. Returns TRUE if they elect to do so, FALSE otherwise. +/datum/controller/subsystem/shuttle/proc/admin_recall(mob/user) + if(admin_emergency_no_recall) + var/admin_no_recall_alert = tgui_alert( + user, + "An administrator has disabled the emergency shuttle recall function, are you sure you want to proceed with the recall?", + "Admin Level Recall Confirmation", + list("Yes", "No"), + ) + if(admin_no_recall_alert == "Yes") + admin_emergency_no_recall = FALSE + return TRUE + return FALSE + + if(emergency_no_recall) + var/general_no_recall_alert = tgui_alert( + user, + "The emergency shuttle recall function is currently disabled by game code, are you sure you want to proceed with the recall?", + "Recall Confirmation", + list("Yes", "No"), + ) + if(general_no_recall_alert == "Yes") + // we will not unset emergency_no_recall here, as it's game code enforced and I want it to stay active, admins can transiently override it through this though. + // they can always edit the variable on SSshuttle if desperate. + return TRUE + return FALSE + + return TRUE // we assume that they've seen other warnings at earlier points if they got here from a verb or something like that /datum/controller/subsystem/shuttle/proc/autoEvac() if (!SSticker.IsRoundInProgress() || supermatter_cascade) diff --git a/code/controllers/subsystem/sounds.dm b/code/controllers/subsystem/sounds.dm index f9d8c123301711..5dd2c985f97fbb 100644 --- a/code/controllers/subsystem/sounds.dm +++ b/code/controllers/subsystem/sounds.dm @@ -34,6 +34,50 @@ SUBSYSTEM_DEF(sounds) /// Any errors from precaching. VAR_PRIVATE/list/precache_errors = list() + // Comments from https://github.com/DaedalusDock/daedalusdock We love Francinum. + /// A list of sound formats that work in byond. Indexed for direct accesing rather then loop itteration or usage of `in` + var/static/list/byond_sound_formats = list( + "mid" = TRUE, //Midi, 8.3 File Name + "midi" = TRUE, //Midi, Long File Name + "mod" = TRUE, //Module, Original Amiga Tracker format + "it" = TRUE, //Impulse Tracker Module format + "s3m" = TRUE, //ScreamTracker 3 Module + "xm" = TRUE, //FastTracker 2 Module + "oxm" = TRUE, //FastTracker 2 (Vorbis Compressed Samples) + "wav" = TRUE, //Waveform Audio File Format, A (R)IFF-class format, and Microsoft's choice in the 80s sound format pissing match. + "ogg" = TRUE, //OGG Audio Container, Usually contains Vorbis-compressed Audio + //"raw" = TRUE, //On the tin, byond purports to support raw, uncompressed PCM Audio. I actually have no fucking idea how FMOD actually handles these. + //since they completely lack all information. As a confusion based anti-footgun, I'm just going to wire this to FALSE for now. It's here though. + "wma" = TRUE, //Windows Media Audio container + "aiff" = TRUE, //Audio Interchange File Format, Apple's side of the 80s sound format pissing match. It's also (R)IFF in a trenchcoat. + "mp3" = TRUE //MPeg Layer 3 Container (And usually, Codec.) + ) + + /// File types we can sniff the duration from using rustg. + var/static/list/safe_formats = list( + "ogg" = TRUE, + "mp3" = TRUE + ) + + // Currently set to private as I would prefer you use byond_sound_formats but you can unprivate it if you have a valid use! + // Put more common extensions first to speed this up a bit (So only ogg and mp3 lol.) + /// Similar to byond_sound_formats, a list of sound formats that work in byond. + VAR_PRIVATE/static/list/byond_sound_extensions = list( + ".ogg", + ".mp3", + ".mid", + ".midi", + ".mod", + ".it", + ".s3m", + ".xm", + ".oxm", + ".wav", + //".raw", See byond_sound_formats + ".wma", + ".aiff" + ) + /datum/controller/subsystem/sounds/Initialize() setup_available_channels() find_all_available_sounds() @@ -63,23 +107,7 @@ SUBSYSTEM_DEF(sounds) /datum/controller/subsystem/sounds/proc/find_all_available_sounds() all_sounds = list() - // Put more common extensions first to speed this up a bit - var/static/list/valid_file_extensions = list( - ".ogg", - ".wav", - ".mid", - ".midi", - ".mod", - ".it", - ".s3m", - ".xm", - ".oxm", - ".raw", - ".wma", - ".aiff", - ) - - all_sounds = pathwalk("sound/", valid_file_extensions) + all_sounds = pathwalk("sound/", byond_sound_extensions) /// Removes a channel from using list. /datum/controller/subsystem/sounds/proc/free_sound_channel(channel) diff --git a/code/controllers/subsystem/statpanel.dm b/code/controllers/subsystem/statpanel.dm index d7d4b38793d496..53e724b4543b35 100644 --- a/code/controllers/subsystem/statpanel.dm +++ b/code/controllers/subsystem/statpanel.dm @@ -220,7 +220,6 @@ SUBSYSTEM_DEF(statpanels) #endif for(var/datum/controller/subsystem/sub_system as anything in Master.subsystems) mc_data[++mc_data.len] = list("\[[sub_system.state_letter()]][sub_system.name]", sub_system.stat_entry(), text_ref(sub_system)) - mc_data[++mc_data.len] = list("Camera Net", "Cameras: [GLOB.cameranet.cameras.len] | Chunks: [GLOB.cameranet.chunks.len]", text_ref(GLOB.cameranet)) ///immediately update the active statpanel tab of the target client /datum/controller/subsystem/statpanels/proc/immediate_send_stat_data(client/target) diff --git a/code/controllers/subsystem/tgui.dm b/code/controllers/subsystem/tgui.dm index 39d281964f1dd4..d87aa0f1dd1de7 100644 --- a/code/controllers/subsystem/tgui.dm +++ b/code/controllers/subsystem/tgui.dm @@ -39,6 +39,25 @@ SUBSYSTEM_DEF(tgui) basehtml = replacetextEx(basehtml, "", "Nanotrasen (c) 2525-[CURRENT_STATION_YEAR]") +/datum/controller/subsystem/tgui/OnConfigLoad() + var/storage_iframe = CONFIG_GET(string/storage_cdn_iframe) + + if(storage_iframe && storage_iframe != /datum/config_entry/string/storage_cdn_iframe::default) + basehtml = replacetext(basehtml, "\[tgui:storagecdn\]", storage_iframe) + return + + if(CONFIG_GET(string/asset_transport) == "webroot") + var/datum/asset_transport/webroot/webroot = SSassets.transport + + var/datum/asset_cache_item/item = webroot.register_asset("iframe.html", file("tgui/public/iframe.html")) + basehtml = replacetext(basehtml, "\[tgui:storagecdn\]", webroot.get_asset_url("iframe.html", item)) + return + + if(!storage_iframe) + return + + basehtml = replacetext(basehtml, "\[tgui:storagecdn\]", storage_iframe) + /datum/controller/subsystem/tgui/Shutdown() close_all_uis() @@ -283,6 +302,27 @@ SUBSYSTEM_DEF(tgui) count++ return count + +/** + * public + * + * Resets position of all UIs to 0, 0. + * + * required user mob The mob who opened/is using the UI. + * optional src_object datum If provided, only close UIs belonging this src_object. + * + * return int The number of UIs reset. + */ +/datum/controller/subsystem/tgui/proc/reset_ui_position(mob/user, datum/src_object) + var/count = 0 + if(length(user?.tgui_open_uis) == 0) + return count + for(var/datum/tgui/ui in user.tgui_open_uis) + if(isnull(src_object) || ui.src_object == src_object) + ui.reset_ui_position() + count++ + return count + /** * private * diff --git a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm index a073d67de4f03f..de69624a3a6059 100644 --- a/code/controllers/subsystem/ticker.dm +++ b/code/controllers/subsystem/ticker.dm @@ -73,21 +73,6 @@ SUBSYSTEM_DEF(ticker) var/reboot_timer = null /datum/controller/subsystem/ticker/Initialize() - var/list/byond_sound_formats = list( - "mid" = TRUE, - "midi" = TRUE, - "mod" = TRUE, - "it" = TRUE, - "s3m" = TRUE, - "xm" = TRUE, - "oxm" = TRUE, - "wav" = TRUE, - "ogg" = TRUE, - "raw" = TRUE, - "wma" = TRUE, - "aiff" = TRUE, - ) - var/list/provisional_title_music = flist("[global.config.directory]/title_music/sounds/") var/list/music = list() var/use_rare_music = prob(1) @@ -115,11 +100,8 @@ SUBSYSTEM_DEF(ticker) music -= old_login_music for(var/S in music) - var/list/L = splittext(S,".") - if(L.len >= 2) - var/ext = LOWER_TEXT(L[L.len]) //pick the real extension, no 'honk.ogg.exe' nonsense here - if(byond_sound_formats[ext]) - continue + if(IS_SOUND_FILE(S)) + continue music -= S if(!length(music)) @@ -234,10 +216,20 @@ SUBSYSTEM_DEF(ticker) return TRUE return FALSE +/// Gets a list of players with their readied state so we can post it as a log +/datum/controller/subsystem/ticker/proc/get_player_ready_states() + var/list/player_states = list() + for(var/mob/dead/new_player/player as anything in GLOB.new_player_list) + player_states[player.ckey] = player.ready + return player_states + /datum/controller/subsystem/ticker/proc/setup() to_chat(world, span_boldannounce("Starting game...")) var/init_start = world.timeofday + var/list/players_and_readiness = get_player_ready_states() + log_game("Players and Readiness: [json_encode(players_and_readiness)]", players_and_readiness) + CHECK_TICK //Configure mode and assign player to antagonists var/can_continue = FALSE @@ -247,7 +239,7 @@ SUBSYSTEM_DEF(ticker) can_continue = can_continue && SSjob.divide_occupations() //Distribute jobs CHECK_TICK - if(!GLOB.Debug2) + if(!GLOB.debugging_enabled) if(!can_continue) log_game("Game failed pre_setup") to_chat(world, "Error setting up game. Reverting to pre-game lobby.") diff --git a/code/controllers/subsystem/timer.dm b/code/controllers/subsystem/timer.dm index 20fe4eb47b6056..ef6826396c2d6e 100644 --- a/code/controllers/subsystem/timer.dm +++ b/code/controllers/subsystem/timer.dm @@ -519,30 +519,30 @@ SUBSYSTEM_DEF(timer) #if defined(TIMER_DEBUG) // Generate debug-friendly list for timer, more complex but also more expensive timer_info = list( - 1 = id, - 2 = timeToRun, - 3 = wait, - 4 = flags, - 5 = callBack, /* Safe to hold this directly because it's never del'd */ - 6 = "[callBack.object]", - 7 = text_ref(callBack.object), - 8 = getcallingtype(), - 9 = callBack.delegate, - 10 = callBack.arguments ? callBack.arguments.Copy() : null, - 11 = "[source]" + /* 1 = */ id, + /* 2 = */ timeToRun, + /* 3 = */ wait, + /* 4 = */ flags, + /* 5 = */ callBack, /* Safe to hold this directly because it's never del'd */ + /* 6 = */ "[callBack.object]", + /* 7 = */ text_ref(callBack.object), + /* 8 = */ getcallingtype(), + /* 9 = */ callBack.delegate, + /* 10 = */ callBack.arguments ? callBack.arguments.Copy() : null, + /* 11 = */ "[source]" ) #else // Generate a debuggable list for the timer, simpler but wayyyy cheaper, string generation (and ref/copy memes) is a bitch and this saves a LOT of time timer_info = list( - 1 = id, - 2 = timeToRun, - 3 = wait, - 4 = flags, - 5 = callBack, /* Safe to hold this directly because it's never del'd */ - 6 = "[callBack.object]", - 7 = getcallingtype(), - 8 = callBack.delegate, - 9 = "[source]" + /* 1 = */ id, + /* 2 = */ timeToRun, + /* 3 = */ wait, + /* 4 = */ flags, + /* 5 = */ callBack, /* Safe to hold this directly because it's never del'd */ + /* 6 = */ "[callBack.object]", + /* 7 = */ getcallingtype(), + /* 8 = */ callBack.delegate, + /* 9 = */ "[source]" ) #endif diff --git a/code/controllers/subsystem/tts.dm b/code/controllers/subsystem/tts.dm index 5bd65b63e19bae..4c9314c8ec9388 100644 --- a/code/controllers/subsystem/tts.dm +++ b/code/controllers/subsystem/tts.dm @@ -297,8 +297,8 @@ SUBSYSTEM_DEF(tts) var/datum/http_request/request_blips = new() var/file_name = "tmp/tts/[identifier].ogg" var/file_name_blips = "tmp/tts/[identifier]_blips.ogg" - request.prepare(RUSTG_HTTP_METHOD_GET, "[CONFIG_GET(string/tts_http_url)]/tts?voice=[speaker]&identifier=[identifier]&filter=[url_encode(filter)]&pitch=[pitch]&special_filters=[url_encode(special_filters)]", json_encode(list("text" = shell_scrubbed_input)), headers, file_name, timeout_seconds = CONFIG_GET(number/tts_http_timeout_seconds)) - request_blips.prepare(RUSTG_HTTP_METHOD_GET, "[CONFIG_GET(string/tts_http_url)]/tts-blips?voice=[speaker]&identifier=[identifier]&filter=[url_encode(filter)]&pitch=[pitch]&special_filters=[url_encode(special_filters)]", json_encode(list("text" = shell_scrubbed_input)), headers, file_name_blips, timeout_seconds = CONFIG_GET(number/tts_http_timeout_seconds)) + request.prepare(RUSTG_HTTP_METHOD_GET, "[CONFIG_GET(string/tts_http_url)]/tts?voice=[speaker]&identifier=[identifier]&filter=[tts_filter_encode(filter, speaker)]&pitch=[pitch]&special_filters=[url_encode(special_filters)]", json_encode(list("text" = shell_scrubbed_input)), headers, file_name, timeout_seconds = CONFIG_GET(number/tts_http_timeout_seconds)) + request_blips.prepare(RUSTG_HTTP_METHOD_GET, "[CONFIG_GET(string/tts_http_url)]/tts-blips?voice=[speaker]&identifier=[identifier]&filter=[tts_filter_encode(filter, speaker, blips = TRUE)]&pitch=[pitch]&special_filters=[url_encode(special_filters)]", json_encode(list("text" = shell_scrubbed_input)), headers, file_name_blips, timeout_seconds = CONFIG_GET(number/tts_http_timeout_seconds)) var/datum/tts_request/current_request = new /datum/tts_request(identifier, request, request_blips, shell_scrubbed_input, target, local, language, message_range, volume_offset, listeners, pitch) var/list/player_queued_tts_messages = queued_tts_messages[target] if(!player_queued_tts_messages) diff --git a/code/controllers/subsystem/wardrobe.dm b/code/controllers/subsystem/wardrobe.dm index 2593595bdf63da..4f25ff47d1c8f7 100644 --- a/code/controllers/subsystem/wardrobe.dm +++ b/code/controllers/subsystem/wardrobe.dm @@ -41,6 +41,10 @@ SUBSYSTEM_DEF(wardrobe) var/stock_hit = 0 /// How many items would we make just by loading the master list once? var/one_go_master = 0 + /// Item types that should not ever be recycled, only generated (like modsuits) + var/static/list/recycle_blacklist = typecacheof(list( + /obj/item/mod/control/pre_equipped, + )) /datum/controller/subsystem/wardrobe/Initialize() setup_callbacks() @@ -207,9 +211,17 @@ SUBSYSTEM_DEF(wardrobe) order_list[queued_type] = amount +/// Take an existing object, and recycle it if we are allowed to by stashing it back into our storage +/datum/controller/subsystem/wardrobe/proc/recycle_object(obj/item/object) + // Don't restock blacklisted items, instead just delete them + if(is_type_in_typecache(object, recycle_blacklist)) + qdel(object) + return + stash_object(object) + /// Take an existing object, and insert it into our storage /// If we can't or won't take it, it's deleted. You do not own this object after passing it in -/datum/controller/subsystem/wardrobe/proc/stash_object(atom/movable/object) +/datum/controller/subsystem/wardrobe/proc/stash_object(obj/item/object) var/object_type = object.type var/list/master_info = canon_minimum[object_type] // I will not permit objects you didn't reserve ahead of time diff --git a/code/controllers/subsystem/weather.dm b/code/controllers/subsystem/weather.dm index 0882720cdfbd3a..c330455fb15f5a 100644 --- a/code/controllers/subsystem/weather.dm +++ b/code/controllers/subsystem/weather.dm @@ -109,7 +109,8 @@ SUBSYSTEM_DEF(weather) var/datum/weather/W = new weather_datum_type(z_levels, weather_data) - W.telegraph() + W.telegraph(weather_data) + return W /datum/controller/subsystem/weather/proc/make_eligible(z, possible_weather) eligible_zlevels[z] = possible_weather diff --git a/code/datums/achievements/misc_achievements.dm b/code/datums/achievements/misc_achievements.dm index 4e37400d51d69f..224941e6ce3d2a 100644 --- a/code/datums/achievements/misc_achievements.dm +++ b/code/datums/achievements/misc_achievements.dm @@ -8,6 +8,12 @@ database_id = MEDAL_METEOR icon_state = "meteors" +/datum/award/achievement/misc/meteor_punch + name = "Your Life In Your Hands" + desc = "Give some space debris a piece of your mind" + database_id = MEDAL_METEOR_PUNCH + icon_state = "punchmeteors" + /datum/award/achievement/misc/pulse name = "Jackpot" desc = "Win a pulse rifle from an arcade machine" diff --git a/code/datums/actions/action.dm b/code/datums/actions/action.dm index 65c314d4fc976b..5b72c3c21e05d2 100644 --- a/code/datums/actions/action.dm +++ b/code/datums/actions/action.dm @@ -178,6 +178,10 @@ return FALSE if(action_disabled) return FALSE + if((check_flags & AB_CHECK_CONSCIOUS) && owner.stat != CONSCIOUS) + if (feedback) + owner.balloon_alert(owner, "[owner.stat == DEAD ? "dead" : "unconscious"]!") + return FALSE if((check_flags & AB_CHECK_HANDS_BLOCKED) && HAS_TRAIT(owner, TRAIT_HANDS_BLOCKED)) if (feedback) owner.balloon_alert(owner, "hands blocked!") @@ -196,10 +200,6 @@ if (feedback) owner.balloon_alert(owner, "must stand up!") return FALSE - if((check_flags & AB_CHECK_CONSCIOUS) && owner.stat != CONSCIOUS) - if (feedback) - owner.balloon_alert(owner, "unconscious!") - return FALSE if((check_flags & AB_CHECK_PHASED) && HAS_TRAIT(owner, TRAIT_MAGICALLY_PHASED)) if (feedback) owner.balloon_alert(owner, "incorporeal!") diff --git a/code/datums/actions/items/change_name.dm b/code/datums/actions/items/change_name.dm new file mode 100644 index 00000000000000..4eb9286ecc4280 --- /dev/null +++ b/code/datums/actions/items/change_name.dm @@ -0,0 +1,11 @@ +/datum/action/innate/change_name + name = "Change Name" + button_icon_state = "ghost" + +/datum/action/innate/change_name/Activate() + var/new_name = reject_bad_name(tgui_input_text(usr, "Enter a new name.", "Renaming", initial(owner.name)), allow_numbers = TRUE, max_length = MAX_NAME_LEN, cap_after_symbols = FALSE) + if(!new_name) + return FALSE + + owner.fully_replace_character_name(owner.name, new_name) + return TRUE diff --git a/code/datums/actions/mobs/defensive_mode.dm b/code/datums/actions/mobs/defensive_mode.dm index 6030afea137c2a..e19be70e84597d 100644 --- a/code/datums/actions/mobs/defensive_mode.dm +++ b/code/datums/actions/mobs/defensive_mode.dm @@ -34,7 +34,7 @@ defence(owner_mob) /datum/action/cooldown/mob_cooldown/defensive_mode/proc/offence(mob/living/basic/owner_mob) - owner_mob.damage_coeff = list(BRUTE = 1, BURN = 1.25, TOX = 1, STAMINA = 1, OXY = 1) + owner_mob.damage_coeff = string_assoc_list(list(BRUTE = 1, BURN = 1.25, TOX = 1, STAMINA = 1, OXY = 1)) owner_mob.icon_state = initial(owner_mob.icon_state) owner_mob.icon_living = initial(owner_mob.icon_living) owner_mob.icon_dead = initial(owner_mob.icon_dead) @@ -42,7 +42,7 @@ defense_active = FALSE /datum/action/cooldown/mob_cooldown/defensive_mode/proc/defence(mob/living/basic/owner_mob) - owner_mob.damage_coeff = list(BRUTE = 0.4, BURN = 0.5, TOX = 1, STAMINA = 1, OXY = 1) + owner_mob.damage_coeff = string_assoc_list(list(BRUTE = 0.4, BURN = 0.5, TOX = 1, STAMINA = 1, OXY = 1)) owner_mob.icon_dead = "[owner_mob.icon_state]_d_dead" owner_mob.icon_state = "[owner_mob.icon_state]_d" owner_mob.icon_living = "[owner_mob.icon_living]_d" diff --git a/code/datums/actions/mobs/fire_breath.dm b/code/datums/actions/mobs/fire_breath.dm index b38687a72aba8a..cbc25a78e8aeea 100644 --- a/code/datums/actions/mobs/fire_breath.dm +++ b/code/datums/actions/mobs/fire_breath.dm @@ -77,7 +77,7 @@ to_chat(barbecued, span_userdanger("You're frozen solid by [source]'s icy breath!")) else to_chat(barbecued, span_userdanger("You are burned by [source]'s fire breath!")) - barbecued.adjustFireLoss(fire_damage) + barbecued.adjust_fire_loss(fire_damage) /// Shoot three lines of fire in a sort of fork pattern approximating a cone /datum/action/cooldown/mob_cooldown/fire_breath/cone diff --git a/code/datums/actions/mobs/lava_swoop.dm b/code/datums/actions/mobs/lava_swoop.dm index 428c9756656763..16e2e66f7ef8d6 100644 --- a/code/datums/actions/mobs/lava_swoop.dm +++ b/code/datums/actions/mobs/lava_swoop.dm @@ -97,7 +97,7 @@ owner.mouse_opacity = initial(owner.mouse_opacity) playsound(owner.loc, 'sound/effects/meteorimpact.ogg', 200, TRUE) for(var/mob/living/victim in orange(1, owner) - owner) - victim.adjustBruteLoss(75) + victim.adjust_brute_loss(75) if(!QDELETED(victim)) // Some mobs are deleted on death var/throw_dir = get_dir(owner, victim) if(victim.loc == owner.loc) diff --git a/code/datums/ai/babies/babies_subtrees.dm b/code/datums/ai/babies/babies_subtrees.dm index 60ca7dc8193ac2..7cadd1e8c55142 100644 --- a/code/datums/ai/babies/babies_subtrees.dm +++ b/code/datums/ai/babies/babies_subtrees.dm @@ -3,10 +3,12 @@ */ /datum/ai_planning_subtree/make_babies operational_datums = list(/datum/component/breed) - ///chance to make babies + /// Chance to make babies var/chance = 5 - ///make babies behavior we will use + /// Make babies behavior we will use var/datum/ai_behavior/reproduce_behavior = /datum/ai_behavior/make_babies + /// Find partner behavior we will use + var/datum/ai_behavior/partner_behavior = /datum/ai_behavior/find_partner /datum/ai_planning_subtree/make_babies/SelectBehaviors(datum/ai_controller/controller, seconds_per_tick) . = ..() @@ -25,4 +27,4 @@ return // Find target - controller.queue_behavior(/datum/ai_behavior/find_partner, BB_BABIES_TARGET, BB_BABIES_PARTNER_TYPES, BB_BABIES_CHILD_TYPES) + controller.queue_behavior(partner_behavior, BB_BABIES_TARGET, BB_BABIES_PARTNER_TYPES, BB_BABIES_CHILD_TYPES) diff --git a/code/datums/ai/basic_mobs/basic_ai_behaviors/climb_tree.dm b/code/datums/ai/basic_mobs/basic_ai_behaviors/climb_tree.dm index 5046baa7e0f11e..c30943caf50c65 100644 --- a/code/datums/ai/basic_mobs/basic_ai_behaviors/climb_tree.dm +++ b/code/datums/ai/basic_mobs/basic_ai_behaviors/climb_tree.dm @@ -1,6 +1,6 @@ /datum/ai_behavior/find_and_set/valid_tree -/datum/ai_behavior/find_and_set/valid_tree/search_tactic(datum/ai_controller/controller, locate_path, search_range) +/datum/ai_behavior/find_and_set/valid_tree/search_tactic(datum/ai_controller/controller, locate_path, search_range = SEARCH_TACTIC_DEFAULT_RANGE) var/list/valid_trees = list() for (var/obj/structure/flora/tree/tree_target in oview(search_range, controller.pawn)) if(istype(tree_target, /obj/structure/flora/tree/dead)) //no died trees diff --git a/code/datums/ai/basic_mobs/basic_ai_behaviors/find_parent.dm b/code/datums/ai/basic_mobs/basic_ai_behaviors/find_parent.dm index 07b4845f0275aa..31735f99231b3f 100644 --- a/code/datums/ai/basic_mobs/basic_ai_behaviors/find_parent.dm +++ b/code/datums/ai/basic_mobs/basic_ai_behaviors/find_parent.dm @@ -4,21 +4,32 @@ /datum/ai_behavior/find_mom/perform(seconds_per_tick, datum/ai_controller/controller, mom_key, ignore_mom_key, found_mom) var/mob/living_pawn = controller.pawn - var/list/mom_types = controller.blackboard[mom_key] var/list/all_moms = list() + var/list/mom_types = controller.blackboard[mom_key] var/list/ignore_types = controller.blackboard[ignore_mom_key] if(!length(mom_types)) return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_FAILED for(var/mob/mother in oview(look_range, living_pawn)) - if(!is_type_in_list(mother, mom_types)) - continue - if(is_type_in_list(mother, ignore_types)) //so the not permanent baby and the permanent baby subtype dont followed each other - continue - all_moms += mother + if (is_possible_mom(mother, mom_types, ignore_types)) + all_moms += mother if(length(all_moms)) controller.set_blackboard_key(found_mom, pick(all_moms)) return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_SUCCEEDED return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_FAILED + +/datum/ai_behavior/find_mom/proc/is_possible_mom(mob/mother, list/mom_types, list/ignore_types) + if(!is_type_in_list(mother, mom_types)) + return FALSE + if(is_type_in_list(mother, ignore_types)) // so the not permanent baby and the permanent baby subtype dont followed each other + return FALSE + return TRUE + +/datum/ai_behavior/find_mom/raptor/is_possible_mom(mob/mother, list/mom_types, list/ignore_types) + . = ..() + if (!. || !istype(mother, /mob/living/basic/raptor)) + return FALSE + var/mob/living/basic/raptor/raptor = mother + return raptor.growth_stage == RAPTOR_ADULT diff --git a/code/datums/ai/basic_mobs/basic_subtrees/attack_adjacent_target.dm b/code/datums/ai/basic_mobs/basic_subtrees/attack_adjacent_target.dm index 7dd626b1dc4dfc..98cf1654f71340 100644 --- a/code/datums/ai/basic_mobs/basic_subtrees/attack_adjacent_target.dm +++ b/code/datums/ai/basic_mobs/basic_subtrees/attack_adjacent_target.dm @@ -27,6 +27,8 @@ /datum/ai_behavior/basic_melee_attack/opportunistic/perform(seconds_per_tick, datum/ai_controller/controller, target_key, targeting_strategy_key, hiding_location_key) var/atom/movable/atom_pawn = controller.pawn var/atom/atom_target = controller.blackboard[target_key] + if (QDELETED(atom_target)) + return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_FAILED if(!atom_target.IsReachableBy(atom_pawn)) return AI_BEHAVIOR_INSTANT | AI_BEHAVIOR_SUCCEEDED . = ..() diff --git a/code/datums/ai/basic_mobs/basic_subtrees/drag_items.dm b/code/datums/ai/basic_mobs/basic_subtrees/drag_items.dm index f0017a67c00eb2..3bdb1ab8f58884 100644 --- a/code/datums/ai/basic_mobs/basic_subtrees/drag_items.dm +++ b/code/datums/ai/basic_mobs/basic_subtrees/drag_items.dm @@ -6,19 +6,19 @@ if(prob(controller.blackboard[BB_GUILTY_CONSCIOUS_CHANCE])) controller.queue_behavior(/datum/ai_behavior/stop_dragging) return - if(!controller.blackboard[BB_STEAL_CHANCE]) + if(!prob(controller.blackboard[BB_STEAL_CHANCE])) return if(!controller.blackboard_key_exists(BB_ITEM_TO_STEAL)) - controller.queue_behavior(/datum/ai_behavior/find_and_set/find_stealable, /obj/item, BB_ITEM_TO_STEAL) + controller.queue_behavior(/datum/ai_behavior/find_and_set/find_stealable, BB_ITEM_TO_STEAL, /obj/item) return - controller.queue_behavior(/datum/ai_behavior/drag_target) + controller.queue_behavior(/datum/ai_behavior/drag_target, BB_ITEM_TO_STEAL) return SUBTREE_RETURN_FINISH_PLANNING /datum/ai_behavior/find_and_set/find_stealable behavior_flags = AI_BEHAVIOR_CAN_PLAN_DURING_EXECUTION action_cooldown = 2 MINUTES -/datum/ai_behavior/find_and_set/find_stealable/search_tactic(datum/ai_controller/controller, locate_path, search_range) +/datum/ai_behavior/find_and_set/find_stealable/search_tactic(datum/ai_controller/controller, locate_path, search_range = SEARCH_TACTIC_DEFAULT_RANGE) var/mob/living/living_pawn = controller.pawn var/list/possible_items = shuffle_inplace(oview(search_range, controller.pawn)) @@ -32,7 +32,7 @@ /datum/ai_behavior/stop_dragging behavior_flags = AI_BEHAVIOR_CAN_PLAN_DURING_EXECUTION -/datum/ai_behavior/stop_dragging/perform(seconds_per_tick, datum/ai_controller/controller, target_key) +/datum/ai_behavior/stop_dragging/perform(seconds_per_tick, datum/ai_controller/controller) var/mob/living/living_pawn = controller.pawn living_pawn.stop_pulling() return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_SUCCEEDED diff --git a/code/datums/ai/basic_mobs/basic_subtrees/escape_captivity.dm b/code/datums/ai/basic_mobs/basic_subtrees/escape_captivity.dm index 2c0a198c768a81..759a5c69eb85df 100644 --- a/code/datums/ai/basic_mobs/basic_subtrees/escape_captivity.dm +++ b/code/datums/ai/basic_mobs/basic_subtrees/escape_captivity.dm @@ -8,11 +8,13 @@ /datum/ai_planning_subtree/escape_captivity/SelectBehaviors(datum/ai_controller/controller, seconds_per_tick) var/mob/living/living_pawn = controller.pawn - if (living_pawn.buckled && !ismob(living_pawn.buckled)) - if (!pacifist && !living_pawn.can_hold_items() || living_pawn.usable_hands < 1) // If we don't have hands then prioritise slapping the shit out of whatever we are attached to - controller.queue_behavior(/datum/ai_behavior/break_out_of_object, living_pawn.buckled) - else + if (isobj(living_pawn.buckled)) + // we can just stand up we don't need to freak out + if (pacifist || !HAS_TRAIT(living_pawn.buckled, TRAIT_DANGEROUS_BUCKLE)) controller.queue_behavior(/datum/ai_behavior/resist) + // otherwise beat the shit out of we we gotta get out NOW + else + controller.queue_behavior(/datum/ai_behavior/break_out_of_object, living_pawn.buckled) return SUBTREE_RETURN_FINISH_PLANNING if (!isturf(living_pawn.loc) && !ismob(living_pawn.loc) && !istype(living_pawn.loc, /obj/item/mob_holder)) @@ -26,7 +28,7 @@ controller.queue_behavior(/datum/ai_behavior/break_out_of_object, contained_in) else controller.queue_behavior(/datum/ai_behavior/resist) - return SUBTREE_RETURN_FINISH_PLANNING + return SUBTREE_RETURN_FINISH_PLANNING var/mob/puller = living_pawn.pulledby if (puller && puller.grab_state > GRAB_PASSIVE) diff --git a/code/datums/ai/basic_mobs/basic_subtrees/find_parent.dm b/code/datums/ai/basic_mobs/basic_subtrees/find_parent.dm index ef44df82f78d8c..7b35053ff386e9 100644 --- a/code/datums/ai/basic_mobs/basic_subtrees/find_parent.dm +++ b/code/datums/ai/basic_mobs/basic_subtrees/find_parent.dm @@ -7,7 +7,7 @@ var/mob/baby = controller.pawn if(QDELETED(target)) - controller.queue_behavior(/datum/ai_behavior/find_mom, BB_FIND_MOM_TYPES, BB_IGNORE_MOM_TYPES, BB_FOUND_MOM) + find_mom(controller) return if(get_dist(target, baby) > minimum_distance) @@ -23,3 +23,9 @@ controller.queue_behavior(/datum/ai_behavior/perform_emote, "dances around their parent!") return SUBTREE_RETURN_FINISH_PLANNING + +/datum/ai_planning_subtree/look_for_adult/proc/find_mom(datum/ai_controller/controller) + controller.queue_behavior(/datum/ai_behavior/find_mom, BB_FIND_MOM_TYPES, BB_IGNORE_MOM_TYPES, BB_FOUND_MOM) + +/datum/ai_planning_subtree/look_for_adult/raptor/find_mom(datum/ai_controller/controller) + controller.queue_behavior(/datum/ai_behavior/find_mom/raptor, BB_FIND_MOM_TYPES, BB_FOUND_MOM) diff --git a/code/datums/ai/basic_mobs/basic_subtrees/go_for_swim.dm b/code/datums/ai/basic_mobs/basic_subtrees/go_for_swim.dm index e6427455c4edfa..ba50023567fe36 100644 --- a/code/datums/ai/basic_mobs/basic_subtrees/go_for_swim.dm +++ b/code/datums/ai/basic_mobs/basic_subtrees/go_for_swim.dm @@ -28,7 +28,7 @@ ///find land if its time to get out of water, otherwise find water /datum/ai_behavior/find_and_set/swim_alternate -/datum/ai_behavior/find_and_set/swim_alternate/search_tactic(datum/ai_controller/controller, locate_path, search_range) +/datum/ai_behavior/find_and_set/swim_alternate/search_tactic(datum/ai_controller/controller, locate_path, search_range = SEARCH_TACTIC_DEFAULT_RANGE) var/mob/living/living_pawn = controller.pawn if(QDELETED(living_pawn)) return null diff --git a/code/datums/ai/basic_mobs/basic_subtrees/simple_find_target.dm b/code/datums/ai/basic_mobs/basic_subtrees/simple_find_target.dm index f80ffcc155e8f1..525248529615f5 100644 --- a/code/datums/ai/basic_mobs/basic_subtrees/simple_find_target.dm +++ b/code/datums/ai/basic_mobs/basic_subtrees/simple_find_target.dm @@ -1,10 +1,12 @@ /datum/ai_planning_subtree/simple_find_target /// Variable to store target in var/target_key = BB_BASIC_MOB_CURRENT_TARGET + /// Targeting strategy key to use + var/strategy_key = BB_TARGETING_STRATEGY /datum/ai_planning_subtree/simple_find_target/SelectBehaviors(datum/ai_controller/controller, seconds_per_tick) . = ..() - controller.queue_behavior(/datum/ai_behavior/find_potential_targets, target_key, BB_TARGETING_STRATEGY, BB_BASIC_MOB_CURRENT_TARGET_HIDING_LOCATION) + controller.queue_behavior(/datum/ai_behavior/find_potential_targets, target_key, strategy_key, BB_BASIC_MOB_CURRENT_TARGET_HIDING_LOCATION) // Prevents finding a target if a human is nearby /datum/ai_planning_subtree/simple_find_target/not_while_observed @@ -21,4 +23,7 @@ /datum/ai_planning_subtree/simple_find_target/increased_range /datum/ai_planning_subtree/simple_find_target/increased_range/SelectBehaviors(datum/ai_controller/controller, seconds_per_tick) - controller.queue_behavior(/datum/ai_behavior/find_potential_targets/bigger_range, target_key, BB_TARGETING_STRATEGY, BB_BASIC_MOB_CURRENT_TARGET_HIDING_LOCATION) + controller.queue_behavior(/datum/ai_behavior/find_potential_targets/bigger_range, target_key, strategy_key, BB_BASIC_MOB_CURRENT_TARGET_HIDING_LOCATION) + +/datum/ai_planning_subtree/simple_find_target/hunt + strategy_key = BB_HUNT_TARGETING_STRATEGY diff --git a/code/datums/ai/basic_mobs/basic_subtrees/speech_subtree.dm b/code/datums/ai/basic_mobs/basic_subtrees/speech_subtree.dm index 7dbce139b57edd..2a4a0d336e20cf 100644 --- a/code/datums/ai/basic_mobs/basic_subtrees/speech_subtree.dm +++ b/code/datums/ai/basic_mobs/basic_subtrees/speech_subtree.dm @@ -2,23 +2,23 @@ //The chance of an emote occurring each second var/speech_chance = 0 ///Hearable emotes - var/list/emote_hear = list() + var/list/emote_hear ///Unlike speak_emote, the list of things in this variable only show by themselves with no spoken text. IE: Ian barks, Ian yaps - var/list/emote_see = list() + var/list/emote_see ///Possible lines of speech the AI can have - var/list/speak = list() + var/list/speak ///The sound effects associated with this speech, if any - var/list/sound = list() + var/list/sound /datum/ai_planning_subtree/random_speech/New() . = ..() - if(speak) + if(LAZYLEN(speak)) speak = string_list(speak) - if(sound) + if(LAZYLEN(sound)) sound = string_list(sound) - if(emote_hear) + if(LAZYLEN(emote_hear)) emote_hear = string_list(emote_hear) - if(emote_see) + if(LAZYLEN(emote_see)) emote_see = string_list(emote_see) /datum/ai_planning_subtree/random_speech/SelectBehaviors(datum/ai_controller/controller, seconds_per_tick) diff --git a/code/datums/ai/basic_mobs/targeting_strategies/basic_targeting_strategy.dm b/code/datums/ai/basic_mobs/targeting_strategies/basic_targeting_strategy.dm index 6848d5d323d08a..227b4f2fc2874b 100644 --- a/code/datums/ai/basic_mobs/targeting_strategies/basic_targeting_strategy.dm +++ b/code/datums/ai/basic_mobs/targeting_strategies/basic_targeting_strategy.dm @@ -154,3 +154,6 @@ if(!istype(target) || target.has_status_effect(/datum/status_effect/gutted)) return FALSE return ..() + +/datum/targeting_strategy/basic/exact_match + check_factions_exactly = TRUE diff --git a/code/datums/ai/basic_mobs/targeting_strategies/dont_target_friends.dm b/code/datums/ai/basic_mobs/targeting_strategies/dont_target_friends.dm index 41c01ca915892f..268b4ca88428a1 100644 --- a/code/datums/ai/basic_mobs/targeting_strategies/dont_target_friends.dm +++ b/code/datums/ai/basic_mobs/targeting_strategies/dont_target_friends.dm @@ -16,7 +16,7 @@ if(!(target.resistance_flags & INDESTRUCTIBLE)) return TRUE - if(target in living_mob.ai_controller.blackboard[BB_FRIENDS_LIST]) + if(isliving(target) && (target in living_mob.ai_controller.blackboard[BB_FRIENDS_LIST])) return FALSE return ..() diff --git a/code/datums/ai/dog/dog_controller.dm b/code/datums/ai/dog/dog_controller.dm index 0aaaede44cb8c7..cb17546bfbb4ac 100644 --- a/code/datums/ai/dog/dog_controller.dm +++ b/code/datums/ai/dog/dog_controller.dm @@ -25,7 +25,7 @@ // With tongs in hand! BB_TARGET_HELD_ITEM = /obj/item/kitchen/tongs, BB_BABIES_PARTNER_TYPES = list(/mob/living/basic/pet/dog), - BB_BABIES_CHILD_TYPES = list(/mob/living/basic/pet/dog/corgi), + BB_BABIES_CHILD_TYPES = list(/mob/living/basic/pet/dog/corgi/puppy), ) planning_subtrees = list( diff --git a/code/datums/ai/generic/find_and_set.dm b/code/datums/ai/generic/find_and_set.dm index a705c7386986d6..95d8106a2add68 100644 --- a/code/datums/ai/generic/find_and_set.dm +++ b/code/datums/ai/generic/find_and_set.dm @@ -34,21 +34,42 @@ /** * Variant of find and set that also requires the item to be edible. checks hands too */ -/datum/ai_behavior/find_and_set/edible +/datum/ai_behavior/find_and_set/food_or_drink + var/force_find_drinks = FALSE -/datum/ai_behavior/find_and_set/edible/search_tactic(datum/ai_controller/controller, locate_path, search_range) +/datum/ai_behavior/find_and_set/food_or_drink/search_tactic(datum/ai_controller/controller, locate_path, search_range = SEARCH_TACTIC_DEFAULT_RANGE) var/mob/living/living_pawn = controller.pawn + var/find_drinks = force_find_drinks || controller.blackboard[BB_IGNORE_DRINKS] || FALSE - for(var/atom/held_candidate as anything in living_pawn.held_items) - if(IsEdible(held_candidate)) + for(var/atom/held_candidate in living_pawn.held_items) + if(is_food_or_drink(controller, held_candidate, find_drinks)) return held_candidate - for(var/atom/local_candidate as anything in oview(search_range, controller.pawn)) - if(IsEdible(local_candidate) && istype(local_candidate, locate_path)) + for(var/atom/local_candidate in oview(search_range, controller.pawn)) + if(is_food_or_drink(controller, local_candidate, find_drinks) && istype(local_candidate, locate_path)) return local_candidate return null +/datum/ai_behavior/find_and_set/food_or_drink/proc/is_food_or_drink(datum/ai_controller/controller, obj/item/thing, find_drinks = FALSE) + return is_food(thing) || (find_drinks && is_drink(thing)) + +/datum/ai_behavior/find_and_set/food_or_drink/proc/is_food(obj/item/thing) + if(IS_EDIBLE(thing)) + return TRUE + if(istype(thing, /obj/item/reagent_containers/cup/bowl)) + return thing.reagents.total_volume > 0 + return FALSE + +/datum/ai_behavior/find_and_set/food_or_drink/proc/is_drink(obj/item/thing) + if(istype(thing, /obj/item/reagent_containers/cup/glass)) + return thing.reagents.total_volume > 0 + return FALSE + +/datum/ai_behavior/find_and_set/food_or_drink/to_eat + +/datum/ai_behavior/find_and_set/food_or_drink/to_serve + force_find_drinks = TRUE /** * Variant of find and set that only checks in hands, search range should be excluded for this @@ -71,7 +92,7 @@ */ /datum/ai_behavior/find_and_set/in_list -/datum/ai_behavior/find_and_set/in_list/search_tactic(datum/ai_controller/controller, locate_paths, search_range) +/datum/ai_behavior/find_and_set/in_list/search_tactic(datum/ai_controller/controller, locate_paths, search_range = SEARCH_TACTIC_DEFAULT_RANGE) var/list/found = typecache_filter_list(oview(search_range, controller.pawn), locate_paths) if(length(found)) return pick(found) @@ -91,7 +112,7 @@ */ /datum/ai_behavior/find_and_set/animatable -/datum/ai_behavior/find_and_set/animatable/search_tactic(datum/ai_controller/controller, locate_path, search_range) +/datum/ai_behavior/find_and_set/animatable/search_tactic(datum/ai_controller/controller, locate_path, search_range = SEARCH_TACTIC_DEFAULT_RANGE) var/mob/living/living_pawn = controller.pawn var/list/nearby_items = list() @@ -112,7 +133,7 @@ */ /datum/ai_behavior/find_and_set/nearest_wall -/datum/ai_behavior/find_and_set/nearest_wall/search_tactic(datum/ai_controller/controller, locate_path, search_range) +/datum/ai_behavior/find_and_set/nearest_wall/search_tactic(datum/ai_controller/controller, locate_path, search_range = SEARCH_TACTIC_DEFAULT_RANGE) var/mob/living/living_pawn = controller.pawn var/list/nearby_walls = list() @@ -129,7 +150,7 @@ */ /datum/ai_behavior/find_and_set/friendly_corpses -/datum/ai_behavior/find_and_set/friendly_corpses/search_tactic(datum/ai_controller/controller, locate_path, search_range) +/datum/ai_behavior/find_and_set/friendly_corpses/search_tactic(datum/ai_controller/controller, locate_path, search_range = SEARCH_TACTIC_DEFAULT_RANGE) var/mob/living/living_pawn = controller.pawn var/list/nearby_bodies = list() for (var/mob/living/dead_pal in oview(search_range, controller.pawn)) @@ -151,7 +172,7 @@ */ /datum/ai_behavior/find_and_set/conscious_person -/datum/ai_behavior/find_and_set/conscious_person/search_tactic(datum/ai_controller/controller, locate_path, search_range) +/datum/ai_behavior/find_and_set/conscious_person/search_tactic(datum/ai_controller/controller, locate_path, search_range = SEARCH_TACTIC_DEFAULT_RANGE) var/list/customers = list() for(var/mob/living/carbon/human/target in oview(search_range, controller.pawn)) if(IS_DEAD_OR_INCAP(target) || !target.mind) @@ -166,7 +187,7 @@ /datum/ai_behavior/find_and_set/nearby_friends action_cooldown = 2 SECONDS -/datum/ai_behavior/find_and_set/nearby_friends/search_tactic(datum/ai_controller/controller, locate_path, search_range) +/datum/ai_behavior/find_and_set/nearby_friends/search_tactic(datum/ai_controller/controller, locate_path, search_range = SEARCH_TACTIC_DEFAULT_RANGE) var/atom/friend = locate(/mob/living/carbon/human) in oview(search_range, controller.pawn) if(isnull(friend)) @@ -179,7 +200,7 @@ /datum/ai_behavior/find_and_set/in_list/turf_types -/datum/ai_behavior/find_and_set/in_list/turf_types/search_tactic(datum/ai_controller/controller, locate_paths, search_range) +/datum/ai_behavior/find_and_set/in_list/turf_types/search_tactic(datum/ai_controller/controller, locate_paths, search_range = SEARCH_TACTIC_DEFAULT_RANGE) var/list/found = RANGE_TURFS(search_range, controller.pawn) shuffle_inplace(found) for(var/turf/possible_turf as anything in found) @@ -191,7 +212,7 @@ /datum/ai_behavior/find_and_set/in_list/closest_turf -/datum/ai_behavior/find_and_set/in_list/closest_turf/search_tactic(datum/ai_controller/controller, locate_paths, search_range) +/datum/ai_behavior/find_and_set/in_list/closest_turf/search_tactic(datum/ai_controller/controller, locate_paths, search_range = SEARCH_TACTIC_DEFAULT_RANGE) var/list/found = RANGE_TURFS(search_range, controller.pawn) for(var/turf/possible_turf as anything in found) if(!is_type_in_typecache(possible_turf, locate_paths) || !can_see(controller.pawn, possible_turf, search_range)) diff --git a/code/datums/ai/generic/generic_behaviors.dm b/code/datums/ai/generic/generic_behaviors.dm index 4339c18d7bcfc0..da338fa45cbd86 100644 --- a/code/datums/ai/generic/generic_behaviors.dm +++ b/code/datums/ai/generic/generic_behaviors.dm @@ -86,20 +86,16 @@ var/atom/target = controller.blackboard[target_key] if(QDELETED(target)) return FALSE + if(target == controller.pawn) // this can sometimes end up as ourselves, in which case there is no reason to move + return FALSE set_movement_target(controller, target) /datum/ai_behavior/use_on_object/perform(seconds_per_tick, datum/ai_controller/controller, target_key) - var/mob/living/pawn = controller.pawn - var/obj/item/held_item = pawn.get_item_by_slot(pawn.get_active_hand()) var/atom/target = controller.blackboard[target_key] if(QDELETED(target)) return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_FAILED - if(held_item) - held_item.melee_attack_chain(pawn, target) - else - controller.ai_interact(target = target, combat_mode = FALSE) - + controller.ai_interact(target = target, combat_mode = FALSE) return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_SUCCEEDED /datum/ai_behavior/give @@ -118,10 +114,14 @@ if(!held_item) //if held_item is null, we pretend that action was successful return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_SUCCEEDED - if(!target || !isliving(target)) + if(QDELETED(target) || !target.IsReachableBy(pawn)) return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_FAILED var/mob/living/living_target = target + if(!isliving(living_target)) // target should reasonably only ever be set to a living mob + stack_trace("Tried to give an item to a non-living target!") + return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_FAILED + var/perform_flags = try_to_give_item(controller, living_target, held_item) if(perform_flags & AI_BEHAVIOR_FAILED) return perform_flags @@ -161,36 +161,73 @@ target.put_in_hands(held_item) return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_SUCCEEDED +/datum/ai_behavior/give/finish_action(datum/ai_controller/controller, succeeded, target_key) + . = ..() + controller.clear_blackboard_key(target_key) /datum/ai_behavior/consume + action_cooldown = 2 SECONDS + +/datum/ai_behavior/consume/perform(seconds_per_tick, datum/ai_controller/controller, target_key, hunger_timer_key) + var/mob/living/living_pawn = controller.pawn + var/obj/item/target = controller.blackboard[target_key] + if(QDELETED(target) || !living_pawn.is_holding(target)) + return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_FAILED + + controller.ai_interact(target = living_pawn, combat_mode = FALSE) + + return AI_BEHAVIOR_DELAY | (is_content(living_pawn, target) ? AI_BEHAVIOR_SUCCEEDED : AI_BEHAVIOR_FAILED) + +/datum/ai_behavior/consume/finish_action(datum/ai_controller/controller, succeeded, target_key, hunger_timer_key) + . = ..() + if(!succeeded) + return + controller.set_blackboard_key(hunger_timer_key, world.time + rand(12 SECONDS, 60 SECONDS)) + + var/mob/living/living_pawn = controller.pawn + var/obj/item/target = controller.blackboard[target_key] + if(!QDELETED(target) && !DOING_INTERACTION_WITH_TARGET(living_pawn, target)) + controller.clear_blackboard_key(target_key) + living_pawn.dropItemToGround(target) // drops empty drink glasses + for(var/obj/item/trash/trash in living_pawn.held_items) + living_pawn.dropItemToGround(trash) // drops spawned trash items + +/// Check if the target is fully consumed, or being actively consumed, or if we're just bored of eating it +/datum/ai_behavior/consume/proc/is_content(mob/living/living_pawm, obj/item/target) + if(QDELETED(target)) + return TRUE + if(DOING_INTERACTION_WITH_TARGET(living_pawm, target)) + return TRUE + if(target.reagents?.total_volume <= 0) + return TRUE + // Even if we don't finish it all we can randomly decide to be done + return prob(10) + +// navigate to target item and pick it up if we can +/datum/ai_behavior/navigate_to_and_pick_up behavior_flags = AI_BEHAVIOR_REQUIRE_MOVEMENT | AI_BEHAVIOR_REQUIRE_REACH action_cooldown = 2 SECONDS -/datum/ai_behavior/consume/setup(datum/ai_controller/controller, target_key) +/datum/ai_behavior/navigate_to_and_pick_up/setup(datum/ai_controller/controller, target_key, drop_held = TRUE) . = ..() set_movement_target(controller, controller.blackboard[target_key]) -/datum/ai_behavior/consume/perform(seconds_per_tick, datum/ai_controller/controller, target_key, hunger_timer_key) +/datum/ai_behavior/navigate_to_and_pick_up/setup(datum/ai_controller/controller, target_key, drop_held = TRUE) var/mob/living/living_pawn = controller.pawn var/obj/item/target = controller.blackboard[target_key] if(QDELETED(target)) return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_FAILED - if(!(target in living_pawn.held_items)) - if(!living_pawn.get_empty_held_indexes() || !living_pawn.put_in_hands(target)) - return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_FAILED - - target.melee_attack_chain(living_pawn, living_pawn) - - if(QDELETED(target) || prob(10)) // Even if we don't finish it all we can randomly decide to be done + if(living_pawn.is_holding(target)) // already in hands return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_SUCCEEDED + if(!target.IsReachableBy(living_pawn)) // can't reach it, despite being adjacent + return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_FAILED + if(living_pawn.get_active_held_item()) // something is in our hands already + if(!drop_held || !living_pawn.dropItemToGround(living_pawn.get_active_held_item())) + return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_FAILED - return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_FAILED - -/datum/ai_behavior/consume/finish_action(datum/ai_controller/controller, succeeded, target_key, hunger_timer_key) - . = ..() - if(succeeded) - controller.set_blackboard_key(hunger_timer_key, world.time + rand(12 SECONDS, 60 SECONDS)) + controller.ai_interact(target, combat_mode = FALSE) + return AI_BEHAVIOR_DELAY | (target.loc == living_pawn ? AI_BEHAVIOR_SUCCEEDED : AI_BEHAVIOR_FAILED) /** * Drops items in hands, very important for future behaviors that require the pawn to grab stuff diff --git a/code/datums/ai/generic/generic_subtrees.dm b/code/datums/ai/generic/generic_subtrees.dm index 9d5ff8638fc93f..6fe92668f91698 100644 --- a/code/datums/ai/generic/generic_subtrees.dm +++ b/code/datums/ai/generic/generic_subtrees.dm @@ -53,7 +53,13 @@ * relevant blackboards: * * BB_NEXT_HUNGRY - set by this subtree, is when the controller is next hungry */ +/datum/ai_planning_subtree/generic_hunger + /datum/ai_planning_subtree/generic_hunger/SelectBehaviors(datum/ai_controller/controller, seconds_per_tick) + var/mob/living/living_pawn = controller.pawn + if(living_pawn.nutrition > NUTRITION_LEVEL_HUNGRY) + return + var/next_eat = controller.blackboard[BB_NEXT_HUNGRY] if(!next_eat) //inits the blackboard timer @@ -63,16 +69,30 @@ if(world.time < next_eat) return + // find food var/atom/food_target = controller.blackboard[BB_FOOD_TARGET] - if(isnull(food_target)) - controller.queue_behavior(/datum/ai_behavior/find_and_set/edible, BB_FOOD_TARGET, /obj/item, 2) - return - - var/mob/living/living_pawn = controller.pawn - if(!length(living_pawn.get_empty_held_indexes()) && !(food_target in living_pawn.held_items)) - controller.queue_behavior(/datum/ai_behavior/drop_item) + controller.queue_behavior(/datum/ai_behavior/find_and_set/food_or_drink/to_eat, BB_FOOD_TARGET, /obj/item, 2) return SUBTREE_RETURN_FINISH_PLANNING - controller.queue_behavior(/datum/ai_behavior/consume, BB_FOOD_TARGET, BB_NEXT_HUNGRY) + if(living_pawn.is_holding(food_target)) + controller.queue_behavior(/datum/ai_behavior/consume, BB_FOOD_TARGET, BB_NEXT_HUNGRY) + // it's been moved since we found it + else if(!isturf(food_target.loc)) + // someone took it. we will fight over it! + if(isliving(food_target.loc) && will_fight_for_food(food_target.loc, living_pawn, controller)) + controller.add_blackboard_key_assoc(BB_MONKEY_ENEMIES, food_target.loc, MONKEY_FOOD_HATRED_AMOUNT) + // eh, find something else + else + controller.clear_blackboard_key(BB_FOOD_TARGET) + return SUBTREE_RETURN_FINISH_PLANNING + else + controller.queue_behavior(/datum/ai_behavior/navigate_to_and_pick_up, BB_FOOD_TARGET, TRUE) return SUBTREE_RETURN_FINISH_PLANNING + +/datum/ai_planning_subtree/generic_hunger/proc/will_fight_for_food(mob/living/thief, mob/living/monkey, datum/ai_controller/controller) + if(controller.blackboard[BB_MONKEY_AGGRESSIVE]) + return TRUE + if(controller.blackboard[BB_MONKEY_TAMED]) + return FALSE + return prob(100 * ((NUTRITION_LEVEL_HUNGRY - monkey.nutrition) / NUTRITION_LEVEL_HUNGRY)) diff --git a/code/datums/ai/hunting_behavior/hunting_mouse.dm b/code/datums/ai/hunting_behavior/hunting_mouse.dm index ca849274f6de9a..3bcee20b79ea73 100644 --- a/code/datums/ai/hunting_behavior/hunting_mouse.dm +++ b/code/datums/ai/hunting_behavior/hunting_mouse.dm @@ -49,7 +49,7 @@ /datum/ai_behavior/find_and_set/piano_synth // Disinclude subtypes -/datum/ai_behavior/find_and_set/piano_synth/search_tactic(datum/ai_controller/controller, locate_path, search_range) +/datum/ai_behavior/find_and_set/piano_synth/search_tactic(datum/ai_controller/controller, locate_path, search_range = SEARCH_TACTIC_DEFAULT_RANGE) for(var/obj/item/instrument/piano_synth/synth in oview(search_range, controller.pawn)) if(synth.type == /obj/item/instrument/piano_synth) return synth diff --git a/code/datums/ai/monkey/monkey_controller.dm b/code/datums/ai/monkey/monkey_controller.dm index d7929bf9a8e9fe..18bdb0be26b0ef 100644 --- a/code/datums/ai/monkey/monkey_controller.dm +++ b/code/datums/ai/monkey/monkey_controller.dm @@ -25,6 +25,7 @@ have ways of interacting with a specific mob and control it. BB_MONKEY_GUN_NEURONS_ACTIVATED = FALSE, BB_SONG_LINES = MONKEY_SONG, BB_RESISTING = FALSE, + BB_MONKEY_GIVE_CHANCE = 5, ) idle_behavior = /datum/idle_behavior/idle_monkey @@ -63,12 +64,24 @@ have ways of interacting with a specific mob and control it. planning_subtrees = list( /datum/ai_planning_subtree/generic_resist, /datum/ai_planning_subtree/monkey_combat, + /datum/ai_planning_subtree/serve_food, /datum/ai_planning_subtree/generic_hunger, /datum/ai_planning_subtree/generic_play_instrument, - /datum/ai_planning_subtree/punpun_shenanigans, + /datum/ai_planning_subtree/monkey_shenanigans, ) idle_behavior = /datum/idle_behavior/idle_monkey/pun_pun +/datum/ai_controller/monkey/pun_pun/TryPossessPawn(atom/new_pawn) + . = ..() + if(. & AI_CONTROLLER_INCOMPATIBLE) + return + pawn = new_pawn + set_blackboard_key(BB_IGNORE_DRINKS, TRUE) + set_blackboard_key(BB_MONKEY_TAMED, TRUE) + set_blackboard_key(BB_MONKEY_GIVE_CHANCE, 30) + set_blackboard_key(BB_MONKEY_PRESS_TYPEPATH, /obj/structure/desk_bell) + set_trip_mode(mode = FALSE) + /datum/ai_controller/monkey/angry /datum/ai_controller/monkey/angry/TryPossessPawn(atom/new_pawn) diff --git a/code/datums/ai/monkey/monkey_subtrees.dm b/code/datums/ai/monkey/monkey_subtrees.dm index 9feb69df99c0bc..dc8793ffdfeda9 100644 --- a/code/datums/ai/monkey/monkey_subtrees.dm +++ b/code/datums/ai/monkey/monkey_subtrees.dm @@ -7,21 +7,22 @@ return if(!controller.blackboard[BB_MONKEY_CURRENT_PRESS_TARGET]) - controller.queue_behavior(/datum/ai_behavior/find_nearby, BB_MONKEY_CURRENT_PRESS_TARGET) - return - - if(prob(50)) + if(controller.blackboard[BB_MONKEY_PRESS_TYPEPATH]) + controller.queue_behavior(/datum/ai_behavior/find_and_set, BB_MONKEY_CURRENT_PRESS_TARGET, controller.blackboard[BB_MONKEY_PRESS_TYPEPATH], 2) + else + controller.queue_behavior(/datum/ai_behavior/find_nearby, BB_MONKEY_CURRENT_PRESS_TARGET) + else if(prob(50)) controller.queue_behavior(/datum/ai_behavior/use_on_object, BB_MONKEY_CURRENT_PRESS_TARGET) return SUBTREE_RETURN_FINISH_PLANNING if(!controller.blackboard[BB_MONKEY_CURRENT_GIVE_TARGET]) - controller.queue_behavior(/datum/ai_behavior/find_and_set/pawn_must_hold_item, BB_MONKEY_CURRENT_GIVE_TARGET, /mob/living, 2) - else - if(prob(5)) - controller.queue_behavior(/datum/ai_behavior/give, BB_MONKEY_CURRENT_GIVE_TARGET) - return SUBTREE_RETURN_FINISH_PLANNING + controller.queue_behavior(/datum/ai_behavior/find_and_set/pawn_must_hold_item, BB_MONKEY_CURRENT_GIVE_TARGET, /mob/living/carbon/human, 2) + else if(prob(controller.blackboard[BB_MONKEY_GIVE_CHANCE])) + controller.queue_behavior(/datum/ai_behavior/give, BB_MONKEY_CURRENT_GIVE_TARGET) + return SUBTREE_RETURN_FINISH_PLANNING - controller.TryFindWeapon() + if(!controller.blackboard[BB_MONKEY_TAMED]) + controller.TryFindWeapon() ///monkey combat subtree. /datum/ai_planning_subtree/monkey_combat/SelectBehaviors(datum/ai_controller/monkey/controller, seconds_per_tick) @@ -70,3 +71,42 @@ controller.queue_behavior(/datum/ai_behavior/disposal_mob, BB_MONKEY_CURRENT_ATTACK_TARGET, BB_MONKEY_TARGET_DISPOSAL) return SUBTREE_RETURN_FINISH_PLANNING + +/// Finds food or drinks, picks them up, then gives them to nearby humans +/datum/ai_planning_subtree/serve_food + +/datum/ai_planning_subtree/serve_food/SelectBehaviors(datum/ai_controller/monkey/controller, seconds_per_tick) + var/mob/living/living_pawn = controller.pawn + var/list/nearby_patrons = list() + for(var/mob/living/carbon/human/human_mob in oview(5, living_pawn)) + if(istype(human_mob.mind?.assigned_role, /datum/job/bartender)) + return // my boss is on duty! + if(human_mob.stat != CONSCIOUS || ismonkey(human_mob)) + continue + if(!human_mob.get_empty_held_indexes()) + continue + nearby_patrons += human_mob + + // Need at least 2 patrons to bother serving (bearing in mind the + if(length(nearby_patrons) < 1) + return + + var/obj/item/serving = controller.blackboard[BB_MONKEY_CURRENT_SERVED_ITEM] + if(QDELETED(serving) || serving.reagents.total_volume <= 0) + controller.queue_behavior(/datum/ai_behavior/find_and_set/food_or_drink/to_serve, BB_MONKEY_CURRENT_SERVED_ITEM, /obj/item, 2) + return + + // we have something to serve, pick a patron and go hand it over + if(living_pawn.is_holding(serving)) + controller.blackboard[BB_MONKEY_CURRENT_GIVE_TARGET] ||= pick(nearby_patrons) + controller.queue_behavior(/datum/ai_behavior/give, BB_MONKEY_CURRENT_GIVE_TARGET) + return SUBTREE_RETURN_FINISH_PLANNING + + // we have something to serve but aren't holding it yet + if(isturf(serving.loc)) + // fetch the drink + controller.queue_behavior(/datum/ai_behavior/navigate_to_and_pick_up, BB_MONKEY_CURRENT_SERVED_ITEM, TRUE) + else + // give up on the dream + controller.clear_blackboard_key(BB_MONKEY_CURRENT_SERVED_ITEM) + return SUBTREE_RETURN_FINISH_PLANNING diff --git a/code/datums/ai/monkey/punpun_subtrees.dm b/code/datums/ai/monkey/punpun_subtrees.dm deleted file mode 100644 index 6370393db0017e..00000000000000 --- a/code/datums/ai/monkey/punpun_subtrees.dm +++ /dev/null @@ -1,22 +0,0 @@ -/datum/ai_planning_subtree/punpun_shenanigans/SelectBehaviors(datum/ai_controller/monkey/controller, seconds_per_tick) - - controller.set_trip_mode(mode = FALSE) // pun pun doesn't fuck around - - if(prob(5)) - controller.queue_behavior(/datum/ai_behavior/use_in_hand) - - if(!SPT_PROB(MONKEY_SHENANIGAN_PROB, seconds_per_tick)) - return - - if(!controller.blackboard[BB_MONKEY_CURRENT_PRESS_TARGET]) - controller.queue_behavior(/datum/ai_behavior/find_and_set, BB_MONKEY_CURRENT_PRESS_TARGET, /obj/structure/desk_bell, 2) - else if(prob(50)) - controller.queue_behavior(/datum/ai_behavior/use_on_object, BB_MONKEY_CURRENT_PRESS_TARGET) - return SUBTREE_RETURN_FINISH_PLANNING - - if(!controller.blackboard[BB_MONKEY_CURRENT_GIVE_TARGET]) - controller.queue_behavior(/datum/ai_behavior/find_and_set/pawn_must_hold_item, BB_MONKEY_CURRENT_GIVE_TARGET, /mob/living, 2) - else if(prob(30)) - controller.queue_behavior(/datum/ai_behavior/give, BB_MONKEY_CURRENT_GIVE_TARGET) - return SUBTREE_RETURN_FINISH_PLANNING - diff --git a/code/datums/ai/movement/ai_movement_jps.dm b/code/datums/ai/movement/ai_movement_jps.dm index 3781dd7f5dc79c..1153833a31ee67 100644 --- a/code/datums/ai/movement/ai_movement_jps.dm +++ b/code/datums/ai/movement/ai_movement_jps.dm @@ -53,6 +53,3 @@ /datum/ai_movement/jps/bot/travel_to_beacon maximum_length = AI_BOT_PATH_LENGTH max_pathing_attempts = 10 - -/datum/ai_movement/jps/modsuit - maximum_length = MOD_AI_RANGE diff --git a/code/datums/ai/objects/mod.dm b/code/datums/ai/objects/mod.dm deleted file mode 100644 index 46b41adb1c8739..00000000000000 --- a/code/datums/ai/objects/mod.dm +++ /dev/null @@ -1,48 +0,0 @@ -/// An AI controller for the MODsuit pathfinder module. It's activated by module and attaches itself to the user. -/datum/ai_controller/mod - blackboard = list( - BB_MOD_TARGET, - BB_MOD_MODULE, - ) - can_idle = FALSE - max_target_distance = MOD_AI_RANGE //a little spicy but its one specific item that summons it, and it doesn't run otherwise - ai_movement = /datum/ai_movement/jps/modsuit - ///ID card generated from the suit's required access. Used for pathing. - var/obj/item/card/id/advanced/id_card - -/datum/ai_controller/mod/TryPossessPawn(atom/new_pawn) - if(!istype(new_pawn, /obj/item/mod/control)) - return AI_CONTROLLER_INCOMPATIBLE - var/obj/item/mod/control/mod = new_pawn - id_card = new /obj/item/card/id/advanced/simple_bot() - if(length(mod.req_access)) - id_card.set_access(mod.req_access) - return ..() //Run parent at end - -/datum/ai_controller/mod/UnpossessPawn(destroy) - QDEL_NULL(id_card) - return ..() //Run parent at end - -/datum/ai_controller/mod/SelectBehaviors(seconds_per_tick) - current_behaviors = list() - if(blackboard[BB_MOD_TARGET] && blackboard[BB_MOD_MODULE]) - queue_behavior(/datum/ai_behavior/mod_attach) - -/datum/ai_controller/mod/get_access() - return id_card.GetAccess() - -/datum/ai_behavior/mod_attach - behavior_flags = AI_BEHAVIOR_REQUIRE_MOVEMENT|AI_BEHAVIOR_MOVE_AND_PERFORM - -/datum/ai_behavior/mod_attach/perform(seconds_per_tick, datum/ai_controller/controller) - if(!controller.pawn.Adjacent(controller.blackboard[BB_MOD_TARGET])) - return AI_BEHAVIOR_DELAY - var/obj/item/mod/module/pathfinder/module = controller.blackboard[BB_MOD_MODULE] - module.attach(controller.blackboard[BB_MOD_TARGET]) - return AI_BEHAVIOR_DELAY | AI_BEHAVIOR_SUCCEEDED - -/datum/ai_behavior/mod_attach/finish_action(datum/ai_controller/controller, succeeded) - . = ..() - controller.clear_blackboard_key(BB_MOD_TARGET) - var/obj/item/mod/module/pathfinder/module = controller.blackboard[BB_MOD_MODULE] - module.end_recall(succeeded) diff --git a/code/datums/alarm.dm b/code/datums/alarm.dm index 27125efbc9c143..52788e41dacf62 100644 --- a/code/datums/alarm.dm +++ b/code/datums/alarm.dm @@ -14,7 +14,7 @@ ///Represents a single source of alarms, one alarm handler will only ever count for one alarm per listener /datum/alarm_handler ///A list of alarm type -> list of areas we currently have alarms in - var/list/sent_alarms = list() + var/list/sent_alarms ///Our source atom var/atom/source_atom @@ -27,8 +27,8 @@ return ..() /datum/alarm_handler/Destroy() - for(var/alarm_type in sent_alarms) - for(var/area/area_to_clear as anything in sent_alarms[alarm_type]) + for(var/alarm_type, sent_alarm in sent_alarms) + for(var/area/area_to_clear as anything in sent_alarm) //Yeet all connected alarms clear_alarm_from_area(alarm_type, area_to_clear) source_atom = null @@ -46,13 +46,13 @@ var/area/our_area = get_area(use_as_source_atom) var/our_z_level = use_as_source_atom.z - var/list/existing_alarms = sent_alarms[alarm_type] + var/list/existing_alarms = LAZYACCESS(sent_alarms, alarm_type) if(existing_alarms) if(our_area in existing_alarms) return FALSE else - sent_alarms[alarm_type] = list() - existing_alarms = sent_alarms[alarm_type] + LAZYSET(sent_alarms, alarm_type, list()) + existing_alarms = sent_alarms[alarm_type] // List will definitely exist because of previous line, no need for lazy macro existing_alarms += our_area @@ -76,16 +76,16 @@ ///Exists so we can request that the alarms from an area are cleared, even if our source atom is no longer in that area /datum/alarm_handler/proc/clear_alarm_from_area(alarm_type, area/our_area) - var/list/existing_alarms = sent_alarms[alarm_type] - if(!existing_alarms) + var/list/existing_alarms = LAZYACCESS(sent_alarms, alarm_type) + if(isnull(existing_alarms)) return FALSE if(!(our_area in existing_alarms)) return FALSE - existing_alarms -= our_area - if(!length(existing_alarms)) - sent_alarms -= alarm_type + LAZYREMOVE(existing_alarms, our_area) + if(!LAZYLEN(existing_alarms)) + LAZYREMOVE(sent_alarms, alarm_type) our_area.active_alarms[alarm_type] -= 1 if(!length(our_area.active_alarms)) diff --git a/code/datums/brain_damage/brain_trauma.dm b/code/datums/brain_damage/brain_trauma.dm index 9d1caff55f688f..e542682154f163 100644 --- a/code/datums/brain_damage/brain_trauma.dm +++ b/code/datums/brain_damage/brain_trauma.dm @@ -35,7 +35,7 @@ return ..() //Called on life ticks -/datum/brain_trauma/proc/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/proc/on_life(seconds_per_tick) return //Called on death diff --git a/code/datums/brain_damage/creepy_trauma.dm b/code/datums/brain_damage/creepy_trauma.dm index fbfb76c274601a..99f2c39a9fbcbd 100644 --- a/code/datums/brain_damage/creepy_trauma.dm +++ b/code/datums/brain_damage/creepy_trauma.dm @@ -36,7 +36,7 @@ RegisterSignal(owner, COMSIG_CARBON_HELPED, PROC_REF(on_hug)) ADD_TRAIT(owner, TRAIT_DESENSITIZED, REF(src)) -/datum/brain_trauma/special/obsessed/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/special/obsessed/on_life(seconds_per_tick) if(!obsession || obsession.stat == DEAD) viewing = FALSE//important, makes sure you no longer stutter when happy if you murdered them while viewing return @@ -104,7 +104,7 @@ if(41 to 80) INVOKE_ASYNC(owner, TYPE_PROC_REF(/mob, emote), "pale") shake_camera(owner, 15, 1) - owner.adjustStaminaLoss(70) + owner.adjust_stamina_loss(70) to_chat(owner, span_userdanger("You feel your heart lurching in your chest...")) if(81 to 100) INVOKE_ASYNC(owner, TYPE_PROC_REF(/mob, emote), "cough") diff --git a/code/datums/brain_damage/hypnosis.dm b/code/datums/brain_damage/hypnosis.dm index 7518419423ceeb..dead3e4f87810a 100644 --- a/code/datums/brain_damage/hypnosis.dm +++ b/code/datums/brain_damage/hypnosis.dm @@ -60,7 +60,7 @@ owner.mind.remove_antag_datum(/datum/antagonist/hypnotized) antagonist = null -/datum/brain_trauma/hypnosis/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/hypnosis/on_life(seconds_per_tick) ..() if(SPT_PROB(1, seconds_per_tick)) if(prob(50)) diff --git a/code/datums/brain_damage/imaginary_friend.dm b/code/datums/brain_damage/imaginary_friend.dm index 2c99da7c6f058f..09cbe114de54d4 100644 --- a/code/datums/brain_damage/imaginary_friend.dm +++ b/code/datums/brain_damage/imaginary_friend.dm @@ -20,7 +20,7 @@ make_friend() get_ghost() -/datum/brain_trauma/special/imaginary_friend/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/special/imaginary_friend/on_life(seconds_per_tick) if(get_dist(owner, friend) > 9) friend.recall() if(!friend) diff --git a/code/datums/brain_damage/magic.dm b/code/datums/brain_damage/magic.dm index d15296baa22461..8ec6dac0bb3c23 100644 --- a/code/datums/brain_damage/magic.dm +++ b/code/datums/brain_damage/magic.dm @@ -16,7 +16,7 @@ COOLDOWN_DECLARE(damage_warning_cooldown) var/next_damage_warning = 0 -/datum/brain_trauma/magic/lumiphobia/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/magic/lumiphobia/on_life(seconds_per_tick) ..() var/turf/T = owner.loc if(!istype(T)) @@ -37,7 +37,7 @@ gain_text = span_warning("You feel a hateful presence close to you.") lose_text = span_notice("You feel the hateful presence fade away.") -/datum/brain_trauma/magic/poltergeist/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/magic/poltergeist/on_life(seconds_per_tick) ..() if(!SPT_PROB(2, seconds_per_tick)) return @@ -97,7 +97,7 @@ QDEL_NULL(stalker) return ..() -/datum/brain_trauma/magic/stalker/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/magic/stalker/on_life(seconds_per_tick) // Dead and unconscious people are not interesting to the psychic stalker. if(owner.stat != CONSCIOUS) return diff --git a/code/datums/brain_damage/mild.dm b/code/datums/brain_damage/mild.dm index ffdabc0adf7011..dce6ae6dd38b48 100644 --- a/code/datums/brain_damage/mild.dm +++ b/code/datums/brain_damage/mild.dm @@ -14,7 +14,7 @@ /// Whether the hallucinations we give are uncapped, ie all the wacky ones var/uncapped = FALSE -/datum/brain_trauma/mild/hallucinations/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/mild/hallucinations/on_life(seconds_per_tick) if(owner.stat >= UNCONSCIOUS) return if(HAS_TRAIT(owner, TRAIT_RDS_SUPPRESSED)) @@ -38,7 +38,7 @@ gain_text = span_warning("Speaking clearly is getting harder.") lose_text = span_notice("You feel in control of your speech.") -/datum/brain_trauma/mild/stuttering/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/mild/stuttering/on_life(seconds_per_tick) owner.adjust_stutter_up_to(5 SECONDS * seconds_per_tick, 50 SECONDS) /datum/brain_trauma/mild/stuttering/on_lose() @@ -57,7 +57,7 @@ owner.add_mood_event("dumb", /datum/mood_event/oblivious) return ..() -/datum/brain_trauma/mild/dumbness/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/mild/dumbness/on_life(seconds_per_tick) owner.adjust_derpspeech_up_to(5 SECONDS * seconds_per_tick, 50 SECONDS) if(SPT_PROB(1.5, seconds_per_tick)) owner.emote("drool") @@ -92,7 +92,7 @@ gain_text = span_warning("Your head hurts!") lose_text = span_notice("The pressure inside your head starts fading.") -/datum/brain_trauma/mild/concussion/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/mild/concussion/on_life(seconds_per_tick) if(SPT_PROB(2.5, seconds_per_tick)) switch(rand(1,11)) if(1) @@ -124,8 +124,8 @@ owner.apply_status_effect(/datum/status_effect/grouped/screwy_hud/fake_healthy, type) return ..() -/datum/brain_trauma/mild/healthy/on_life(seconds_per_tick, times_fired) - owner.adjustStaminaLoss(-6 * seconds_per_tick) //no pain, no fatigue +/datum/brain_trauma/mild/healthy/on_life(seconds_per_tick) + owner.adjust_stamina_loss(-6 * seconds_per_tick) //no pain, no fatigue /datum/brain_trauma/mild/healthy/on_lose() owner.remove_status_effect(/datum/status_effect/grouped/screwy_hud/fake_healthy, type) @@ -138,7 +138,7 @@ gain_text = span_warning("Your muscles feel oddly faint.") lose_text = span_notice("You feel in control of your muscles again.") -/datum/brain_trauma/mild/muscle_weakness/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/mild/muscle_weakness/on_life(seconds_per_tick) var/fall_chance = 1 if(owner.move_intent == MOVE_INTENT_RUN) fall_chance += 2 @@ -155,7 +155,7 @@ else if(SPT_PROB(1.5, seconds_per_tick)) to_chat(owner, span_warning("You feel a sudden weakness in your muscles!")) - owner.adjustStaminaLoss(50) + owner.adjust_stamina_loss(50) ..() /datum/brain_trauma/mild/muscle_spasms @@ -180,7 +180,7 @@ gain_text = span_warning("Your throat itches incessantly...") lose_text = span_notice("Your throat stops itching.") -/datum/brain_trauma/mild/nervous_cough/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/mild/nervous_cough/on_life(seconds_per_tick) if(SPT_PROB(6, seconds_per_tick) && !HAS_TRAIT(owner, TRAIT_SOOTHED_THROAT)) if(prob(5)) to_chat(owner, span_warning("[pick("You have a coughing fit!", "You can't stop coughing!")]")) @@ -217,7 +217,7 @@ word = copytext(word, 1, suffix_foundon) word = html_decode(word) - if(GLOB.most_common_words[LOWER_TEXT(word)]) + if(GLOB.most_common_words_alphabetical[LOWER_TEXT(word)]) new_message += word + suffix else if(prob(30) && message_split.len > 2) @@ -299,7 +299,7 @@ for(var/obj/item/thing in owner.held_items) clear_trait(thing) -/datum/brain_trauma/mild/possessive/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/mild/possessive/on_life(seconds_per_tick) if(!SPT_PROB(5, seconds_per_tick)) return diff --git a/code/datums/brain_damage/phobia.dm b/code/datums/brain_damage/phobia.dm index 4703750cd01fbc..3662fc74073fde 100644 --- a/code/datums/brain_damage/phobia.dm +++ b/code/datums/brain_damage/phobia.dm @@ -4,21 +4,12 @@ scan_desc = "phobia" gain_text = span_warning("You start finding default values very unnerving...") lose_text = span_notice("You no longer feel afraid of default values.") + /// What do we fear exactly? var/phobia_type - /// Cooldown for proximity checks so we don't spam a range 7 view every two seconds. - COOLDOWN_DECLARE(check_cooldown) - /// Cooldown for freakouts to prevent permastunning. - COOLDOWN_DECLARE(scare_cooldown) - - ///What mood event to apply when we see the thing & freak out. - var/datum/mood_event/mood_event_type = /datum/mood_event/phobia - - var/regex/trigger_regex - //instead of cycling every atom, only cycle the relevant types - var/list/trigger_mobs - var/list/trigger_objs //also checked in mob equipment - var/list/trigger_turfs - var/list/trigger_species + /// Specific terror handler to apply, in case we want + var/terror_handler = /datum/terror_handler/phobia_source + /// What mood event to apply when we see the thing & freak out. + var/mood_event_type = /datum/mood_event/phobia /datum/brain_trauma/mild/phobia/New(new_phobia_type) if(new_phobia_type) @@ -30,132 +21,22 @@ gain_text = span_warning("You start finding [phobia_type] very unnerving...") lose_text = span_notice("You no longer feel afraid of [phobia_type].") scan_desc += " of [phobia_type]" - trigger_regex = GLOB.phobia_regexes[phobia_type] - trigger_mobs = GLOB.phobia_mobs[phobia_type] - trigger_objs = GLOB.phobia_objs[phobia_type] - trigger_turfs = GLOB.phobia_turfs[phobia_type] - trigger_species = GLOB.phobia_species[phobia_type] - ..() - -/datum/brain_trauma/mild/phobia/on_lose(silent) - owner.clear_mood_event("phobia_[phobia_type]") return ..() -/datum/brain_trauma/mild/phobia/on_life(seconds_per_tick, times_fired) - ..() - if(HAS_TRAIT(owner, TRAIT_FEARLESS)) - return - if(owner.is_blind()) - return - - if(!COOLDOWN_FINISHED(src, check_cooldown) || !COOLDOWN_FINISHED(src, scare_cooldown)) - return - - COOLDOWN_START(src, check_cooldown, 5 SECONDS) - var/list/seen_atoms = view(7, owner) - if(LAZYLEN(trigger_objs)) - for(var/obj/seen_item in seen_atoms) - if(is_scary_item(seen_item)) - freak_out(seen_item) - return - - if(LAZYLEN(trigger_turfs)) - for(var/turf/checked in seen_atoms) - if(is_type_in_typecache(checked, trigger_turfs)) - freak_out(checked) - return - - seen_atoms -= owner //make sure they aren't afraid of themselves. - if(LAZYLEN(trigger_mobs) || LAZYLEN(trigger_species) || LAZYLEN(trigger_objs)) - for(var/mob/living/checked in seen_atoms) - if (is_scary_mob(checked)) - freak_out(checked) - return - -/// Returns true if this item should be scary to us -/datum/brain_trauma/mild/phobia/proc/is_scary_item(obj/checked) - if (QDELETED(checked) || !is_type_in_typecache(checked, trigger_objs) || checked.invisibility > owner.see_invisible) - return FALSE - if (!isitem(checked)) - return TRUE - var/obj/item/checked_item = checked - return !HAS_TRAIT(checked_item, TRAIT_EXAMINE_SKIP) - -/datum/brain_trauma/mild/phobia/proc/is_scary_mob(mob/living/checked) - if(is_type_in_typecache(checked, trigger_mobs)) - return TRUE - - if (!ishuman(checked)) - return FALSE - - var/mob/living/carbon/human/as_human = checked - if (LAZYLEN(trigger_species)) - if (is_type_in_typecache(as_human.dna?.species, trigger_species)) - return TRUE - - if (!LAZYLEN(trigger_objs)) - return FALSE - - for(var/obj/item/equipped as anything in as_human.get_visible_items()) - if(is_scary_item(equipped)) - return TRUE - - return FALSE +/datum/brain_trauma/mild/phobia/on_gain() + . = ..() + var/datum/component/fearful/fear = owner.AddComponentFrom(REF(src), /datum/component/fearful, list(/datum/terror_handler/startle)) + var/datum/terror_handler/phobia_source/phobia = fear.add_handler(terror_handler, REF(src)) + phobia.trigger_regex = GLOB.phobia_regexes[phobia_type] + phobia.trigger_mobs = GLOB.phobia_mobs[phobia_type] + phobia.trigger_objs = GLOB.phobia_objs[phobia_type] + phobia.trigger_turfs = GLOB.phobia_turfs[phobia_type] + phobia.trigger_species = GLOB.phobia_species[phobia_type] + phobia.mood_event_type = mood_event_type -/datum/brain_trauma/mild/phobia/handle_hearing(datum/source, list/hearing_args) - if(!owner.can_hear() || owner == hearing_args[HEARING_SPEAKER] || !owner.has_language(hearing_args[HEARING_LANGUAGE])) //words can't trigger you if you can't hear them *taps head* - return - - if(HAS_TRAIT(owner, TRAIT_FEARLESS) || !COOLDOWN_FINISHED(src, scare_cooldown)) - return - - if(trigger_regex.Find(hearing_args[HEARING_RAW_MESSAGE]) != 0) - addtimer(CALLBACK(src, PROC_REF(freak_out), null, trigger_regex.group[2]), 1 SECONDS) //to react AFTER the chat message - hearing_args[HEARING_RAW_MESSAGE] = trigger_regex.Replace(hearing_args[HEARING_RAW_MESSAGE], "[span_phobia("$2")]$3") - -/datum/brain_trauma/mild/phobia/handle_speech(datum/source, list/speech_args) - if (HAS_TRAIT(owner, TRAIT_FEARLESS)) - return - if (trigger_regex.Find(speech_args[SPEECH_MESSAGE]) == 0) - return - - var/stutter = prob(50) - var/whisper = prob(30) - - if (!stutter && !whisper) - return - - if (whisper) - speech_args[SPEECH_SPANS] |= SPAN_SMALL_VOICE - if (stutter) - owner.set_stutter_if_lower(4 SECONDS) - to_chat(owner, span_warning("You struggle to say the word \"[span_phobia("[trigger_regex.group[2]]")]\"!")) - -/datum/brain_trauma/mild/phobia/proc/freak_out(atom/reason, trigger_word) - if(owner.stat == DEAD) - return - - var/message = pick("spooks you to the bone", "shakes you up", "terrifies you", "sends you into a panic", "sends chills down your spine") - if(trigger_word) - if (owner.has_status_effect(/datum/status_effect/minor_phobia_reaction)) - return - to_chat(owner, span_userdanger("Hearing [span_phobia(trigger_word)] [message]!")) - owner.apply_status_effect(/datum/status_effect/minor_phobia_reaction) - return - - COOLDOWN_START(src, scare_cooldown, 12 SECONDS) - if(mood_event_type) - owner.add_mood_event("phobia_[phobia_type]", mood_event_type) - - if(reason) - to_chat(owner, span_userdanger("Seeing [span_phobia(reason.name)] [message]!")) - else - to_chat(owner, span_userdanger("Something [message]!")) - - if(reason) - owner.face_atom(reason) - owner._pointed(reason) - owner.apply_status_effect(/datum/status_effect/stacking/phobia_reaction, 1, mood_event_type) +/datum/brain_trauma/mild/phobia/on_lose(silent) + . = ..() + owner.RemoveComponentSource(REF(src), /datum/component/fearful) // Defined phobia types for badminry, not included in the RNG trauma pool to avoid diluting. @@ -178,11 +59,7 @@ /datum/brain_trauma/mild/phobia/blood phobia_type = "blood" random_gain = FALSE - -/datum/brain_trauma/mild/phobia/blood/is_scary_item(obj/checked) - if (GET_ATOM_BLOOD_DNA_LENGTH(checked)) - return TRUE - return ..() + terror_handler = /datum/terror_handler/phobia_source/blood /datum/brain_trauma/mild/phobia/clowns phobia_type = "clowns" diff --git a/code/datums/brain_damage/severe.dm b/code/datums/brain_damage/severe.dm index b2b50cbe707f46..431bf2ca4ead4b 100644 --- a/code/datums/brain_damage/severe.dm +++ b/code/datums/brain_damage/severe.dm @@ -149,7 +149,7 @@ var/sleep_time_minimum = 6 SECONDS var/sleep_time_maximum = 6 SECONDS -/datum/brain_trauma/severe/narcolepsy/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/severe/narcolepsy/on_life(seconds_per_tick) if(owner.IsSleeping()) return @@ -204,7 +204,6 @@ scan_desc = "monophobia" gain_text = span_warning("You feel really lonely...") lose_text = span_notice("You feel like you could be safe on your own.") - var/stress = 0 /datum/brain_trauma/severe/monophobia/on_gain() . = ..() @@ -255,7 +254,7 @@ ..() owner.remove_status_effect(/datum/status_effect/trance) -/datum/brain_trauma/severe/hypnotic_stupor/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/severe/hypnotic_stupor/on_life(seconds_per_tick) ..() if(SPT_PROB(0.5, seconds_per_tick) && !owner.has_status_effect(/datum/status_effect/trance)) owner.apply_status_effect(/datum/status_effect/trance, rand(100,300), FALSE) @@ -330,7 +329,7 @@ if(damage_amount >= 5 && (damage_type == BRUTE || damage_type == BURN || damage_type == STAMINA)) COOLDOWN_START(src, steal_cd, 12 SECONDS) -/datum/brain_trauma/severe/kleptomaniac/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/severe/kleptomaniac/on_life(seconds_per_tick) if(owner.usable_hands <= 0) return if(!SPT_PROB(5, seconds_per_tick)) diff --git a/code/datums/brain_damage/special.dm b/code/datums/brain_damage/special.dm index 43cfd006fd11ed..bad94722bcca9a 100644 --- a/code/datums/brain_damage/special.dm +++ b/code/datums/brain_damage/special.dm @@ -11,7 +11,7 @@ gain_text = span_notice("You feel a higher power inside your mind...") lose_text = span_warning("The divine presence leaves your head, no longer interested.") -/datum/brain_trauma/special/godwoken/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/special/godwoken/on_life(seconds_per_tick) ..() if(SPT_PROB(2, seconds_per_tick)) if(prob(33) && (owner.IsStun() || owner.IsParalyzed() || owner.IsUnconscious())) @@ -57,7 +57,7 @@ /// Cooldown so we can't teleport literally everywhere on a whim COOLDOWN_DECLARE(portal_cooldown) -/datum/brain_trauma/special/bluespace_prophet/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/special/bluespace_prophet/on_life(seconds_per_tick) if(!COOLDOWN_FINISHED(src, portal_cooldown)) return @@ -164,7 +164,7 @@ /// Cooldown for snapbacks COOLDOWN_DECLARE(snapback_cooldown) -/datum/brain_trauma/special/quantum_alignment/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/special/quantum_alignment/on_life(seconds_per_tick) if(linked) if(QDELETED(linked_target)) linked_target = null @@ -309,7 +309,7 @@ /// A cooldown to prevent constantly erratic dolphining through the fabric of reality COOLDOWN_DECLARE(crisis_cooldown) -/datum/brain_trauma/special/existential_crisis/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/special/existential_crisis/on_life(seconds_per_tick) ..() if(!veil && COOLDOWN_FINISHED(src, crisis_cooldown) && SPT_PROB(1.5, seconds_per_tick)) if(isturf(owner.loc)) @@ -392,7 +392,7 @@ if(get_dist(owner, beepsky) <= 1) owner.playsound_local(owner, 'sound/items/weapons/egloves.ogg', 50) owner.visible_message(span_warning("[owner]'s body jerks as if it was shocked."), span_userdanger("You feel the fist of the LAW.")) - owner.adjustStaminaLoss(rand(40, 70)) + owner.adjust_stamina_loss(rand(40, 70)) QDEL_NULL(beepsky) if(prob(20) && get_dist(owner, beepsky) <= 8) @@ -449,7 +449,7 @@ /datum/hallucination/battle/stun_prod, ) -/datum/brain_trauma/special/ptsd/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/special/ptsd/on_life(seconds_per_tick) if(owner.stat != CONSCIOUS) return @@ -504,7 +504,7 @@ owner.ai_controller = new old_ai_controller_type(owner) owner.remove_language(/datum/language/monkey, UNDERSTOOD_LANGUAGE, TRAUMA_TRAIT) -/datum/brain_trauma/special/primal_instincts/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/special/primal_instincts/on_life(seconds_per_tick) if(isnull(owner.ai_controller)) qdel(src) return @@ -558,7 +558,7 @@ "Ah!", ) -/datum/brain_trauma/special/axedoration/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/special/axedoration/on_life(seconds_per_tick) if(owner.stat != CONSCIOUS) return diff --git a/code/datums/brain_damage/split_personality.dm b/code/datums/brain_damage/split_personality.dm index f1d58ccb342114..bef6ac74494c14 100644 --- a/code/datums/brain_damage/split_personality.dm +++ b/code/datums/brain_damage/split_personality.dm @@ -15,8 +15,6 @@ var/poll_role = "split personality" ///How long do we give ghosts to respond? var/poll_time = 20 SECONDS - ///The stranger_backseat does not have temp body component so we will ghostize() on_lose - var/temp_component = FALSE /datum/brain_trauma/severe/split_personality/on_gain() var/mob/living/brain_owner = owner @@ -43,7 +41,7 @@ /// Attempts to get a ghost to play the personality /datum/brain_trauma/severe/split_personality/proc/get_ghost() var/mob/chosen_one = SSpolling.poll_ghosts_for_target( - question = "Do you want to play as [span_danger("[owner.real_name]'s")] [span_notice(poll_role)]?. You will be able to return to your original body after.", + question = "Do you want to play as [span_danger("[owner.real_name]'s")] [span_notice(poll_role)]?", check_jobban = ROLE_PAI, poll_time = poll_time, checked_target = owner, @@ -58,28 +56,13 @@ if(isnull(ghost)) qdel(src) return - if(ghost.mind.current)// if they previous had a body preserve them else that means they never had one or it was destroyed so assign ckey like normal - stranger_backseat.AddComponent( \ - /datum/component/temporary_body, \ - old_mind = ghost.mind, \ - old_body = ghost.mind.current, \ - ) - temp_component = TRUE - stranger_backseat.PossessByPlayer(ghost.ckey) stranger_backseat.log_message("became [key_name(owner)]'s split personality.", LOG_GAME) message_admins("[ADMIN_LOOKUPFLW(stranger_backseat)] became [ADMIN_LOOKUPFLW(owner)]'s split personality.") - owner_backseat.AddComponent( \ - /datum/component/temporary_body, \ - old_mind = owner.mind, \ - old_body = owner, \ - perma_body_attached = TRUE, \ - ) - -/datum/brain_trauma/severe/split_personality/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/severe/split_personality/on_life(seconds_per_tick) if(owner.stat == DEAD) if(current_controller != OWNER) switch_personalities(TRUE) @@ -89,33 +72,72 @@ ..() /datum/brain_trauma/severe/split_personality/on_lose() - // qdel the mob with the temporary component will ensure the original mind will go back into the body and vice versa for the stranger mind - if(!temp_component) - stranger_backseat?.ghostize() + if(current_controller != OWNER) //it would be funny to cure a guy only to be left with the other personality, but it seems too cruel + switch_personalities(TRUE) QDEL_NULL(stranger_backseat) QDEL_NULL(owner_backseat) ..() -// Changes who controls the body + /datum/brain_trauma/severe/split_personality/proc/switch_personalities(reset_to_owner = FALSE) if(QDELETED(owner) || QDELETED(stranger_backseat) || QDELETED(owner_backseat)) return + var/mob/living/split_personality/current_backseat + var/mob/living/split_personality/new_backseat if(current_controller == STRANGER || reset_to_owner) - //back seat to body and vice versa - stranger_backseat.PossessByPlayer(owner.ckey) - //logging - owner_backseat.log_message("assumed control of [key_name(owner)] due to [src]. (Original owner: [stranger_backseat.key])", LOG_GAME) - owner.PossessByPlayer(owner_backseat.ckey) - to_chat(stranger_backseat, span_userdanger("You feel your control being taken away... your other personality is in charge now!")) - + current_backseat = owner_backseat + new_backseat = stranger_backseat else - owner_backseat.PossessByPlayer(owner.ckey) - stranger_backseat.log_message("assumed control of [key_name(owner)] due to [src]. (Original owner: [owner_backseat.key])", LOG_GAME) - owner.PossessByPlayer(stranger_backseat.ckey) - to_chat(owner_backseat, span_userdanger("You feel your control being taken away... your other personality is in charge now!")) + current_backseat = stranger_backseat + new_backseat = owner_backseat + + if(!current_backseat.client) //Make sure we never switch to a logged off mob. + return + + current_backseat.log_message("assumed control of [key_name(owner)] due to [src]. (Original owner: [current_controller == OWNER ? owner.key : current_backseat.key])", LOG_GAME) + to_chat(owner, span_userdanger("You feel your control being taken away... your other personality is in charge now!")) + to_chat(current_backseat, span_userdanger("You manage to take control of your body!")) + + //Body to backseat + + var/h2b_id = owner.computer_id + var/h2b_ip= owner.lastKnownIP + owner.computer_id = null + owner.lastKnownIP = null + + new_backseat.ckey = owner.ckey + + new_backseat.name = owner.name + + if(owner.mind) + new_backseat.mind = owner.mind + + if(!new_backseat.computer_id) + new_backseat.computer_id = h2b_id + + if(!new_backseat.lastKnownIP) + new_backseat.lastKnownIP = h2b_ip + + if(reset_to_owner && new_backseat.mind) + new_backseat.ghostize(FALSE) + + //Backseat to body + + var/s2h_id = current_backseat.computer_id + var/s2h_ip= current_backseat.lastKnownIP + current_backseat.computer_id = null + current_backseat.lastKnownIP = null + + owner.ckey = current_backseat.ckey + owner.mind = current_backseat.mind + + if(!owner.computer_id) + owner.computer_id = s2h_id + + if(!owner.lastKnownIP) + owner.lastKnownIP = s2h_ip - to_chat(owner, span_userdanger("You manage to take control of your body!")) current_controller = !current_controller @@ -133,7 +155,7 @@ trauma = _trauma return ..() -/mob/living/split_personality/Life(seconds_per_tick = SSMOBS_DT, times_fired) +/mob/living/split_personality/Life(seconds_per_tick = SSMOBS_DT) if(QDELETED(body)) qdel(src) //in case trauma deletion doesn't already do it @@ -141,6 +163,11 @@ trauma.switch_personalities() qdel(trauma) + //if one of the two ghosts, the other one stays permanently + if(!body.client && trauma.initialized) + trauma.switch_personalities() + qdel(trauma) + ..() /mob/living/split_personality/Login() @@ -155,7 +182,7 @@ to_chat(src, span_warning("You cannot speak, your other self is controlling your body!")) return FALSE -/mob/living/split_personality/emote(act, m_type = null, message = null, intentional = FALSE, force_silence = FALSE, forced = FALSE) +/mob/living/split_personality/emote(act, type_override = NONE, message = null, intentional = FALSE, force_silence = FALSE, forced = FALSE) return FALSE ///////////////BRAINWASHING//////////////////// @@ -194,13 +221,13 @@ /datum/brain_trauma/severe/split_personality/brainwashing/get_ghost() set waitfor = FALSE - var/mob/chosen_one = SSpolling.poll_ghosts_for_target("Do you want to play as [span_danger("[owner.real_name]'s")] brainwashed mind? You will be able to return to your original body after.", poll_time = 7.5 SECONDS, checked_target = stranger_backseat, alert_pic = owner, role_name_text = "brainwashed mind") + var/mob/chosen_one = SSpolling.poll_ghosts_for_target("Do you want to play as [span_danger("[owner.real_name]'s")] brainwashed mind?", poll_time = 7.5 SECONDS, checked_target = stranger_backseat, alert_pic = owner, role_name_text = "brainwashed mind") if(chosen_one) stranger_backseat.PossessByPlayer(chosen_one.ckey) else qdel(src) -/datum/brain_trauma/severe/split_personality/brainwashing/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/severe/split_personality/brainwashing/on_life(seconds_per_tick) return //no random switching /datum/brain_trauma/severe/split_personality/brainwashing/handle_hearing(datum/source, list/hearing_args) @@ -271,7 +298,7 @@ if(prob(20))//we don't want every single splash to wake them up now do we qdel(src) -/datum/brain_trauma/severe/split_personality/blackout/on_life(seconds_per_tick, times_fired) +/datum/brain_trauma/severe/split_personality/blackout/on_life(seconds_per_tick) if(current_controller == OWNER && stranger_backseat)//we should only start transitioning after the other personality has entered owner.overlay_fullscreen("fade_to_black", /atom/movable/screen/fullscreen/blind) owner.clear_fullscreen("fade_to_black", animated = 4 SECONDS) @@ -298,7 +325,7 @@ //too drunk to feel anything //if they're to this point, they're likely dying of liver damage //and not accounting for that, the split personality is temporary - owner.adjustStaminaLoss(-25) + owner.adjust_stamina_loss(-25) duration_in_seconds -= seconds_per_tick /mob/living/split_personality/blackout diff --git a/code/datums/chatmessage.dm b/code/datums/chatmessage.dm index 8c4753644bbd84..2d4dde87bee908 100644 --- a/code/datums/chatmessage.dm +++ b/code/datums/chatmessage.dm @@ -207,7 +207,7 @@ var/starting_height = target.maptext_height // Translate any existing messages upwards, apply exponential decay factors to timers message_loc = isturf(target) ? target : get_atom_on_turf(target) - if (owned_by.seen_messages) + if (owned_by && owned_by.seen_messages) var/idx = 1 var/combined_height = approx_lines for(var/datum/chatmessage/m as anything in owned_by.seen_messages[message_loc]) @@ -270,7 +270,7 @@ message.appearance_flags = APPEARANCE_UI_IGNORE_ALPHA | KEEP_APART message.alpha = 0 message.pixel_z = starting_height - message.pixel_w = -target.base_pixel_w + message.pixel_w = -message_loc.base_pixel_w message.maptext_width = CHAT_MESSAGE_WIDTH message.maptext_height = mheight * 1.25 // We add extra because some characters are superscript, like actions message.maptext_x = (CHAT_MESSAGE_WIDTH - owner.bound_width) * -0.5 @@ -280,8 +280,9 @@ animate_lifespan = lifespan // View the message - LAZYADDASSOCLIST(owned_by.seen_messages, message_loc, src) - owned_by.images |= message + if(owned_by) + LAZYADDASSOCLIST(owned_by.seen_messages, message_loc, src) + owned_by.images |= message // Fade in animate(message, alpha = 255, time = CHAT_MESSAGE_SPAWN_TIME) diff --git a/code/datums/components/_component.dm b/code/datums/components/_component.dm index 4b496da1b73b32..5c93b9833f8fa6 100644 --- a/code/datums/components/_component.dm +++ b/code/datums/components/_component.dm @@ -457,6 +457,9 @@ var/c_type = target.type qdel(target) CRASH("Incompatible [c_type] transfer attempt to a [type]!") + if(COMPONENT_NOTRANSFER) + qdel(target) + return AddComponent(target) if(!QDELETED(target)) diff --git a/code/datums/components/adjust_fishing_difficulty.dm b/code/datums/components/adjust_fishing_difficulty.dm deleted file mode 100644 index d4b7b28492c89a..00000000000000 --- a/code/datums/components/adjust_fishing_difficulty.dm +++ /dev/null @@ -1,110 +0,0 @@ -///Influences the difficulty of the minigame when worn or if buckled to. -/datum/component/adjust_fishing_difficulty - ///The additive numerical modifier to the difficulty of the minigame - var/modifier - ///For items, in which slot it has to be worn to influence the difficulty of the minigame - var/slots - -/datum/component/adjust_fishing_difficulty/Initialize(modifier, slots = NONE) - if(!ismovable(parent) || !modifier) - return COMPONENT_INCOMPATIBLE - - if(!isitem(parent)) - var/atom/movable/movable_parent = parent - if(!movable_parent.can_buckle) - return COMPONENT_INCOMPATIBLE - - src.modifier = modifier - src.slots = slots - -/datum/component/adjust_fishing_difficulty/RegisterWithParent() - if(isitem(parent)) - RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, PROC_REF(on_equipped)) - RegisterSignal(parent, COMSIG_ITEM_DROPPED, PROC_REF(on_dropped)) - RegisterSignal(parent, COMSIG_ATOM_EXAMINE, PROC_REF(on_item_examine)) - else - RegisterSignal(parent, COMSIG_MOVABLE_BUCKLE, PROC_REF(on_buckle)) - RegisterSignal(parent, COMSIG_MOVABLE_UNBUCKLE, PROC_REF(on_unbuckle)) - RegisterSignal(parent, COMSIG_ATOM_EXAMINE, PROC_REF(on_buckle_examine)) - - update_check() - -/datum/component/adjust_fishing_difficulty/UnregisterFromParent() - UnregisterSignal(parent, list( - COMSIG_ATOM_EXAMINE, - COMSIG_MOVABLE_BUCKLE, - COMSIG_MOVABLE_UNBUCKLE, - COMSIG_ITEM_EQUIPPED, - COMSIG_ITEM_DROPPED, - )) - - update_check(TRUE) - -/datum/component/adjust_fishing_difficulty/proc/update_check(removing = FALSE) - var/atom/movable/movable_parent = parent - for(var/mob/living/buckled_mob as anything in movable_parent.buckled_mobs) - update_user(buckled_mob, removing) - if(!isitem(movable_parent) || !isliving(movable_parent.loc)) - return - var/mob/living/holder = movable_parent.loc - var/obj/item/item = parent - if(holder.get_slot_by_item(movable_parent) & (slots || item.slot_flags)) - update_user(holder, removing) - -/datum/component/adjust_fishing_difficulty/proc/on_item_examine(obj/item/item, mob/user, list/examine_text) - SIGNAL_HANDLER - if(!HAS_MIND_TRAIT(user, TRAIT_EXAMINE_FISH)) - return - var/method = "[(slots || item.slot_flags) & ITEM_SLOT_HANDS ? "Holding" : "Wearing"] [item.p_them()]" - add_examine_line(user, examine_text, method) - -/datum/component/adjust_fishing_difficulty/proc/on_buckle_examine(atom/movable/source, mob/user, list/examine_text) - SIGNAL_HANDLER - if(!HAS_MIND_TRAIT(user, TRAIT_EXAMINE_FISH)) - return - add_examine_line(user, examine_text, "Buckling to [source.p_them()]") - -/datum/component/adjust_fishing_difficulty/proc/add_examine_line(mob/user, list/examine_text, method) - var/percent = HAS_MIND_TRAIT(user, TRAIT_EXAMINE_DEEPER_FISH) ? "[abs(modifier)]% " : "" - var/text = "[method] will make fishing [percent][modifier < 0 ? "easier" : "harder"]." - if(modifier < 0) - examine_text += span_nicegreen(text) - else - examine_text += span_danger(text) - -/datum/component/adjust_fishing_difficulty/proc/on_buckle(atom/movable/source, mob/living/buckled_mob, forced) - SIGNAL_HANDLER - update_user(buckled_mob) - -/datum/component/adjust_fishing_difficulty/proc/on_unbuckle(atom/movable/source, mob/living/buckled_mob, forced) - SIGNAL_HANDLER - update_user(buckled_mob, TRUE) - -/datum/component/adjust_fishing_difficulty/proc/on_equipped(obj/item/source, mob/living/wearer, slot) - SIGNAL_HANDLER - if(slot & (slots || source.slot_flags)) - update_user(wearer) - -/datum/component/adjust_fishing_difficulty/proc/on_dropped(obj/item/source, mob/living/dropper) - SIGNAL_HANDLER - update_user(dropper, TRUE) - -/datum/component/adjust_fishing_difficulty/proc/update_user(mob/living/user, removing = FALSE) - var/datum/fishing_challenge/challenge = GLOB.fishing_challenges_by_user[user] - if(removing) - UnregisterSignal(user, COMSIG_MOB_BEGIN_FISHING) - if(challenge) - UnregisterSignal(challenge, COMSIG_FISHING_CHALLENGE_GET_DIFFICULTY) - else - RegisterSignal(user, COMSIG_MOB_BEGIN_FISHING, PROC_REF(on_minigame_started), TRUE) - if(challenge) - RegisterSignal(challenge, COMSIG_FISHING_CHALLENGE_GET_DIFFICULTY, PROC_REF(adjust_difficulty), TRUE) - challenge?.update_difficulty() - -/datum/component/adjust_fishing_difficulty/proc/on_minigame_started(mob/living/source, datum/fishing_challenge/challenge) - SIGNAL_HANDLER - RegisterSignal(challenge, COMSIG_FISHING_CHALLENGE_GET_DIFFICULTY, PROC_REF(adjust_difficulty), TRUE) - -/datum/component/adjust_fishing_difficulty/proc/adjust_difficulty(datum/fishing_challenge/challenge, reward_path, obj/item/fishing_rod/rod, mob/living/user, list/holder) - SIGNAL_HANDLER - holder[1] += modifier diff --git a/code/datums/components/aquarium.dm b/code/datums/components/aquarium.dm index f9ba8b5164e547..5e22047744fb6b 100644 --- a/code/datums/components/aquarium.dm +++ b/code/datums/components/aquarium.dm @@ -395,8 +395,8 @@ ///Check if an offspring of two fish (or one if self-reproducing) can evolve. /datum/component/aquarium/proc/check_evolution(atom/movable/source, obj/item/fish/fish, obj/item/fish/mate, datum/fish_evolution/evolution) SIGNAL_HANDLER - //chances are halved if only one parent has this evolution. - var/real_probability = (mate && (evolution.type in mate.evolution_types)) ? evolution.probability : evolution.probability * 0.5 + //chances are halved if it isn't asexual reproduction and one parent doesn't have the evolution. + var/real_probability = (isnull(mate) || (evolution.type in mate.evolution_types)) ? evolution.probability : evolution.probability * 0.5 if(HAS_TRAIT(fish, TRAIT_FISH_MUTAGENIC) || (mate && HAS_TRAIT(mate, TRAIT_FISH_MUTAGENIC))) real_probability *= 3 if(!prob(real_probability)) @@ -697,6 +697,8 @@ check_fluid_and_temperature(fish) /datum/component/aquarium/proc/admire(atom/movable/source, mob/living/user) + if(!isliving(user)) + return source.balloon_alert(user, "admiring aquarium...") if(!do_after(user, 5 SECONDS, target = source)) return diff --git a/code/datums/components/area_sound_manager.dm b/code/datums/components/area_sound_manager.dm index 8dfb7895699db0..f712fc8043b3c8 100644 --- a/code/datums/components/area_sound_manager.dm +++ b/code/datums/components/area_sound_manager.dm @@ -43,7 +43,7 @@ /datum/component/area_sound_manager/proc/react_to_z_move(datum/source, turf/old_turf, turf/new_turf) SIGNAL_HANDLER - if(!length(accepted_zs) || (new_turf.z in accepted_zs)) + if(!length(accepted_zs) || (new_turf?.z in accepted_zs)) return qdel(src) diff --git a/code/datums/components/atom_mounted.dm b/code/datums/components/atom_mounted.dm new file mode 100644 index 00000000000000..5306e15873f0ff --- /dev/null +++ b/code/datums/components/atom_mounted.dm @@ -0,0 +1,168 @@ +// This element should be applied to wall-mounted machines/structures, so that if the support structure it's "hanging" from is broken or deconstructed, the wall-hung structure will deconstruct. +/datum/component/atom_mounted + /// The closed turf our object is currently linked to. + var/atom/hanging_support_atom + +/datum/component/atom_mounted/Initialize(target_structure, on_drop_callback) + . = ..() + if(!isobj(parent)) + return COMPONENT_INCOMPATIBLE + hanging_support_atom = target_structure + RegisterSignal(hanging_support_atom, COMSIG_ATOM_EXAMINE, PROC_REF(on_examine)) + if(isclosedturf(hanging_support_atom)) + RegisterSignal(hanging_support_atom, COMSIG_TURF_CHANGE, PROC_REF(on_turf_changing)) + else + RegisterSignal(hanging_support_atom, COMSIG_QDELETING, PROC_REF(on_structure_delete)) + +/datum/component/atom_mounted/RegisterWithParent() + ADD_TRAIT(parent, TRAIT_WALLMOUNTED, REF(src)) + RegisterSignal(parent, COMSIG_MOVABLE_MOVED, PROC_REF(on_move)) + +/datum/component/atom_mounted/UnregisterFromParent() + REMOVE_TRAIT(parent, TRAIT_WALLMOUNTED, REF(src)) + UnregisterSignal(parent, COMSIG_MOVABLE_MOVED) + +/datum/component/atom_mounted/Destroy(force) + UnregisterSignal(hanging_support_atom, list(COMSIG_ATOM_EXAMINE)) + if(isclosedturf(hanging_support_atom)) + UnregisterSignal(hanging_support_atom, COMSIG_TURF_CHANGE) + else + UnregisterSignal(hanging_support_atom, COMSIG_QDELETING) + hanging_support_atom = null + return ..() + +/** + * When the wall is examined, explains that it's supporting the linked object. + */ +/datum/component/atom_mounted/proc/on_examine(datum/source, mob/user, list/examine_list) + SIGNAL_HANDLER + + if (parent in view(user.client?.view || world.view, user)) + examine_list += span_notice("\The [hanging_support_atom] is currently supporting [span_bold("[parent]")]. Deconstruction or excessive damage would cause it to [span_bold("fall to the ground")].") + +/// When the type of turf changes, if it is changing into a floor we should drop our contents +/datum/component/atom_mounted/proc/on_turf_changing(datum/source, path, new_baseturfs, flags, post_change_callbacks) + SIGNAL_HANDLER + + if(ispath(path, /turf/open)) + drop_wallmount() + +/datum/component/atom_mounted/proc/on_structure_delete(datum/source, force) + SIGNAL_HANDLER + + drop_wallmount() + +/// If we get dragged from our wall (by a singulo for instance) we should deconstruct +/datum/component/atom_mounted/proc/on_move(datum/source, atom/old_loc, dir, forced, list/old_locs) + SIGNAL_HANDLER + // If we're having our lighting messed with we're likely to get dragged about + // That shouldn't lead to a decon + if(HAS_TRAIT(parent, TRAIT_LIGHTING_DEBUGGED)) + return + drop_wallmount() + +/** + * Handles the dropping of the linked object. This is done via deconstruction, as that should be the most sane way to handle it for most objects. + * Except for intercoms, which are handled by creating a new wallframe intercom, as they're apparently items. +*/ +/datum/component/atom_mounted/proc/drop_wallmount() + PRIVATE_PROC(TRUE) + + var/obj/hanging_parent = parent + hanging_parent.visible_message(message = span_warning("\The [hanging_parent] falls apart!"), vision_distance = 5) + hanging_parent.deconstruct(FALSE) + + +/// Returns a list of potential turfs to mount on. This should not check if those turfs are valid but only locate them +/obj/proc/get_turfs_to_mount_on() + PROTECTED_PROC(TRUE) + RETURN_TYPE(/list/turf) + + //Infer using icon offsets. Can support diagonal mounting + var/pixel_direction = NONE + if(pixel_x > (ICON_SIZE_X / 2)) + pixel_direction |= EAST + else if(pixel_x < -(ICON_SIZE_X / 2)) + pixel_direction |= WEST + if(pixel_y > (ICON_SIZE_Y / 2)) + pixel_direction |= NORTH + else if(pixel_y < -(ICON_SIZE_Y / 2)) + pixel_direction |= SOUTH + + . = list() + if(pixel_direction != NONE) + . += get_step(src, pixel_direction) + . += get_turf(src) + +/** + * Checks if our object can mount on this turf + * + * Arguments + * * turf/target - the turf we are trying to mount on +*/ +/obj/proc/is_mountable_turf(turf/target) + PROTECTED_PROC(TRUE) + SHOULD_BE_PURE(TRUE) + + return isclosedturf(target) + +/// Returns an list of object types we can mount on if the turf is unmountable +/obj/proc/get_moutable_objects() + PROTECTED_PROC(TRUE) + SHOULD_BE_PURE(TRUE) + RETURN_TYPE(/list/obj) + + var/static/list/obj/attachables = list( + /obj/structure/table, + /obj/structure/window, + /obj/structure/fence, + /obj/structure/falsewall, + ) + + return attachables + +/** + * Finds an support atom to hang this object on. If you need to mount the object on Late Initialize + * then pass TRUE inside Initialize() but not in LateInitialize(). + * The flag is only applied if no support atom could be found during Initialize() as a last resort + * + * Arguments + * * mark_for_late_init - if TRUE will apply the MOUNT_ON_LATE_INITIALIZE which gets cleared on every call + * * late_init - should only be passed as TRUE from inside LateInitialize() +*/ +/obj/proc/find_and_mount_on_atom(mark_for_late_init = FALSE, late_init = FALSE) + if(obj_flags & MOUNT_ON_LATE_INITIALIZE) + obj_flags &= ~MOUNT_ON_LATE_INITIALIZE + else if(late_init) + return TRUE + + var/area/location = get_area(src) + if(!isarea(location) || istype(location, /area/shuttle)) + return FALSE + + var/msg + if(PERFORM_ALL_TESTS(maptest_log_mapping) && !mark_for_late_init) + msg = "[type] Could not find attachable object at [location.type] " + + var/list/turf/attachable_turfs = get_turfs_to_mount_on() + for(var/turf/target as anything in attachable_turfs) + var/atom/attachable_atom + if(is_mountable_turf(target)) + attachable_atom = target //your usual wallmount + else + var/list/obj/attachables = get_moutable_objects() + for(var/obj/attachable in target) + if(is_type_in_list(attachable, attachables)) + attachable_atom = attachable + break + if(attachable_atom) + AddComponent(/datum/component/atom_mounted, attachable_atom) + return TRUE + if(msg) + msg += "([target.x],[target.y],[target.z]) " + if(msg) + log_mapping(msg) + + if(mark_for_late_init) + obj_flags |= MOUNT_ON_LATE_INITIALIZE + return FALSE diff --git a/code/datums/components/aura_healing.dm b/code/datums/components/aura_healing.dm index 416ab713b449ac..93d9c62c08f2e2 100644 --- a/code/datums/components/aura_healing.dm +++ b/code/datums/components/aura_healing.dm @@ -120,26 +120,25 @@ for (var/mob/living/candidate as anything in to_heal) if (!current_alerts[candidate]) - var/atom/movable/screen/alert/aura_healing/alert = candidate.throw_alert(alert_category, /atom/movable/screen/alert/aura_healing, new_master = parent) - alert.desc = "You are being healed by [parent]." + candidate.throw_alert(alert_category, /atom/movable/screen/alert/aura_healing, new_master = parent) current_alerts[candidate] = TRUE if (should_show_effect && candidate.health < candidate.maxHealth) new /obj/effect/temp_visual/heal(get_turf(candidate), healing_color) if (iscarbon(candidate) || issilicon(candidate) || isbasicmob(candidate)) - candidate.adjustBruteLoss(-brute_heal * seconds_per_tick, updating_health = FALSE) - candidate.adjustFireLoss(-burn_heal * seconds_per_tick, updating_health = FALSE) + candidate.adjust_brute_loss(-brute_heal * seconds_per_tick, updating_health = FALSE) + candidate.adjust_fire_loss(-burn_heal * seconds_per_tick, updating_health = FALSE) if (iscarbon(candidate)) // Toxin healing is forced for slime people - candidate.adjustToxLoss(-toxin_heal * seconds_per_tick, updating_health = FALSE, forced = TRUE) + candidate.adjust_tox_loss(-toxin_heal * seconds_per_tick, updating_health = FALSE, forced = TRUE) - candidate.adjustOxyLoss(-suffocation_heal * seconds_per_tick, updating_health = FALSE) - candidate.adjustStaminaLoss(-stamina_heal * seconds_per_tick, updating_stamina = FALSE) + candidate.adjust_oxy_loss(-suffocation_heal * seconds_per_tick, updating_health = FALSE) + candidate.adjust_stamina_loss(-stamina_heal * seconds_per_tick, updating_stamina = FALSE) for (var/organ in organ_healing) - candidate.adjustOrganLoss(organ, -organ_healing[organ] * seconds_per_tick) + candidate.adjust_organ_loss(organ, -organ_healing[organ] * seconds_per_tick) var/mob/living/carbon/carbidate = candidate for(var/datum/wound/iter_wound as anything in carbidate.all_wounds) iter_wound.adjust_blood_flow(-wound_clotting * seconds_per_tick) @@ -151,8 +150,7 @@ var/mob/living/basic/basic_candidate = candidate basic_candidate.adjust_health(-simple_heal * seconds_per_tick, updating_health = FALSE) - if (candidate.blood_volume < BLOOD_VOLUME_NORMAL) - candidate.blood_volume += blood_heal * seconds_per_tick + candidate.adjust_blood_volume(blood_heal * seconds_per_tick, maximum = BLOOD_VOLUME_NORMAL) candidate.updatehealth() @@ -165,5 +163,10 @@ icon_state = "template" use_user_hud_icon = TRUE clickable_glow = TRUE + click_master = FALSE + +/atom/movable/screen/alert/aura_healing/update_desc(updates) + . = ..() + desc = "You are being healed by [master_ref?.resolve()]." #undef HEAL_EFFECT_COOLDOWN diff --git a/code/datums/components/bakeable.dm b/code/datums/components/bakeable.dm index 70234236ce479b..f43b4fc162b9dd 100644 --- a/code/datums/components/bakeable.dm +++ b/code/datums/components/bakeable.dm @@ -37,8 +37,8 @@ var/atom/result = new bake_result if(!item_target.compare_materials(result)) var/warning = "custom_materials of [result.type] when baked compared to just spawned don't match" - var/what_it_should_be = item_target.get_materials_english_list() - stack_trace("[warning]. custom_materials should be [what_it_should_be].") + var/what_it_should_be = item_target.transcribe_materials_list() + stack_trace("[warning]. should be: custom_materials = [what_it_should_be].") qdel(result) // Inherit the new values passed to the component diff --git a/code/datums/components/bayonet_attachable.dm b/code/datums/components/bayonet_attachable.dm index 9841185ea7fb2b..8da8d61aac3fba 100644 --- a/code/datums/components/bayonet_attachable.dm +++ b/code/datums/components/bayonet_attachable.dm @@ -100,7 +100,8 @@ if (isnull(bayonet) || !user.combat_mode) return NONE - INVOKE_ASYNC(bayonet, TYPE_PROC_REF(/obj/item, melee_attack_chain), user, target, modifiers) + // RMB is used for butchering, and bayonets are usually are knives + INVOKE_ASYNC(bayonet, TYPE_PROC_REF(/obj/item, melee_attack_chain), user, target, modifiers - RIGHT_CLICK) return COMPONENT_CANCEL_ATTACK_CHAIN /datum/component/bayonet_attachable/proc/on_attackby(obj/item/source, obj/item/attacking_item, mob/attacker, list/modifiers) diff --git a/code/datums/components/blob_minion.dm b/code/datums/components/blob_minion.dm index 75eee8410d25ec..b6db9de6c36d1c 100644 --- a/code/datums/components/blob_minion.dm +++ b/code/datums/components/blob_minion.dm @@ -49,6 +49,8 @@ RegisterSignal(overmind, COMSIG_QDELETING, PROC_REF(overmind_deleted)) RegisterSignal(overmind, COMSIG_BLOB_SELECTED_STRAIN, PROC_REF(strain_properties_changed)) strain_properties_changed(overmind, overmind.blobstrain) + var/mob/living_parent = parent + living_parent.pass_flags |= PASSBLOB /// Our overmind is gone, uh oh! /datum/component/blob_minion/proc/overmind_deleted() @@ -70,7 +72,6 @@ /datum/component/blob_minion/RegisterWithParent() var/mob/living/living_parent = parent - living_parent.pass_flags |= PASSBLOB living_parent.faction |= ROLE_BLOB ADD_TRAIT(parent, TRAIT_BLOB_ALLY, REF(src)) remove_verb(parent, /mob/living/verb/pulled) // No dragging people into the blob @@ -113,6 +114,7 @@ COMSIG_HOSTILE_PRE_ATTACKINGTARGET, )) GLOB.blob_telepathy_mobs -= parent + living_parent.pass_flags &= ~PASSBLOB /// Become blobpilled when we gain a mind /datum/component/blob_minion/proc/on_mind_init(mob/living/minion, datum/mind/new_mind) @@ -152,9 +154,9 @@ /datum/component/blob_minion/proc/on_burned(mob/living/minion, exposed_temperature, exposed_volume) SIGNAL_HANDLER if(isnull(exposed_temperature)) - minion.adjustFireLoss(5) + minion.adjust_fire_loss(5) return - minion.adjustFireLoss(clamp(0.01 * exposed_temperature, 1, 5)) + minion.adjust_fire_loss(clamp(0.01 * exposed_temperature, 1, 5)) /// Someone is attempting to move through us, allow it if it is a blob tile /datum/component/blob_minion/proc/on_attempted_pass(mob/living/minion, atom/movable/incoming) diff --git a/code/datums/components/boss_music.dm b/code/datums/components/boss_music.dm index a5d2de4c8d596c..3d7bdf896bf88c 100644 --- a/code/datums/components/boss_music.dm +++ b/code/datums/components/boss_music.dm @@ -12,15 +12,12 @@ ///List of callback timers, used to clear out mobs listening to boss music after `track_duration`. var/list/music_callbacks = list() -/datum/component/boss_music/Initialize( - boss_track, - track_duration, -) +/datum/component/boss_music/Initialize(boss_track) . = ..() if(!ishostile(parent)) return COMPONENT_INCOMPATIBLE src.boss_track = boss_track - src.track_duration = track_duration + track_duration = SSsounds.get_sound_length(boss_track) /datum/component/boss_music/Destroy(force) . = ..() diff --git a/code/datums/components/breeding.dm b/code/datums/components/breeding.dm index 6c323ed835d369..328d7ae1857293 100644 --- a/code/datums/components/breeding.dm +++ b/code/datums/components/breeding.dm @@ -2,17 +2,17 @@ * A component to allow us to breed */ /datum/component/breed - /// additional mobs we can breed with + /// Additional mobs we can breed with var/list/can_breed_with - ///weighted list of the possible baby types + /// Weighted list of the possible baby types var/list/baby_paths - ///time to wait after breeding + /// Time to wait after breeding var/breed_timer - ///AI key we set when we're ready to breed + /// AI key we set when we're ready to breed var/breed_key = BB_BREED_READY - ///are we ready to breed? + /// Are we ready to breed? var/ready_to_breed = TRUE - ///callback after we give birth to the child + /// Callback after we give birth to the child var/datum/callback/post_birth /datum/component/breed/Initialize(list/can_breed_with = list(), breed_timer = 40 SECONDS, baby_paths = list(), post_birth) @@ -44,13 +44,15 @@ REMOVE_TRAIT(parent, TRAIT_MOB_BREEDER, REF(src)) post_birth = null - /datum/component/breed/proc/breed_with_partner(mob/living/source, mob/living/target) SIGNAL_HANDLER if(source.combat_mode) return + if(!ismob(target)) + return + if(source.client || target.client) return diff --git a/code/datums/components/butchering.dm b/code/datums/components/butchering.dm index 1f432efc734558..dd14cd4dcde02a 100644 --- a/code/datums/components/butchering.dm +++ b/code/datums/components/butchering.dm @@ -27,72 +27,357 @@ src.effectiveness = effectiveness src.bonus_modifier = bonus_modifier src.butcher_sound = butcher_sound - if(disabled) + if (disabled) src.butchering_enabled = FALSE src.can_be_blunt = can_be_blunt src.butcher_callback = butcher_callback - if(isitem(parent)) - RegisterSignal(parent, COMSIG_ITEM_ATTACK, PROC_REF(onItemAttack)) /datum/component/butchering/Destroy(force) butcher_callback = null return ..() -/datum/component/butchering/proc/onItemAttack(obj/item/source, mob/living/M, mob/living/user) +/datum/component/butchering/RegisterWithParent() + if (!isitem(parent)) + return + var/obj/item/item_parent = parent + item_parent.item_flags |= ITEM_HAS_CONTEXTUAL_SCREENTIPS + RegisterSignal(parent, COMSIG_ITEM_ATTACK, PROC_REF(on_item_attack)) + RegisterSignal(parent, COMSIG_ITEM_INTERACTING_WITH_ATOM, PROC_REF(on_item_interaction)) + RegisterSignal(parent, COMSIG_ITEM_REQUESTING_CONTEXT_FOR_TARGET, PROC_REF(add_item_context)) + +/datum/component/butchering/UnregisterFromParent() + UnregisterSignal(parent, list(COMSIG_ITEM_ATTACK, COMSIG_ITEM_INTERACTING_WITH_ATOM)) + +/datum/component/butchering/proc/on_item_attack(obj/item/source, mob/living/victim, mob/living/user, list/modifiers) SIGNAL_HANDLER - if(!user.combat_mode) + if (!source.get_sharpness() && !can_be_blunt) + return + + if (!user.combat_mode) + return + + // Can we butcher it? + if (victim.stat == DEAD && (victim.butcher_results || victim.guaranteed_butcher_results) && butchering_enabled) + INVOKE_ASYNC(src, PROC_REF(start_butcher), source, victim, user) + return COMPONENT_CANCEL_ATTACK_CHAIN + + if (!ishuman(victim) || !source.force) + return + + if (LAZYACCESS(modifiers, RIGHT_CLICK) && butchering_enabled) + INVOKE_ASYNC(src, PROC_REF(butcher_human), source, victim, user) + return COMPONENT_CANCEL_ATTACK_CHAIN + + // Neckslicing requires aggro grabs + if (user.pulling != victim || user.grab_state < GRAB_AGGRESSIVE || user.zone_selected != BODY_ZONE_HEAD) + return + + if (HAS_TRAIT(user, TRAIT_PACIFISM)) + to_chat(user, span_warning("You don't want to harm other living beings!")) + return COMPONENT_CANCEL_ATTACK_CHAIN + + if (victim.has_status_effect(/datum/status_effect/neck_slice)) return - if(M.stat == DEAD && (M.butcher_results || M.guaranteed_butcher_results)) //can we butcher it? - if(butchering_enabled && (can_be_blunt || source.get_sharpness())) - INVOKE_ASYNC(src, PROC_REF(startButcher), source, M, user) - return COMPONENT_CANCEL_ATTACK_CHAIN - - if(ishuman(M) && source.force && source.get_sharpness()) - var/mob/living/carbon/human/H = M - if((user.pulling == H && user.grab_state >= GRAB_AGGRESSIVE) && user.zone_selected == BODY_ZONE_HEAD) // Only aggressive grabbed can be sliced. - if(HAS_TRAIT(user, TRAIT_PACIFISM)) - to_chat(user, span_warning("You don't want to harm other living beings!")) - return COMPONENT_CANCEL_ATTACK_CHAIN - - if(H.has_status_effect(/datum/status_effect/neck_slice)) + + INVOKE_ASYNC(src, PROC_REF(start_neck_slice), source, victim, user) + return COMPONENT_CANCEL_ATTACK_CHAIN + +/datum/component/butchering/proc/on_item_interaction(obj/item/source, mob/living/user, atom/target) + SIGNAL_HANDLER + + if (!source.get_sharpness() && !can_be_blunt) + return + + if (!user.combat_mode || !butchering_enabled) + return + + if (isbodypart(target)) + INVOKE_ASYNC(src, PROC_REF(butcher_limb), source, target, user) + return COMPONENT_CANCEL_ATTACK_CHAIN + +/datum/component/butchering/proc/add_item_context(obj/item/source, list/context, atom/target, mob/living/user) + SIGNAL_HANDLER + + if (!source.get_sharpness() && !can_be_blunt) + return NONE + + if (!butchering_enabled) + return NONE + + if (isbodypart(target)) + context[SCREENTIP_CONTEXT_LMB] = "(Combat Mode) Butcher limb" + return CONTEXTUAL_SCREENTIP_SET + + if (!isliving(target)) + return NONE + + var/mob/living/victim = target + if (victim.stat != DEAD && (victim.butcher_results || victim.guaranteed_butcher_results)) + context[SCREENTIP_CONTEXT_LMB] = "(Combat Mode) Butcher" + return CONTEXTUAL_SCREENTIP_SET + + if (ishuman(victim)) + context[SCREENTIP_CONTEXT_RMB] = "(Combat Mode) Butcher" + return CONTEXTUAL_SCREENTIP_SET + + return NONE + +/datum/component/butchering/proc/butcher_limb(obj/item/source, obj/item/bodypart/target, mob/living/user) + target.add_fingerprint(user) + if (LIMB_HAS_SKIN(target) && !HAS_ANY_SURGERY_STATE(target.surgery_state, SURGERY_SKIN_CUT | SURGERY_SKIN_OPEN)) + to_chat(user, span_warning("[target]'s skin is still intact!")) + return + + if (LIMB_HAS_BONES(target) && !HAS_ANY_SURGERY_STATE(target.surgery_state, SURGERY_BONE_DRILLED | SURGERY_BONE_SAWED)) + // We need to gut the limb before turning it into meat, otherwise just cut around the bone I guess + if (length(target.contents)) + to_chat(user, span_warning("[target]'s bones are still intact!")) + return + + var/speed_modifier = 1 + if (!target.owner) + speed_modifier = 0.5 + else if (target.owner.stat < UNCONSCIOUS) + speed_modifier = 1.5 // yeowch + + var/limb_descriptor = (target.owner ? "[target.owner]'s [target.plaintext_zone]" : target) + // Okay *hopefully* they're already dead at this point + if (target.body_zone == BODY_ZONE_CHEST && target.owner) + // Butchering the chest gibs the victim + limb_descriptor = target.owner + + if (target.owner) + log_combat(user, target.owner, "attempted to butcher", source) + + if (length(target.contents)) + user.visible_message(span_warning("[user] begins to gut [limb_descriptor]!"), span_notice("You begin to gut [limb_descriptor]..."), ignored_mobs = target.owner) + if (target.owner) + to_chat(target.owner, span_warning("[user] begins to gut your [target.plaintext_zone]!")) + + playsound(target.loc, butcher_sound, 50, TRUE, -1) + if (!do_after(user, speed * speed_modifier, target.owner || target)) + return + target.drop_organs(user, TRUE) + return + + if (!length(target.butcher_drops)) + to_chat(user, span_warning("There is nothing left inside [limb_descriptor]!")) + return + + if (target.body_zone == BODY_ZONE_CHEST && target.owner) + // Cannot butcher the chest until we hack off all the other limbs + for (var/obj/item/bodypart/limb as anything in target.owner.bodyparts) + if (limb != target && limb.butcher_drops && limb.butcher_replacement) + to_chat(user, span_warning("You need to butcher all other limbs first!")) return - INVOKE_ASYNC(src, PROC_REF(startNeckSlice), source, H, user) - return COMPONENT_CANCEL_ATTACK_CHAIN + user.visible_message(span_warning("[user] begins to cut [limb_descriptor] apart!"), span_notice("You begin to cut [limb_descriptor] apart..."), ignored_mobs = target.owner) + if (target.owner) + to_chat(target.owner, span_warning("[user] begins to cut your [target.plaintext_zone] apart!")) + + playsound(target.loc, butcher_sound, 50, TRUE, -1) + if (!do_after(user, speed * speed_modifier, target.owner || target)) + return + + var/list/results = list() + var/turf/drop_loc = target.owner?.drop_location() || target.drop_location() + var/bonus_chance = max(0, (effectiveness - 100) + bonus_modifier) //so 125 total effectiveness = 25% extra chance + + var/list/failures = list() + var/list/bonuses = list() -/datum/component/butchering/proc/startButcher(obj/item/source, mob/living/M, mob/living/user) - to_chat(user, span_notice("You begin to butcher [M]...")) - playsound(M.loc, butcher_sound, 50, TRUE, -1) - if(do_after(user, speed, M) && M.Adjacent(source)) - on_butchering(user, M) + for (var/obj/item/drop_type as anything in target.butcher_drops) + var/amount = target.butcher_drops[drop_type] || 1 + var/is_stack = ispath(drop_type, /obj/item/stack) -/datum/component/butchering/proc/startNeckSlice(obj/item/source, mob/living/carbon/human/H, mob/living/user) - if(DOING_INTERACTION_WITH_TARGET(user, H)) - to_chat(user, span_warning("You're already interacting with [H]!")) + for (var/i in 1 to amount) + if (!prob(effectiveness)) + failures |= drop_type::name + amount -= 1 + continue + + if (prob(bonus_chance)) + if (!is_stack) + if (ispath(drop_type, /obj/item/food/meat)) + results += new drop_type(drop_loc, target.blood_dna_info?.Copy()) + else + var/obj/item/butcher_result = new drop_type(drop_loc) + if (target.blood_dna_info) + butcher_result.add_blood_DNA(target.blood_dna_info.Copy()) + results += butcher_result + amount += 1 + bonuses |= drop_type::name + + if (is_stack) + continue + + if (ispath(drop_type, /obj/item/food/meat)) + results += new drop_type(drop_loc, target.blood_dna_info?.Copy()) + continue + + var/obj/item/butcher_result = new drop_type(drop_loc) + butcher_result.add_blood_DNA(target.blood_dna_info.Copy()) + results += butcher_result + + if (is_stack && amount) + var/obj/item/stack/butcher_result = new drop_type(drop_loc, amount) + if (target.blood_dna_info) + butcher_result.add_blood_DNA(target.blood_dna_info.Copy()) + results += butcher_result + + if (target.reagents) + var/meat_produced = 0 + for (var/obj/item/food/target_meat in results) + meat_produced += 1 + + for (var/obj/item/food/target_meat in results) + target.reagents.trans_to(target_meat, target.reagents.total_volume / meat_produced, remove_blacklisted = TRUE) + + if (target.owner) + var/reagents_in_produced = 0 + for(var/obj/item/result as anything in results) + if(result.reagents) + reagents_in_produced += 1 + + var/list/diseases = target.owner.get_static_viruses() + + for(var/obj/item/result as anything in results) + if (reagents_in_produced) + if (target.owner.reagents) + target.owner.reagents.trans_to(result, target.owner.reagents.total_volume / reagents_in_produced / length(target.owner.bodyparts), remove_blacklisted = TRUE) + result.reagents?.add_reagent(/datum/reagent/consumable/nutriment/fat, target.owner.nutrition / 15 / reagents_in_produced) + + if(LAZYLEN(diseases)) + var/list/datum/disease/diseases_to_add = list() + for(var/datum/disease/disease as anything in diseases) + // Admin or special viruses that should not be reproduced + if(disease.spread_flags & (DISEASE_SPREAD_SPECIAL | DISEASE_SPREAD_NON_CONTAGIOUS)) + continue + + diseases_to_add += disease + + if(LAZYLEN(diseases_to_add)) + result.AddComponent(/datum/component/infective, diseases_to_add) + + for (var/obj/item/food/meat/meat in results) + meat.name = "[target.owner.real_name]'s [meat.name]" + meat.set_custom_materials(list(GET_MATERIAL_REF(/datum/material/meat/mob_meat, target.owner) = 4 * SHEET_MATERIAL_AMOUNT)) + meat.subjectname = target.owner.real_name + meat.subjectjob = target.owner.job + + user.visible_message(span_warning("[user] butchers [limb_descriptor]!"), span_notice("You butcher [limb_descriptor]."), ignored_mobs = target.owner) + if (!target.owner) + target.drop_organs(violent_removal = TRUE) // Should not happen, but just in case + create_replacement_limb(target, drop_loc) + qdel(target) return - user.visible_message(span_danger("[user] is slitting [H]'s throat!"), \ - span_danger("You start slicing [H]'s throat!"), \ - span_hear("You hear a cutting noise!"), ignored_mobs = H) - H.show_message(span_userdanger("Your throat is being slit by [user]!"), MSG_VISUAL, \ + var/wound_type = null + if (source.damtype == BURN) + wound_type = WOUND_BURN + else + switch (source.get_sharpness()) + if (SHARP_EDGED) + wound_type = WOUND_SLASH + if (SHARP_POINTY) + wound_type = WOUND_PIERCE + else + wound_type = WOUND_BLUNT + + to_chat(target.owner, span_userdanger("[user] hacks the meat off your [target.plaintext_zone]!")) + var/mob/living/carbon/victim = target.owner + + if (!target.butcher_replacement) + target.dismember(source.damtype, wound_type) + target.drop_organs(violent_removal = TRUE) // Should not happen, but just in case + qdel(target) + return + + var/obj/item/bodypart/replacement = create_replacement_limb(target, drop_loc) + target.dismember(source.damtype, wound_type) + target.drop_organs(violent_removal = TRUE) + replacement.replace_limb(victim) + replacement.update_limb(is_creating = TRUE) + qdel(target) + +/// Creates a replacement (usually skeleton) limb for the butchered one +/datum/component/butchering/proc/create_replacement_limb(obj/item/bodypart/target, drop_loc) + var/drop_type = target.butcher_replacement + var/obj/item/bodypart/replacement = new drop_type(drop_loc) + replacement.set_initial_damage(target.brute_dam, target.burn_dam) + if (IS_ORGANIC_LIMB(replacement) && target.owner) + replacement.blood_dna_info = target.owner.get_blood_dna_list() + + for (var/datum/wound/wound as anything in target.wounds) + wound.remove_wound() + wound.apply_wound(replacement, silent = TRUE) + + return replacement + +/datum/component/butchering/proc/start_butcher(obj/item/source, mob/living/target, mob/living/user) + to_chat(user, span_notice("You begin to butcher [target]...")) + playsound(target.loc, butcher_sound, 50, TRUE, -1) + if (do_after(user, speed, target) && target.Adjacent(source)) + on_butchering(user, target) + +/datum/component/butchering/proc/butcher_human(obj/item/source, mob/living/carbon/human/victim, mob/living/user) + if (DOING_INTERACTION_WITH_TARGET(user, victim)) + to_chat(user, span_warning("You're already interacting with [victim]!")) + return + + var/static/list/butcher_spots = typecacheof(list( + /obj/structure/table, + /obj/structure/bed, + /obj/machinery/stasis, + /obj/structure/kitchenspike, + )) + + var/found_spot = FALSE + for (var/obj/thing in victim.loc) + if (is_type_in_typecache(thing, butcher_spots)) + found_spot = TRUE + break + + if (!found_spot) + to_chat(user, span_warning("You need a better spot to butcher [victim]!")) + return + + var/obj/item/bodypart/limb = victim.get_bodypart(deprecise_zone(user.zone_selected)) + if (!limb) + to_chat(user, span_warning("[victim] doesn't have a [parse_zone(deprecise_zone(user.zone_selected))]!")) + return + + butcher_limb(source, limb, user) + +/datum/component/butchering/proc/start_neck_slice(obj/item/source, mob/living/carbon/human/victim, mob/living/user) + if (DOING_INTERACTION_WITH_TARGET(user, victim)) + to_chat(user, span_warning("You're already interacting with [victim]!")) + return + + user.visible_message(span_danger("[user] is slitting [victim]'s throat!"), \ + span_danger("You start slicing [victim]'s throat!"), \ + span_hear("You hear a cutting noise!"), ignored_mobs = victim) + victim.show_message(span_userdanger("Your throat is being slit by [user]!"), MSG_VISUAL, \ span_userdanger("Something is cutting into your neck!"), NONE) - log_combat(user, H, "attempted throat slitting", source) + log_combat(user, victim, "attempted throat slitting", source) - playsound(H.loc, butcher_sound, 50, TRUE, -1) - if(do_after(user, clamp(500 / source.force, 30, 100), H) && H.Adjacent(source)) - if(H.has_status_effect(/datum/status_effect/neck_slice)) - user.show_message(span_warning("[H]'s neck has already been already cut, you can't make the bleeding any worse!"), MSG_VISUAL, \ - span_warning("Their neck has already been already cut, you can't make the bleeding any worse!")) - return + playsound(victim.loc, butcher_sound, 50, TRUE, -1) + if (!do_after(user, clamp(500 / source.force, 30, 100), victim) && victim.Adjacent(source)) + return - H.visible_message(span_danger("[user] slits [H]'s throat!"), \ - span_userdanger("[user] slits your throat...")) - log_combat(user, H, "wounded via throat slitting", source) - H.apply_damage(source.force, BRUTE, BODY_ZONE_HEAD, wound_bonus=CANT_WOUND) // easy tiger, we'll get to that in a sec - var/obj/item/bodypart/slit_throat = H.get_bodypart(BODY_ZONE_HEAD) - if (H.cause_wound_of_type_and_severity(WOUND_SLASH, slit_throat, WOUND_SEVERITY_CRITICAL)) - H.apply_status_effect(/datum/status_effect/neck_slice) + if (victim.has_status_effect(/datum/status_effect/neck_slice)) + user.show_message(span_warning("[victim]'s neck has already been already cut, you can't make the bleeding any worse!"), MSG_VISUAL, \ + span_warning("Their neck has already been already cut, you can't make the bleeding any worse!")) + return + + victim.visible_message(span_danger("[user] slits [victim]'s throat!"), \ + span_userdanger("[user] slits your throat...")) + log_combat(user, victim, "wounded via throat slitting", source) + victim.apply_damage(source.force, BRUTE, BODY_ZONE_HEAD, wound_bonus=CANT_WOUND) // easy tiger, we'll get to that in a sec + var/obj/item/bodypart/slit_throat = victim.get_bodypart(BODY_ZONE_HEAD) + if (victim.cause_wound_of_type_and_severity(WOUND_SLASH, slit_throat, WOUND_SEVERITY_CRITICAL)) + victim.apply_status_effect(/datum/status_effect/neck_slice) /** * Handles a user butchering a target @@ -107,67 +392,85 @@ var/final_effectiveness = effectiveness - target.butcher_difficulty var/bonus_chance = max(0, (final_effectiveness - 100) + bonus_modifier) //so 125 total effectiveness = 25% extra chance - if(target.flags_1 & HOLOGRAM_1) + if (target.flags_1 & HOLOGRAM_1) butcher.visible_message(span_notice("[butcher] tries to butcher [target], but it vanishes."), \ span_notice("You try to butcher [target], but it vanishes.")) qdel(target) return - for(var/result_typepath in target.butcher_results) - var/obj/remains = result_typepath - var/amount = target.butcher_results[remains] - for(var/_i in 1 to amount) - if(!prob(final_effectiveness)) - if(butcher) - to_chat(butcher, span_warning("You fail to harvest some of the [initial(remains.name)] from [target].")) + var/list/failures = list() + var/list/bonuses = list() + for (var/obj/remains as anything in target.butcher_results) + var/amount = target.butcher_results[remains] || 1 + var/is_stack = ispath(remains, /obj/item/stack) + + for (var/i in 1 to amount) + if (!prob(final_effectiveness)) + failures |= remains::name + amount -= 1 continue - if(prob(bonus_chance)) - if(butcher) - to_chat(butcher, span_info("You harvest some extra [initial(remains.name)] from [target]!")) - results += new remains (location) - results += new remains (location) + if (prob(bonus_chance)) + if (!is_stack) + results += new remains(location) + amount += 1 + bonuses |= remains::name - target.butcher_results.Remove(remains) //in case you want to, say, have it drop its results on gib + if (!is_stack) + results += new remains(location) - for(var/guaranteed_result_typepath in target.guaranteed_butcher_results) - var/obj/guaranteed_remains = guaranteed_result_typepath + if (is_stack && amount) + results += new remains(location, amount) + + target.butcher_results?.Cut() + + if (butcher) + if (length(failures)) + to_chat(butcher, span_warning("You fail to harvest some of the [english_list(failures)] from [target].")) + if (length(bonuses)) + to_chat(butcher, span_info("You harvest some extra [english_list(bonuses)] from [target]!")) + + for (var/obj/guaranteed_remains as anything in target.guaranteed_butcher_results) var/amount = target.guaranteed_butcher_results[guaranteed_remains] - for(var/i in 1 to amount) - results += new guaranteed_remains (location) - target.guaranteed_butcher_results.Remove(guaranteed_remains) + if (ispath(guaranteed_remains, /obj/item/stack)) + results += new guaranteed_remains(location, amount) + continue + + for (var/i in 1 to amount) + results += new guaranteed_remains(location) + + target.guaranteed_butcher_results?.Cut() - for(var/obj/item/carrion in results) + for (var/obj/item/carrion in results) var/list/meat_mats = carrion.has_material_type(/datum/material/meat) - if(!length(meat_mats)) + if (!length(meat_mats)) continue carrion.set_custom_materials((carrion.custom_materials - meat_mats) + list(GET_MATERIAL_REF(/datum/material/meat/mob_meat, target) = counterlist_sum(meat_mats))) - // transfer delicious reagents to meat - if(target.reagents) + // Transfer delicious reagents to meat + if (target.reagents) var/meat_produced = 0 - for(var/obj/item/food/meat/slab/target_meat in results) + for (var/obj/item/food/target_meat in results) meat_produced += 1 - for(var/obj/item/food/meat/slab/target_meat in results) + for (var/obj/item/food/target_meat in results) target.reagents.trans_to(target_meat, target.reagents.total_volume / meat_produced, remove_blacklisted = TRUE) - // dont forget yummy diseases either! - if(iscarbon(target)) + // Don't forget yummy diseases either! + if (iscarbon(target)) var/mob/living/carbon/host_target = target var/list/diseases = host_target.get_static_viruses() - if(LAZYLEN(diseases)) + if (LAZYLEN(diseases)) var/list/datum/disease/diseases_to_add = list() - for(var/datum/disease/disease as anything in diseases) + for (var/datum/disease/disease as anything in diseases) // admin or special viruses that should not be reproduced - if(disease.spread_flags & (DISEASE_SPREAD_SPECIAL | DISEASE_SPREAD_NON_CONTAGIOUS)) - continue + if (!(disease.spread_flags & (DISEASE_SPREAD_SPECIAL | DISEASE_SPREAD_NON_CONTAGIOUS))) + diseases_to_add += disease - diseases_to_add += disease - if(LAZYLEN(diseases_to_add)) - for(var/obj/diseased_remains in results) + if (LAZYLEN(diseases_to_add)) + for (var/obj/diseased_remains in results) diseased_remains.AddComponent(/datum/component/infective, diseases_to_add) - if(butcher) + if (butcher) butcher.visible_message(span_notice("[butcher] butchers [target]."), \ span_notice("You butcher [target].")) butcher_callback?.Invoke(butcher, target) @@ -175,20 +478,9 @@ target.log_message("has been butchered by [key_name(butcher)]", LOG_ATTACK) target.gib(DROP_BRAIN|DROP_ORGANS) -///Enables the butchering mechanic for the mob who has equipped us. -/datum/component/butchering/proc/enable_butchering(datum/source) - SIGNAL_HANDLER - butchering_enabled = TRUE - -///Disables the butchering mechanic for the mob who has dropped us. -/datum/component/butchering/proc/disable_butchering(datum/source) - SIGNAL_HANDLER - butchering_enabled = FALSE - -///Special snowflake component only used for the recycler. +/// Special snowflake component only used for the recycler. /datum/component/butchering/recycler - /datum/component/butchering/recycler/Initialize( speed, effectiveness, @@ -198,10 +490,10 @@ can_be_blunt, butcher_callback, ) - if(!istype(parent, /obj/machinery/recycler)) //EWWW + if (!istype(parent, /obj/machinery/recycler)) //EWWW return COMPONENT_INCOMPATIBLE . = ..() - if(. == COMPONENT_INCOMPATIBLE) + if (. == COMPONENT_INCOMPATIBLE) return var/static/list/loc_connections = list( @@ -212,13 +504,13 @@ /datum/component/butchering/recycler/proc/on_entered(datum/source, atom/movable/arrived, atom/old_loc, list/atom/old_locs) SIGNAL_HANDLER - if(!isliving(arrived)) + if (!isliving(arrived)) return var/mob/living/victim = arrived var/obj/machinery/recycler/eater = parent - if(eater.safety_mode || (eater.machine_stat & (BROKEN|NOPOWER))) //I'm so sorry. + if (eater.safety_mode || (eater.machine_stat & (BROKEN|NOPOWER))) //I'm so sorry. return - if(victim.stat == DEAD && (victim.butcher_results || victim.guaranteed_butcher_results)) + if (victim.stat == DEAD && (victim.butcher_results || victim.guaranteed_butcher_results)) on_butchering(parent, victim) /datum/component/butchering/mecha @@ -237,6 +529,16 @@ COMSIG_MECHA_EQUIPMENT_DETACHED, )) +/// Enables the butchering mechanic for the mecha who has equipped us. +/datum/component/butchering/mecha/proc/enable_butchering(datum/source) + SIGNAL_HANDLER + butchering_enabled = TRUE + +/// Disables the butchering mechanic for the mecha who has dropped us. +/datum/component/butchering/mecha/proc/disable_butchering(datum/source) + SIGNAL_HANDLER + butchering_enabled = FALSE + ///When we are ready to drill through a mob /datum/component/butchering/mecha/proc/on_drill(datum/source, obj/vehicle/sealed/mecha/chassis, mob/living/target) SIGNAL_HANDLER @@ -256,16 +558,16 @@ COMSIG_ITEM_DROPPED, )) -///Same as enable_butchering but for worn items +/// Same as enable_butchering but for worn items /datum/component/butchering/wearable/proc/worn_enable_butchering(obj/item/source, mob/user, slot) SIGNAL_HANDLER //check if the item is being not worn - if(!(slot & source.slot_flags)) + if (!(slot & source.slot_flags)) return butchering_enabled = TRUE RegisterSignal(user, COMSIG_LIVING_UNARMED_ATTACK, PROC_REF(butcher_target)) -///Same as disable_butchering but for worn items +/// Same as disable_butchering but for worn items /datum/component/butchering/wearable/proc/worn_disable_butchering(obj/item/source, mob/user) SIGNAL_HANDLER butchering_enabled = FALSE @@ -273,6 +575,6 @@ /datum/component/butchering/wearable/proc/butcher_target(mob/user, atom/target, proximity) SIGNAL_HANDLER - if(!isliving(target)) + if (!isliving(target)) return NONE - return onItemAttack(parent, target, user) + return on_item_attack(parent, target, user) diff --git a/code/datums/components/chasm.dm b/code/datums/components/chasm.dm index 7ce66b86c1ace4..69f1ea69cf7aa9 100644 --- a/code/datums/components/chasm.dm +++ b/code/datums/components/chasm.dm @@ -6,7 +6,7 @@ var/oblivion_message = "You stumble and stare into the abyss before you. It stares back, and you fall into the enveloping dark." /// List of refs to falling objects -> how many levels deep we've fallen - var/static/list/falling_atoms = list() + var/static/list/falling_atoms var/static/list/forbidden_types = typecacheof(list( /obj/docking_port, /obj/effect/abstract, @@ -42,6 +42,7 @@ RegisterSignal(parent, SIGNAL_ADDTRAIT(TRAIT_CHASM_STOPPED), PROC_REF(on_chasm_stopped)) RegisterSignal(parent, SIGNAL_REMOVETRAIT(TRAIT_CHASM_STOPPED), PROC_REF(on_chasm_no_longer_stopped)) target_turf = target + ADD_TRAIT(parent, TRAIT_AI_AVOID_TURF, REF(src)) RegisterSignal(parent, COMSIG_ATOM_ABSTRACT_ENTERED, PROC_REF(entered)) RegisterSignal(parent, COMSIG_ATOM_ABSTRACT_EXITED, PROC_REF(exited)) RegisterSignal(parent, COMSIG_ATOM_AFTER_SUCCESSFUL_INITIALIZED_ON, PROC_REF(initialized_on)) @@ -53,6 +54,7 @@ parent.AddComponent(/datum/component/fishing_spot, GLOB.preset_fish_sources[/datum/fish_source/chasm]) /datum/component/chasm/UnregisterFromParent() + REMOVE_TRAIT(parent, TRAIT_AI_AVOID_TURF, REF(src)) storage = null /datum/component/chasm/proc/entered(datum/source, atom/movable/arrived, atom/old_loc, list/atom/old_locs) @@ -104,7 +106,8 @@ /datum/component/chasm/proc/droppable(atom/movable/dropped_thing) var/datum/weakref/falling_ref = WEAKREF(dropped_thing) // avoid an infinite loop, but allow falling a large distance - if(falling_atoms[falling_ref] && falling_atoms[falling_ref] > 30) + var/falling_atom = LAZYACCESS(falling_atoms, falling_ref) + if(falling_atom && falling_atom > 30) return CHASM_NOT_DROPPING if(is_type_in_typecache(dropped_thing, forbidden_types) || (!isliving(dropped_thing) && !isobj(dropped_thing))) return CHASM_NOT_DROPPING @@ -131,14 +134,14 @@ var/datum/weakref/falling_ref = WEAKREF(dropped_thing) //Make sure the item is still there after our sleep if(!dropped_thing || !falling_ref?.resolve()) - falling_atoms -= falling_ref + LAZYREMOVE(falling_atoms, falling_ref) return - falling_atoms[falling_ref] = (falling_atoms[falling_ref] || 0) + 1 + LAZYSET(falling_atoms, falling_ref, (falling_atoms[falling_ref] || 0) + 1) var/turf/below_turf = target_turf var/atom/parent = src.parent - if(falling_atoms[falling_ref] > 1) + if(LAZYACCESS(falling_atoms, falling_ref) > 1) return // We're already handling this if(SEND_SIGNAL(dropped_thing, COMSIG_MOVABLE_CHASM_DROPPED, parent) & COMPONENT_NO_CHASM_DROP) @@ -161,16 +164,29 @@ if(isliving(dropped_thing)) var/mob/living/fallen = dropped_thing fallen.Paralyze(100) - fallen.adjustBruteLoss(30) - falling_atoms -= falling_ref + fallen.adjust_brute_loss(30) + LAZYREMOVE(falling_atoms, falling_ref) return // send to oblivion - dropped_thing.visible_message(span_boldwarning("[dropped_thing] falls into [parent]!"), span_userdanger("[oblivion_message]")) + if (isliving(dropped_thing)) var/mob/living/falling_mob = dropped_thing ADD_TRAIT(falling_mob, TRAIT_NO_TRANSFORM, REF(src)) - falling_mob.Paralyze(20 SECONDS) + falling_mob.Stun(20 SECONDS, ignore_canstun = TRUE) + + if (HAS_MIND_TRAIT(falling_mob, TRAIT_NAIVE)) + falling_mob.do_alert_animation() + dropped_thing.visible_message(span_boldwarning("[dropped_thing] kicks [dropped_thing.p_their()] legs in the air, as if running in place!")) + dropped_thing.Shake(1, 0, 2 SECONDS, 0.3 SECONDS) + sleep(3 SECONDS) + + if (get_turf(falling_mob) != get_turf(parent)) + REMOVE_TRAIT(falling_mob, TRAIT_NO_TRANSFORM, REF(src)) + falling_mob.Paralyze(17 SECONDS, ignore_canstun = TRUE) // Wow nice job + return + + dropped_thing.visible_message(span_boldwarning("[dropped_thing] falls into [parent]!"), span_userdanger("[oblivion_message]")) var/oldtransform = dropped_thing.transform var/oldcolor = dropped_thing.color @@ -220,7 +236,7 @@ fallen_mob.death(TRUE) fallen_mob.apply_damage(300) - falling_atoms -= falling_ref + LAZYREMOVE(falling_atoms, falling_ref) /** * Called when something has left the chasm depths storage. diff --git a/code/datums/components/climb_walkable.dm b/code/datums/components/climb_walkable.dm deleted file mode 100644 index 0fb5a867efcb96..00000000000000 --- a/code/datums/components/climb_walkable.dm +++ /dev/null @@ -1,29 +0,0 @@ -/// Allows objects that entered parent's tile to move freely through other objects with this component regardless of density -/datum/component/climb_walkable - -/datum/component/climb_walkable/RegisterWithParent() - var/static/list/turf_connections = list( - COMSIG_ATOM_ENTERED = PROC_REF(on_enter), - COMSIG_ATOM_AFTER_SUCCESSFUL_INITIALIZED_ON = PROC_REF(on_enter), - COMSIG_ATOM_EXITED = PROC_REF(on_exit), - ) - AddComponent(/datum/component/connect_loc_behalf, parent, turf_connections) - RegisterSignal(parent, COMSIG_ATOM_TRIED_PASS, PROC_REF(can_allow_through)) - -/datum/component/climb_walkable/UnregisterFromParent() - UnregisterSignal(parent, COMSIG_ATOM_TRIED_PASS) - for (var/atom/movable/climber in get_turf(parent)) - REMOVE_TRAIT(climber, TRAIT_ON_CLIMBABLE, REF(src)) - -/datum/component/climb_walkable/proc/on_enter(datum/source, atom/movable/arrived) - SIGNAL_HANDLER - ADD_TRAIT(arrived, TRAIT_ON_CLIMBABLE, REF(src)) - -/datum/component/climb_walkable/proc/on_exit(datum/source, atom/movable/gone, direction) - SIGNAL_HANDLER - REMOVE_TRAIT(gone, TRAIT_ON_CLIMBABLE, REF(src)) - -/datum/component/climb_walkable/proc/can_allow_through(datum/source, atom/movable/mover, border_dir) - SIGNAL_HANDLER - if(HAS_TRAIT(mover, TRAIT_ON_CLIMBABLE)) - return COMSIG_COMPONENT_PERMIT_PASSAGE diff --git a/code/datums/components/crafting/_recipes.dm b/code/datums/components/crafting/_recipes.dm index 86b5d095a55a64..77c075cfda1231 100644 --- a/code/datums/components/crafting/_recipes.dm +++ b/code/datums/components/crafting/_recipes.dm @@ -8,7 +8,7 @@ ///type paths of items consumed associated with how many are needed var/list/reqs = list() ///type paths of items explicitly not allowed as an ingredient - var/list/blacklist = list() + var/list/blacklist ///type path of item resulting from this craft var/result /// String defines of items needed but not consumed. Lazy list. @@ -23,11 +23,13 @@ ///time in seconds. Remember to use the SECONDS define! var/time = 3 SECONDS ///type paths of items that will be forceMoved() into the result instead of being deleted - var/list/parts = list() + var/list/parts ///items, structures and machineries of types that are in this list won't transfer their materials to the result var/list/requirements_mats_blacklist + ///if set, the materials in this list and their values will be subtracted from the result. + var/list/removed_mats ///like tool_behaviors but for reagents - var/list/chem_catalysts = list() + var/list/chem_catalysts ///where it shows up in the crafting UI var/category ///Required machines for the craft, set the assigned value of the typepath to CRAFTING_MACHINERY_CONSUME or CRAFTING_MACHINERY_USE. Lazy associative list: type_path key -> flag value. @@ -48,19 +50,15 @@ var/delete_contents = TRUE /// Allows you to craft so that you don't have to click the craft button many times. var/mass_craftable = FALSE - ///crafting_flags var to hold bool values var/crafting_flags = CRAFT_CHECK_DENSITY - -/datum/crafting_recipe/New() - if(!name && result) - var/atom/atom_result = result - name = initial(atom_result.name) - - if(!(result in reqs)) - blacklist += result - // These should be excluded from all crafting recipies - blacklist += list( + /** + * Should the recipe blacklist its result? Default behavior is to blacklist any result that isn't in reqs. + * Can be set to ALWAYS_BLACKLIST_RESULT or NEVER_BLACKLIST_RESULT to override the default behavior. + */ + var/blacklist_result = BLACKLIST_RESULT_IF_NOT_IN_REQS + /// Global crafting blacklist. These should be excluded from all crafting recipes no matter what. + var/static/list/global_blacklist = typecacheof(list( /obj/item/cautery/augment, /obj/item/cautery/cruel/augment, /obj/item/circular_saw/augment, @@ -79,15 +77,25 @@ /obj/item/weldingtool/largetank/cyborg, /obj/item/wirecutters/cyborg, /obj/item/wrench/cyborg, - ) + )) + +/datum/crafting_recipe/New() + if(!name && result) + var/atom/atom_result = result + name = initial(atom_result.name) + if(result && blacklist_result == BLACKLIST_RESULT_IF_NOT_IN_REQS && !(result in reqs)) + blacklist_result = ALWAYS_BLACKLIST_RESULT if(tool_behaviors) tool_behaviors = string_list(tool_behaviors) if(tool_paths) tool_paths = string_list(tool_paths) - for(var/key in parts) - if(!parts[key]) + for(var/key, part in parts) + if(!part) //ensure every single, same-type part used for the recipe will be transferred if the value is otherwise not specified - parts[key] = INFINITY + part = INFINITY + +/datum/crafting_recipe/stack + abstract_type = /datum/crafting_recipe/stack /datum/crafting_recipe/stack/New(obj/item/stack/material, datum/stack_recipe/stack_recipe) if(!material || !stack_recipe || !stack_recipe.result_type) @@ -102,9 +110,9 @@ src.reqs[material] = stack_recipe.req_amount src.category = stack_recipe.category || CAT_MISC src.placement_checks = stack_recipe.placement_checks + src.crafting_flags = stack_recipe.crafting_flags - if(!(stack_recipe.crafting_flags & CRAFT_APPLIES_MATS)) - requirements_mats_blacklist = list(material) //the item is not intended to have mats :shrug: + src.removed_mats = stack_recipe.removed_mats /** * Run custom pre-craft checks for this recipe, don't add feedback messages in this because it will spam the client diff --git a/code/datums/components/crafting/chemistry.dm b/code/datums/components/crafting/chemistry.dm index 7f7d5136e836e6..dd21976be47490 100644 --- a/code/datums/components/crafting/chemistry.dm +++ b/code/datums/components/crafting/chemistry.dm @@ -42,6 +42,7 @@ ) time = 5 SECONDS category = CAT_CHEMISTRY + crafting_flags = parent_type::crafting_flags | CRAFT_SKIP_MATERIALS_PARITY //there are two ways to make a chem bombcore. We go with the first one for mats check /datum/crafting_recipe/alcohol_burner name = "Burner (Ethanol)" diff --git a/code/datums/components/crafting/containers.dm b/code/datums/components/crafting/containers.dm index 45e4d0e94fe27c..52fa895a5a36af 100644 --- a/code/datums/components/crafting/containers.dm +++ b/code/datums/components/crafting/containers.dm @@ -27,8 +27,9 @@ /obj/item/stack/sheet/mineral/bamboo = 20 ) result = /obj/item/storage/basket + crafting_flags = CRAFT_SKIP_MATERIALS_PARITY category = CAT_CONTAINERS - crafting_flags = parent_type::crafting_flags | CRAFT_MUST_BE_LEARNED + crafting_flags = parent_type::crafting_flags | CRAFT_MUST_BE_LEARNED | CRAFT_SKIP_MATERIALS_PARITY steps = list( "master the art of underwater basketweaving", "be underwater" diff --git a/code/datums/components/crafting/crafting.dm b/code/datums/components/crafting/crafting.dm index f41871005c107b..5406d61f16e59e 100644 --- a/code/datums/components/crafting/crafting.dm +++ b/code/datums/components/crafting/crafting.dm @@ -68,12 +68,17 @@ var/list/requirements_list = list() // Process all requirements - for(var/requirement_path in recipe.reqs) + var/recipe_result + if(recipe.blacklist_result) + recipe_result = recipe.result + for(var/requirement_path, needed_amount in recipe.reqs) // Check we have the appropriate amount available in the contents list - var/needed_amount = recipe.reqs[requirement_path] for(var/content_item_path in contents) // Right path and not blacklisted - if(!ispath(content_item_path, requirement_path) || recipe.blacklist.Find(content_item_path)) + if(!ispath(content_item_path, requirement_path) || (content_item_path in recipe.blacklist) || is_type_in_typecache(recipe.global_blacklist, content_item_path)) + continue + // If we are a recipe that is blacklisting its result, make sure we skip that path + if(recipe_result && content_item_path == recipe_result) continue needed_amount -= contents[content_item_path] @@ -85,14 +90,14 @@ // Store the instances of what we will use for recipe.check_requirements() for requirement_path var/list/instances_list = list() - for(var/instance_path in item_instances) + for(var/instance_path, item_instance in item_instances) if(ispath(instance_path, requirement_path)) - instances_list += item_instances[instance_path] + instances_list += item_instance requirements_list[requirement_path] = instances_list - for(var/requirement_path in recipe.chem_catalysts) - if(contents[requirement_path] < recipe.chem_catalysts[requirement_path]) + for(var/requirement_path, chem_amount in recipe.chem_catalysts) + if(contents[requirement_path] < chem_amount) return FALSE var/mech_found = FALSE @@ -244,15 +249,29 @@ //used to gather the material composition of the utilized requirements to transfer to the result var/list/total_materials = list() var/list/stuff_to_use = get_used_reqs(recipe, crafter, total_materials) + + for(var/mat, to_remove in recipe.removed_mats) + var/datum/material/ref_mat = locate(mat) in total_materials + if(!ref_mat) + continue + if(total_materials[ref_mat] < to_remove) + total_materials -= ref_mat + else + total_materials[ref_mat] -= to_remove + var/atom/result var/turf/craft_turf = get_turf(crafter.loc) - var/set_materials = TRUE + var/set_materials = !(recipe.crafting_flags & CRAFT_NO_MATERIALS) if(ispath(recipe.result, /turf)) result = craft_turf.place_on_top(recipe.result) else if(ispath(recipe.result, /obj/item/stack)) + var/res_amount = recipe.result_amount || 1 //we don't merge the stack right away but try to put it in the hand of the crafter - result = new recipe.result(craft_turf, recipe.result_amount || 1, /*merge =*/FALSE) - set_materials = FALSE //stacks are bit too complex for it for now, but you're free to change that. + if(set_materials) + result = new recipe.result(craft_turf, res_amount, /*merge =*/ FALSE, /*mat_override =*/ total_materials, /*mat_amt =*/ 1 / res_amount) + set_materials = FALSE //We've already set the materials on init. Don't do it again + else + result = new recipe.result(craft_turf, res_amount, FALSE) else result = new recipe.result(craft_turf) if(result.atom_storage && recipe.delete_contents) @@ -372,21 +391,21 @@ if(recipe.structures) requirements += recipe.structures - var/list/surroundings + var/list/surroundings = get_environment(atom, recipe.blacklist) for(var/path_key in requirements) var/amount = recipe.reqs?[path_key] || recipe.machinery?[path_key] || recipe.structures?[path_key] if(!amount)//since machinery & structures can have 0 aka CRAFTING_MACHINERY_USE - i.e. use it, don't consume it! continue - surroundings = get_environment(atom, recipe.blacklist) - surroundings -= return_list if(ispath(path_key, /datum/reagent)) if(!holder) holder = new(INFINITY, NO_REACT) //an infinite volume holder than can store reagents without reacting return_list += holder + var/list/checked = list() while(amount > 0) - var/obj/item/reagent_containers/container = locate() in surroundings + var/obj/item/reagent_containers/container = locate() in ((surroundings | return_list) - checked) if(isnull(container)) //This would only happen if the previous checks for contents and tools were flawed. stack_trace("couldn't fulfill the required amount for [path_key]. Dangit") + break if(QDELING(container)) //it's deleting... surroundings -= container continue @@ -394,7 +413,7 @@ if(reagent_volume) container.reagents.trans_to(holder, min(amount, reagent_volume), target_id = path_key, no_react = TRUE) amount -= reagent_volume - surroundings -= container + checked += container container.update_appearance(UPDATE_ICON) else if(ispath(path_key, /obj/item/stack)) var/obj/item/stack/tally_stack @@ -402,6 +421,7 @@ var/obj/item/stack/origin_stack = locate(path_key) in surroundings if(isnull(origin_stack)) //This would only happen if the previous checks for contents and tools were flawed. stack_trace("couldn't fulfill the required amount for [path_key]. Dangit") + break if(QDELING(origin_stack)) continue var/amount_to_give = min(origin_stack.amount, amount) @@ -420,6 +440,7 @@ var/atom/movable/item = locate(path_key) in surroundings if(isnull(item)) //This would only happen if the previous checks for contents and tools were flawed. stack_trace("couldn't fulfill the required amount for [path_key]. Dangit") + break if(QDELING(item)) continue return_list += item @@ -656,18 +677,18 @@ data["structures"] += atoms.Find(req_atom) // Ingredients / Materials + data["reqs"] = list() if(recipe.reqs.len) - data["reqs"] = list() for(var/req_atom in recipe.reqs) var/id = atoms.Find(req_atom) data["reqs"]["[id]"] = recipe.reqs[req_atom] // Catalysts - if(recipe.chem_catalysts.len) + if(LAZYLEN(recipe.chem_catalysts)) data["chem_catalysts"] = list() - for(var/req_atom in recipe.chem_catalysts) + for(var/req_atom, chem_amount in recipe.chem_catalysts) var/id = atoms.Find(req_atom) - data["chem_catalysts"]["[id]"] = recipe.chem_catalysts[req_atom] + data["chem_catalysts"]["[id]"] = chem_amount // Reaction data if(ispath(recipe.reaction)) diff --git a/code/datums/components/crafting/equipment.dm b/code/datums/components/crafting/equipment.dm index bbc13b09ccc634..3a4744579e6db5 100644 --- a/code/datums/components/crafting/equipment.dm +++ b/code/datums/components/crafting/equipment.dm @@ -10,8 +10,8 @@ category = CAT_EQUIPMENT /datum/crafting_recipe/strobeshield/New() - ..() - blacklist |= subtypesof(/obj/item/shield/riot) + LAZYADD(blacklist, typecacheof(/obj/item/shield/riot, ignore_root_path = TRUE)) + return ..() /datum/crafting_recipe/improvisedshield name = "Improvised Shield" @@ -33,8 +33,19 @@ time = 4 SECONDS category = CAT_EQUIPMENT +/datum/crafting_recipe/radio_containing + abstract_type = /datum/crafting_recipe/radio_containing + /// Shared blacklist of all the radio types for anything that uses a radio in its construction, so we don't repeat it. + var/static/list/radio_types_blacklist -/datum/crafting_recipe/radiogloves +/datum/crafting_recipe/radio_containing/New() + if(isnull(radio_types_blacklist)) + // because we got shit like /obj/item/radio/off ... WHY!?! + radio_types_blacklist = typecacheof(list(/obj/item/radio/headset, /obj/item/radio/intercom)) + blacklist = radio_types_blacklist + return ..() + +/datum/crafting_recipe/radio_containing/radiogloves name = "Radio Gloves" result = /obj/item/clothing/gloves/radio time = 1.5 SECONDS @@ -46,11 +57,6 @@ tool_behaviors = list(TOOL_WIRECUTTER) category = CAT_EQUIPMENT -/datum/crafting_recipe/radiogloves/New() - ..() - blacklist |= typesof(/obj/item/radio/headset) - blacklist |= typesof(/obj/item/radio/intercom) - /datum/crafting_recipe/wheelchair name = "Wheelchair" result = /obj/vehicle/ridden/wheelchair @@ -60,6 +66,7 @@ ) time = 10 SECONDS category = CAT_EQUIPMENT + removed_mats = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2) /datum/crafting_recipe/motorized_wheelchair name = "Motorized Wheelchair" @@ -162,8 +169,8 @@ category = CAT_EQUIPMENT /datum/crafting_recipe/flashlight_eyes/New() - . = ..() - blacklist += typesof(/obj/item/flashlight/flare) + LAZYADD(blacklist, typecacheof(/obj/item/flashlight/flare)) + return ..() /datum/crafting_recipe/extendohand_r name = "Extendo-Hand (Right Arm)" @@ -307,8 +314,8 @@ tool_behaviors = list(TOOL_WELDER, TOOL_SCREWDRIVER, TOOL_WIRECUTTER) /datum/crafting_recipe/morbid_surgical_toolset/New() - ..() - blacklist |= subtypesof(/obj/item/organ/cyberimp/arm/toolkit/surgery) + LAZYADD(blacklist, typecacheof(/obj/item/organ/cyberimp/arm/toolkit/surgery, ignore_root_path = TRUE)) + return ..() /datum/crafting_recipe/surgical_toolset name = "Surgical Toolset Implant" diff --git a/code/datums/components/crafting/furniture.dm b/code/datums/components/crafting/furniture.dm index c3f6557f89a2b6..a1d55a785ecc62 100644 --- a/code/datums/components/crafting/furniture.dm +++ b/code/datums/components/crafting/furniture.dm @@ -81,3 +81,40 @@ tool_behaviors = list(TOOL_SCREWDRIVER) category = CAT_FURNITURE time = 10 SECONDS + +/datum/crafting_recipe/lamp + name = "Desk Lamp" + result = /obj/item/flashlight/lamp + reqs = list( + /obj/item/flashlight = 1, + /obj/item/stack/rods = 1, + /obj/item/light/bulb = 1, + ) + crafting_flags = CRAFT_SKIP_MATERIALS_PARITY + tool_behaviors = list(TOOL_SCREWDRIVER) + category = CAT_FURNITURE + +/datum/crafting_recipe/lamp/New() + . = ..() + LAZYADD(blacklist, subtypesof(/obj/item/flashlight)) + +/datum/crafting_recipe/lamp/green + name = "Green Desk Lamp" + result = /obj/item/flashlight/lamp/green + +/datum/crafting_recipe/banana_lamp + name = "Banana Lamp" + result = /obj/item/flashlight/lamp/bananalamp + reqs = list( + /obj/item/flashlight/lamp = 1, + /obj/item/grown/bananapeel = 1, + ) + blacklist = list( + /obj/item/flashlight/lamp/bananalamp, + /obj/item/flashlight/lamp/space_bubble, + ) + requirements_mats_blacklist = list(/obj/item/grown/bananapeel) + tool_behaviors = list(TOOL_SCREWDRIVER) + category = CAT_FURNITURE + + diff --git a/code/datums/components/crafting/guncrafting.dm b/code/datums/components/crafting/guncrafting.dm index 8762fc38abc547..0672a72c34f94c 100644 --- a/code/datums/components/crafting/guncrafting.dm +++ b/code/datums/components/crafting/guncrafting.dm @@ -16,6 +16,7 @@ desc = "A prototype modular receiver and trigger assembly for a firearm." icon = 'icons/obj/weapons/improvised.dmi' icon_state = "receiver" + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 5.5, /datum/material/cardboard = SHEET_MATERIAL_AMOUNT) /obj/item/weaponcrafting/receiver/create_slapcraft_component() var/static/list/slapcraft_recipe_list = list(/datum/crafting_recipe/pipegun) @@ -28,7 +29,7 @@ /obj/item/weaponcrafting/stock name = "rifle stock" desc = "A classic rifle stock that doubles as a grip, roughly carved out of wood." - custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 6) + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 8) resistance_flags = FLAMMABLE icon = 'icons/obj/weapons/improvised.dmi' icon_state = "riflestock" @@ -68,31 +69,61 @@ /obj/item/weaponcrafting/gunkit/nuclear name = "advanced energy gun parts kit (lethal/nonlethal)" desc = "A suitcase containing the necessary gun parts to transform a standard energy gun into an advanced energy gun." + custom_materials = list( + /datum/material/iron = SHEET_MATERIAL_AMOUNT * 5, + /datum/material/glass = SHEET_MATERIAL_AMOUNT, + /datum/material/uranium = SHEET_MATERIAL_AMOUNT * 1.5, + /datum/material/titanium = HALF_SHEET_MATERIAL_AMOUNT, + ) /obj/item/weaponcrafting/gunkit/tesla name = "tesla cannon parts kit (lethal)" desc = "A suitcase containing the necessary gun parts to construct a tesla cannon around a stabilized flux anomaly. Handle with care." icon_state = "weaponskit_tesla" + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 5, /datum/material/glass = SHEET_MATERIAL_AMOUNT * 5, /datum/material/silver = SHEET_MATERIAL_AMOUNT * 5) /obj/item/weaponcrafting/gunkit/xray name = "x-ray laser gun parts kit (lethal)" desc = "A suitcase containing the necessary gun parts to turn a laser gun into a x-ray laser gun. Do not point most parts directly towards face." + custom_materials = list( + /datum/material/gold = SHEET_MATERIAL_AMOUNT * 2.5, + /datum/material/uranium = SHEET_MATERIAL_AMOUNT * 2, + /datum/material/iron = SHEET_MATERIAL_AMOUNT * 2.5, + /datum/material/titanium = SHEET_MATERIAL_AMOUNT, + /datum/material/bluespace = SHEET_MATERIAL_AMOUNT, + ) /obj/item/weaponcrafting/gunkit/ion name = "ion carbine parts kit (nonlethal/highly destructive/very lethal (silicons))" desc = "A suitcase containing the necessary gun parts to transform a standard laser gun into a ion carbine. Perfect against lockers you don't have access to." + custom_materials = list(/datum/material/silver = SHEET_MATERIAL_AMOUNT * 3, /datum/material/iron = SHEET_MATERIAL_AMOUNT * 4, /datum/material/uranium = SHEET_MATERIAL_AMOUNT) /obj/item/weaponcrafting/gunkit/temperature name = "temperature gun parts kit (less lethal/very lethal (lizardpeople))" desc = "A suitcase containing the necessary gun parts to transform a standard energy gun into a temperature gun. Fantastic at birthday parties and killing indigenous populations of lizardpeople." + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2.5, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 5, /datum/material/silver = SHEET_MATERIAL_AMOUNT * 1.5) /obj/item/weaponcrafting/gunkit/beam_rifle name = "\improper Event Horizon anti-existential beam rifle part kit (DOOMSDAY DEVICE, DO NOT CONSTRUCT)" desc = "What fevered minds wrought this terrible construction kit? To create a frame to harness the strange energies that flow through the Spinward Sector towards such horrible acts of violence?" + custom_materials = list( + /datum/material/iron = SHEET_MATERIAL_AMOUNT * 5, + /datum/material/glass =SHEET_MATERIAL_AMOUNT * 2.5, + /datum/material/diamond = SHEET_MATERIAL_AMOUNT * 2.5, + /datum/material/uranium = SHEET_MATERIAL_AMOUNT * 4, + /datum/material/silver = SHEET_MATERIAL_AMOUNT * 2.25, + /datum/material/gold = SHEET_MATERIAL_AMOUNT * 2.5, + ) /obj/item/weaponcrafting/gunkit/ebow name = "energy crossbow part kit (less lethal)" desc = "Highly illegal weapons refurbishment kit that allows you to turn the standard proto-kinetic accelerator into a near-duplicate energy crossbow. Almost like the real thing!" + custom_materials = list( + /datum/material/iron = SHEET_MATERIAL_AMOUNT * 2.5, + /datum/material/glass = HALF_SHEET_MATERIAL_AMOUNT * 1.5, + /datum/material/uranium = HALF_SHEET_MATERIAL_AMOUNT * 1.5, + /datum/material/silver = HALF_SHEET_MATERIAL_AMOUNT * 1.5, + ) /obj/item/weaponcrafting/gunkit/hellgun name = "hellfire laser gun degradation kit (warcrime lethal)" @@ -101,6 +132,7 @@ /obj/item/weaponcrafting/gunkit/photon name = "photon cannon parts kit (nonlethal)" desc = "A suitcase containing the necessary gun parts to construct a photon cannon around a stabilized flux anomaly. Harness the power of the sun, in the palms of your hands." + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 3, /datum/material/glass = SHEET_MATERIAL_AMOUNT * 7, /datum/material/gold = SHEET_MATERIAL_AMOUNT * 5) /obj/item/weaponcrafting/gunkit/sks name = "\improper Sakhno SKS semi-automatic rifle parts kit (lethal)" diff --git a/code/datums/components/crafting/melee_weapon.dm b/code/datums/components/crafting/melee_weapon.dm index 7cf080680fc4a6..9f0fab5096459f 100644 --- a/code/datums/components/crafting/melee_weapon.dm +++ b/code/datums/components/crafting/melee_weapon.dm @@ -62,6 +62,7 @@ /obj/item/melee/baton/security = 1, ) tool_behaviors = list(TOOL_WELDER) + crafting_flags = parent_type::crafting_flags | CRAFT_SKIP_MATERIALS_PARITY time = 10 SECONDS category = CAT_WEAPON_MELEE @@ -73,6 +74,7 @@ /obj/item/melee/baton/telescopic/contractor_baton = 1, ) tool_behaviors = list(TOOL_WELDER) + crafting_flags = parent_type::crafting_flags | CRAFT_SKIP_MATERIALS_PARITY time = 10 SECONDS category = CAT_WEAPON_MELEE @@ -87,7 +89,6 @@ time = 4 SECONDS category = CAT_WEAPON_MELEE - /datum/crafting_recipe/balloon_mallet name = "Balloon Mallet" result = /obj/item/balloon_mallet @@ -253,3 +254,15 @@ ) time = 120 SECONDS category = CAT_WEAPON_MELEE + +/datum/crafting_recipe/dragonator_spear_untreated + name = "Untreated Giant-Killer Spear" + result = /obj/item/spear/dragonator_untreated + reqs = list( + /obj/item/stack/sheet/plasteel = 15, + /obj/item/stack/sheet/mineral/titanium = 5, + /obj/item/knife = 7, + ) + time = 5 SECONDS + category = CAT_WEAPON_MELEE + diff --git a/code/datums/components/crafting/ranged_weapon.dm b/code/datums/components/crafting/ranged_weapon.dm index 2a95cf32ce2792..c78bf9ff7081b3 100644 --- a/code/datums/components/crafting/ranged_weapon.dm +++ b/code/datums/components/crafting/ranged_weapon.dm @@ -67,8 +67,8 @@ category = CAT_WEAPON_RANGED /datum/crafting_recipe/advancedegun/New() - ..() - blacklist += subtypesof(/obj/item/gun/energy/e_gun) + LAZYADD(blacklist, typecacheof(/obj/item/gun/energy/e_gun, ignore_root_path = TRUE)) + return ..() /datum/crafting_recipe/tempgun name = "Temperature Gun" @@ -81,8 +81,8 @@ category = CAT_WEAPON_RANGED /datum/crafting_recipe/tempgun/New() - ..() - blacklist += subtypesof(/obj/item/gun/energy/e_gun) + LAZYADD(blacklist, typecacheof(/obj/item/gun/energy/e_gun, ignore_root_path = TRUE)) + return ..() /datum/crafting_recipe/beam_rifle name = "Event Horizon Anti-Existential Beam Rifle" @@ -108,9 +108,20 @@ time = 10 SECONDS category = CAT_WEAPON_RANGED -/datum/crafting_recipe/xraylaser +/datum/crafting_recipe/laser + abstract_type = /datum/crafting_recipe/laser + /// We will use the same blacklist for every type here to avoid repeating lists + var/static/list/laser_blacklist + +/datum/crafting_recipe/laser/New() + if(isnull(laser_blacklist)) + laser_blacklist = typecacheof(/obj/item/gun/energy/laser, ignore_root_path = TRUE) + blacklist = laser_blacklist + return ..() + +/datum/crafting_recipe/laser/xraylaser name = "X-ray Laser Gun" - result = /obj/item/gun/energy/xray + result = /obj/item/gun/energy/laser/xray reqs = list( /obj/item/gun/energy/laser = 1, /obj/item/weaponcrafting/gunkit/xray = 1, @@ -118,11 +129,7 @@ time = 10 SECONDS category = CAT_WEAPON_RANGED -/datum/crafting_recipe/xraylaser/New() - ..() - blacklist += subtypesof(/obj/item/gun/energy/laser) - -/datum/crafting_recipe/hellgun +/datum/crafting_recipe/laser/hellgun name = "Hellfire Laser Gun" result = /obj/item/gun/energy/laser/hellgun reqs = list( @@ -132,11 +139,7 @@ time = 10 SECONDS category = CAT_WEAPON_RANGED -/datum/crafting_recipe/hellgun/New() - ..() - blacklist += subtypesof(/obj/item/gun/energy/laser) - -/datum/crafting_recipe/ioncarbine +/datum/crafting_recipe/laser/ioncarbine name = "Ion Carbine" result = /obj/item/gun/energy/ionrifle/carbine reqs = list( @@ -146,10 +149,6 @@ time = 10 SECONDS category = CAT_WEAPON_RANGED -/datum/crafting_recipe/ioncarbine/New() - ..() - blacklist += subtypesof(/obj/item/gun/energy/laser) - /datum/crafting_recipe/teslacannon name = "Tesla Cannon" result = /obj/item/gun/energy/tesla_cannon @@ -241,8 +240,8 @@ /obj/item/gun/ballistic/rifle/rebarxbow = 1, ) blacklist = list( - /obj/item/gun/ballistic/rifle/rebarxbow/forced, - /obj/item/gun/ballistic/rifle/rebarxbow/syndie, + /obj/item/gun/ballistic/rifle/rebarxbow/forced, + /obj/item/gun/ballistic/rifle/rebarxbow/syndie, ) tool_behaviors = list(TOOL_CROWBAR) time = 1 SECONDS @@ -289,8 +288,8 @@ crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_MUST_BE_LEARNED /datum/crafting_recipe/deagle_prime/New() - ..() - blacklist += subtypesof(/obj/item/gun/ballistic/automatic/pistol) + LAZYADD(blacklist, typecacheof(/obj/item/gun/ballistic/automatic/pistol, ignore_root_path = TRUE)) + return ..() /datum/crafting_recipe/deagle_prime_mag name = "Regal Condor Magazine (10mm Reaper)" @@ -316,7 +315,7 @@ /datum/crafting_recipe/pipe_organ_gun name = "Pipe Organ Gun" tool_behaviors = list(TOOL_WELDER, TOOL_SCREWDRIVER) - result = /obj/structure/mounted_gun/pipe + result = /obj/structure/mounted_gun/organ_gun reqs = list( /obj/item/pipe = 8, /obj/item/stack/sheet/mineral/wood = 15, @@ -329,6 +328,47 @@ category = CAT_WEAPON_RANGED crafting_flags = CRAFT_CHECK_DENSITY +/datum/crafting_recipe/Ratvarian_Repeater + name = "Emplaced Ratvarian Repeater" + tool_behaviors = list(TOOL_SCREWDRIVER,TOOL_WRENCH) + result = /obj/structure/mounted_gun/ratvarian_repeater + reqs = list( + /obj/item/stack/cable_coil = 15, + /obj/item/stock_parts/micro_laser = 2, + /obj/item/stock_parts/capacitor = 2, + /obj/item/reagent_containers/cup/glass/drinkingglass = 2, + /obj/item/stack/sheet/bronze = 5, + /obj/item/stack/rods = 10, + ) + time = 15 SECONDS + category = CAT_WEAPON_RANGED + crafting_flags = CRAFT_CHECK_DENSITY + +/datum/crafting_recipe/Detached_Ratvarian_Repeater + name = "Iconoclast's Repeater" + tool_behaviors = list(TOOL_WELDER) + result = /obj/item/gun/energy/laser/musket/repeater + structures = list( + /obj/structure/mounted_gun/ratvarian_repeater = CRAFTING_STRUCTURE_CONSUME, + ) + time = 10 SECONDS + category = CAT_WEAPON_RANGED + crafting_flags = CRAFT_CHECK_DENSITY + + +/datum/crafting_recipe/large_ballista + name = "Improvised Ballista" + tool_behaviors = list(TOOL_WELDER,TOOL_SCREWDRIVER,TOOL_WRENCH,TOOL_WIRECUTTER) + result = /obj/structure/mounted_gun/ballista + reqs = list( + /obj/item/stack/cable_coil = 15, + /obj/item/stack/sheet/iron = 10, + /obj/item/stack/rods = 10, + ) + time = 8 SECONDS + category = CAT_WEAPON_RANGED + crafting_flags = CRAFT_CHECK_DENSITY + /datum/crafting_recipe/trash_cannon name = "Trash Cannon" tool_behaviors = list(TOOL_WELDER, TOOL_SCREWDRIVER) diff --git a/code/datums/components/crafting/structures.dm b/code/datums/components/crafting/structures.dm index 7d95f92799983a..5c137e92f17781 100644 --- a/code/datums/components/crafting/structures.dm +++ b/code/datums/components/crafting/structures.dm @@ -8,6 +8,7 @@ result = /obj/item/stack/sheet/paperframes result_amount = 5 category = CAT_STRUCTURE + requirements_mats_blacklist = list(/obj/item/stack/sheet/mineral/wood) /datum/crafting_recipe/rib name = "Colossal Rib" @@ -118,6 +119,12 @@ ) tool_behaviors = list(TOOL_SCREWDRIVER, TOOL_WELDER, TOOL_DRILL) time = 30 SECONDS + removed_mats = list( + /datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT * 2, + /datum/material/iron = SHEET_MATERIAL_AMOUNT * 1.55, + /datum/material/titanium = SHEET_MATERIAL_AMOUNT, + /datum/material/glass = SHEET_MATERIAL_AMOUNT, + ) category = CAT_STRUCTURE /datum/crafting_recipe/vault @@ -132,6 +139,14 @@ ) tool_behaviors = list(TOOL_SCREWDRIVER, TOOL_WELDER, TOOL_DRILL) time = 90 SECONDS + removed_mats = list( + /datum/material/metalhydrogen = SHEET_MATERIAL_AMOUNT * 5, + /datum/material/alloy/plastitanium = SHEET_MATERIAL_AMOUNT * 2, + /datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT * 2, + /datum/material/iron = SHEET_MATERIAL_AMOUNT * 1.5, + /datum/material/titanium = SHEET_MATERIAL_AMOUNT, + /datum/material/glass = SHEET_MATERIAL_AMOUNT, + ) category = CAT_STRUCTURE crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ON_SOLID_GROUND @@ -147,4 +162,10 @@ tool_behaviors = list(TOOL_SCREWDRIVER, TOOL_WELDER, TOOL_DRILL) time = 90 SECONDS category = CAT_STRUCTURE + removed_mats = list( + /datum/material/metalhydrogen = SHEET_MATERIAL_AMOUNT * 5, + /datum/material/alloy/plastitanium = SHEET_MATERIAL_AMOUNT * 2, + /datum/material/iron = SHEET_MATERIAL_AMOUNT, + /datum/material/glass = SHEET_MATERIAL_AMOUNT, + ) crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ON_SOLID_GROUND diff --git a/code/datums/components/crafting/tailoring.dm b/code/datums/components/crafting/tailoring.dm index b487aa6a8148cc..c0e46325c98b0c 100644 --- a/code/datums/components/crafting/tailoring.dm +++ b/code/datums/components/crafting/tailoring.dm @@ -150,6 +150,7 @@ tool_behaviors = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER) reqs = list(/obj/item/clothing/glasses/hud/security/sunglasses = 1) category = CAT_EQUIPMENT + crafting_flags = parent_type::crafting_flags | CRAFT_SKIP_MATERIALS_PARITY /datum/crafting_recipe/hudsunmed name = "Medical HUDsunglasses" @@ -168,6 +169,7 @@ tool_behaviors = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER) reqs = list(/obj/item/clothing/glasses/hud/health/sunglasses = 1) category = CAT_EQUIPMENT + crafting_flags = parent_type::crafting_flags | CRAFT_SKIP_MATERIALS_PARITY /datum/crafting_recipe/hudsundiag name = "Diagnostic HUDsunglasses" @@ -186,6 +188,7 @@ tool_behaviors = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER) reqs = list(/obj/item/clothing/glasses/hud/diagnostic/sunglasses = 1) category = CAT_EQUIPMENT + crafting_flags = parent_type::crafting_flags | CRAFT_SKIP_MATERIALS_PARITY /datum/crafting_recipe/scienceglasses name = "Science Glasses" @@ -204,6 +207,7 @@ tool_behaviors = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER) reqs = list(/obj/item/clothing/glasses/sunglasses/chemical = 1) category = CAT_EQUIPMENT + crafting_flags = parent_type::crafting_flags | CRAFT_SKIP_MATERIALS_PARITY /datum/crafting_recipe/ghostsheet name = "Ghost Sheet" @@ -417,12 +421,7 @@ ) reqs = list(/obj/item/stack/sheet/cloth = 4) category = CAT_CLOTHING - -/datum/crafting_recipe/chaplain_hood/New() - . = ..() - //the resulting hoodie can be used to craft other hoodies. - //recipe blacklists should be refactored to only affect components and not tools. - blacklist -= result + blacklist_result = NEVER_BLACKLIST_RESULT //the resulting hoodie can be used to craft other hoodies. /datum/crafting_recipe/flower_garland name = "Flower Garland" @@ -539,6 +538,7 @@ /obj/item/stack/sheet/mineral/metal_hydrogen = 1, /obj/item/stack/sheet/mineral/zaukerite = 1, ) + crafting_flags = parent_type::crafting_flags | CRAFT_SKIP_MATERIALS_PARITY // stupid recipe, don't give every atmos gas mask these mats. category = CAT_CLOTHING diff --git a/code/datums/components/crafting/tools.dm b/code/datums/components/crafting/tools.dm index 539b2b765f53a8..7cf73e9421af0e 100644 --- a/code/datums/components/crafting/tools.dm +++ b/code/datums/components/crafting/tools.dm @@ -16,6 +16,7 @@ blacklist = list(/obj/item/grown/log/steel) result = /obj/structure/bonfire category = CAT_TOOLS + crafting_flags = parent_type::crafting_flags | CRAFT_SKIP_MATERIALS_PARITY /datum/crafting_recipe/boneshovel name = "Serrated Bone Shovel" @@ -119,7 +120,8 @@ category = CAT_TOOLS /datum/crafting_recipe/jaws_of_recovery - name = "Modified Jaws of Life" + name = "Modified Jaws of Recovery" + desc = "This one acts like regular jaws of life, letting you pry any door and doesn't announce doors you're prying open." time = 10 SECONDS tool_behaviors = list(TOOL_SCREWDRIVER, TOOL_WELDER) result = /obj/item/crowbar/power/paramedic/silent @@ -129,3 +131,15 @@ ) category = CAT_TOOLS +/datum/crafting_recipe/lantern + name = "Lantern" + result = /obj/item/flashlight/lantern + reqs = list( + /obj/item/flashlight/flare/candle = 1, + /obj/item/stack/rods = 1, + /obj/item/stack/sheet/glass = 1, + ) + crafting_flags = CRAFT_SKIP_MATERIALS_PARITY + tool_behaviors = list(TOOL_SCREWDRIVER) + category = CAT_TOOLS + diff --git a/code/datums/components/crafting/weapon_ammo.dm b/code/datums/components/crafting/weapon_ammo.dm index 1caba7a44a48dd..0fc39ba5dec97a 100644 --- a/code/datums/components/crafting/weapon_ammo.dm +++ b/code/datums/components/crafting/weapon_ammo.dm @@ -101,6 +101,7 @@ tool_behaviors = list(TOOL_SCREWDRIVER) time = 1.2 SECONDS category = CAT_WEAPON_AMMO + crafting_flags = CRAFT_SKIP_MATERIALS_PARITY /datum/crafting_recipe/trashball name = "Trashball" diff --git a/code/datums/components/cult_ritual_item.dm b/code/datums/components/cult_ritual_item.dm index 1e4e4ab76bcb2b..f9eb301392fd84 100644 --- a/code/datums/components/cult_ritual_item.dm +++ b/code/datums/components/cult_ritual_item.dm @@ -300,12 +300,14 @@ return our_turf = get_turf(cultist) //we may have moved. adjust as needed... + var/can_have_blood = CAN_HAVE_BLOOD(cultist) + cultist.visible_message( - span_warning("[cultist] [cultist.blood_volume ? "cuts open [cultist.p_their()] arm and begins writing in [cultist.p_their()] own blood":"begins sketching out a strange design"]!"), - span_cult("You [cultist.blood_volume ? "slice open your arm and ":""]begin drawing a sigil of the Geometer.") + span_warning("[cultist] [can_have_blood ? "cuts open [cultist.p_their()] arm and begins writing in [cultist.p_their()] own blood":"begins sketching out a strange design"]!"), + span_cult("You [can_have_blood ? "slice open your arm and ":""]begin drawing a sigil of the Geometer.") ) - if(cultist.blood_volume) + if(can_have_blood) cultist.apply_damage(initial(rune_to_scribe.scribe_damage), BRUTE, pick(GLOB.arm_zones), wound_bonus = CANT_WOUND) // *cuts arm* *bone explodes* ever have one of those days? var/scribe_mod = initial(rune_to_scribe.scribe_delay) @@ -332,7 +334,7 @@ return FALSE cultist.visible_message( - span_warning("[cultist] creates a strange circle[cultist.blood_volume ? " in [cultist.p_their()] own blood":""]."), + span_warning("[cultist] creates a strange circle[can_have_blood ? " in [cultist.p_their()] own blood":""]."), span_cult("You finish drawing the arcane markings of the Geometer.") ) diff --git a/code/datums/components/damage_aura.dm b/code/datums/components/damage_aura.dm index 9c4e996113b846..3497e83cb90fdf 100644 --- a/code/datums/components/damage_aura.dm +++ b/code/datums/components/damage_aura.dm @@ -97,13 +97,14 @@ /// What effect the damage aura has if it has an owner. /datum/component/damage_aura/proc/owner_effect(mob/living/owner_mob, seconds_per_tick) var/need_mob_update = FALSE - need_mob_update += owner_mob.adjustStaminaLoss(-20 * seconds_per_tick, updating_stamina = FALSE) - need_mob_update += owner_mob.adjustBruteLoss(-1 * seconds_per_tick, updating_health = FALSE) - need_mob_update += owner_mob.adjustFireLoss(-1 * seconds_per_tick, updating_health = FALSE) - need_mob_update += owner_mob.adjustToxLoss(-1 * seconds_per_tick, updating_health = FALSE, forced = TRUE) - need_mob_update += owner_mob.adjustOxyLoss(-1 * seconds_per_tick, updating_health = FALSE) - if (owner_mob.blood_volume < BLOOD_VOLUME_NORMAL) - owner_mob.blood_volume += 2 * seconds_per_tick + need_mob_update += owner_mob.adjust_stamina_loss(-20 * seconds_per_tick, updating_stamina = FALSE) + need_mob_update += owner_mob.adjust_brute_loss(-1 * seconds_per_tick, updating_health = FALSE) + need_mob_update += owner_mob.adjust_fire_loss(-1 * seconds_per_tick, updating_health = FALSE) + need_mob_update += owner_mob.adjust_tox_loss(-1 * seconds_per_tick, updating_health = FALSE, forced = TRUE) + need_mob_update += owner_mob.adjust_oxy_loss(-1 * seconds_per_tick, updating_health = FALSE) + + owner_mob.adjust_blood_volume(2 * seconds_per_tick, maximum = BLOOD_VOLUME_NORMAL) + if(need_mob_update) owner_mob.updatehealth() @@ -134,16 +135,16 @@ to_chat(candidate, damage_message) if (iscarbon(candidate) || issilicon(candidate) || isbasicmob(candidate)) - candidate.adjustBruteLoss(brute_damage * seconds_per_tick, updating_health = FALSE) - candidate.adjustFireLoss(burn_damage * seconds_per_tick, updating_health = FALSE) + candidate.adjust_brute_loss(brute_damage * seconds_per_tick, updating_health = FALSE) + candidate.adjust_fire_loss(burn_damage * seconds_per_tick, updating_health = FALSE) if (iscarbon(candidate)) - candidate.adjustToxLoss(toxin_damage * seconds_per_tick, updating_health = FALSE) - candidate.adjustOxyLoss(suffocation_damage * seconds_per_tick, updating_health = FALSE) - candidate.adjustStaminaLoss(stamina_damage * seconds_per_tick, updating_stamina = FALSE) + candidate.adjust_tox_loss(toxin_damage * seconds_per_tick, updating_health = FALSE) + candidate.adjust_oxy_loss(suffocation_damage * seconds_per_tick, updating_health = FALSE) + candidate.adjust_stamina_loss(stamina_damage * seconds_per_tick, updating_stamina = FALSE) for (var/organ in organ_damage) - candidate.adjustOrganLoss(organ, organ_damage[organ] * seconds_per_tick) + candidate.adjust_organ_loss(organ, organ_damage[organ] * seconds_per_tick) else if (isanimal(candidate)) var/mob/living/simple_animal/animal_candidate = candidate animal_candidate.adjustHealth(simple_damage * seconds_per_tick, updating_health = FALSE) @@ -151,8 +152,7 @@ var/mob/living/basic/basic_candidate = candidate basic_candidate.adjust_health(simple_damage * seconds_per_tick, updating_health = FALSE) - if (candidate.blood_volume > BLOOD_VOLUME_SURVIVE) - candidate.blood_volume -= blood_damage * seconds_per_tick + candidate.adjust_blood_volume(blood_damage * seconds_per_tick, minimum = BLOOD_VOLUME_SURVIVE) candidate.updatehealth() diff --git a/code/datums/components/dart_insert.dm b/code/datums/components/dart_insert.dm index 9770de669b55b3..f2816949c9d2ea 100644 --- a/code/datums/components/dart_insert.dm +++ b/code/datums/components/dart_insert.dm @@ -60,9 +60,9 @@ add_to_dart(dart, user) return COMPONENT_CANCEL_ATTACK_CHAIN -/datum/component/dart_insert/proc/on_reskin(datum/source, mob/user, skin) +/datum/component/dart_insert/proc/on_reskin(datum/source, skin) SIGNAL_HANDLER - SEND_SIGNAL(parent, COMSIG_DART_INSERT_PARENT_RESKINNED) + SEND_SIGNAL(parent, COMSIG_DART_INSERT_PARENT_RESKINNED, skin) /datum/component/dart_insert/proc/add_to_dart(obj/item/ammo_casing/dart, mob/user) var/obj/projectile/dart_projectile = dart.loaded_projectile diff --git a/code/datums/components/dejavu.dm b/code/datums/components/dejavu.dm index 9407423800cf38..dec04ff146f708 100644 --- a/code/datums/components/dejavu.dm +++ b/code/datums/components/dejavu.dm @@ -48,9 +48,9 @@ if(isliving(parent)) var/mob/living/L = parent - tox_loss = L.getToxLoss() - oxy_loss = L.getOxyLoss() - stamina_loss = L.getStaminaLoss() + tox_loss = L.get_tox_loss() + oxy_loss = L.get_oxy_loss() + stamina_loss = L.get_stamina_loss() brain_loss = L.get_organ_loss(ORGAN_SLOT_BRAIN) rewind_type = PROC_REF(rewind_living) @@ -99,10 +99,10 @@ parent.AddComponent(type, 1, rewind_interval, TRUE) var/mob/living/master = parent - master.setToxLoss(tox_loss) - master.setOxyLoss(oxy_loss) - master.setStaminaLoss(stamina_loss) - master.setOrganLoss(ORGAN_SLOT_BRAIN, brain_loss) + master.set_tox_loss(tox_loss) + master.set_oxy_loss(oxy_loss) + master.set_stamina_loss(stamina_loss) + master.set_organ_loss(ORGAN_SLOT_BRAIN, brain_loss) rewind() /datum/component/dejavu/proc/rewind_carbon() @@ -137,12 +137,12 @@ no_rewinds_message = "\"Rewind complete. You have arrived at: 10 seconds ago.\"" /datum/component/dejavu/timeline/rewind() - playsound(get_turf(parent), 'sound/items/modsuit/rewinder.ogg') - . = ..() + playsound(get_turf(parent), 'sound/items/modsuit/rewinder.ogg', 50, TRUE) + return ..() /datum/component/dejavu/wizard rewind_message = "Your temporal ward activated, pulling you through spacetime!" /datum/component/dejavu/wizard/rewind() - playsound(get_turf(parent), 'sound/items/modsuit/rewinder.ogg') - . = ..() + playsound(get_turf(parent), 'sound/items/modsuit/rewinder.ogg', 50, TRUE) + return ..() diff --git a/code/datums/components/earprotection.dm b/code/datums/components/earprotection.dm index 542a1d0c60f37c..9d9e80ff09d10a 100644 --- a/code/datums/components/earprotection.dm +++ b/code/datums/components/earprotection.dm @@ -1,14 +1,24 @@ +///Whenever get_ear_protection() is called, this proc adds 'protection_value' to the wearer's natural ear protection. /datum/component/wearertargeting/earprotection - signals = list(COMSIG_CARBON_SOUNDBANG) + signals = list(COMSIG_LIVING_GET_EAR_PROTECTION) mobtype = /mob/living/carbon proctype = PROC_REF(reducebang) - var/reduce_amount = 1 + //positive amount indicating how much protection this gives + var/protection_amount = 1 valid_slots = ITEM_SLOT_EARS | ITEM_SLOT_HEAD -/datum/component/wearertargeting/earprotection/Initialize(reduce_amount = 1) +/datum/component/wearertargeting/earprotection/Initialize(protection_amount = EAR_PROTECTION_NORMAL) . = ..() - if(reduce_amount) - src.reduce_amount = reduce_amount + src.protection_amount = protection_amount + RegisterSignal(parent, COMSIG_ATOM_EXAMINE_TAGS, PROC_REF(get_examine_tags)) /datum/component/wearertargeting/earprotection/proc/reducebang(datum/source, list/reflist) - reflist[1] -= reduce_amount + SIGNAL_HANDLER + reflist[EAR_PROTECTION_ARG] += protection_amount + +/datum/component/wearertargeting/earprotection/proc/get_examine_tags(atom/source, mob/user, list/examine_list) + SIGNAL_HANDLER + if(protection_amount == EAR_PROTECTION_NORMAL) + examine_list["sound-proof"] = "It protects the ears from flashbangs and other loud noises." + else if(protection_amount >= EAR_PROTECTION_HEAVY) + examine_list["sound-proof"] = "It provides [protection_amount == EAR_PROTECTION_FULL ? "full" : "heavy"] protection against flashbangs and other loud noises." diff --git a/code/datums/components/echolocation.dm b/code/datums/components/echolocation.dm index a40c14306290d8..59b18ae0001b65 100644 --- a/code/datums/components/echolocation.dm +++ b/code/datums/components/echolocation.dm @@ -99,17 +99,15 @@ if(HAS_TRAIT(echolocator, TRAIT_ECHOLOCATION_EXTRA_RANGE)) real_echo_range += 2 var/list/filtered = list() - var/list/seen = dview(real_echo_range, get_turf(echolocator.client?.eye || echolocator), invis_flags = echolocator.see_invisible) if(blinding) - for(var/atom/seen_atom as anything in seen) + for(var/atom/seen_atom as anything in dview(real_echo_range, get_turf(echolocator.client?.eye || echolocator), invis_flags = echolocator.see_invisible)) if(!seen_atom.alpha) continue if(allowed_paths[seen_atom.type]) filtered += seen_atom else - var/list/ranged_atoms = range(real_echo_range, get_turf(echolocator.client?.eye || echolocator)) - for(var/atom/possible_atom as anything in ranged_atoms) - if(!possible_atom.alpha) + for(var/atom/possible_atom as anything in range(real_echo_range, get_turf(echolocator.client?.eye || echolocator))) + if(!possible_atom.alpha || possible_atom.invisibility > echolocator.see_invisible) continue if(allowed_paths[possible_atom.type]) filtered += possible_atom diff --git a/code/datums/components/empathy.dm b/code/datums/components/empathy.dm new file mode 100644 index 00000000000000..fb147ac6013e4c --- /dev/null +++ b/code/datums/components/empathy.dm @@ -0,0 +1,98 @@ +// Empath quirk component, it's a component because it can be applied in ways that don't give you the quirk. (For health analyzer purposes) + +/datum/component/empathy + + dupe_mode = COMPONENT_DUPE_SOURCES + + // Whether or not we should get scared the next time we see an evil person. + var/seen_it = FALSE + + // What sort of information we can glean from examining someone + var/visible_info = ALL + + // Whether or not we can use empathy on ourselves + var/self_empath = FALSE + + // Whether or not empathy works on humans playing dead + var/sense_dead = FALSE + + // Whether or not we can tell if people whisper under their mask from far away (We can't hear what they said, we just know they said something) + var/sense_whisper = TRUE + + // Whether or not we can be smited by someoneone with the evil trait using the mending touch mutation + var/smite_target = TRUE + +/datum/component/empathy/Initialize(seen_it = FALSE, visible_info = ALL, self_empath = FALSE, sense_dead = FALSE, sense_whisper = TRUE, smite_target = TRUE) + if (!isliving(parent)) + return COMPONENT_INCOMPATIBLE + + src.seen_it = seen_it + src.visible_info = visible_info + src.self_empath = self_empath + src.sense_dead = sense_dead + src.sense_whisper = sense_whisper + src.smite_target = smite_target + if(sense_whisper) + ADD_TRAIT(parent, TRAIT_SEE_MASK_WHISPER, REF(src)) + +/datum/component/empathy/RegisterWithParent() + RegisterSignal(parent, COMSIG_CARBON_MID_EXAMINE, PROC_REF(get_empath_info)) + RegisterSignal(parent, COMSIG_ON_LAY_ON_HANDS, PROC_REF(on_hands_laid)) + +/datum/component/empathy/proc/get_empath_info(datum/source, mob/living/target, list/examine_list) + SIGNAL_HANDLER + if(target.stat == DEAD) + return + if(HAS_TRAIT(target, TRAIT_FAKEDEATH)) + if(sense_dead) + examine_list += "Something about this dead body doesn't look right..." + else + return + var/mob/living/living_parent = parent + if(target == living_parent && !self_empath) + return + var/t_They = target.p_They() + var/t_their = target.p_their() + var/t_Their = target.p_Their() + var/t_are = target.p_are() + if((visible_info & EMPATH_SEE_COMBAT) && target.combat_mode) + examine_list += "[t_They] seem[p_s()] to be on guard." + if((visible_info & EMPATH_SEE_OXY) && target.get_oxy_loss() >= 10) + examine_list += "[t_They] seem[p_s()] winded." + if((visible_info & EMPATH_SEE_TOX) && target.get_tox_loss() >= 10) + examine_list += "[t_They] seem[p_s()] sickly." + if((visible_info & EMPATH_SEE_SANITY) && target.mob_mood.sanity <= SANITY_DISTURBED) + examine_list += "[t_They] seem[p_s()] distressed." + if((visible_info & EMPATH_SEE_BLIND) && target.is_blind()) + examine_list += "[t_They] appear[p_s()] to be staring off into space." + if((visible_info & EMPATH_SEE_DEAF) && HAS_TRAIT(target, TRAIT_DEAF)) + examine_list += "[t_They] appear[p_s()] to not be responding to noises." + if((visible_info & EMPATH_SEE_HOT) && target.bodytemperature > target.get_body_temp_heat_damage_limit()) + examine_list += "[t_They] [t_are] flushed and wheezing." + if((visible_info & EMPATH_SEE_COLD) && target.bodytemperature < target.get_body_temp_cold_damage_limit()) + examine_list += "[t_They] [t_are] shivering." + if((visible_info & EMPATH_SEE_EVIL) && HAS_TRAIT(target, TRAIT_EVIL)) + examine_list += "[t_Their] eyes radiate with a unfeeling, cold detachment. There is nothing but darkness within [t_their] soul." + if(living_parent.mind?.holy_role >= HOLY_ROLE_PRIEST) + examine_list += span_warning("PERFECT FOR SMITING!!") + else if(!seen_it) + seen_it = TRUE + living_parent.add_mood_event("encountered_evil", /datum/mood_event/encountered_evil) + living_parent.set_jitter_if_lower(15 SECONDS) + +/datum/component/empathy/proc/on_hands_laid(datum/source, mob/living/carbon/smiter) + SIGNAL_HANDLER + if(iscarbon(parent)) + var/mob/living/carbon/carbon_parent = parent + if(carbon_parent.mob_biotypes & MOB_UNDEAD) + return FALSE + if(smite_target && HAS_TRAIT(smiter, TRAIT_EVIL)) + return TRUE + return FALSE + +/datum/component/empathy/UnregisterFromParent() + UnregisterSignal(parent, COMSIG_CARBON_MID_EXAMINE) + +/datum/component/empathy/Destroy(force = FALSE) + REMOVE_TRAIT(parent, TRAIT_SEE_MASK_WHISPER, REF(src)) + return ..() diff --git a/code/datums/components/fantasy/suffixes.dm b/code/datums/components/fantasy/suffixes.dm index db90b67a0833fa..5a89a6125fe617 100644 --- a/code/datums/components/fantasy/suffixes.dm +++ b/code/datums/components/fantasy/suffixes.dm @@ -111,11 +111,12 @@ /mob/living/simple_animal, ) for(var/type in mob_subtype_whitelist) - possible_mobtypes += subtypesof(type) + possible_mobtypes += valid_subtypesof(type) var/list/mob_subtype_blacklist = list( /mob/living/simple_animal/hostile/asteroid/elite, /mob/living/simple_animal/hostile/megafauna, + /mob/living/basic/boss, ) for(var/type in mob_subtype_blacklist) possible_mobtypes -= subtypesof(type) diff --git a/code/datums/components/fearful/effects.dm b/code/datums/components/fearful/effects.dm index b2b4458cbfa109..17a62201257d95 100644 --- a/code/datums/components/fearful/effects.dm +++ b/code/datums/components/fearful/effects.dm @@ -52,7 +52,7 @@ /datum/terror_handler/heart_problems handler_type = TERROR_HANDLER_EFFECT default = TRUE - COOLDOWN_DECLARE(effect_cd) + COOLDOWN_DECLARE(message_cd) /datum/terror_handler/heart_problems/tick(seconds_per_tick, terror_buildup) . = ..() @@ -66,7 +66,10 @@ return if (terror_buildup < TERROR_BUILDUP_HEART_ATTACK || !prob(15)) - owner.adjustOxyLoss(8) + owner.adjust_oxy_loss(8) + if (!COOLDOWN_FINISHED(src, message_cd)) + return + COOLDOWN_START(src, message_cd, TERROR_MESSAGE_CD) if (terror_buildup < TERROR_BUILDUP_FEAR) to_chat(owner, span_warning("Your heart skips a beat.")) else @@ -167,4 +170,48 @@ deltimer(panic_end_timer) panic_end_timer = null +/datum/terror_handler/startle + handler_type = TERROR_HANDLER_EFFECT + COOLDOWN_DECLARE(startle_cd) + +/datum/terror_handler/startle/tick(seconds_per_tick, terror_buildup) + . = ..() + if (owner.stat >= UNCONSCIOUS || !COOLDOWN_FINISHED(src, startle_cd)) + return + + if (terror_buildup < TERROR_BUILDUP_FEAR || terror_buildup - component.last_tick_buildup < TERROR_STARTLE_MINIMUM_DIFFERENCE) + return + + // The more scared we are, and the more fear we acquired at once last tick, the higher the probability of us being startled is + // Not SPT_PROB or FEAR_SCALING because this is only triggered during ticks when we actually acquire fear + if (!prob(15 * (terror_buildup - component.last_tick_buildup) / TERROR_STARTLE_MINIMUM_DIFFERENCE * terror_buildup / TERROR_BUILDUP_FEAR)) + return + + COOLDOWN_START(src, startle_cd, TERROR_STARTLE_COOLDOWN) + switch (rand(1, 3)) + if (1) + to_chat(owner, span_warning("You are startled!")) + owner.emote("jump") + owner.Immobilize(0.1 SECONDS * (terror_buildup / TERROR_BUILDUP_FEAR)) + + if (2) + owner.emote("scream") + owner.say("AAAAH!!", forced = "phobia") + if (!prob(15 * (terror_buildup / TERROR_BUILDUP_FEAR))) + return + var/held_item = owner.get_active_held_item() + if (owner.dropItemToGround(held_item)) + owner.visible_message( + span_danger("[owner.name] drops \the [held_item]!"), + span_warning("You drop \the [held_item]!"), null, COMBAT_MESSAGE_RANGE) + + if (3) + to_chat(owner, span_warning("You lose your balance!")) + owner.adjust_staggered_up_to(2 SECONDS * (terror_buildup / TERROR_BUILDUP_FEAR), 20 SECONDS) + owner.add_movespeed_modifier(/datum/movespeed_modifier/status_effect/spooked) + addtimer(CALLBACK(src, PROC_REF(speed_up)), 3 SECONDS, TIMER_STOPPABLE | TIMER_DELETE_ME) + +/datum/terror_handler/startle/proc/speed_up() + owner.remove_movespeed_modifier(/datum/movespeed_modifier/status_effect/spooked) + #undef FEAR_SCALING diff --git a/code/datums/components/fearful/fearful.dm b/code/datums/components/fearful/fearful.dm index 7b7e9953e54490..a2480acb482024 100644 --- a/code/datums/components/fearful/fearful.dm +++ b/code/datums/components/fearful/fearful.dm @@ -73,7 +73,7 @@ /datum/component/fearful/proc/add_handler(handler_type, source) for (var/datum/terror_handler/existing as anything in terror_handlers) - if (existing.type == handler_type) + if (existing.type == handler_type && !existing.bespoke) terror_handlers[existing] += source return @@ -83,6 +83,7 @@ if (!overriden_handlers[override_type]) overriden_handlers[override_type] = list() overriden_handlers[override_type][handler_type] = TRUE + return handler /datum/component/fearful/proc/get_fear_multiplier() var/multiplier = 1 @@ -168,11 +169,12 @@ ) return COMPONENT_BLOCK_MISC_HELP - for (var/datum/brain_trauma/mild/phobia/phobia in source.get_traumas()) - if (!phobia.is_scary_mob(hugger)) - continue + var/hug_buildup = 0 + for (var/datum/terror_handler/handler as anything in terror_handlers) + hug_buildup += handler.on_hug(hugger) - terror_buildup += HUG_TERROR_AMOUNT + if (hug_buildup > 0) + terror_buildup += hug_buildup source.visible_message( span_warning("[source] recoils in fear as [hugger] attempts to hug [source.p_them()]!"), span_boldwarning("You recoil in terror as [hugger] attempts to hug you!"), diff --git a/code/datums/components/fearful/sources.dm b/code/datums/components/fearful/sources/_sources.dm similarity index 81% rename from code/datums/components/fearful/sources.dm rename to code/datums/components/fearful/sources/_sources.dm index c0fd104c9c87f2..6c56316719923c 100644 --- a/code/datums/components/fearful/sources.dm +++ b/code/datums/components/fearful/sources/_sources.dm @@ -71,7 +71,7 @@ . = ..() owner.clear_mood_event("nyctophobia") -// Nightmare spell version with quicker buildup that shadows the quirk one, also handles removing the status upon reaching 0 terror +/// Nightmare spell version with quicker buildup that shadows the quirk one, also handles removing the status upon reaching 0 terror /datum/terror_handler/simple_source/nyctophobia/terrified // Takes about 30 seconds to reach maximum if you include 100 from casting the spell buildup_per_second = 15 @@ -87,6 +87,7 @@ /// Makes the owner afraid of being stuck in closets, crates, mechs, etc /datum/terror_handler/simple_source/claustrophobia buildup_per_second = 15 + COOLDOWN_DECLARE(message_cd) /datum/terror_handler/simple_source/claustrophobia/Destroy(force) owner.clear_mood_event("claustrophobia") @@ -100,8 +101,9 @@ if (isturf(owner.loc)) return FALSE - if (SPT_PROB(15, seconds_per_tick)) + if (COOLDOWN_FINISHED(src, message_cd) && SPT_PROB(15, seconds_per_tick)) to_chat(owner, span_warning("You feel trapped! Must escape... can't breathe...")) + COOLDOWN_START(src, message_cd, TERROR_MESSAGE_CD) return TRUE @@ -116,6 +118,7 @@ /// Makes the owner afraid of certain jolly figures /datum/terror_handler/simple_source/clausophobia buildup_per_second = 20 + COOLDOWN_DECLARE(message_cd) /datum/terror_handler/simple_source/clausophobia/check_condition(seconds_per_tick, terror_buildup) . = ..() @@ -124,30 +127,34 @@ var/certified_jolly = FALSE - for(var/mob/living/carbon/human/possible_claus in view(5, owner)) - if(istype(possible_claus.back, /obj/item/storage/backpack/santabag)) - certified_jolly = TRUE - break + for (var/mob/living/carbon/human/possible_claus in view(5, owner)) + if (possible_claus == owner) + continue // imagine being scared of your own existence - if(istype(possible_claus.head, /obj/item/clothing/head/costume/santa) || istype(possible_claus.head, /obj/item/clothing/head/helmet/space/santahat)) + if (!istype(possible_claus.wear_suit, /obj/item/clothing/suit/space/santa)) + continue + + if (istype(possible_claus.back, /obj/item/storage/backpack/santabag)) certified_jolly = TRUE break - if(istype(possible_claus.wear_suit, /obj/item/clothing/suit/space/santa)) + if (istype(possible_claus.head, /obj/item/clothing/head/costume/santa) || istype(possible_claus.head, /obj/item/clothing/head/helmet/space/santahat)) certified_jolly = TRUE break if (!certified_jolly) return FALSE - if (SPT_PROB(15, seconds_per_tick)) + if (COOLDOWN_FINISHED(src, message_cd) && SPT_PROB(15, seconds_per_tick)) to_chat(owner, span_warning("Santa Claus is here! I gotta get out of here!")) + COOLDOWN_START(src, message_cd, TERROR_MESSAGE_CD) return TRUE /// Makes the owner afraid of being alone /datum/terror_handler/simple_source/monophobia buildup_per_second = 2.5 // Pretty low, ~4 minutes to reach passive cap + COOLDOWN_DECLARE(message_cd) /datum/terror_handler/simple_source/monophobia/check_condition(seconds_per_tick, terror_buildup) . = ..() @@ -165,4 +172,8 @@ if (istype(friend, /mob/living/basic/pet) || friend.ckey) return FALSE + if (COOLDOWN_FINISHED(src, message_cd) && SPT_PROB(10, seconds_per_tick)) + to_chat(owner, span_warning("You feel terribly lonely...")) + COOLDOWN_START(src, message_cd, TERROR_MESSAGE_CD) + return TRUE diff --git a/code/datums/components/fearful/sources/phobia.dm b/code/datums/components/fearful/sources/phobia.dm new file mode 100644 index 00000000000000..e930386776984e --- /dev/null +++ b/code/datums/components/fearful/sources/phobia.dm @@ -0,0 +1,170 @@ +/// Complex terror source that increases buildup whenever the owner hears, sees, or tries to say something they're afraid of +/datum/terror_handler/phobia_source + handler_type = TERROR_HANDLER_SOURCE + bespoke = TRUE + /// Last time we got scared shitless for passive increase in fear + /// Regex for words that set the phobia off + var/regex/trigger_regex + // Instead of cycling every atom, only cycle the relevant types + var/list/trigger_mobs + /// Includes mob equipment + var/list/trigger_objs + var/list/trigger_turfs + var/list/trigger_species + /// What mood event to apply when we see the thing & freak out. + var/mood_event_type = /datum/mood_event/phobia + /// Cooldown for proximity checks so we don't spam a range 7 view every two seconds. + COOLDOWN_DECLARE(check_cooldown) + /// Cooldown for the actual scare effect so chat spam won't instantly send us spiraling + COOLDOWN_DECLARE(scare_cooldown) + +/datum/terror_handler/phobia_source/New(mob/living/new_owner, datum/component/fearful/new_component) + . = ..() + RegisterSignal(new_owner, COMSIG_MOB_SAY, PROC_REF(handle_speech)) + RegisterSignal(new_owner, COMSIG_MOVABLE_HEAR, PROC_REF(handle_hearing)) + +/datum/terror_handler/phobia_source/Destroy(force) + UnregisterSignal(owner, list(COMSIG_MOB_SAY, COMSIG_MOVABLE_HEAR)) + return ..() + +/datum/terror_handler/phobia_source/proc/can_trigger() + return !HAS_TRAIT(owner, TRAIT_FEARLESS) && !HAS_TRAIT(owner, TRAIT_MIND_TEMPORARILY_GONE) && owner.stat < UNCONSCIOUS + +/datum/terror_handler/phobia_source/tick(seconds_per_tick, terror_buildup) + . = ..() + if (!can_trigger()) + return + + // If we're still scared from the last trigger, keep adding just a tiiiiny buildup to prevent it from fading away + if (!COOLDOWN_FINISHED(src, scare_cooldown)) + return 0.01 + + if(!COOLDOWN_FINISHED(src, check_cooldown) || owner.is_blind()) + return + + COOLDOWN_START(src, check_cooldown, PHOBIA_CHECK_DELAY) + if(LAZYLEN(trigger_objs)) + for (var/obj/seen_thing in view(owner.client?.view || world.view, owner)) + if(is_scary_item(seen_thing)) + return freak_out(seen_thing) + + if(LAZYLEN(trigger_turfs)) + for(var/turf/checked in view(owner.client?.view || world.view, owner)) + if(is_type_in_typecache(checked, trigger_turfs)) + return freak_out(checked) + + if(LAZYLEN(trigger_mobs) || LAZYLEN(trigger_species) || LAZYLEN(trigger_objs)) + for(var/mob/living/checked in view(owner.client?.view || world.view, owner)) + if (checked != owner && is_scary_mob(checked)) + return freak_out(checked) + +/// Returns true if this item should be scary to us +/datum/terror_handler/phobia_source/proc/is_scary_item(obj/checked) + if (QDELETED(checked) || !is_type_in_typecache(checked, trigger_objs) || checked.invisibility > owner.see_invisible) + return FALSE + + if (!isitem(checked) || !ismob(checked.loc) || HAS_TRAIT(checked.loc, TRAIT_UNKNOWN_APPEARANCE)) + return TRUE + + var/obj/item/checked_item = checked + return !HAS_TRAIT(checked_item, TRAIT_EXAMINE_SKIP) + +/datum/terror_handler/phobia_source/proc/is_scary_mob(mob/living/checked) + if (checked.invisibility > owner.see_invisible || checked.alpha == 0) + return FALSE + + if (is_type_in_typecache(checked, trigger_mobs)) + return TRUE + + if (!ishuman(checked)) + return FALSE + + var/mob/living/carbon/human/as_human = checked + if (LAZYLEN(trigger_species)) + // Can't be racist(?) if you can't see their face + if (is_type_in_typecache(as_human.dna?.species, trigger_species) && !as_human.is_face_obscured()) + return TRUE + + if (!LAZYLEN(trigger_objs)) + return FALSE + + for (var/obj/item/equipped as anything in as_human.get_visible_items()) + if (is_scary_item(equipped)) + return TRUE + + return FALSE + +/datum/terror_handler/phobia_source/proc/handle_hearing(datum/source, list/hearing_args) + SIGNAL_HANDLER + + if (!can_trigger() || !COOLDOWN_FINISHED(src, scare_cooldown)) + return + + // Words can't trigger you if you can't hear them *taps head* + if(!owner.can_hear() || owner == hearing_args[HEARING_SPEAKER] || !owner.has_language(hearing_args[HEARING_LANGUAGE])) + return + + if(trigger_regex.Find(hearing_args[HEARING_RAW_MESSAGE])) + // To react AFTER the chat message + addtimer(CALLBACK(src, PROC_REF(freak_out), null, trigger_regex.group[2]), 1 SECONDS) + hearing_args[HEARING_RAW_MESSAGE] = trigger_regex.Replace(hearing_args[HEARING_RAW_MESSAGE], "[span_phobia("$2")]$3") + +/datum/terror_handler/phobia_source/proc/handle_speech(datum/source, list/speech_args) + SIGNAL_HANDLER + + if (!can_trigger()) + return + + if (trigger_regex.Find(speech_args[SPEECH_MESSAGE]) == 0) + return + + var/stutter = prob(50) + var/whisper = prob(30) + + if (!stutter && !whisper) + return + + if (whisper) + speech_args[SPEECH_SPANS] |= SPAN_SMALL_VOICE + if (stutter) + owner.set_stutter_if_lower(4 SECONDS) + to_chat(owner, span_warning("You struggle to say the word \"[span_phobia("[trigger_regex.group[2]]")]\"!")) + +/datum/terror_handler/phobia_source/proc/freak_out(reason) + COOLDOWN_START(src, scare_cooldown, 12 SECONDS) + var/message = pick("spooks you to the bone", "shakes you up", "terrifies you", "sends you into a panic", "sends chills down your spine") + if(istext(reason)) + to_chat(owner, span_bolddanger("Hearing [span_phobia(reason)] [message]!")) + owner.add_mood_event("phobia_minor", /datum/mood_event/startled) + // Because this is called from a signal and not the main process, we need to add the buildup by hand + if (component.terror_buildup < TERROR_BUILDUP_PASSIVE_MAXIMUM) + component.terror_buildup = min(component.terror_buildup + PHOBIA_WORD_TERROR_BUILDUP, TERROR_BUILDUP_PASSIVE_MAXIMUM) + return + + if(mood_event_type) + owner.add_mood_event("phobia", mood_event_type) + + if(isatom(reason)) + var/atom/as_atom = reason + to_chat(owner, span_bolddanger("Seeing [span_phobia("[as_atom.name]")] [message]!")) + else + to_chat(owner, span_bolddanger("Something [message]!")) + return PHOBIA_FREAKOUT_TERROR_BUILDUP + +/datum/terror_handler/phobia_source/on_hug(mob/living/hugger) + if (is_scary_mob(hugger)) + return HUG_TERROR_AMOUNT + return 0 + +/// Snowflake handler for hemophobia which triggers on bloodied items and mobs +/datum/terror_handler/phobia_source/blood + +/datum/terror_handler/phobia_source/blood/is_scary_item(obj/checked) + if (GET_ATOM_BLOOD_DNA_LENGTH(checked)) + return TRUE + return ..() + +/datum/terror_handler/phobia_source/blood/is_scary_mob(mob/living/checked) + if (GET_ATOM_BLOOD_DNA_LENGTH(checked)) + return TRUE + return ..() diff --git a/code/datums/components/fearful/terror_handler.dm b/code/datums/components/fearful/terror_handler.dm index 93aa6a6c5b11ef..1b2add3bf35bf2 100644 --- a/code/datums/components/fearful/terror_handler.dm +++ b/code/datums/components/fearful/terror_handler.dm @@ -11,6 +11,8 @@ var/default = FALSE /// Other effects which should be disabled while this one is running var/list/overrides + /// Is this handler bespoke, and always requires a new instance upon adding even when one is already present? + var/bespoke = FALSE /datum/terror_handler/New(mob/living/new_owner, datum/component/fearful/new_component) . = ..() @@ -25,3 +27,7 @@ /// Single tick of terror handler, returns adjustment to terror buildup /datum/terror_handler/proc/tick(seconds_per_tick, terror_buildup) return 0 + +/// Additional effects when we're hugged by a mob, returns fear adjustment per hug. Should only be positive. +/datum/terror_handler/proc/on_hug(mob/living/hugger) + return 0 diff --git a/code/datums/components/fishing_spot.dm b/code/datums/components/fishing_spot.dm index 127f542f561121..be645066bb662d 100644 --- a/code/datums/components/fishing_spot.dm +++ b/code/datums/components/fishing_spot.dm @@ -1,5 +1,6 @@ // A thing you can fish in /datum/component/fishing_spot + dupe_mode = COMPONENT_DUPE_UNIQUE /// Defines the probabilities and fish availibilty var/datum/fish_source/fish_source @@ -26,7 +27,6 @@ REMOVE_TRAIT(parent, TRAIT_FISHING_SPOT, REF(src)) fish_source.on_fishing_spot_del(src) fish_source = null - REMOVE_TRAIT(parent, TRAIT_FISHING_SPOT, REF(src)) return ..() /datum/component/fishing_spot/proc/handle_cast(datum/source, obj/item/fishing_rod/rod, mob/user) diff --git a/code/datums/components/food/edible.dm b/code/datums/components/food/edible.dm index b238be9f5a792f..b58ef88a3dc448 100644 --- a/code/datums/components/food/edible.dm +++ b/code/datums/components/food/edible.dm @@ -39,11 +39,11 @@ Behavior that's still missing from this component that original food items had t ///Last time we checked for food likes var/last_check_time ///Assoc list of sources and their foodtypes - var/list/foodtypes_by_source = list() + var/list/foodtypes_by_source ///Assoc list of sources and their food flags - var/list/food_flags_by_source = list() + var/list/food_flags_by_source ///Assoc list of sources and their junkiness - var/list/junkiness_by_source = list() + var/list/junkiness_by_source /datum/component/edible/Initialize( list/initial_reagents, @@ -93,10 +93,6 @@ Behavior that's still missing from this component that original food items had t RegisterSignal(parent, COMSIG_ITEM_ATTACK, PROC_REF(UseFromHand)) RegisterSignal(parent, COMSIG_ITEM_USED_AS_INGREDIENT, PROC_REF(used_to_customize)) - var/obj/item/item = parent - if(!item.grind_results) - item.grind_results = list() //If this doesn't already exist, add it as an empty list. This is needed for the grinder to accept it. - else if(isturf(parent) || isstructure(parent)) RegisterSignal(parent, COMSIG_ATOM_ATTACK_HAND, PROC_REF(TryToEatIt)) @@ -145,16 +141,16 @@ Behavior that's still missing from this component that original food items had t var/recalculate = FALSE if(!isnull(foodtypes)) - if(foodtypes_by_source[source]) //foodtypes being overriden + if(LAZYACCESS(foodtypes_by_source, source)) //foodtypes being overriden recalculate = TRUE - foodtypes_by_source[source] = foodtypes + LAZYSET(foodtypes_by_source, source, foodtypes) if(!isnull(food_flags)) - if(food_flags_by_source[source]) //food_flags being overriden + if(LAZYACCESS(food_flags_by_source, source)) //food_flags being overridden recalculate = TRUE - food_flags_by_source[source] = food_flags + LAZYSET(food_flags_by_source, source, food_flags) if(!isnull(junkiness)) - src.junkiness += junkiness - junkiness_by_source[source] - junkiness_by_source[source] = junkiness + src.junkiness += junkiness - LAZYACCESS(junkiness_by_source, source) + LAZYSET(junkiness_by_source, source, junkiness) if(recalculate) recalculate_food_flags() @@ -194,10 +190,10 @@ Behavior that's still missing from this component that original food items had t /datum/component/edible/on_source_remove(source) //rebuild the foodtypes and food_flags bitfields without the removed source - foodtypes_by_source -= source - food_flags_by_source -= source - junkiness -= junkiness_by_source[source] - junkiness_by_source -= source + LAZYREMOVE(foodtypes_by_source, source) + LAZYREMOVE(food_flags_by_source, source) + junkiness -= LAZYACCESS(junkiness_by_source, source) + LAZYREMOVE(junkiness_by_source, source) recalculate_food_flags() return ..() @@ -205,8 +201,8 @@ Behavior that's still missing from this component that original food items had t foodtypes = NONE food_flags = NONE for(var/source_key in foodtypes_by_source) - foodtypes |= foodtypes_by_source[source_key] - food_flags |= food_flags_by_source[source_key] + foodtypes |= LAZYACCESS(foodtypes_by_source, source_key) + food_flags |= LAZYACCESS(food_flags_by_source, source_key) if(foodtypes & GORE) ADD_TRAIT(parent, TRAIT_VALID_DNA_INFUSION, REF(src)) else @@ -287,7 +283,7 @@ Behavior that's still missing from this component that original food items had t else examine_list += span_notice("[owner] was bitten multiple times!") - if(GLOB.Debug2) + if(GLOB.debugging_enabled) examine_list += span_notice("Reagent purities:") for(var/datum/reagent/reagent as anything in owner.reagents.reagent_list) examine_list += span_notice("- [reagent.name] [reagent.volume]u: [round(reagent.purity * 100)]% pure") @@ -572,8 +568,10 @@ Behavior that's still missing from this component that original food items had t qdel(food) return FALSE - if(SEND_SIGNAL(eater, COMSIG_CARBON_ATTEMPT_EAT, food) & COMSIG_CARBON_BLOCK_EAT) - return + if(SEND_SIGNAL(eater, COMSIG_CARBON_ATTEMPT_EAT, food) & BLOCK_EAT_ATTEMPT) + return FALSE + if(SEND_SIGNAL(food, COMSIG_FOOD_ATTEMPT_EAT, eater, feeder) & BLOCK_EAT_ATTEMPT) + return FALSE return TRUE ///Applies food buffs according to the crafting complexity @@ -739,6 +737,8 @@ Behavior that's still missing from this component that original food items had t ///Ability to feed food to puppers /datum/component/edible/proc/on_entered(datum/source, atom/movable/arrived, atom/old_loc, list/atom/old_locs) SIGNAL_HANDLER + if(QDELETED(parent)) + return SEND_SIGNAL(parent, COMSIG_FOOD_CROSSED, arrived, bitecount) ///Response to being used to customize something diff --git a/code/datums/components/free_operation.dm b/code/datums/components/free_operation.dm new file mode 100644 index 00000000000000..f1bddc05c657e1 --- /dev/null +++ b/code/datums/components/free_operation.dm @@ -0,0 +1,33 @@ +/// Allows mobs with this component to have all of their limbs operated on without needing drapes +/datum/component/free_operation + dupe_mode = COMPONENT_DUPE_SOURCES + +/datum/component/free_operation/Initialize(check) + if (!iscarbon(parent)) + return COMPONENT_INCOMPATIBLE + ADD_TRAIT(parent, TRAIT_READY_TO_OPERATE, REF(src)) + var/mob/living/carbon/owner = parent + for (var/obj/item/bodypart/limb as anything in owner.bodyparts) + ADD_TRAIT(limb, TRAIT_READY_TO_OPERATE, REF(src)) + +/datum/component/free_operation/Destroy(force) + REMOVE_TRAIT(parent, TRAIT_READY_TO_OPERATE, REF(src)) + var/mob/living/carbon/owner = parent + for (var/obj/item/bodypart/limb as anything in owner.bodyparts) + REMOVE_TRAIT(limb, TRAIT_READY_TO_OPERATE, REF(src)) + return ..() + +/datum/component/free_operation/RegisterWithParent() + RegisterSignal(parent, COMSIG_CARBON_ATTACH_LIMB, PROC_REF(flag_limb)) + RegisterSignal(parent, COMSIG_CARBON_REMOVE_LIMB, PROC_REF(unflag_limb)) + +/datum/component/free_operation/UnregisterFromParent() + UnregisterSignal(parent, list(COMSIG_CARBON_ATTACH_LIMB, COMSIG_CARBON_REMOVE_LIMB)) + +/datum/component/free_operation/proc/flag_limb(mob/living/carbon/source, obj/item/bodypart/limb) + SIGNAL_HANDLER + ADD_TRAIT(limb, TRAIT_READY_TO_OPERATE, REF(src)) + +/datum/component/free_operation/proc/unflag_limb(mob/living/carbon/source, obj/item/bodypart/limb) + SIGNAL_HANDLER + REMOVE_TRAIT(limb, TRAIT_READY_TO_OPERATE, REF(src)) diff --git a/code/datums/components/grillable.dm b/code/datums/components/grillable.dm index 34a6675edd6ac8..5b31a0fdec0c68 100644 --- a/code/datums/components/grillable.dm +++ b/code/datums/components/grillable.dm @@ -41,8 +41,8 @@ var/atom/result = new cook_result if(!item_parent.compare_materials(result)) var/warning = "custom_materials of [result.type] when grilled compared to just spawned don't match" - var/what_it_should_be = item_parent.get_materials_english_list() - stack_trace("[warning]. custom_materials should be [what_it_should_be].") + var/what_it_should_be = item_parent.transcribe_materials_list() + stack_trace("[warning]. should be: custom_materials = [what_it_should_be].") qdel(result) /datum/component/grillable/RegisterWithParent() @@ -155,7 +155,7 @@ LAZYADD(grilled_food.intrinsic_food_materials, original_food.intrinsic_food_materials) grilled_result.set_custom_materials(original_object.custom_materials) - if(IsEdible(grilled_result) && positive_result) + if(IS_EDIBLE(grilled_result) && positive_result) BLACKBOX_LOG_FOOD_MADE(grilled_result.type) //make space and tranfer reagents if it has any, also let any bad result handle removing or converting the transferred reagents on its own terms if(grilled_result.reagents && original_object.reagents) diff --git a/code/datums/components/ground_sinking.dm b/code/datums/components/ground_sinking.dm index 4e846b4cf704e8..971cb15529d0d9 100644 --- a/code/datums/components/ground_sinking.dm +++ b/code/datums/components/ground_sinking.dm @@ -36,7 +36,7 @@ heal_when_sinked = TRUE, health_per_second = 1, outline_colour = COLOR_PALE_GREEN, - damage_res_sinked = list(BRUTE = 1, BURN = 1, TOX = 1, STAMINA = 0, OXY = 1)) + damage_res_sinked = string_assoc_list(list(BRUTE = 1, BURN = 1, TOX = 1, STAMINA = 0, OXY = 1))) if (!isbasicmob(parent)) return COMPONENT_INCOMPATIBLE @@ -112,7 +112,7 @@ if(sinked && heal_when_sinked) stop_regenerating() living_target.icon_state = target_icon_state - living_target.damage_coeff = list(BRUTE = 1, BURN = 1, TOX = 1, STAMINA = 0, OXY = 1) + living_target.damage_coeff = string_assoc_list(list(BRUTE = 1, BURN = 1, TOX = 1, STAMINA = 0, OXY = 1)) living_target.set_density(TRUE) sinked = FALSE diff --git a/code/datums/components/happiness.dm b/code/datums/components/happiness.dm index 95d3b0d1f42b48..791b9b32b7c4a5 100644 --- a/code/datums/components/happiness.dm +++ b/code/datums/components/happiness.dm @@ -62,7 +62,7 @@ /datum/component/happiness/proc/on_eat(datum/source) SIGNAL_HANDLER - increase_happiness_level(on_eat_change) + change_happiness_level(on_eat_change) /datum/component/happiness/proc/on_clean(mob/living/source) SIGNAL_HANDLER @@ -74,7 +74,7 @@ return NONE COOLDOWN_START(src, groom_cooldown, GROOM_COOLDOWN) - increase_happiness_level(on_groom_change) + change_happiness_level(on_groom_change) return COMPONENT_CLEANED|COMPONENT_CLEANED_GAIN_XP /datum/component/happiness/proc/on_petted(datum/source, mob/living/petter, list/modifiers) @@ -91,42 +91,55 @@ /datum/component/happiness/proc/pet_animal() if(!COOLDOWN_FINISHED(src, pet_cooldown)) return - increase_happiness_level(on_petted_change) + change_happiness_level(on_petted_change) COOLDOWN_START(src, pet_cooldown, PET_COOLDOWN) -/datum/component/happiness/proc/increase_happiness_level(amount) - happiness_level = min(happiness_level + amount, maximum_happiness) - if(!HAS_TRAIT(parent, TRAIT_MOB_HIDE_HAPPINESS)) - var/mob/living/living_parent = parent +/datum/component/happiness/proc/change_happiness_level(amount) + var/old_happiness = happiness_level + happiness_level = clamp(happiness_level + amount, 0, maximum_happiness) + var/happiness_percentage = happiness_level / maximum_happiness + var/old_percentage = old_happiness / maximum_happiness + + var/old_threshold = 0 + var/new_threshold = 0 + for(var/check_percentage in callback_percentages) + if (check_percentage <= old_percentage) + old_threshold = check_percentage + if (check_percentage <= happiness_percentage) + new_threshold = check_percentage + + if (old_threshold != new_threshold) + SEND_SIGNAL(parent, COMSIG_MOB_HAPPINESS_CHANGE, happiness_percentage) + happiness_callback?.Invoke(happiness_percentage) + + var/mob/living/living_parent = parent + living_parent.ai_controller?.set_blackboard_key(blackboard_key, happiness_percentage) + + if(!HAS_TRAIT(parent, TRAIT_MOB_HIDE_HAPPINESS) && amount > 0) new /obj/effect/temp_visual/heart(living_parent.loc) living_parent.spin(spintime = 2 SECONDS, speed = 1) - START_PROCESSING(SSprocessing, src) + + if (happiness_level > 0) + START_PROCESSING(SSprocessing, src) /datum/component/happiness/proc/view_happiness(mob/living/source, mob/living/clicker) if(HAS_TRAIT(source, TRAIT_MOB_HIDE_HAPPINESS) || !istype(clicker) || !COOLDOWN_FINISHED(src, happiness_inspect) || !source.IsReachableBy(clicker)) return var/y_position = source.get_cached_height() + 1 var/obj/effect/overlay/happiness_overlay/hearts = new + hearts.pixel_w -= source.base_pixel_x + source.base_pixel_w hearts.pixel_y = y_position - hearts.set_hearts(happiness_level/maximum_happiness) + hearts.set_hearts(happiness_level / maximum_happiness) source.vis_contents += hearts COOLDOWN_START(src, happiness_inspect, INSPECT_TIMER) - /datum/component/happiness/process() - var/mob/living/living_parent = parent - var/happiness_percentage = happiness_level/maximum_happiness - living_parent.ai_controller?.set_blackboard_key(blackboard_key, happiness_percentage) - var/check_percentage_in_list = round(happiness_percentage * 100, 1) - if(check_percentage_in_list in callback_percentages) - SEND_SIGNAL(parent, COMSIG_MOB_HAPPINESS_CHANGE, happiness_percentage) - happiness_callback?.Invoke(happiness_percentage) - if(happiness_level <= 0) return PROCESS_KILL + var/mob/living/living_parent = parent var/modifier = living_parent.ai_controller?.blackboard[BB_BASIC_DEPRESSED] ? 2 : 1 - happiness_level = max(0, happiness_level - modifier) + change_happiness_level(-modifier) /obj/effect/overlay/happiness_overlay mouse_opacity = MOUSE_OPACITY_TRANSPARENT diff --git a/code/datums/components/hazard_area.dm b/code/datums/components/hazard_area.dm index f747e8e2ace769..79a67fd78ad0ea 100644 --- a/code/datums/components/hazard_area.dm +++ b/code/datums/components/hazard_area.dm @@ -169,4 +169,5 @@ /atom/movable/screen/alert/status_effect/hazard_area name = "Hazardous Area" desc = "The area you are currently within is incredibly hazardous to you. Check your surroundings and vacate as soon as possible." - icon_state = "hazard_area" + use_user_hud_icon = TRUE + overlay_state = "hazard_area" diff --git a/code/datums/components/healing_touch.dm b/code/datums/components/healing_touch.dm index 07f04cba01d730..b8580e2e458ff7 100644 --- a/code/datums/components/healing_touch.dm +++ b/code/datums/components/healing_touch.dm @@ -45,6 +45,8 @@ var/required_modifier /// Callback to run after healing a mob var/datum/callback/after_healed + /// Callback to run to get a multiplier for our healing value + var/datum/callback/healing_multiplier /datum/component/healing_touch/Initialize( heal_brute = 20, @@ -65,6 +67,7 @@ heal_color = COLOR_HEALING_CYAN, required_modifier = null, datum/callback/after_healed = null, + datum/callback/healing_multiplier = null, ) if (!isliving(parent)) return COMPONENT_INCOMPATIBLE @@ -87,6 +90,7 @@ src.heal_color = heal_color src.required_modifier = required_modifier src.after_healed = after_healed + src.healing_multiplier = healing_multiplier RegisterSignal(parent, COMSIG_LIVING_UNARMED_ATTACK, PROC_REF(try_healing)) // Players RegisterSignal(parent, COMSIG_HOSTILE_PRE_ATTACKINGTARGET, PROC_REF(try_healing)) // NPCs @@ -161,14 +165,14 @@ /datum/component/healing_touch/proc/has_healable_damage(mob/living/target) if (!isnull(valid_biotypes) && !(valid_biotypes & target.mob_biotypes)) return FALSE - if (target.getStaminaLoss() > 0 && heal_stamina) + if (target.get_stamina_loss() > 0 && heal_stamina) return TRUE - if (target.getOxyLoss() > 0 && heal_oxy) + if (target.get_oxy_loss() > 0 && heal_oxy) return TRUE - if (target.getToxLoss() > 0 && heal_tox) + if (target.get_tox_loss() > 0 && heal_tox) return TRUE if (!iscarbon(target)) - return (target.getBruteLoss() > 0 && heal_brute) || (target.getFireLoss() > 0 && heal_burn) + return (target.get_brute_loss() > 0 && heal_brute) || (target.get_fire_loss() > 0 && heal_burn) var/mob/living/carbon/carbon_target = target for (var/obj/item/bodypart/part in carbon_target.bodyparts) if (!(part.brute_dam && heal_brute) && !(part.burn_dam && heal_burn)) @@ -190,15 +194,21 @@ if (complete_text) healer.visible_message(span_notice("[format_string(complete_text, healer, target)]")) + var/mult = 1 + if (healing_multiplier) + mult = healing_multiplier.Invoke(healer, target) + if (mult == 0) + return + var/healed = target.heal_overall_damage( - brute = heal_brute, - burn = heal_burn, - stamina = heal_stamina, + brute = heal_brute * mult, + burn = heal_burn * mult, + stamina = heal_stamina * mult, required_bodytype = required_bodytype, updating_health = FALSE, ) - healed += target.adjustOxyLoss(-heal_oxy, updating_health = FALSE, required_biotype = valid_biotypes) - healed += target.adjustToxLoss(-heal_tox, updating_health = FALSE, required_biotype = valid_biotypes) + healed += target.adjust_oxy_loss(-heal_oxy * mult, updating_health = FALSE, required_biotype = valid_biotypes) + healed += target.adjust_tox_loss(-heal_tox * mult, updating_health = FALSE, required_biotype = valid_biotypes) if (healed <= 0) return diff --git a/code/datums/components/heart_eater.dm b/code/datums/components/heart_eater.dm index 1ef06559624b13..d61aec5ac43852 100644 --- a/code/datums/components/heart_eater.dm +++ b/code/datums/components/heart_eater.dm @@ -111,11 +111,11 @@ ///Heart eater give also strong healing from hearts. /datum/component/heart_eater/proc/healing_heart(mob/living/carbon/human/eater) for(var/heal_organ in eater.organs) - eater.adjustOrganLoss(heal_organ, -50) + eater.adjust_organ_loss(heal_organ, -50) for(var/datum/wound/heal_wound in eater.all_wounds) heal_wound.remove_wound() - eater.adjustBruteLoss(-50) - eater.adjustFireLoss(-50) - eater.adjustToxLoss(-50) - eater.adjustOxyLoss(-50) - eater.adjustStaminaLoss(-50) + eater.adjust_brute_loss(-50) + eater.adjust_fire_loss(-50) + eater.adjust_tox_loss(-50) + eater.adjust_oxy_loss(-50) + eater.adjust_stamina_loss(-50) diff --git a/code/datums/components/holographic_nature.dm b/code/datums/components/holographic_nature.dm index cc2ca51ce9378f..1a556905a291b3 100644 --- a/code/datums/components/holographic_nature.dm +++ b/code/datums/components/holographic_nature.dm @@ -19,6 +19,8 @@ /datum/component/holographic_nature/RegisterWithParent() AddComponent(/datum/component/connect_loc_behalf, parent, loc_connections) if(isliving(parent)) + RegisterSignal(parent, COMSIG_LIVING_MOB_BUMP, PROC_REF(on_bumped)) + RegisterSignal(parent, COMSIG_LIVING_MOB_BUMPED, PROC_REF(on_bumped)) RegisterSignal(parent, COMSIG_MOB_APPLY_DAMAGE, PROC_REF(on_mob_damaged)) return @@ -26,6 +28,7 @@ if(isobj(atom_parent) && atom_parent.uses_integrity) RegisterSignal(parent, COMSIG_ATOM_TAKE_DAMAGE, PROC_REF(on_object_damaged)) + /datum/component/holographic_nature/proc/on_mob_damaged(mob/living/source, damage_amount, damagetype, def_zone, blocked, wound_bonus, exposed_wound_bonus, sharpness, attack_direction, attacking_item) SIGNAL_HANDLER if(damagetype == BURN || damagetype == BRUTE) @@ -44,6 +47,10 @@ if(isprojectile(thing) || thing.density) apply_effects() +/datum/component/holographic_nature/proc/on_bumped(atom/movable/source, mob/living/crossing_mob) + SIGNAL_HANDLER + apply_effects() + /datum/component/holographic_nature/proc/apply_effects() if(!COOLDOWN_FINISHED(src, glitch_cooldown)) return diff --git a/code/datums/components/houlihan_teleport.dm b/code/datums/components/houlihan_teleport.dm new file mode 100644 index 00000000000000..b819742e495abf --- /dev/null +++ b/code/datums/components/houlihan_teleport.dm @@ -0,0 +1,93 @@ +/// Teleports interactors onto a safe turf randomly picked from a list of z-levels. +/datum/component/houlihan_teleport + dupe_mode = COMPONENT_DUPE_HIGHLANDER + /// Text that will appear in the alert prompt. + var/question = "Travel back?" + /// List of z-levels that the user can teleport to. By default, this is station z-levels. + var/list/zlevels + +/datum/component/houlihan_teleport/Initialize(question, zlevels) + . = ..() + if(!isstructure(parent)) + return COMPONENT_INCOMPATIBLE + + if(!isnull(question) && (!istext(question) || !length(question))) + stack_trace("received bad question argument, falling back to default") + question = null + src.question = question || initial(src.question) + + if(!isnull(zlevels) && (!islist(zlevels) || !length(zlevels))) + stack_trace("received bad zlevels argument, falling back to default") + zlevels = null + src.zlevels = zlevels || SSmapping.levels_by_trait(ZTRAIT_STATION) + +/datum/component/houlihan_teleport/RegisterWithParent() + RegisterSignals(parent, list(COMSIG_ATOM_ATTACK_ROBOT, COMSIG_ATOM_ATTACK_PAW, COMSIG_ATOM_ATTACK_ANIMAL, COMSIG_ATOM_ATTACK_LARVA), PROC_REF(handle_generic_attack)) + RegisterSignal(parent, COMSIG_ATOM_ATTACK_HAND, PROC_REF(handle_attack_hand)) + RegisterSignal(parent, COMSIG_ATOM_ATTACKBY, PROC_REF(handle_attackby)) + +/datum/component/houlihan_teleport/UnregisterFromParent() + UnregisterSignal(parent, list( + COMSIG_ATOM_ATTACK_ROBOT, COMSIG_ATOM_ATTACK_PAW, COMSIG_ATOM_ATTACK_ANIMAL, COMSIG_ATOM_ATTACK_LARVA, //handle_generic_attack + COMSIG_ATOM_ATTACK_HAND, //handle_attack_hand + COMSIG_ATOM_ATTACKBY, //handle_attackby + )) + +/datum/component/houlihan_teleport/proc/get_me_outta_here(obj/structure/source, mob/living/user) + var/said_yes = (tgui_alert(user, question, source.name, list("Yes", "No")) == "Yes") + if(!said_yes || !source.Adjacent(user)) + return + + var/turf/destination_turf = zlevels ? find_safe_turf(zlevels) : get_safe_random_station_turf_equal_weight() + if(!destination_turf) + source.balloon_alert(user, "uh oh...") + to_chat(user, span_warning("Nothing happens. You feel like this is a bad sign.")) + return + + var/turf/user_turf = get_turf(user) + var/atom/movable/dragged = user.pulling + user.forceMove(destination_turf) + user_turf.balloon_alert_to_viewers("(pop)") + if(dragged) + var/turf/dragged_turf = get_turf(dragged) + dragged.forceMove(destination_turf) + user.start_pulling(dragged, force = TRUE) + dragged_turf.balloon_alert_to_viewers("(pop)") + + to_chat(list(user, dragged), span_notice("You blink and find yourself in [get_area_name(destination_turf)].")) + user.emote("blink") + astype(dragged, /mob)?.emote("blink") // shhhhh just let it happen + +/datum/component/houlihan_teleport/proc/handle_generic_attack(obj/structure/source, mob/living/user, list/modifiers) + SIGNAL_HANDLER + + if(user.combat_mode) + return NONE + + if(iscyborg(user) && !source.Adjacent(user)) + return NONE + + INVOKE_ASYNC(src, PROC_REF(get_me_outta_here), source, user) + return COMPONENT_NO_AFTERATTACK + +/datum/component/houlihan_teleport/proc/handle_attack_hand(obj/structure/source, mob/user, list/modifiers) + SIGNAL_HANDLER + + if(!isliving(user)) + return NONE + + var/mob/living/living_user = user + if(living_user.combat_mode) + return NONE + + INVOKE_ASYNC(src, PROC_REF(get_me_outta_here), source, living_user) + return COMPONENT_CANCEL_ATTACK_CHAIN + +/datum/component/houlihan_teleport/proc/handle_attackby(obj/structure/source, obj/item/item, mob/living/user, list/modifiers) + SIGNAL_HANDLER + + if(user.combat_mode) + return NONE + + INVOKE_ASYNC(src, PROC_REF(get_me_outta_here), source, user) + return COMPONENT_NO_AFTERATTACK diff --git a/code/datums/components/irradiated.dm b/code/datums/components/irradiated.dm index 803af82940befc..31ee58bb77ef09 100644 --- a/code/datums/components/irradiated.dm +++ b/code/datums/components/irradiated.dm @@ -85,7 +85,7 @@ return PROCESS_KILL var/mob/living/carbon/human/human_parent = parent - if (human_parent.getToxLoss() == 0) + if (human_parent.get_tox_loss() == 0) qdel(src) return PROCESS_KILL @@ -181,7 +181,7 @@ if (isliving(source)) var/mob/living/living_source = source - to_chat(user, span_bolddanger("[icon2html(geiger_counter, user)] Subject is irradiated. Contamination traces back to roughly [DisplayTimeText(world.time - beginning_of_irradiation, 5)] ago. Current toxin levels: [living_source.getToxLoss()].")) + to_chat(user, span_bolddanger("[icon2html(geiger_counter, user)] Subject is irradiated. Contamination traces back to roughly [DisplayTimeText(world.time - beginning_of_irradiation, 5)] ago. Current toxin levels: [living_source.get_tox_loss()].")) else // In case the green wasn't obvious enough... to_chat(user, span_bolddanger("[icon2html(geiger_counter, user)] Target is irradiated.")) @@ -198,7 +198,8 @@ /atom/movable/screen/alert/irradiated name = "Irradiated" desc = "You're irradiated! Heal your toxins quick, and stand under a shower to halt the incoming damage." - icon_state = ALERT_IRRADIATED + use_user_hud_icon = TRUE + overlay_state = "irradiated" #undef RADIATION_BURN_SPLOTCH_DAMAGE #undef RADIATION_BURN_INTERVAL_MIN diff --git a/code/datums/components/joint_damage.dm b/code/datums/components/joint_damage.dm index 5397bd307cab95..e96a387abc0e6b 100644 --- a/code/datums/components/joint_damage.dm +++ b/code/datums/components/joint_damage.dm @@ -31,5 +31,5 @@ var/mob/living/overlord_to_damage = overlord_mob?.resolve() if(!isnull(overlord_to_damage)) - overlord_to_damage.adjustBruteLoss(previous_health_count - source.health) ///damage or heal overlord + overlord_to_damage.adjust_brute_loss(previous_health_count - source.health) ///damage or heal overlord previous_health_count = source.health diff --git a/code/datums/components/jukebox.dm b/code/datums/components/jukebox.dm index 7e9f9657134749..07004dd05b3676 100644 --- a/code/datums/components/jukebox.dm +++ b/code/datums/components/jukebox.dm @@ -95,16 +95,26 @@ var/static/list/config_songs if(isnull(config_songs)) config_songs = list() - var/list/tracks = flist("[global.config.directory]/jukebox_music/sounds/") + var/list/tracks = flist(CONFIG_JUKEBOX_SOUNDS) for(var/track_file in tracks) var/datum/track/new_track = new() - new_track.song_path = file("[global.config.directory]/jukebox_music/sounds/[track_file]") + new_track.song_path = file("[CONFIG_JUKEBOX_SOUNDS][track_file]") var/list/track_data = splittext(track_file, "+") - if(length(track_data) < 3) + if(!length(track_data) || !IS_SOUND_FILE_SAFE(new_track.song_path)) continue - new_track.song_name = track_data[1] - new_track.song_length = text2num(track_data[2]) - new_track.song_beat = text2num(track_data[3]) + var/track_name = track_data[JUKEBOX_NAME] + track_name = strip_filepath_extension(track_name, SSsounds.safe_formats) + new_track.song_name = track_name + new_track.song_length = SSsounds.get_sound_length(new_track.song_path) + if(track_data.len >= 3) // Bandaid for legacy tracks to not use the length for the bpm rather then the actual beats. + var/static/logged_to_admins = FALSE + log_game("[new_track.song_path] track data seems to be using the legacy format; we will attempt to make it work.") + if(!logged_to_admins) + message_admins("The jukebox has tracks uploaded in a legacy format. Length is now fetched programmatically, with title and beats being the only required fields.") + logged_to_admins = TRUE + new_track.song_beat_deciseconds = text2num(track_data[3]) + else if(track_data.len >= 2) + new_track.song_beat_deciseconds = text2num(track_data[JUKEBOX_BEATS]) config_songs[new_track.song_name] = new_track if(!length(config_songs)) @@ -128,7 +138,7 @@ UNTYPED_LIST_ADD(songs_data, list( \ "name" = song_name, \ "length" = DisplayTimeText(one_song.song_length), \ - "beat" = one_song.song_beat, \ + "beat" = one_song.song_beat_deciseconds || "Unknown", \ )) data["active"] = !!active_song_sound @@ -399,11 +409,12 @@ var/song_length = 0 /// How long is a beat of the song in decisconds /// Used to determine time between effects when played - var/song_beat = 0 + /// Do note this is NOT BPM. + var/song_beat_deciseconds = 0 // Default track supplied for testing and also because it's a banger /datum/track/default song_path = 'sound/music/lobby_music/title3.ogg' song_name = "Tintin on the Moon" song_length = 3 MINUTES + 52 SECONDS - song_beat = 1 SECONDS + song_beat_deciseconds = 1 SECONDS diff --git a/code/datums/components/life_link.dm b/code/datums/components/life_link.dm index 98858f61c3cb03..a79758122c5121 100644 --- a/code/datums/components/life_link.dm +++ b/code/datums/components/life_link.dm @@ -65,13 +65,13 @@ amount *= our_mob.get_damage_mod(type) switch (type) if(BRUTE) - host.adjustBruteLoss(amount, forced = TRUE) + host.adjust_brute_loss(amount, forced = TRUE) if(BURN) - host.adjustFireLoss(amount, forced = TRUE) + host.adjust_fire_loss(amount, forced = TRUE) if(TOX) - host.adjustToxLoss(amount, forced = TRUE) + host.adjust_tox_loss(amount, forced = TRUE) if(OXY) - host.adjustOxyLoss(amount, forced = TRUE) + host.adjust_oxy_loss(amount, forced = TRUE) on_passed_damage?.Invoke(our_mob, host, amount) return COMPONENT_IGNORE_CHANGE @@ -80,9 +80,9 @@ /datum/component/life_link/proc/on_limb_damage(mob/living/our_mob, limb, brute, burn) SIGNAL_HANDLER if (brute != 0) - host.adjustBruteLoss(brute, updating_health = FALSE) + host.adjust_brute_loss(brute, updating_health = FALSE) if (burn != 0) - host.adjustFireLoss(burn, updating_health = FALSE) + host.adjust_fire_loss(burn, updating_health = FALSE) if (brute != 0 || burn != 0) host.updatehealth() on_passed_damage?.Invoke(our_mob, host, brute + burn) diff --git a/code/datums/components/manual_heart.dm b/code/datums/components/manual_heart.dm index fb815cdfdbb321..2dfd703ed46255 100644 --- a/code/datums/components/manual_heart.dm +++ b/code/datums/components/manual_heart.dm @@ -49,22 +49,21 @@ RegisterSignal(parent, COMSIG_CARBON_LOSE_ORGAN, PROC_REF(check_removed_organ)) RegisterSignal(parent, COMSIG_CARBON_GAIN_ORGAN, PROC_REF(check_added_organ)) RegisterSignal(parent, COMSIG_HEART_MANUAL_PULSE, PROC_REF(on_pump)) - RegisterSignals(parent, list(COMSIG_LIVING_DEATH, SIGNAL_ADDTRAIT(TRAIT_NOBLOOD)), PROC_REF(pause)) - RegisterSignals(parent, list(COMSIG_LIVING_REVIVE, SIGNAL_REMOVETRAIT(TRAIT_NOBLOOD)), PROC_REF(restart)) + RegisterSignal(parent, COMSIG_LIVING_UPDATE_BLOOD_STATUS, PROC_REF(on_update_blood_status)) pump_action.cooldown_time = pump_delay - (1 SECONDS) //you can pump up to a second early pump_action.Grant(parent) var/mob/living/carbon/carbon_parent = parent var/obj/item/organ/heart/parent_heart = carbon_parent.get_organ_slot(ORGAN_SLOT_HEART) - if(parent_heart && !HAS_TRAIT(carbon_parent, TRAIT_NOBLOOD) && carbon_parent.stat != DEAD) + if(parent_heart && CAN_HAVE_BLOOD(carbon_parent) && carbon_parent.stat != DEAD) START_PROCESSING(SSdcs, src) COOLDOWN_START(src, heart_timer, pump_delay) to_chat(parent, span_userdanger("Your heart no longer beats automatically! You have to pump it manually - otherwise you'll die!")) /datum/component/manual_heart/UnregisterFromParent() - UnregisterSignal(parent, list(COMSIG_CARBON_GAIN_ORGAN, COMSIG_CARBON_LOSE_ORGAN, COMSIG_HEART_MANUAL_PULSE, COMSIG_LIVING_REVIVE, COMSIG_LIVING_DEATH, SIGNAL_ADDTRAIT(TRAIT_NOBLOOD), SIGNAL_REMOVETRAIT(TRAIT_NOBLOOD))) + UnregisterSignal(parent, list(COMSIG_CARBON_GAIN_ORGAN, COMSIG_CARBON_LOSE_ORGAN, COMSIG_HEART_MANUAL_PULSE, COMSIG_LIVING_REVIVE, COMSIG_LIVING_DEATH, COMSIG_LIVING_UPDATE_BLOOD_STATUS)) to_chat(parent, span_userdanger("You feel your heart start beating normally again!")) var/mob/living/carbon/carbon_parent = parent @@ -95,14 +94,14 @@ var/mob/living/carbon/carbon_owner = owner - if(HAS_TRAIT(carbon_owner, TRAIT_NOBLOOD)) + if(!CAN_HAVE_BLOOD(carbon_owner)) return - carbon_owner.blood_volume = min(carbon_owner.blood_volume + (blood_loss * 0.5), BLOOD_VOLUME_MAXIMUM) + carbon_owner.adjust_blood_volume(blood_loss * 0.5) carbon_owner.remove_client_colour(REF(src)) add_colour = TRUE - carbon_owner.adjustBruteLoss(-heal_brute) - carbon_owner.adjustFireLoss(-heal_burn) - carbon_owner.adjustOxyLoss(-heal_oxy) + carbon_owner.adjust_brute_loss(-heal_brute) + carbon_owner.adjust_fire_loss(-heal_burn) + carbon_owner.adjust_oxy_loss(-heal_oxy) /datum/component/manual_heart/process() var/mob/living/carbon/carbon_parent = parent @@ -115,13 +114,21 @@ if(!COOLDOWN_FINISHED(src, heart_timer)) return - carbon_parent.blood_volume = max(carbon_parent.blood_volume - blood_loss, 0) + carbon_parent.adjust_blood_volume(-blood_loss) to_chat(carbon_parent, span_userdanger("You have to keep pumping your blood!")) COOLDOWN_START(src, heart_timer, MANUAL_HEART_GRACE_PERIOD) //give two full seconds before losing more blood if(add_colour) carbon_parent.add_client_colour(/datum/client_colour/manual_heart_blood, REF(src)) add_colour = FALSE +/datum/component/manual_heart/proc/on_update_blood_status(datum/source, had_blood, has_blood, new_blood_volume, old_blood_volume) + SIGNAL_HANDLER + + if (has_blood) + restart() + else + pause() + ///If a new heart is added, start processing. /datum/component/manual_heart/proc/check_added_organ(mob/organ_owner, obj/item/organ/new_organ) SIGNAL_HANDLER @@ -151,7 +158,7 @@ /datum/component/manual_heart/proc/check_valid() var/mob/living/carbon/carbon_parent = parent var/obj/item/organ/heart/parent_heart = carbon_parent.get_organ_slot(ORGAN_SLOT_HEART) - return !isnull(parent_heart) && !HAS_TRAIT(carbon_parent, TRAIT_NOBLOOD) && carbon_parent.stat != DEAD + return !isnull(parent_heart) && CAN_HAVE_BLOOD(carbon_parent) && carbon_parent.stat != DEAD ///Action to pump your heart. Cooldown will always be set to 1 second less than the pump delay. /datum/action/cooldown/manual_heart @@ -169,7 +176,7 @@ ///The action button is only available when you're a living carbon with blood and a heart. /datum/action/cooldown/manual_heart/IsAvailable(feedback = FALSE) var/mob/living/carbon/heart_haver = owner - if(!istype(heart_haver) || HAS_TRAIT(heart_haver, TRAIT_NOBLOOD) || heart_haver.stat == DEAD) + if(!istype(heart_haver) || !CAN_HAVE_BLOOD(heart_haver) || heart_haver.stat == DEAD) return FALSE var/obj/item/organ/heart/heart_havers_heart = heart_haver.get_organ_slot(ORGAN_SLOT_HEART) if(isnull(heart_havers_heart)) diff --git a/code/datums/components/mob_chain.dm b/code/datums/components/mob_chain.dm index e2f90eed16ee8d..06bec239a2d417 100644 --- a/code/datums/components/mob_chain.dm +++ b/code/datums/components/mob_chain.dm @@ -171,7 +171,7 @@ SIGNAL_HANDLER if (forced) return - back?.adjustStaminaLoss(amount, forced = forced) + back?.adjust_stamina_loss(amount, forced = forced) /// On damage or heal, affect our furthest segment /datum/component/mob_chain/proc/on_adjust_damage(mob/living/our_mob, type, amount, forced) @@ -180,13 +180,13 @@ return switch (type) if(BRUTE) - back.adjustBruteLoss(amount, forced = forced) + back.adjust_brute_loss(amount, forced = forced) if(BURN) - back.adjustFireLoss(amount, forced = forced) + back.adjust_fire_loss(amount, forced = forced) if(TOX) - back.adjustToxLoss(amount, forced = forced) + back.adjust_tox_loss(amount, forced = forced) if(OXY) // If all segments are suffocating we pile damage backwards until our ass starts dying forwards - back.adjustOxyLoss(amount, forced = forced) + back.adjust_oxy_loss(amount, forced = forced) return COMPONENT_IGNORE_CHANGE /// Special handling for if damage is delegated to a mob's limbs instead of its overall damage @@ -195,9 +195,9 @@ if (isnull(back)) return if (brute != 0) - back.adjustBruteLoss(brute, updating_health = FALSE) + back.adjust_brute_loss(brute, updating_health = FALSE) if (burn != 0) - back.adjustFireLoss(burn, updating_health = FALSE) + back.adjust_fire_loss(burn, updating_health = FALSE) if (brute != 0 || burn != 0) back.updatehealth() return COMPONENT_PREVENT_LIMB_DAMAGE diff --git a/code/datums/components/monitored_area.dm b/code/datums/components/monitored_area.dm new file mode 100644 index 00000000000000..6797fe15f0abc5 --- /dev/null +++ b/code/datums/components/monitored_area.dm @@ -0,0 +1,74 @@ +/// Area component that makes all movement inside get tracked by motion sensitive cameras +/datum/component/monitored_area + dupe_mode = COMPONENT_DUPE_UNIQUE // Only one area will ever exist, so only one component will ever exist + + /// This actually handles updating cameras and whatnot. + var/datum/motion_group/motion_group + +/datum/component/monitored_area/Initialize() + // By the way, this component should be added in LateInitialize(). + if(!isarea(parent)) + return COMPONENT_INCOMPATIBLE + motion_group = new() + +/datum/component/monitored_area/RegisterWithParent() + RegisterSignal(parent, COMSIG_AREA_ENTERED, PROC_REF(on_entered)) + RegisterSignal(parent, COMSIG_AREA_EXITED, PROC_REF(on_exited)) + // FIXME: cameras will never be updated after registration + for(var/obj/machinery/camera/camera in parent) + motion_group.track_camera(camera) + +/datum/component/monitored_area/UnregisterFromParent() + UnregisterSignal(parent, list(COMSIG_AREA_ENTERED, COMSIG_AREA_EXITED)) + for(var/obj/machinery/camera/camera as anything in motion_group.motion_cameras) + motion_group.untrack_camera(camera) + +/datum/component/monitored_area/proc/on_entered(area/_source, atom/movable/gain, area/_old_area) + SIGNAL_HANDLER + motion_group.track_mob(gain) + +/datum/component/monitored_area/proc/on_exited(area/_source, atom/movable/lost, _direction) + SIGNAL_HANDLER + motion_group.untrack_mob(lost) + +/// Handler for motion groups. Motion-sensitive cameras can optionally associate with one of these groups. +/// This doesn't do anything by itself. Something needs to drive it (like a [component][/datum/component/monitored_area]). +/datum/motion_group + /// The cameras in this area that we are tracking. Lazy. + var/list/obj/machinery/camera/motion_cameras + /// Our motion targets. This gets referenced by cameras. + var/list/datum/weakref/motion_targets = list() + +/datum/motion_group/proc/track_camera(obj/machinery/camera/gain_camera) + if(!gain_camera.isMotion()) + return + + RegisterSignal(gain_camera, COMSIG_QDELETING, PROC_REF(untrack_camera)) + gain_camera.set_area_motion(src) + LAZYOR(motion_cameras, gain_camera) + +/datum/motion_group/proc/untrack_camera(obj/machinery/camera/lost_camera) + SIGNAL_HANDLER + + LAZYREMOVE(motion_cameras, lost_camera) + UnregisterSignal(lost_camera, COMSIG_QDELETING) + if(!LAZYLEN(motion_cameras)) + // clear targets if we don't have any cameras so we don't have hanging references + // (they're weakrefs but still we should be doing this) + LAZYNULL(motion_targets) + +/datum/motion_group/proc/track_mob(mob/gain_mob) + if(!ismob(gain_mob) || !LAZYLEN(motion_cameras)) + return + + for(var/obj/machinery/camera/camera as anything in motion_cameras) + camera.new_target(gain_mob) + return //?? + +/datum/motion_group/proc/untrack_mob(mob/lost_mob) + if(!ismob(lost_mob) || !LAZYLEN(motion_cameras)) + return + + for(var/obj/machinery/camera/camera as anything in motion_cameras) + camera.lost_target(lost_mob) + return //?? diff --git a/code/datums/components/palette.dm b/code/datums/components/palette.dm index 2ae66f50b23c3e..0fb937a3b11c0a 100644 --- a/code/datums/components/palette.dm +++ b/code/datums/components/palette.dm @@ -106,7 +106,7 @@ var/is_right_clicking = LAZYACCESS(params2list(params), RIGHT_CLICK) var/index = text2num(choice) if(is_right_clicking) - var/chosen_color = input(user, "Pick new color", "[parent]", colors[index]) as color|null + var/chosen_color = tgui_color_picker(user, "Pick new color", "[parent]", colors[index]) if(chosen_color && !QDELETED(src) && !IS_DEAD_OR_INCAP(user) && user.is_holding(parent)) colors[index] = chosen_color update_radial_list() diff --git a/code/datums/components/payment.dm b/code/datums/components/payment.dm index b9e0442c8d75a6..d66ba2343b6249 100644 --- a/code/datums/components/payment.dm +++ b/code/datums/components/payment.dm @@ -110,7 +110,7 @@ if(physical_cash_total > 0) var/obj/item/holochip/holochange = new /obj/item/holochip(user.loc, physical_cash_total) //Change is made in holocredits exclusively. - holochange.name = "[holochange.credits] credit holochip" + holochange.name = "[holochange.credits] [MONEY_NAME_SINGULAR] holochip" if(ishuman(user)) var/mob/living/carbon/human/paying_customer = user var/successfully_put_in_hands @@ -120,8 +120,8 @@ user.pulling = holochange else user.pulling = holochange - log_econ("[total_cost] credits were spent on [parent] by [user].") - to_chat(user, span_notice("Purchase completed with held credits.")) + log_econ("[total_cost] [MONEY_NAME] were spent on [parent] by [user].") + to_chat(user, span_notice("Purchase completed with held [MONEY_NAME].")) playsound(user, 'sound/effects/cashregister.ogg', 20, TRUE) return TRUE @@ -162,12 +162,11 @@ to_chat(user, span_warning("ID Card lacks funds. Aborting.")) if(PAYMENT_VENDING) to_chat(user, span_warning("You do not possess the funds to purchase that.")) - atom_parent.balloon_alert(user, "needs [total_cost] credit\s!") + atom_parent.balloon_alert(user, "needs [total_cost] [MONEY_NAME_AUTOPURAL(total_cost)]!") return FALSE - //target_acc.transfer_money(idcard.registered_account, total_cost, "Nanotrasen: Usage of Corporate Machinery") // ORIGINAL - target_acc.transfer_money(idcard.registered_account, total_cost, "The Port Authority: Usage of Corporate Machinery") // DOPPLER EDIT - NT -> PA - log_econ("[total_cost] credits were spent on [parent] by [user] via [idcard.registered_account.account_holder]'s card.") - idcard.registered_account.bank_card_talk("[total_cost] credits deducted from your account.") + target_acc.transfer_money(idcard.registered_account, total_cost, "Port Authority: Usage of Licensed Machinery") // DOPPLER EDIT - NT Removal - ORIGINAL: target_acc.transfer_money(idcard.registered_account, total_cost, "Nanotrasen: Usage of Corporate Machinery") + log_econ("[total_cost] [MONEY_NAME] were spent on [parent] by [user] via [idcard.registered_account.account_holder]'s card.") + idcard.registered_account.bank_card_talk("[total_cost] [MONEY_NAME] deducted from your account.") playsound(src, 'sound/effects/cashregister.ogg', 20, TRUE) SSeconomy.add_audit_entry(idcard.registered_account, total_cost, parent) return TRUE diff --git a/code/datums/components/plumbing/_plumbing.dm b/code/datums/components/plumbing/_plumbing.dm index d2414cc5af0feb..7f9fb329cc5956 100644 --- a/code/datums/components/plumbing/_plumbing.dm +++ b/code/datums/components/plumbing/_plumbing.dm @@ -1,150 +1,176 @@ /datum/component/plumbing dupe_mode = COMPONENT_DUPE_ALLOWED ///Index with "1" = /datum/ductnet/theductpointingnorth etc. "1" being the num2text from NORTH define - var/list/datum/ductnet/ducts = list() - ///shortcut to our parents' reagent holder + var/list/datum/ductnet/ducts + ///shortcut to our parents' reagent holder. The holder that sends reagents into the pipeline var/datum/reagents/reagents - ///TRUE if we wanna add proper pipe overlays under our parent object. this is pretty good if i may so so myself - var/use_overlays = TRUE ///Whether our tile is covered and we should hide our ducts var/tile_covered = FALSE ///directions in wich we act as a supplier - var/supply_connects + var/supply_connects = NONE ///direction in wich we act as a demander - var/demand_connects - ///FALSE to pretty much just not exist in the plumbing world so we can be moved, TRUE to go plumbo mode - var/active = FALSE - ///if TRUE connects will spin with the parent object visually and codually, so you can have it work in any direction. FALSE if you want it to be static - var/turn_connects = TRUE + var/demand_connects = NONE ///The layer on which we connect. Don't add multiple. If you want multiple layer connects for some reason you can just add multiple components with different layers var/ducting_layer = DUCT_LAYER_DEFAULT - ///In-case we don't want the main machine to get the reagents, but perhaps whoever is buckled to it - var/recipient_reagents_holder ///What color is our demand connect? var/demand_color = COLOR_RED ///What color is our supply connect? var/supply_color = COLOR_BLUE - ///Extend the pipe to the edge for wall-mounted plumbed devices, like sinks and showers - var/extend_pipe_to_edge = FALSE + /// How many distinct reagents can we accept at once + /// Ex - if this was set to "3", our component would only request the first 3 reagents found, even if more are available + var/distinct_reagent_cap = INFINITY ///turn_connects is for wheter or not we spin with the object to change our pipes -/datum/component/plumbing/Initialize(start=TRUE, ducting_layer, turn_connects=TRUE, datum/reagents/custom_receiver, extend_pipe_to_edge = FALSE) +/datum/component/plumbing/Initialize(ducting_layer) if(!ismovable(parent)) return COMPONENT_INCOMPATIBLE - if(ducting_layer) - src.ducting_layer = ducting_layer - var/atom/movable/parent_movable = parent - if(!parent_movable.reagents && !custom_receiver) + if(!parent_movable.reagents) return COMPONENT_INCOMPATIBLE - reagents = parent_movable.reagents - src.turn_connects = turn_connects - src.extend_pipe_to_edge = extend_pipe_to_edge + if(GLOB.plumbing_layer_names["[ducting_layer]"]) + src.ducting_layer = ducting_layer - set_recipient_reagents_holder(custom_receiver ? custom_receiver : parent_movable.reagents) + ducts = list() - if(start) + reagents = parent_movable.reagents + + if(parent_movable.anchored) enable() /datum/component/plumbing/RegisterWithParent() - RegisterSignals(parent, list(COMSIG_MOVABLE_MOVED, COMSIG_QDELETING), PROC_REF(disable)) - RegisterSignals(parent, list(COMSIG_OBJ_DEFAULT_UNFASTEN_WRENCH), PROC_REF(toggle_active)) + RegisterSignal(parent, COMSIG_MOVABLE_MOVED, PROC_REF(disable)) + RegisterSignal(parent, COMSIG_OBJ_DEFAULT_UNFASTEN_WRENCH, PROC_REF(toggle_active)) RegisterSignal(parent, COMSIG_OBJ_HIDE, PROC_REF(hide)) RegisterSignal(parent, COMSIG_ATOM_UPDATE_OVERLAYS, PROC_REF(create_overlays)) //called by lateinit on startup RegisterSignal(parent, COMSIG_ATOM_DIR_CHANGE, PROC_REF(on_parent_dir_change)) //called when placed on a shuttle and it moves, and other edge cases RegisterSignal(parent, COMSIG_MOVABLE_CHANGE_DUCT_LAYER, PROC_REF(change_ducting_layer)) + RegisterSignal(parent, COMSIG_ATOM_EXAMINE, PROC_REF(on_examine)) /datum/component/plumbing/UnregisterFromParent() - UnregisterSignal(parent, list(COMSIG_MOVABLE_MOVED, COMSIG_QDELETING, COMSIG_OBJ_DEFAULT_UNFASTEN_WRENCH, COMSIG_OBJ_HIDE, \ - COMSIG_ATOM_UPDATE_OVERLAYS, COMSIG_ATOM_DIR_CHANGE, COMSIG_MOVABLE_CHANGE_DUCT_LAYER)) - REMOVE_TRAIT(parent, TRAIT_UNDERFLOOR, REF(src)) + UnregisterSignal(parent, list( + COMSIG_MOVABLE_MOVED, + COMSIG_OBJ_DEFAULT_UNFASTEN_WRENCH, + COMSIG_OBJ_HIDE, + COMSIG_ATOM_UPDATE_OVERLAYS, + COMSIG_ATOM_DIR_CHANGE, + COMSIG_MOVABLE_CHANGE_DUCT_LAYER, + COMSIG_ATOM_EXAMINE, + )) /datum/component/plumbing/Destroy() - ducts = null + disable() + ducts.Cut() reagents = null - set_recipient_reagents_holder(null) //null is there so it's obvious we're setting this to nothing return ..() -/datum/component/plumbing/process() - if(!demand_connects || !reagents) - return PROCESS_KILL +///Returns if the machine is active or not +/datum/component/plumbing/proc/active() + var/atom/movable/parent_movable = parent + return parent_movable.anchored - if(!reagents.holder_full()) - for(var/D in GLOB.cardinals) - if(D & demand_connects) - send_request(D) +///Returns the reagent holder meant to receive the reagents. Can be different from the one that sends reagents to the network +/datum/component/plumbing/proc/recipient_reagents_holder() + return reagents -///Can we be added to the ductnet? -/datum/component/plumbing/proc/can_add(datum/ductnet/ductnet, dir) - if(!active) - return - if(!dir || !ductnet) - return FALSE - if(num2text(dir) in ducts) - return FALSE +///Give the direction of a pipe, and it'll return wich direction it originally was when its object pointed SOUTH +/datum/component/plumbing/proc/get_original_direction(dir) + if(!dir) + return 0 + var/atom/movable/parent_movable = parent + return turn(dir, dir2angle(parent_movable.dir) - 180) - return TRUE +///settle wherever we are, and start behaving like a piece of plumbing +/datum/component/plumbing/proc/enable() + var/atom/movable/parent_movable = parent -///called from in process(). only calls process_request(), but can be overwritten for children with special behaviour -/datum/component/plumbing/proc/send_request(dir) - process_request(dir = dir) + //We update our connects only when we settle down by taking our current and original direction to find our new connects -///check who can give us what we want, and how many each of them will give us -/datum/component/plumbing/proc/process_request(amount = MACHINE_REAGENT_TRANSFER, reagent, dir, round_robin = TRUE) - //find the duct to take from - var/datum/ductnet/net - if(!ducts.Find(num2text(dir))) - return FALSE - net = ducts[num2text(dir)] + demand_connects = initial(demand_connects) + supply_connects = initial(supply_connects) + if(parent_movable.dir != SOUTH) + var/angle = 180 - dir2angle(parent_movable.dir) + var/new_demand_connects = NONE + var/new_supply_connects = NONE + for(var/direction in GLOB.cardinals) + if(direction & demand_connects) + new_demand_connects |= turn(direction, angle) + if(direction & supply_connects) + new_supply_connects |= turn(direction, angle) + demand_connects = new_demand_connects + supply_connects = new_supply_connects - //find all valid suppliers in the duct - var/list/valid_suppliers = list() - for(var/datum/component/plumbing/supplier as anything in net.suppliers) - if(supplier.can_give(amount, reagent, net)) - valid_suppliers += supplier - var/suppliersLeft = valid_suppliers.len - if(!suppliersLeft) - return FALSE + if(demand_connects) + START_PROCESSING(SSplumbing, src) - //take an equal amount from each supplier - var/currentRequest - var/target_volume = reagents.total_volume + amount - for(var/datum/component/plumbing/give as anything in valid_suppliers) - currentRequest = (target_volume - reagents.total_volume) / suppliersLeft - give.transfer_to(src, currentRequest, reagent, net, round_robin) - suppliersLeft-- - return TRUE + for(var/direction in GLOB.cardinals) + if(!(direction & (demand_connects | supply_connects))) + continue -///returns TRUE when they can give the specified amount and reagent. called by process request -/datum/component/plumbing/proc/can_give(amount, reagent, datum/ductnet/net) - SHOULD_BE_PURE(TRUE) + var/opposite_dir = REVERSE_DIR(direction) + for(var/atom/movable/found_atom in get_step(parent, direction)) + var/obj/machinery/duct/duct = found_atom + if(istype(duct)) + if(duct.neighbours && (duct.duct_layer & ducting_layer)) + duct.neighbours[parent] = opposite_dir + duct.update_appearance(UPDATE_ICON_STATE) + duct.net.add_plumber(src, direction) + continue - if(amount <= 0) - return + for(var/datum/component/plumbing/plumber as anything in found_atom.GetComponents(/datum/component/plumbing)) + if(plumber.active() && (plumber.ducting_layer & ducting_layer)) + if((plumber.demand_connects & opposite_dir) && (supply_connects & direction) || (plumber.supply_connects & opposite_dir) && (demand_connects & direction)) //make sure we arent connecting two supplies or demands + var/datum/ductnet/net = new + net.add_plumber(src, direction) + net.add_plumber(plumber, opposite_dir) - if(reagent) //only asked for one type of reagent - for(var/datum/reagent/contained_reagent as anything in reagents.reagent_list) - if(contained_reagent.type == reagent) - return TRUE - else if(reagents.total_volume) //take whatever - return TRUE +/datum/component/plumbing/proc/disable() + SIGNAL_HANDLER - return FALSE + STOP_PROCESSING(SSplumbing, src) -///this is where the reagent is actually transferred and is thus the finish point of our process() -/datum/component/plumbing/proc/transfer_to(datum/component/plumbing/target, amount, reagent, datum/ductnet/net, round_robin = TRUE) - if(!reagents || !target || !target.reagents) - return FALSE + while(ducts.len) + var/datum/ductnet/net = ducts[ducts[1]] + + //disconnect ourself from any ducts connected to us + for(var/obj/machinery/duct/pipe as anything in net.ducts) + if(pipe.neighbours[parent]) + pipe.neighbours -= parent + pipe.update_appearance() + + //remove ourself from this network and delete it if emtpy + if(net.remove_plumber(src)) + qdel(net) + +/datum/component/plumbing/proc/toggle_active(obj/parent_obj, new_state) + SIGNAL_HANDLER + + // Follow atmos's rule of exposing the connection if you unwrench it and only hiding again if tile is placed back down. + if(tile_covered) + tile_covered = FALSE + parent_obj.update_appearance() + + if(new_state) + enable() + else + disable() - reagents.trans_to(target.recipient_reagents_holder, amount, target_id = reagent, methods = round_robin ? LINEAR : NONE) +/datum/component/plumbing/proc/hide(atom/movable/parent_obj, underfloor_accessibility) + SIGNAL_HANDLER + + var/atom/movable/parent_movable = parent + // If machine is unanchored, keep connector visible. + // This doesn't necessary map to `active`, so check parent. + var/should_hide = !underfloor_accessibility + if(parent_movable.anchored || !should_hide) + tile_covered = should_hide + parent_obj.update_appearance() -///We create our luxurious piping overlays/underlays, to indicate where we do what. only called once if use_overlays = TRUE in Initialize() /datum/component/plumbing/proc/create_overlays(atom/movable/parent_movable, list/overlays) SIGNAL_HANDLER - if(tile_covered || !use_overlays) + if(tile_covered) return //Copied from ducts handle_layer() @@ -165,7 +191,6 @@ var/duct_x = offset - parent_movable.pixel_x - parent_movable.pixel_w var/duct_y = offset - parent_movable.pixel_y - parent_movable.pixel_z var/duct_layer = PLUMBING_PIPE_VISIBILE_LAYER + ducting_layer * 0.0003 - var/extension_handled = FALSE for(var/direction in GLOB.cardinals) var/color @@ -176,201 +201,128 @@ else continue - var/direction_text = dir2text(direction) - - var/image/overlay - if(turn_connects) - overlay = image('icons/obj/pipes_n_cables/hydrochem/connects.dmi', "[direction_text]-[ducting_layer]", layer = duct_layer) - else - overlay = image('icons/obj/pipes_n_cables/hydrochem/connects.dmi', "[direction_text]-[ducting_layer]-s", layer = duct_layer) - overlay.dir = direction - + var/image/overlay = image('icons/obj/pipes_n_cables/hydrochem/connects.dmi', "[dir2text(direction)]-[ducting_layer]", layer = duct_layer) overlay.color = color overlay.pixel_w = duct_x overlay.pixel_z = duct_y - overlays += overlay - // This is a little wiggley extension to make wallmounts like sinks and showers visually link to the pipe - if(extend_pipe_to_edge && !extension_handled) - var/image/edge_overlay = image('icons/obj/pipes_n_cables/hydrochem/connects.dmi', "edge-extension", layer = duct_layer) - edge_overlay.dir = parent_movable.dir - edge_overlay.color = color - edge_overlay.pixel_w = -parent_movable.pixel_x - parent_movable.pixel_w - edge_overlay.pixel_z = -parent_movable.pixel_y - parent_movable.pixel_z - overlays += edge_overlay - // only show extension for the first pipe. This means we'll only reflect that color. - extension_handled = TRUE - -///we stop acting like a plumbing thing and disconnect if we are, so we can safely be moved and stuff -/datum/component/plumbing/proc/disable() +/datum/component/plumbing/proc/on_parent_dir_change(atom/movable/parent_obj, old_dir, new_dir) SIGNAL_HANDLER - if(!active) + if(old_dir == new_dir) return - STOP_PROCESSING(SSplumbing, src) - - //remove_plumber() can remove all ducts at once if they all belong to the same pipenet - //for e.g. in case of circular connections - //so we check if we have ducts to remove after each iteration - while(ducts.len) - var/datum/ductnet/duct = ducts[ducts[1]] //for maps index 1 will return the 1st key - duct.remove_plumber(src) - - active = FALSE - - for(var/direction in GLOB.cardinals) - if(!(direction & (demand_connects | supply_connects))) - continue - for(var/obj/machinery/duct/duct in get_step(parent, direction)) - if(!(duct.duct_layer & ducting_layer)) - continue - duct.remove_connects(REVERSE_DIR(direction)) - duct.neighbours.Remove(parent) - duct.update_appearance() - -///settle wherever we are, and start behaving like a piece of plumbing -/datum/component/plumbing/proc/enable() - if(active) - return + // Defer to later frame because pixel_* is actually updated after all callbacks + addtimer(CALLBACK(parent_obj, TYPE_PROC_REF(/atom/, update_appearance)), 0.1 SECONDS) - update_dir() - active = TRUE +/datum/component/plumbing/proc/change_ducting_layer(obj/source, obj/changer, new_layer = DUCT_LAYER_DEFAULT) + SIGNAL_HANDLER + ducting_layer = new_layer var/atom/movable/parent_movable = parent - // Destroy any ducts under us on the same layer. - // Ducts also self-destruct if placed under a plumbing machine. - // Machines disable when they get moved - for(var/obj/machinery/duct/duct in parent_movable.loc) - if(duct.anchored && (duct.duct_layer & ducting_layer)) - duct.disconnect_duct() - - if(demand_connects) - START_PROCESSING(SSplumbing, src) - - for(var/direction in GLOB.cardinals) - if(!(direction & (demand_connects | supply_connects))) - continue - for(var/atom/movable/found_atom in get_step(parent, direction)) - if(istype(found_atom, /obj/machinery/duct)) - var/obj/machinery/duct/duct = found_atom - duct.attempt_connect() - continue - - for(var/datum/component/plumbing/plumber as anything in found_atom.GetComponents(/datum/component/plumbing)) - if(plumber.ducting_layer & ducting_layer) - direct_connect(plumber, direction) + parent_movable.update_appearance() -/// Toggle our machinery on or off. This is called by a hook from default_unfasten_wrench with anchored as only param, so we dont have to copypaste this on every object that can move -/datum/component/plumbing/proc/toggle_active(obj/parent_obj, new_state) - SIGNAL_HANDLER - // Follow atmos's rule of exposing the connection if you unwrench it and only hiding again if tile is placed back down. - if(tile_covered) - tile_covered = FALSE - parent_obj.update_appearance() + if(changer) + playsound(changer, 'sound/items/tools/ratchet.ogg', 10, TRUE) //sound - if(new_state) - enable() - else + //quickly disconnect and reconnect the network. + if(active()) disable() + enable() -/** We update our connects only when we settle down by taking our current and original direction to find our new connects -* If someone wants it to fucking spin while connected to something go actually knock yourself out -*/ -/datum/component/plumbing/proc/update_dir() - if(!turn_connects) - return - - var/atom/movable/AM = parent - var/new_demand_connects - var/new_supply_connects - var/new_dir = AM.dir - var/angle = 180 - dir2angle(new_dir) - - if(new_dir == SOUTH) - demand_connects = initial(demand_connects) - supply_connects = initial(supply_connects) - else - for(var/direction in GLOB.cardinals) - if(direction & initial(demand_connects)) - new_demand_connects += turn(direction, angle) - if(direction & initial(supply_connects)) - new_supply_connects += turn(direction, angle) - demand_connects = new_demand_connects - supply_connects = new_supply_connects +/datum/component/plumbing/process() + if(!demand_connects) + return PROCESS_KILL -///Give the direction of a pipe, and it'll return wich direction it originally was when its object pointed SOUTH -/datum/component/plumbing/proc/get_original_direction(dir) - var/atom/movable/parent_movable = parent - return turn(dir, dir2angle(parent_movable.dir) - 180) + var/datum/reagents/receiver = recipient_reagents_holder() + if(QDELETED(receiver)) + return PROCESS_KILL -//special case in-case we want to connect directly with another machine without a duct -/datum/component/plumbing/proc/direct_connect(datum/component/plumbing/plumbing, dir) - if(!plumbing.active) - return - var/opposite_dir = REVERSE_DIR(dir) - if(plumbing.demand_connects & opposite_dir && supply_connects & dir || plumbing.supply_connects & opposite_dir && demand_connects & dir) //make sure we arent connecting two supplies or demands - var/datum/ductnet/net = new() - net.add_plumber(src, dir) - net.add_plumber(plumbing, opposite_dir) + if(!receiver.holder_full()) + for(var/dir in GLOB.cardinals) + if(dir & demand_connects) + send_request(dir) -/datum/component/plumbing/proc/hide(atom/movable/parent_obj, underfloor_accessibility) +/datum/component/plumbing/proc/on_examine(atom/movable/source, mob/user, list/examine_list) SIGNAL_HANDLER - // If machine is unanchored, keep connector visible. - // This doesn't necessary map to `active`, so check parent. - var/atom/movable/parent_movable = parent - - var/should_hide = !underfloor_accessibility + if(distinct_reagent_cap != INFINITY) + examine_list += span_notice("This plumbing component will only accept up to [distinct_reagent_cap] distinct reagents at once.") - if(should_hide) - ADD_TRAIT(parent_obj, TRAIT_UNDERFLOOR, REF(src)) - else - REMOVE_TRAIT(parent_obj, TRAIT_UNDERFLOOR, REF(src)) +///called from in process(). only calls process_request(), but can be overwritten for children with special behaviour +/datum/component/plumbing/proc/send_request(dir) + var/amount_to_give = MACHINE_REAGENT_TRANSFER + // infinite cap means we need to special handling, process_request will just grab as much as it wants. + if(distinct_reagent_cap == INFINITY) + process_request(amount_to_give, null, dir) // null for no specific reagent, we're not picky. + return - if(parent_movable.anchored || !should_hide) - tile_covered = should_hide - parent_obj.update_appearance() + // we have a cap, so we need to figure out what reagents we want + var/list/all_allowed_reagents = get_all_network_reagents(ducts["[dir]"]) + if(length(all_allowed_reagents) > distinct_reagent_cap) + all_allowed_reagents.Cut(distinct_reagent_cap + 1) + else if(!length(all_allowed_reagents)) + return -/datum/component/plumbing/proc/change_ducting_layer(obj/source, obj/changer, new_layer = DUCT_LAYER_DEFAULT) - SIGNAL_HANDLER - ducting_layer = new_layer + // request an even amount of each allowed reagent + var/amount_per_reagent = round(amount_to_give / length(all_allowed_reagents), CHEMICAL_VOLUME_ROUNDING) + for(var/allowed_reagent in all_allowed_reagents) + process_request(amount_per_reagent, allowed_reagent, dir) + +/// Returns a list of all distinct reagent types available in the passed duct network. +/// The passed net can be null, it is handled. +/datum/component/plumbing/proc/get_all_network_reagents(datum/ductnet/net) + var/list/distinct_reagents = list() + for(var/datum/reagent/existing_regent as anything in reagents.reagent_list) + distinct_reagents |= existing_regent.type + for(var/datum/component/plumbing/supplier as anything in net?.suppliers) + for(var/datum/reagent/chemical as anything in supplier.reagents.reagent_list) + distinct_reagents |= chemical.type + return distinct_reagents - var/atom/movable/parent_movable = parent - parent_movable.update_appearance() +///check who can give us what we want, and how many each of them will give us +/datum/component/plumbing/proc/process_request(amount = MACHINE_REAGENT_TRANSFER, reagent, dir, round_robin = TRUE) + //find the duct to take from + var/dirtext = num2text(dir) + var/datum/ductnet/net = ducts[dirtext] + if(QDELETED(net)) + if(net) + ducts -= dirtext + return FALSE - if(changer) - playsound(changer, 'sound/items/tools/ratchet.ogg', 10, TRUE) //sound + //find all valid suppliers in the duct + var/list/valid_suppliers = list() + for(var/datum/component/plumbing/supplier as anything in net?.suppliers) + if(supplier.can_give(amount, reagent, net)) + valid_suppliers += supplier + var/suppliersLeft = length(valid_suppliers) + if(!suppliersLeft) + return FALSE - //quickly disconnect and reconnect the network. - if(active) - disable() - enable() + //take an equal amount from each supplier + var/currentRequest + var/target_volume = reagents.total_volume + amount + for(var/datum/component/plumbing/give as anything in valid_suppliers) + currentRequest = (target_volume - reagents.total_volume) / suppliersLeft + give.transfer_to(src, currentRequest, reagent, net, round_robin) + suppliersLeft-- + return TRUE -/datum/component/plumbing/proc/set_recipient_reagents_holder(datum/reagents/receiver) - if(recipient_reagents_holder) - UnregisterSignal(recipient_reagents_holder, COMSIG_QDELETING) //stop tracking whoever we were tracking - if(receiver) - RegisterSignal(receiver, COMSIG_QDELETING, PROC_REF(handle_reagent_del)) //on deletion call a wrapper proc that clears us, and maybe reagents too +///returns TRUE when they can give the specified amount and reagent. called by process request +/datum/component/plumbing/proc/can_give(amount, reagent, datum/ductnet/net) + SHOULD_BE_PURE(TRUE) - recipient_reagents_holder = receiver + if(amount <= 0) + return FALSE -/datum/component/plumbing/proc/handle_reagent_del(datum/source) - SIGNAL_HANDLER - if(source == reagents) - reagents = null - if(source == recipient_reagents_holder) - set_recipient_reagents_holder(null) - -/** - * Called when the dir changes. Need to adjust positioning of pipes. - */ -/datum/component/plumbing/proc/on_parent_dir_change(atom/movable/parent_obj, old_dir, new_dir) - SIGNAL_HANDLER + if(reagent) //only asked for one type of reagent + return reagents.has_reagent(reagent) + else if(reagents.total_volume) //take whatever + return TRUE - if(old_dir == new_dir) - return + return FALSE - // Defer to later frame because pixel_* is actually updated after all callbacks - addtimer(CALLBACK(parent_obj, TYPE_PROC_REF(/atom/, update_appearance)), 0.1 SECONDS) +///this is where the reagent is actually transferred and is thus the finish point of our process() +/datum/component/plumbing/proc/transfer_to(datum/component/plumbing/target, amount, reagent, datum/ductnet/net, round_robin = TRUE) + reagents.trans_to(target.recipient_reagents_holder(), amount, target_id = reagent, methods = round_robin ? LINEAR : NONE) diff --git a/code/datums/components/plumbing/automated_iv.dm b/code/datums/components/plumbing/automated_iv.dm new file mode 100644 index 00000000000000..12220ecfa71393 --- /dev/null +++ b/code/datums/components/plumbing/automated_iv.dm @@ -0,0 +1,34 @@ +/datum/component/plumbing/automated_iv + demand_connects = SOUTH + supply_connects = NORTH + distinct_reagent_cap = 3 + ///Temporary holder to store all the reagents from the iv drip before transferring to the ducts + var/datum/reagents/plumbing/holder + +/datum/component/plumbing/automated_iv/Initialize(ducting_layer) + if(!istype(parent, /obj/machinery/iv_drip/plumbing)) + return COMPONENT_INCOMPATIBLE + . = ..() + var/obj/machinery/iv_drip/plumbing/drip = parent + holder = new(drip.reagents.maximum_volume, drip.reagents.flags) + holder.my_atom = drip + +/datum/component/plumbing/automated_iv/Destroy(force) + QDEL_NULL(holder) + return ..() + +/datum/component/plumbing/automated_iv/can_give(amount, reagent) + var/obj/machinery/iv_drip/plumbing/drip = parent + return ..() && drip.mode == IV_TAKING + +/datum/component/plumbing/automated_iv/send_request(dir) + var/obj/machinery/iv_drip/plumbing/drip = parent + if(drip.mode == IV_INJECTING) + return ..() + +/datum/component/plumbing/automated_iv/transfer_to(datum/component/plumbing/target, amount, reagent, datum/ductnet/net, round_robin = TRUE) + reagents.trans_to(holder, reagents.total_volume) + reagents = holder + . = ..() + var/obj/machinery/iv_drip/plumbing/drip = parent + reagents = drip.reagents diff --git a/code/datums/components/plumbing/buffer.dm b/code/datums/components/plumbing/buffer.dm index 608d8df9fbc4ba..07a37bdf05548f 100644 --- a/code/datums/components/plumbing/buffer.dm +++ b/code/datums/components/plumbing/buffer.dm @@ -4,10 +4,9 @@ demand_connects = WEST supply_connects = EAST -/datum/component/plumbing/buffer/Initialize(start = TRUE, _turn_connects = TRUE, _ducting_layer, datum/reagents/custom_receiver) +/datum/component/plumbing/buffer/Initialize(ducting_layer) if(!istype(parent, /obj/machinery/plumbing/buffer)) return COMPONENT_INCOMPATIBLE - return ..() /datum/component/plumbing/buffer/can_give(amount, reagent, datum/ductnet/net) diff --git a/code/datums/components/plumbing/chemical_acclimator.dm b/code/datums/components/plumbing/chemical_acclimator.dm index f84252c51de7b1..eb1ba90ad56cbf 100644 --- a/code/datums/components/plumbing/chemical_acclimator.dm +++ b/code/datums/components/plumbing/chemical_acclimator.dm @@ -3,23 +3,18 @@ supply_connects = EAST var/obj/machinery/plumbing/acclimator/myacclimator -/datum/component/plumbing/acclimator/Initialize(start=TRUE, _ducting_layer, _turn_connects=TRUE, datum/reagents/custom_receiver) - . = ..() +/datum/component/plumbing/acclimator/Initialize(ducting_layer) if(!istype(parent, /obj/machinery/plumbing/acclimator)) return COMPONENT_INCOMPATIBLE - myacclimator = parent - -/datum/component/plumbing/acclimator/Destroy(force) - myacclimator = null return ..() /datum/component/plumbing/acclimator/can_give(amount, reagent) - . = ..() - if(. && myacclimator.emptying) - return TRUE - return FALSE + var/obj/machinery/plumbing/acclimator/myacclimator = parent + + return myacclimator.emptying && ..() + ///We're overriding process and not send_request, because all process does is do the requests, so we might aswell cut out the middle man and save some code from running /datum/component/plumbing/acclimator/process() - if(myacclimator.emptying) - return - return ..() + var/obj/machinery/plumbing/acclimator/myacclimator = parent + if(!myacclimator.emptying) + ..() diff --git a/code/datums/components/plumbing/ductnet.dm b/code/datums/components/plumbing/ductnet.dm new file mode 100644 index 00000000000000..616bd87d777400 --- /dev/null +++ b/code/datums/components/plumbing/ductnet.dm @@ -0,0 +1,48 @@ +///We handle the unity part of plumbing. We track who is connected to who. +/datum/ductnet + ///All the ducts that make this network + var/list/obj/machinery/duct/ducts + ///Stuff that can supply chems used by machines to retrive chems + var/list/datum/component/plumbing/suppliers + ///Stuff that demands chems keep track of components that need their ducts updated as this net evolves + var/list/datum/component/plumbing/demanders + +/datum/ductnet/New(obj/machinery/duct/parent) + ducts = parent ? list(parent) : list() + suppliers = list() + demanders = list() + return ..() + +/datum/ductnet/Destroy(force) + ducts.Cut() + for(var/datum/component/plumbing/plumbing as anything in suppliers + demanders) + remove_plumber(plumbing) + suppliers.Cut() + demanders.Cut() + return ..() + +///add a plumbing object to either demanders or suppliers +/datum/ductnet/proc/add_plumber(datum/component/plumbing/plumbing, dir) + var/dirtext = num2text(dir) + if(plumbing.ducts[dirtext] == src) + return FALSE + plumbing.ducts[dirtext] = src + if(dir & plumbing.supply_connects) + suppliers += plumbing + if(dir & plumbing.demand_connects) + demanders += plumbing + return TRUE + +///remove a plumber. we don't delete ourselves because ductnets don't persist through plumbing objects. +/datum/ductnet/proc/remove_plumber(datum/component/plumbing/plumbing) + for(var/dir in plumbing.ducts) + if(plumbing.ducts[dir] == src) + plumbing.ducts -= dir + dir = text2num(dir) + if(dir & plumbing.supply_connects) + suppliers -= plumbing + if(dir & plumbing.demand_connects) + demanders -= plumbing + + //return if this net has no ducts like when 2 machines are connected + return ducts.len == 0 diff --git a/code/datums/components/plumbing/filter.dm b/code/datums/components/plumbing/filter.dm index 76f3a7e13274e5..b3f81a48c09ce6 100644 --- a/code/datums/components/plumbing/filter.dm +++ b/code/datums/components/plumbing/filter.dm @@ -3,10 +3,10 @@ demand_connects = NORTH supply_connects = SOUTH | EAST | WEST //SOUTH is straight, EAST is left and WEST is right. We look from the perspective of the insert -/datum/component/plumbing/filter/Initialize(start=TRUE, _ducting_layer, _turn_connects=TRUE, datum/reagents/custom_receiver) - . = ..() +/datum/component/plumbing/filter/Initialize(ducting_layer) if(!istype(parent, /obj/machinery/plumbing/filter)) return COMPONENT_INCOMPATIBLE + return ..() /datum/component/plumbing/filter/can_give(amount, reagent, datum/ductnet/net) . = ..() diff --git a/code/datums/components/plumbing/hydroponics.dm b/code/datums/components/plumbing/hydroponics.dm new file mode 100644 index 00000000000000..eb10485f176324 --- /dev/null +++ b/code/datums/components/plumbing/hydroponics.dm @@ -0,0 +1,60 @@ +/// Special demand connector that consumes as normal, but redirects water into the magical water space. +/datum/component/plumbing/hydroponics + demand_connects = SOUTH + /// Alternate reagents container to buffer incoming water + var/datum/reagents/water_reagents + /// Decides if we receive either water or regular reagents + var/receive_water = FALSE + +/datum/component/plumbing/hydroponics/Initialize(ducting_layer) + . = ..() + + if(!istype(parent, /obj/machinery/hydroponics/constructable)) + return COMPONENT_INCOMPATIBLE + + var/obj/machinery/hydroponics/constructable/hydro_parent = parent + + water_reagents = new(hydro_parent.maxwater) + water_reagents.my_atom = hydro_parent + +/datum/component/plumbing/hydroponics/Destroy() + QDEL_NULL(water_reagents) + return ..() + +/datum/component/plumbing/hydroponics/recipient_reagents_holder() + return receive_water ? water_reagents : reagents + +/datum/component/plumbing/hydroponics/send_request(dir) + var/obj/machinery/hydroponics/constructable/hydro_parent = parent + + var/initial_nutri_amount = reagents.total_volume + if(initial_nutri_amount < reagents.maximum_volume) + // Well boy howdy, we have no way to tell a supply to not mix the water with everything else, + // So we'll let it leak in, and move the water over. + receive_water = FALSE + process_request(dir = dir, round_robin = FALSE) + + // Move the leaked water from nutrients to... water + var/leaking_water_amount = reagents.get_reagent_amount(/datum/reagent/water) + if(leaking_water_amount) + reagents.trans_to(water_reagents, leaking_water_amount, target_id = /datum/reagent/water) + + // We should only take MACHINE_REAGENT_TRANSFER every tick; this is the remaining amount we can take + var/remaining_transfer_amount = max(MACHINE_REAGENT_TRANSFER - (reagents.total_volume - initial_nutri_amount), 0) + + // How much extra water we should gather this tick to try to fill the water tray. + var/extra_water_to_gather = clamp(hydro_parent.maxwater - hydro_parent.waterlevel - water_reagents.total_volume, 0, remaining_transfer_amount) + if(extra_water_to_gather > 0) + receive_water = TRUE + process_request( + amount = extra_water_to_gather, + reagent = /datum/reagent/water, + dir = dir + ) + + // Now transfer all remaining water in that buffer and clear it out. + var/final_water_amount = water_reagents.total_volume + if(final_water_amount) + hydro_parent.adjust_waterlevel(round(final_water_amount)) + // Using a pipe doesn't afford you extra water storage and the baseline behavior for trays is that excess water goes into the shadow realm. + water_reagents.clear_reagents() diff --git a/code/datums/components/plumbing/reaction_chamber.dm b/code/datums/components/plumbing/reaction_chamber.dm index 07ea18e13da6e4..8a5b0e66050801 100644 --- a/code/datums/components/plumbing/reaction_chamber.dm +++ b/code/datums/components/plumbing/reaction_chamber.dm @@ -2,10 +2,10 @@ demand_connects = NORTH supply_connects = SOUTH -/datum/component/plumbing/reaction_chamber/Initialize(start=TRUE, _ducting_layer, _turn_connects=TRUE, datum/reagents/custom_receiver) - . = ..() +/datum/component/plumbing/reaction_chamber/Initialize(ducting_layer) if(!istype(parent, /obj/machinery/plumbing/reaction_chamber)) return COMPONENT_INCOMPATIBLE + return ..() /datum/component/plumbing/reaction_chamber/can_give(amount, reagent, datum/ductnet/net) . = FALSE @@ -66,22 +66,37 @@ if(chamber.emptying) //if we are still emptying then keep checking for reagents until we are emptied out chamber.RegisterSignal(reagents, COMSIG_REAGENTS_HOLDER_UPDATED, TYPE_PROC_REF(/obj/machinery/plumbing/reaction_chamber, on_reagent_change)) +/datum/component/plumbing/buffered + ///The reagent to request into this buffer + VAR_PROTECTED/datum/reagent/request + ///The buffer meant to store reagents + VAR_PRIVATE/datum/reagents/buffer + +/datum/component/plumbing/buffered/Initialize(ducting_layer) + . = ..() + buffer = new (maximum = 50, new_flags = NO_REACT) + buffer.my_atom = parent + +/datum/component/plumbing/buffered/Destroy() + QDEL_NULL(buffer) + return ..() + +/datum/component/plumbing/buffered/recipient_reagents_holder() + return buffer + +/datum/component/plumbing/buffered/send_request(dir) + process_request(reagent = request, dir = dir) + ///Special connect that we currently use for reaction chambers. Being used so we can keep certain inputs separate, like into a special internal acid container -/datum/component/plumbing/acidic_input +/datum/component/plumbing/buffered/acidic_input demand_connects = WEST demand_color = COLOR_YELLOW ducting_layer = SECOND_DUCT_LAYER - -/datum/component/plumbing/acidic_input/send_request(dir) - process_request(reagent = /datum/reagent/reaction_agent/acidic_buffer, dir = dir) + request = /datum/reagent/reaction_agent/acidic_buffer ///Special connect that we currently use for reaction chambers. Being used so we can keep certain inputs separate, like into a special internal base container -/datum/component/plumbing/alkaline_input +/datum/component/plumbing/buffered/alkaline_input demand_connects = EAST demand_color = COLOR_VIBRANT_LIME ducting_layer = FOURTH_DUCT_LAYER - -/datum/component/plumbing/alkaline_input/send_request(dir) - process_request(reagent = /datum/reagent/reaction_agent/basic_buffer, dir = dir) - - + request = /datum/reagent/reaction_agent/basic_buffer diff --git a/code/datums/components/plumbing/simple_components.dm b/code/datums/components/plumbing/simple_components.dm index 1378780353a406..c86dddda391bf0 100644 --- a/code/datums/components/plumbing/simple_components.dm +++ b/code/datums/components/plumbing/simple_components.dm @@ -3,6 +3,23 @@ /datum/component/plumbing/simple_demand demand_connects = SOUTH +/datum/component/plumbing/simple_demand/Initialize(ducting_layer, distinct_reagent_cap = INFINITY) + src.distinct_reagent_cap = distinct_reagent_cap + return ..() + +///Component for adding an extended overlay on wall mounts +/datum/component/plumbing/simple_demand/extended/create_overlays(atom/movable/parent_movable, list/overlays) + . = ..() + + // This is a little wiggley extension to make wallmounts like sinks and showers visually link to the pipe + if(overlays.len) + var/image/edge_overlay = image('icons/obj/pipes_n_cables/hydrochem/connects.dmi', "edge-extension", layer = PLUMBING_PIPE_VISIBILE_LAYER + ducting_layer * 0.0003) + edge_overlay.dir = parent_movable.dir + edge_overlay.color = demand_color + edge_overlay.pixel_w = -parent_movable.pixel_x - parent_movable.pixel_w + edge_overlay.pixel_z = -parent_movable.pixel_y - parent_movable.pixel_z + overlays += edge_overlay + ///has one pipe output that only supplies. example is liquid pump and manual input pipe /datum/component/plumbing/simple_supply supply_connects = SOUTH @@ -12,10 +29,13 @@ demand_connects = WEST supply_connects = EAST -///Lazily demand from any direction. Overlays won't look good, and the aquarium sprite occupies about the entire 32x32 area anyway. +///Lazily demand from any direction. /datum/component/plumbing/aquarium demand_connects = SOUTH|NORTH|EAST|WEST - use_overlays = FALSE + +/datum/component/plumbing/aquarium/create_overlays(atom/movable/parent_movable, list/overlays) + //Overlays won't look good, and the aquarium sprite occupies about the entire 32x32 area anyway. + return ///Connects different layer of ducts /datum/component/plumbing/manifold diff --git a/code/datums/components/plumbing/splitter.dm b/code/datums/components/plumbing/splitter.dm index f94c78c490438b..89084bf5712587 100644 --- a/code/datums/components/plumbing/splitter.dm +++ b/code/datums/components/plumbing/splitter.dm @@ -2,10 +2,10 @@ demand_connects = NORTH supply_connects = SOUTH | EAST -/datum/component/plumbing/splitter/Initialize(start=TRUE, _ducting_layer, _turn_connects=TRUE, datum/reagents/custom_receiver) - . = ..() - if(. && !istype(parent, /obj/machinery/plumbing/splitter)) - return FALSE +/datum/component/plumbing/splitter/Initialize(ducting_layer) + if(!istype(parent, /obj/machinery/plumbing/splitter)) + return COMPONENT_INCOMPATIBLE + return ..() /datum/component/plumbing/splitter/can_give(amount, reagent, datum/ductnet/net) . = ..() diff --git a/code/datums/components/plundering_attacks.dm b/code/datums/components/plundering_attacks.dm index f55fa42b0717be..93aa429254961e 100644 --- a/code/datums/components/plundering_attacks.dm +++ b/code/datums/components/plundering_attacks.dm @@ -44,7 +44,7 @@ amount_to_steal = account_to_rob.account_balance plunder_stored += amount_to_steal account_to_rob.adjust_money(-amount_to_steal) - account_to_rob.bank_card_talk("Transaction confirmed! Transferred [amount_to_steal] credits to \!") + account_to_rob.bank_card_talk("Transaction confirmed! Transferred [amount_to_steal] [MONEY_NAME] to \!") /datum/component/plundering_attacks/proc/drop_plunder() SIGNAL_HANDLER diff --git a/code/datums/components/pricetag.dm b/code/datums/components/pricetag.dm index dfa1471ec91216..d8636952921e94 100644 --- a/code/datums/components/pricetag.dm +++ b/code/datums/components/pricetag.dm @@ -91,7 +91,7 @@ overall_item_price = max(0, overall_item_price - payee_cut) payee.adjust_money(payee_cut, "Pricetag: [capitalize(format_text(source.name))] Sale") - payee.bank_card_talk("Sale of [source] recorded. [payee_cut] credits added to account.") + payee.bank_card_talk("Sale of [source] recorded. [payee_cut] [MONEY_NAME] added to account.") // Update the report with the modified final price report.total_value[export] += overall_item_price diff --git a/code/datums/components/proficient_miner.dm b/code/datums/components/proficient_miner.dm index cdc3b65871b4fa..cd9d02b1bd57df 100644 --- a/code/datums/components/proficient_miner.dm +++ b/code/datums/components/proficient_miner.dm @@ -1,11 +1,17 @@ /// Component given to mobs that can mine when moving /datum/component/proficient_miner + /// Toolspeed for mining, 0 will cause it to instamine rock + var/mining_speed = 0 + /// Should we pass the do_after visuals to our rider if we are a mob? + var/pass_driver = FALSE /// Last tick when we bumpmined. Prevents diagonal bumpnining being thrice as fast as normal var/last_bumpmine_tick = -1 -/datum/component/proficient_miner/Initialize() +/datum/component/proficient_miner/Initialize(mining_speed = 0, pass_driver = FALSE) if (!ismovable(parent)) return COMPONENT_INCOMPATIBLE + src.mining_speed = mining_speed + src.pass_driver = pass_driver /datum/component/proficient_miner/RegisterWithParent() RegisterSignal(parent, COMSIG_MOVABLE_BUMP, PROC_REF(on_bump)) @@ -26,12 +32,37 @@ return var/turf/closed/mineral/mineral_wall = target - if(!istype(mineral_wall, /turf/closed/mineral/gibtonite)) - last_bumpmine_tick = world.time - mineral_wall.gets_drilled(source) + if(istype(mineral_wall, /turf/closed/mineral/gibtonite)) + var/turf/closed/mineral/gibtonite/gibtonite_wall = mineral_wall + if(gibtonite_wall.stage != GIBTONITE_UNSTRUCK) + return + + if(user && mining_speed > 0) + INVOKE_ASYNC(src, PROC_REF(slow_mine), user, target) + return + + last_bumpmine_tick = world.time + mineral_wall.gets_drilled(source) + +/datum/component/proficient_miner/proc/slow_mine(mob/living/user, turf/closed/mineral/mineral_wall) + if(TIMER_COOLDOWN_RUNNING(mineral_wall, REF(user))) //prevents mining turfs in progress return - var/turf/closed/mineral/gibtonite/gibtonite_wall = mineral_wall - if(gibtonite_wall.stage == GIBTONITE_UNSTRUCK) - last_bumpmine_tick = world.time - mineral_wall.gets_drilled(source) + var/mining_delay = mineral_wall.tool_mine_speed * mining_speed + TIMER_COOLDOWN_START(mineral_wall, REF(user), mining_delay) + var/static/list/mine_sounds = list('sound/effects/pickaxe/picaxe1.ogg', 'sound/effects/pickaxe/picaxe2.ogg', 'sound/effects/pickaxe/picaxe3.ogg') + playsound(user, pick(mine_sounds), 50) + + var/mob/living/driver = null + if (pass_driver && length(user.buckled_mobs)) + driver = user.buckled_mobs[1] + + if(!do_after(user, mining_delay, mineral_wall, bar_override = driver)) + TIMER_COOLDOWN_END(mineral_wall, REF(user)) //if we fail we can start again immediately + return + + if (mining_delay > MIN_TOOL_SOUND_DELAY) + playsound(user, pick(mine_sounds), 50) + + if(istype(mineral_wall)) + mineral_wall.gets_drilled(driver || user) diff --git a/code/datums/components/radioactive_exposure.dm b/code/datums/components/radioactive_exposure.dm index b8a034e7788299..324e8c28e2957d 100644 --- a/code/datums/components/radioactive_exposure.dm +++ b/code/datums/components/radioactive_exposure.dm @@ -75,4 +75,5 @@ /atom/movable/screen/alert/radioactive_area name = "Radioactive Area" desc = "This place is no good! We need to get some protection or get out fast!" - icon_state = ALERT_RADIOACTIVE_AREA + use_user_hud_icon = TRUE + overlay_state = "radioactive_area" diff --git a/code/datums/components/regenerator.dm b/code/datums/components/regenerator.dm index 44c189eaf2f06d..9e9fdc09738c01 100644 --- a/code/datums/components/regenerator.dm +++ b/code/datums/components/regenerator.dm @@ -115,13 +115,13 @@ var/need_mob_update = FALSE if(brute_per_second) - need_mob_update += living_parent.adjustBruteLoss(-1 * heal_mod * brute_per_second * seconds_per_tick, updating_health = FALSE) + need_mob_update += living_parent.adjust_brute_loss(-1 * heal_mod * brute_per_second * seconds_per_tick, updating_health = FALSE) if(burn_per_second) - need_mob_update += living_parent.adjustFireLoss(-1 * heal_mod * burn_per_second * seconds_per_tick, updating_health = FALSE) + need_mob_update += living_parent.adjust_fire_loss(-1 * heal_mod * burn_per_second * seconds_per_tick, updating_health = FALSE) if(tox_per_second) - need_mob_update += living_parent.adjustToxLoss(-1 * heal_mod * tox_per_second * seconds_per_tick, updating_health = FALSE) + need_mob_update += living_parent.adjust_tox_loss(-1 * heal_mod * tox_per_second * seconds_per_tick, updating_health = FALSE) if(oxy_per_second) - need_mob_update += living_parent.adjustOxyLoss(-1 * heal_mod * oxy_per_second * seconds_per_tick, updating_health = FALSE) + need_mob_update += living_parent.adjust_oxy_loss(-1 * heal_mod * oxy_per_second * seconds_per_tick, updating_health = FALSE) if(heals_wounds && iscarbon(parent)) var/mob/living/carbon/carbon_parent = living_parent diff --git a/code/datums/components/reskinnable_atom.dm b/code/datums/components/reskinnable_atom.dm new file mode 100644 index 00000000000000..84566458593b2f --- /dev/null +++ b/code/datums/components/reskinnable_atom.dm @@ -0,0 +1,208 @@ +/** + * ### Atom skin singleton datum + * + * Simple datum which holds information about a skin that can be applied to an atom. + */ +/datum/atom_skin + abstract_type = /datum/atom_skin + + /// Required, name shown in the radial menu + var/preview_name + + /// If true, changing the reskin also changes the base_icon_state of the atom + var/change_base_icon_state = FALSE + /// If true, changing the reskin also changes the inhand_icon_state of the atom + var/change_inhand_icon_state = FALSE + /// If true, unset vars are reset to their original values when applying this skin + var/reset_missing = TRUE + + /// Optional, name to change the atom to when applied + var/new_name + /// Optional, description to change the atom to when applied + var/new_desc + /// Optional, icon to change the atom to when applied + var/new_icon + /// Optional, icon_state to change the atom to when applied + var/new_icon_state + +/** + * Applies all relevant skin changes to the given atom + * Can be overridden to add additional behavior, such as registering signals or altering other vars. + * + * * apply_to: The atom to apply the skin to + */ +/datum/atom_skin/proc/apply(atom/apply_to) + SHOULD_CALL_PARENT(TRUE) + APPLY_VAR_OR_RESET_INITIAL(apply_to, name, new_name, reset_missing) + APPLY_VAR_OR_RESET_INITIAL(apply_to, desc, new_desc, reset_missing) + APPLY_VAR_OR_RESET_INITIAL(apply_to, icon, new_icon, reset_missing) + APPLY_VAR_OR_RESET_TO(apply_to, icon_state, new_icon_state, reset_missing, initial(apply_to.post_init_icon_state) || initial(apply_to.icon_state)) + if(change_base_icon_state) + APPLY_VAR_OR_RESET_INITIAL(apply_to, base_icon_state, new_icon_state, reset_missing) + if(change_inhand_icon_state && isitem(apply_to)) + var/obj/item/item_apply_to = apply_to + APPLY_VAR_OR_RESET_INITIAL(item_apply_to, inhand_icon_state, new_icon_state, reset_missing) + +/** + * Resets all changes this skin would have made to the given atom + * Does not verify that the skin was actually applied to the atom beforehand. + * Can be overridden to add additional behavior, such as unregistering signals or altering other vars. + * + * * clear_from: The atom to clear the skin from + */ +/datum/atom_skin/proc/clear_skin(atom/clear_from) + SHOULD_CALL_PARENT(TRUE) + RESET_INITIAL_IF_SET(clear_from, name, new_name) + RESET_INITIAL_IF_SET(clear_from, desc, new_desc) + RESET_INITIAL_IF_SET(clear_from, icon, new_icon) + RESET_TO_IF_SET(clear_from, icon_state, new_icon_state, initial(clear_from.post_init_icon_state) || initial(clear_from.icon_state)) + if(change_base_icon_state) + RESET_INITIAL_IF_SET(clear_from, base_icon_state, new_icon_state) + if(change_inhand_icon_state && isitem(clear_from)) + var/obj/item/item_clear_from = clear_from + RESET_INITIAL_IF_SET(item_clear_from, inhand_icon_state, new_icon_state) + +/// Gets a preview image for this skin based on the given atom's icon and icon_state +/datum/atom_skin/proc/get_preview_icon(atom/for_atom) + return image( + icon = new_icon || for_atom.icon, + icon_state = new_icon_state || for_atom.icon_state, + ) + +/** + * ### Reskinnable atoms + * + * Simple component which lets an atom be alt-clicked to open a radial menu to choose a new skin to apply. + */ +/datum/component/reskinable_item + dupe_mode = COMPONENT_DUPE_SELECTIVE + /// Base reskin type to pull options from - all subtypes except those blacklisted are valid options + VAR_PRIVATE/base_reskin_type + /// If TRUE, the reskin option is infinite-use. If FALSE, the component is deleted on use (so you're stuck with that skin). + VAR_PRIVATE/infinite_reskin = FALSE + /// List of subtypes of /datum/atom_skin that are not allowed to be used for this item + VAR_PRIVATE/list/blacklisted_subtypes + + /// Currently applied skin preview_name + VAR_PRIVATE/current_skin + +/datum/component/reskinable_item/Initialize(base_reskin_type, infinite = FALSE, initial_skin, list/blacklisted_subtypes = list()) + if(!isatom(parent) || isarea(parent)) + return COMPONENT_INCOMPATIBLE + + src.base_reskin_type = base_reskin_type + src.infinite_reskin = infinite + src.blacklisted_subtypes = blacklisted_subtypes + + if(initial_skin) + set_skin_by_name(initial_skin) + + var/atom/atom_parent = parent + atom_parent.flags_1 |= HAS_CONTEXTUAL_SCREENTIPS_1 + +/datum/component/reskinable_item/RegisterWithParent() + RegisterSignal(parent, COMSIG_CLICK_ALT, PROC_REF(on_click_alt_reskin)) + RegisterSignal(parent, COMSIG_ATOM_EXAMINE_TAGS, PROC_REF(add_tags)) + RegisterSignal(parent, COMSIG_ATOM_REQUESTING_CONTEXT_FROM_ITEM, PROC_REF(add_context)) + +/datum/component/reskinable_item/UnregisterFromParent() + UnregisterSignal(parent, COMSIG_CLICK_ALT) + UnregisterSignal(parent, COMSIG_ATOM_EXAMINE_TAGS) + UnregisterSignal(parent, COMSIG_ATOM_REQUESTING_CONTEXT_FROM_ITEM) + +/datum/component/reskinable_item/CheckDupeComponent(datum/component/comp, base_reskin_type, infinite = FALSE, initial_skin, list/blacklisted_subtypes = list()) + if(src.base_reskin_type != base_reskin_type) + return FALSE // new comp - though the alt-click behavior will collide + + src.infinite_reskin = infinite + src.blacklisted_subtypes = blacklisted_subtypes + + set_skin_by_name(initial_skin) + return TRUE // same comp + +/datum/component/reskinable_item/proc/get_skins_by_name() + var/list/reskin_options = list() + for(var/datum/atom_skin/reskin_option as anything in valid_subtypesof(base_reskin_type) - blacklisted_subtypes) + reskin_options[reskin_option::preview_name] = reskin_option + + return reskin_options + +/datum/component/reskinable_item/proc/set_skin_by_name(input_name) + var/list/reskin_options = get_skins_by_name() + if(current_skin) + var/datum/atom_skin/previous_skin = GLOB.atom_skins[reskin_options[current_skin]] + previous_skin.clear_skin(parent) + + if(input_name) + var/datum/atom_skin/reskin_to_apply = GLOB.atom_skins[reskin_options[input_name]] + reskin_to_apply.apply(parent) + + current_skin = input_name + + var/atom/atom_parent = parent + atom_parent.update_appearance() + + if(isitem(parent)) + var/obj/item/item_parent = parent + item_parent.update_slot_icon() + + SEND_SIGNAL(parent, COMSIG_OBJ_RESKIN, input_name) + +/datum/component/reskinable_item/proc/add_context(atom/source, list/context, obj/item/held_item, mob/user) + SIGNAL_HANDLER + + context[SCREENTIP_CONTEXT_ALT_LMB] = "Reskin" + return CONTEXTUAL_SCREENTIP_SET + +/datum/component/reskinable_item/proc/add_tags(atom/source, mob/user, list/tags) + SIGNAL_HANDLER + + tags["reskinnable"] = "This item is able to be reskinned! Alt-Click to do so!" + +/// Called when alt clicked and the item has unique reskin options +/datum/component/reskinable_item/proc/on_click_alt_reskin(datum/source, mob/user) + SIGNAL_HANDLER + + if(!user.can_perform_action(parent, NEED_DEXTERITY)) + return NONE + + INVOKE_ASYNC(src, PROC_REF(reskin_obj), user) + return CLICK_ACTION_SUCCESS + +/** + * Reskins object based on a user's choice + * + * Arguments: + * * user The mob choosing a reskin option + */ +/datum/component/reskinable_item/proc/reskin_obj(mob/user) + var/atom/atom_parent = parent + + var/list/items = list() + for(var/reskin_name, reskin_typepath in get_skins_by_name()) + items[reskin_name] = GLOB.atom_skins[reskin_typepath].get_preview_icon(atom_parent) + + sort_list(items) + + var/pick = show_radial_menu(user, parent, items, custom_check = CALLBACK(src, PROC_REF(check_reskin_menu), user), radius = 38, require_near = TRUE) + if(!pick || !items[pick]) + return + + set_skin_by_name(pick) + to_chat(user, span_info("[parent] is now skinned as '[pick].'")) + + if(!infinite_reskin) + qdel(src) + +/** + * Checks if we are allowed to interact with a radial menu for reskins + * + * Arguments: + * * user The mob interacting with the menu + */ +/datum/component/reskinable_item/proc/check_reskin_menu(mob/user) + if(QDELETED(parent)) + return FALSE + if(user.incapacitated) + return FALSE + return TRUE diff --git a/code/datums/components/riding/riding_mob.dm b/code/datums/components/riding/riding_mob.dm index f5a77d885fa5b3..7319570a475a15 100644 --- a/code/datums/components/riding/riding_mob.dm +++ b/code/datums/components/riding/riding_mob.dm @@ -119,8 +119,7 @@ return COMPONENT_DRIVER_BLOCK_MOVE var/mob/living/living_parent = parent step(living_parent, direction) - var/datum/movespeed_modifier/slowdown = get_cached_movespeed_modifier(living_parent.get_move_intent_slowdown()) - var/modified_move_delay = uses_native_speed ? living_parent.cached_multiplicative_slowdown - slowdown?.multiplicative_slowdown : vehicle_move_delay + var/modified_move_delay = uses_native_speed ? living_parent.cached_multiplicative_slowdown : vehicle_move_delay if(HAS_TRAIT(user, TRAIT_ROUGHRIDER)) // YEEHAW! switch(HAS_TRAIT(user, TRAIT_PRIMITIVE) ? SANITY_LEVEL_GREAT : user.mob_mood?.sanity_level) if(SANITY_LEVEL_GREAT) @@ -133,6 +132,8 @@ modified_move_delay *= 1.1 if(SANITY_LEVEL_INSANE) modified_move_delay *= 1.2 + if(NSCOMPONENT(direction) && EWCOMPONENT(direction)) + modified_move_delay = FLOOR(modified_move_delay * sqrt(2), world.tick_lag) COOLDOWN_START(src, vehicle_move_cooldown, modified_move_delay) return ..() @@ -684,18 +685,11 @@ force_dismount(buckled_mob, throw_range = 2, gentle = TRUE) /datum/component/riding/creature/raptor/get_rider_offsets_and_layers(pass_index, mob/offsetter) - if(!SSmapping.is_planetary()) - return list( - TEXT_NORTH = list(-1, 7), - TEXT_SOUTH = list(2, 10), - TEXT_EAST = list(0, 7), - TEXT_WEST = list(0, 7), - ) return list( - TEXT_NORTH = list(0, 7), - TEXT_SOUTH = list(0, 10), - TEXT_EAST = list(-3, 9), - TEXT_WEST = list(3, 9), + TEXT_NORTH = list(-1, 7), + TEXT_SOUTH = list(2, 10), + TEXT_EAST = list(0, 7), + TEXT_WEST = list(0, 7), ) /datum/component/riding/creature/raptor/get_parent_offsets_and_layers() @@ -714,3 +708,43 @@ /datum/component/riding/creature/raptor/combat ai_behavior_while_ridden = RIDING_PAUSE_AI_MOVEMENT + +/datum/component/riding/creature/raptor/healer/vehicle_mob_buckle(mob/living/ridden, mob/living/rider, force) + RegisterSignal(rider, COMSIG_MOB_STATCHANGE, PROC_REF(on_buckled_stat_change)) + return ..() + +/datum/component/riding/creature/raptor/healer/vehicle_mob_unbuckle(mob/living/formerly_ridden, mob/living/former_rider, force) + UnregisterSignal(former_rider, COMSIG_MOB_STATCHANGE) + return ..() + +/datum/component/riding/creature/raptor/healer/proc/on_buckled_stat_change(mob/living/source, new_stat, old_stat) + SIGNAL_HANDLER + + var/mob/living/basic/raptor/raptor = source.buckled + if (!istype(raptor)) // what + UnregisterSignal(source, COMSIG_MOB_STATCHANGE) + return + + // Heal the owner and flee whatever might've attacked them + if (new_stat == CONSCIOUS || new_stat == DEAD || old_stat != CONSCIOUS || !raptor.ai_controller) + ADD_TRAIT(raptor, TRAIT_AI_PAUSED, REF(src)) + return + + REMOVE_TRAIT(raptor, TRAIT_AI_PAUSED, REF(src)) + // Rip bozo, but you're not our friend + if (source in raptor.ai_controller.blackboard[BB_FRIENDS_LIST]) + raptor.ai_controller.set_blackboard_key(BB_INJURED_RAPTOR, source) + + for (var/mob/living/possible_hostile in view(5, raptor)) + if (possible_hostile.stat || possible_hostile.invisibility > raptor.see_invisible || source.faction_check_atom(possible_hostile)) + continue + raptor.ai_controller.set_blackboard_key(BB_BASIC_MOB_FLEE_TARGET, possible_hostile) + break + +/datum/component/riding/creature/raptor/small/get_rider_offsets_and_layers(pass_index, mob/offsetter) + return list( + TEXT_NORTH = list(-1, 5), + TEXT_SOUTH = list(2, 8), + TEXT_EAST = list(0, 5), + TEXT_WEST = list(0, 5), + ) diff --git a/code/datums/components/riding/riding_vehicle.dm b/code/datums/components/riding/riding_vehicle.dm index 5f314dd36a6f6e..91e282a14e8b69 100644 --- a/code/datums/components/riding/riding_vehicle.dm +++ b/code/datums/components/riding/riding_vehicle.dm @@ -97,7 +97,10 @@ return step(movable_parent, direction) - COOLDOWN_START(src, vehicle_move_cooldown, vehicle_move_delay) + var/move_delay = vehicle_move_delay + if(NSCOMPONENT(direction) && EWCOMPONENT(direction)) + move_delay = FLOOR(move_delay * sqrt(2), world.tick_lag) + COOLDOWN_START(src, vehicle_move_cooldown, move_delay) if(QDELETED(src)) return diff --git a/code/datums/components/rotation.dm b/code/datums/components/rotation.dm deleted file mode 100644 index e57d23ffe50beb..00000000000000 --- a/code/datums/components/rotation.dm +++ /dev/null @@ -1,146 +0,0 @@ -/datum/component/simple_rotation - /// Additional stuff to do after rotation - var/datum/callback/post_rotation - /// Rotation flags for special behavior - var/rotation_flags = NONE - -/** - * Adds the ability to rotate an object by Alt-click or using Right-click verbs. - * - * args: - * * rotation_flags (optional) Bitflags that determine behavior for rotation (defined at the top of this file) - * * post_rotation (optional) Callback proc that is used after the object is rotated (sound effects, balloon alerts, etc.) - **/ -/datum/component/simple_rotation/Initialize(rotation_flags = NONE, post_rotation) - if(!ismovable(parent)) - return COMPONENT_INCOMPATIBLE - - var/atom/movable/source = parent - source.flags_1 |= HAS_CONTEXTUAL_SCREENTIPS_1 - - src.rotation_flags = rotation_flags - src.post_rotation = post_rotation || CALLBACK(src, PROC_REF(default_post_rotation)) - -/datum/component/simple_rotation/RegisterWithParent() - RegisterSignal(parent, COMSIG_CLICK_ALT, PROC_REF(rotate_left)) - RegisterSignal(parent, COMSIG_CLICK_ALT_SECONDARY, PROC_REF(rotate_right)) - RegisterSignal(parent, COMSIG_ATOM_EXAMINE, PROC_REF(ExamineMessage)) - RegisterSignal(parent, COMSIG_ATOM_REQUESTING_CONTEXT_FROM_ITEM, PROC_REF(on_requesting_context_from_item)) - return ..() - -/datum/component/simple_rotation/PostTransfer(datum/new_parent) - //Because of the callbacks which we don't track cleanly we can't transfer this - //item cleanly, better to let the new of the new item create a new rotation datum - //instead (there's no real state worth transferring) - return COMPONENT_NOTRANSFER - -/datum/component/simple_rotation/UnregisterFromParent() - UnregisterSignal(parent, list( - COMSIG_CLICK_ALT, - COMSIG_CLICK_ALT_SECONDARY, - COMSIG_ATOM_EXAMINE, - COMSIG_ATOM_REQUESTING_CONTEXT_FROM_ITEM, - )) - return ..() - -/datum/component/simple_rotation/Destroy() - post_rotation = null - return ..() - -/datum/component/simple_rotation/proc/ExamineMessage(datum/source, mob/user, list/examine_list) - SIGNAL_HANDLER - if(rotation_flags & ROTATION_REQUIRE_WRENCH) - examine_list += span_notice("This requires a wrench to be rotated.") - -/datum/component/simple_rotation/proc/rotate_right(datum/source, mob/user) - SIGNAL_HANDLER - rotate(user, ROTATION_CLOCKWISE) - return CLICK_ACTION_SUCCESS - -/datum/component/simple_rotation/proc/rotate_left(datum/source, mob/user) - SIGNAL_HANDLER - rotate(user, ROTATION_COUNTERCLOCKWISE) - return CLICK_ACTION_SUCCESS - -/datum/component/simple_rotation/proc/rotate(mob/user, degrees) - if(QDELETED(user)) - CRASH("[src] is being rotated [user ? "with a qdeleting" : "without a"] user") - if(!istype(user)) - CRASH("[src] is being rotated without a user of the wrong type: [user.type]") - if(!isnum(degrees)) - CRASH("[src] is being rotated without providing the amount of degrees needed") - - if(!can_be_rotated(user, degrees) || !can_user_rotate(user, degrees)) - return - - var/obj/rotated_obj = parent - rotated_obj.setDir(turn(rotated_obj.dir, degrees)) - if(rotation_flags & ROTATION_REQUIRE_WRENCH) - playsound(rotated_obj, 'sound/items/tools/ratchet.ogg', 50, TRUE) - - post_rotation.Invoke(user, degrees) - -/datum/component/simple_rotation/proc/can_user_rotate(mob/user, degrees) - if(isliving(user) && user.can_perform_action(parent, NEED_DEXTERITY)) - return TRUE - if((rotation_flags & ROTATION_GHOSTS_ALLOWED) && isobserver(user) && CONFIG_GET(flag/ghost_interaction)) - return TRUE - return FALSE - -/datum/component/simple_rotation/proc/can_be_rotated(mob/user, degrees, silent=FALSE) - var/obj/rotated_obj = parent - if(!rotated_obj.Adjacent(user)) - silent = TRUE - - if(rotation_flags & ROTATION_REQUIRE_WRENCH) - if(!isliving(user)) - return FALSE - var/obj/item/tool = user.get_active_held_item() - if(!tool || tool.tool_behaviour != TOOL_WRENCH) - if(!silent) - rotated_obj.balloon_alert(user, "need a wrench!") - return FALSE - if(!(rotation_flags & ROTATION_IGNORE_ANCHORED) && rotated_obj.anchored) - if(istype(rotated_obj, /obj/structure/window) && !silent) - rotated_obj.balloon_alert(user, "need to unscrew!") - else if(!silent) - rotated_obj.balloon_alert(user, "need to unwrench!") - return FALSE - - if(rotation_flags & ROTATION_NEEDS_ROOM) - var/target_dir = turn(rotated_obj.dir, degrees) - var/obj/structure/window/rotated_window = rotated_obj - var/fulltile = istype(rotated_window) ? rotated_window.fulltile : FALSE - if(!valid_build_direction(rotated_obj.loc, target_dir, is_fulltile = fulltile)) - if(!silent) - rotated_obj.balloon_alert(user, "can't rotate in that direction!") - return FALSE - - if(rotation_flags & ROTATION_NEEDS_UNBLOCKED) - var/turf/rotate_turf = get_turf(rotated_obj) - if(rotate_turf.is_blocked_turf(source_atom = rotated_obj)) - if(!silent) - rotated_obj.balloon_alert(user, "rotation is blocked!") - return FALSE - return TRUE - -/datum/component/simple_rotation/proc/default_post_rotation(mob/user, degrees) - return - -// maybe we don't need the item context proc but instead the hand one? since we don't need to check held_item -/datum/component/simple_rotation/proc/on_requesting_context_from_item(atom/source, list/context, obj/item/held_item, mob/user) - SIGNAL_HANDLER - - var/rotation_screentip = FALSE - - if(can_be_rotated(user, ROTATION_CLOCKWISE, silent=TRUE)) - context[SCREENTIP_CONTEXT_ALT_LMB] = "Rotate left" - rotation_screentip = TRUE - if(can_be_rotated(user, ROTATION_COUNTERCLOCKWISE, silent=TRUE)) - context[SCREENTIP_CONTEXT_ALT_RMB] = "Rotate right" - rotation_screentip = TRUE - - if(rotation_screentip) - return CONTEXTUAL_SCREENTIP_SET - - return NONE diff --git a/code/datums/components/seethrough.dm b/code/datums/components/seethrough.dm index be52c55b7c2f39..66895d241e5c3b 100644 --- a/code/datums/components/seethrough.dm +++ b/code/datums/components/seethrough.dm @@ -1,11 +1,9 @@ ///A component that lets you turn an object invisible when you're standing on certain relative turfs to it, like behind a tree /datum/component/seethrough - ///List of lists that represent relative coordinates to the source atom - var/list/relative_turf_coords ///A list of turfs on which we make ourself transparent var/list/watched_turfs ///Associate list, with client = trickery_image. Track which client is being tricked with which image - var/list/tricked_mobs = list() + var/list/tricked_mobs ///Which alpha do we animate towards? var/target_alpha @@ -15,6 +13,8 @@ var/perimeter_reset_timer ///Does this object let clicks from players its transparent to pass through it var/clickthrough + /// Define for the area which is considered behind + var/see_through_map // DOPPLER EDIT ADDITION START - SIGNBOARDS /// Whether to always use the final turf of the parent as the "effective" parent for calculating coords. var/use_parent_turf @@ -24,13 +24,11 @@ /datum/component/seethrough/Initialize(see_through_map = SEE_THROUGH_MAP_DEFAULT, target_alpha = 100, animation_time = 0.5 SECONDS, perimeter_reset_timer = 2 SECONDS, clickthrough = TRUE, use_parent_turf = FALSE, movement_source = null) // DOPPLER EDIT CHANGE - SIGNBOARDS - ORIGINAL: /datum/component/seethrough/Initialize(see_through_map = SEE_THROUGH_MAP_DEFAULT, target_alpha = 100, animation_time = 0.5 SECONDS, perimeter_reset_timer = 2 SECONDS, clickthrough = TRUE) . = ..() - relative_turf_coords = GLOB.see_through_maps[see_through_map] - - if(!isatom(parent) || !LAZYLEN(relative_turf_coords)) + //GLOB.see_through_maps[see_through_map is a list of lists that represent relative coordinates to the source atom + if(!isatom(parent) || !LAZYLEN(GLOB.see_through_maps[see_through_map])) return COMPONENT_INCOMPATIBLE - relative_turf_coords = GLOB.see_through_maps[see_through_map] - src.relative_turf_coords = relative_turf_coords + src.see_through_map = see_through_map src.target_alpha = target_alpha src.animation_time = animation_time src.perimeter_reset_timer = perimeter_reset_timer @@ -46,7 +44,7 @@ watched_turfs = list() var/atom/effective_parent = use_parent_turf ? get_turf(parent) : parent // DOPPLER EDIT ADDITION - SIGNBOARDS - for(var/list/coordinates as anything in relative_turf_coords) + for(var/list/coordinates as anything in GLOB.see_through_maps[see_through_map]) var/turf/target = TURF_FROM_COORDS_LIST(list(effective_parent.x + coordinates[1], effective_parent.y + coordinates[2], effective_parent.z + coordinates[3])) // DOPPLER EDIT CHANGE - SIGNBOARDS - ORIGINAL: var/turf/target = TURF_FROM_COORDS_LIST(list(parent.x + coordinates[1], parent.y + coordinates[2], parent.z + coordinates[3])) if(isnull(target)) @@ -96,7 +94,7 @@ if(mob in tricked_mobs) var/image/trickery_image = tricked_mobs[mob] animate(trickery_image, alpha = 255, time = animation_time) - tricked_mobs.Remove(mob) + LAZYREMOVE(tricked_mobs, mob) UnregisterSignal(mob, COMSIG_MOB_LOGOUT) //after playing the fade-in animation, remove the screen obj @@ -125,7 +123,7 @@ animate(user_overlay, alpha = target_alpha, time = animation_time) - tricked_mobs[fool] = user_overlay + LAZYSET(tricked_mobs, fool, user_overlay) RegisterSignal(fool, COMSIG_MOB_LOGOUT, PROC_REF(on_client_disconnect)) @@ -156,13 +154,13 @@ for(var/atom/movable/screen/plane_master/seethrough in our_hud.get_true_plane_masters(SEETHROUGH_PLANE)) seethrough.hide_plane(fool) - tricked_mobs.Cut() + LAZYNULL(tricked_mobs) ///Image is removed when they log out because client gets deleted, so drop the mob reference /datum/component/seethrough/proc/on_client_disconnect(mob/fool) SIGNAL_HANDLER - tricked_mobs.Remove(fool) + LAZYREMOVE(tricked_mobs, fool) UnregisterSignal(fool, COMSIG_MOB_LOGOUT) RegisterSignal(fool, COMSIG_MOB_LOGIN, PROC_REF(trick_mob)) var/datum/hud/our_hud = fool.hud_used diff --git a/code/datums/components/shell.dm b/code/datums/components/shell.dm index 44252c36575380..4c649a68b7dfd8 100644 --- a/code/datums/components/shell.dm +++ b/code/datums/components/shell.dm @@ -44,7 +44,7 @@ RegisterSignal(parent, COMSIG_ATOM_ATTACK_GHOST, PROC_REF(on_attack_ghost)) if(!(shell_flags & SHELL_FLAG_CIRCUIT_UNMODIFIABLE)) RegisterSignal(parent, COMSIG_ATOM_TOOL_ACT(TOOL_MULTITOOL), PROC_REF(on_multitool_act)) - RegisterSignal(parent, COMSIG_ATOM_ATTACKBY, PROC_REF(on_attack_by)) + RegisterSignal(parent, COMSIG_ATOM_ITEM_INTERACTION, PROC_REF(on_item_interaction)) if(!(shell_flags & SHELL_FLAG_CIRCUIT_UNREMOVABLE)) RegisterSignal(parent, COMSIG_ATOM_TOOL_ACT(TOOL_SCREWDRIVER), PROC_REF(on_screwdriver_act)) RegisterSignal(parent, COMSIG_OBJ_DECONSTRUCT, PROC_REF(on_object_deconstruct)) @@ -91,7 +91,7 @@ /datum/component/shell/UnregisterFromParent() UnregisterSignal(parent, list( - COMSIG_ATOM_ATTACKBY, + COMSIG_ATOM_ITEM_INTERACTION, COMSIG_ATOM_TOOL_ACT(TOOL_SCREWDRIVER), COMSIG_ATOM_TOOL_ACT(TOOL_MULTITOOL), COMSIG_OBJ_DECONSTRUCT, @@ -160,55 +160,56 @@ attached_circuit?.set_on(source.anchored) /** - * Called when an item hits the parent. This is the method to add the circuitboard to the component. + * Called when interacting with the parent using an item. This is the method to add the circuitboard to the component. */ -/datum/component/shell/proc/on_attack_by(atom/source, obj/item/item, mob/living/attacker) +/datum/component/shell/proc/on_item_interaction(atom/source, mob/living/user, obj/item/item, list/modifiers) SIGNAL_HANDLER - if(!is_authorized(attacker)) + if(!is_authorized(user)) return if(istype(item, /obj/item/stock_parts/power_store/cell)) - source.balloon_alert(attacker, "can't put cell in directly!") + source.balloon_alert(user, "can't put cell in directly!") return if(istype(item, /obj/item/inducer)) var/obj/item/inducer/inducer = item - INVOKE_ASYNC(inducer, TYPE_PROC_REF(/obj/item, interact_with_atom), attached_circuit || parent, attacker, list()) - return COMPONENT_NO_AFTERATTACK + INVOKE_ASYNC(inducer, TYPE_PROC_REF(/obj/item, interact_with_atom), attached_circuit || parent, user, list()) + return ITEM_INTERACT_SUCCESS if(attached_circuit) if(attached_circuit.owner_id && item == attached_circuit.owner_id.resolve()) set_locked(!locked) - source.balloon_alert(attacker, "[locked ? "locked" : "unlocked"] [source]") - return COMPONENT_NO_AFTERATTACK + source.balloon_alert(user, "[locked ? "locked" : "unlocked"] [source]") + return ITEM_INTERACT_SUCCESS if(!attached_circuit.owner_id && isidcard(item)) - source.balloon_alert(attacker, "owner id set for [item]") + source.balloon_alert(user, "owner id set for [item]") attached_circuit.owner_id = WEAKREF(item) - return COMPONENT_NO_AFTERATTACK + return ITEM_INTERACT_SUCCESS if(istype(item, /obj/item/circuit_component)) - attached_circuit.add_component_manually(item, attacker) - return COMPONENT_NO_AFTERATTACK + if(attached_circuit.add_component_manually(item, user)) + return ITEM_INTERACT_SUCCESS + return ITEM_INTERACT_BLOCKING if(!istype(item, /obj/item/integrated_circuit)) return var/obj/item/integrated_circuit/logic_board = item - . = COMPONENT_NO_AFTERATTACK if(logic_board.shell) // I'll be surprised if this ever happens - return + return ITEM_INTERACT_BLOCKING if(attached_circuit) - source.balloon_alert(attacker, "there is already a circuitboard inside!") - return + source.balloon_alert(user, "there is already a circuitboard inside!") + return ITEM_INTERACT_BLOCKING if(logic_board.current_size > capacity) - source.balloon_alert(attacker, "this is too large to fit into [parent]!") - return + source.balloon_alert(user, "this is too large to fit into [parent]!") + return ITEM_INTERACT_BLOCKING - logic_board.inserter_mind = WEAKREF(attacker.mind) - attach_circuit(logic_board, attacker) + logic_board.inserter_mind = WEAKREF(user.mind) + attach_circuit(logic_board, user) + return ITEM_INTERACT_SUCCESS /// Sets whether the shell is locked or not /datum/component/shell/proc/set_locked(new_value) diff --git a/code/datums/components/shielded.dm b/code/datums/components/shielded.dm index 8be8126782871d..1f3269dab2d0c8 100644 --- a/code/datums/components/shielded.dm +++ b/code/datums/components/shielded.dm @@ -28,6 +28,8 @@ var/show_charge_as_alpha = FALSE /// The item we use for recharging var/recharge_path + /// The item can block OVERWHELMING_ATTACK, which is mostly used by mech melee attacks. + var/can_block_overwhelming = FALSE /// The cooldown tracking when we were last hit COOLDOWN_DECLARE(recently_hit_cd) @@ -36,7 +38,7 @@ /// A callback for the sparks/message that play when a charge is used, see [/datum/component/shielded/proc/default_run_hit_callback] var/datum/callback/on_hit_effects -/datum/component/shielded/Initialize(max_charges = 3, recharge_start_delay = 20 SECONDS, charge_increment_delay = 1 SECONDS, charge_recovery = 1, lose_multiple_charges = FALSE, show_charge_as_alpha = FALSE, recharge_path = null, starting_charges = null, shield_icon_file = 'icons/effects/effects.dmi', shield_icon = "shield-old", shield_inhand = FALSE, run_hit_callback) +/datum/component/shielded/Initialize(max_charges = 3, recharge_start_delay = 20 SECONDS, charge_increment_delay = 1 SECONDS, charge_recovery = 1, lose_multiple_charges = FALSE, show_charge_as_alpha = FALSE, recharge_path = null, can_block_overwhelming = FALSE, starting_charges = null, shield_icon_file = 'icons/effects/effects.dmi', shield_icon = "shield-old", shield_inhand = FALSE, run_hit_callback) if(!isitem(parent) || max_charges <= 0) return COMPONENT_INCOMPATIBLE @@ -47,6 +49,7 @@ src.lose_multiple_charges = lose_multiple_charges src.show_charge_as_alpha = show_charge_as_alpha src.recharge_path = recharge_path + src.can_block_overwhelming = can_block_overwhelming src.shield_icon_file = shield_icon_file src.shield_icon = shield_icon src.shield_inhand = shield_inhand @@ -165,6 +168,11 @@ if(current_charges <= 0) return + + // if our shield is unable to block OVERWHELMING_ATTACK type attacks, we just let it pass. + if(attack_type == OVERWHELMING_ATTACK && !can_block_overwhelming) + return + . = COMPONENT_HIT_REACTION_BLOCK var/charge_loss = 1 // how many charges do we lose @@ -175,6 +183,9 @@ else if(damage < 3) charge_loss = 0 + else if(attack_type == OVERWHELMING_ATTACK && !lose_multiple_charges) // Always expend all charges when blocking an overwhelming attack unless we're using our shield like health. + charge_loss = max_charges + adjust_charge(-charge_loss) INVOKE_ASYNC(src, PROC_REF(actually_run_hit_callback), owner, attack_text, current_charges) diff --git a/code/datums/components/shuttle_move_deferred_checks.dm b/code/datums/components/shuttle_move_deferred_checks.dm index 3d05af66dd0ef0..bc228998c6eab9 100644 --- a/code/datums/components/shuttle_move_deferred_checks.dm +++ b/code/datums/components/shuttle_move_deferred_checks.dm @@ -2,13 +2,13 @@ /datum/component/shuttle_move_deferred_checks dupe_mode = COMPONENT_DUPE_SOURCES /// An list of targets to listen for the movements of - var/list/targets = list() + var/list/targets /// The check to call on the parent when a target moves. Can be the name of a proc on the parent, or a `/datum/callback`. var/check /// A list of each target currently being moved by a shuttle - if this list is not empty, checks will not be run. - var/list/moving_targets = list() + var/list/moving_targets /datum/component/shuttle_move_deferred_checks/Initialize(check) . = ..() @@ -27,7 +27,7 @@ var/atom/movable/movable = locate(source) if(!istype(movable) || (check != src.check)) return COMPONENT_INCOMPATIBLE - targets += movable + LAZYADD(targets, movable) RegisterSignal(movable, COMSIG_MOVABLE_MOVED, PROC_REF(on_target_moved)) RegisterSignal(movable, COMSIG_ATOM_BEFORE_SHUTTLE_MOVE, PROC_REF(before_target_shuttle_move)) RegisterSignal(movable, COMSIG_ATOM_AFTER_SHUTTLE_MOVE, PROC_REF(after_target_shuttle_move)) @@ -37,8 +37,8 @@ var/atom/movable/movable = locate(source) if(!istype(movable)) return - targets -= movable - moving_targets -= movable + LAZYREMOVE(targets, movable) + LAZYREMOVE(moving_targets, movable) UnregisterSignal(movable, list(COMSIG_MOVABLE_MOVED, COMSIG_ATOM_BEFORE_SHUTTLE_MOVE, COMSIG_ATOM_AFTER_SHUTTLE_MOVE, COMSIG_QDELETING)) return ..() @@ -51,18 +51,18 @@ /datum/component/shuttle_move_deferred_checks/proc/on_target_moved(atom/movable/source, atom/old_loc, dir, forced, list/old_locs) SIGNAL_HANDLER - if(length(moving_targets)) + if(LAZYLEN(moving_targets)) return call_check() /datum/component/shuttle_move_deferred_checks/proc/before_target_shuttle_move(atom/source) SIGNAL_HANDLER - moving_targets |= source + LAZYOR(moving_targets, source) /datum/component/shuttle_move_deferred_checks/proc/after_target_shuttle_move(atom/source) SIGNAL_HANDLER - moving_targets -= source - if(!length(moving_targets)) + LAZYOR(moving_targets, source) + if(!LAZYLEN(moving_targets)) call_check() /datum/component/shuttle_move_deferred_checks/proc/on_target_deleted(datum/source) diff --git a/code/datums/components/sign_language.dm b/code/datums/components/sign_language.dm index 8181388b69948d..08bdb50d5a7c5f 100644 --- a/code/datums/components/sign_language.dm +++ b/code/datums/components/sign_language.dm @@ -310,6 +310,10 @@ /// Send a visible message depending on the tone of the message that the sender is trying to convey to the world. /datum/component/sign_language/proc/emote_tone(mob/living/carbon/carbon_parent, emote_tone) + if(ishuman(carbon_parent)) + var/mob/living/carbon/human/human_parent = carbon_parent + if(human_parent.is_face_obscured()) + return // You can't see someone's expression if their face is obscured (or disfigured) switch(emote_tone) if(TONE_INQUISITIVE) carbon_parent.visible_message(span_bold("quirks [carbon_parent.p_their()] brows quizzically."), visible_message_flags = EMOTE_MESSAGE|BLOCK_SELF_HIGHLIGHT_MESSAGE) diff --git a/code/datums/components/simple_bodycam.dm b/code/datums/components/simple_bodycam.dm index 9d653f38a78461..1723a7a0a5a0ed 100644 --- a/code/datums/components/simple_bodycam.dm +++ b/code/datums/components/simple_bodycam.dm @@ -56,7 +56,7 @@ do_update_cam() /datum/component/simple_bodycam/proc/do_update_cam() - GLOB.cameranet.updatePortableCamera(bodycam, camera_update_time) + SScameras.update_portable_camera(bodycam, camera_update_time) /datum/component/simple_bodycam/proc/rotate_cam(datum/source, old_dir, new_dir) SIGNAL_HANDLER diff --git a/code/datums/components/soapbox.dm b/code/datums/components/soapbox.dm index 9d15e5e69292c7..012229cb2de3db 100644 --- a/code/datums/components/soapbox.dm +++ b/code/datums/components/soapbox.dm @@ -1,6 +1,6 @@ /datum/component/soapbox /// List of our current soapboxxer(s) who are gaining loud speech - var/list/soapboxers = list() + var/list/soapboxers /// Gives atoms moving over us the soapbox speech and takes it away when they leave var/static/list/loc_connections = list( COMSIG_ATOM_ENTERED = PROC_REF(on_loc_entered), @@ -21,21 +21,21 @@ if(QDELETED(soapbox_arrive)) return RegisterSignal(soapbox_arrive, COMSIG_MOB_SAY, PROC_REF(soapbox_speech)) - soapboxers += soapbox_arrive + LAZYADD(soapboxers, soapbox_arrive) ///Takes away loud speech from our movable when it leaves the turf our parent is on /datum/component/soapbox/proc/on_loc_exited(datum/source, mob/living/soapbox_leave) SIGNAL_HANDLER if(soapbox_leave in soapboxers) UnregisterSignal(soapbox_leave, COMSIG_MOB_SAY) - soapboxers -= soapbox_leave + LAZYREMOVE(soapboxers, soapbox_leave) ///We don't want our soapboxxer to keep their loud say if the parent is moved out from under them /datum/component/soapbox/proc/parent_moved(datum/source) SIGNAL_HANDLER for(var/atom/movable/loud as anything in soapboxers) UnregisterSignal(loud, COMSIG_MOB_SAY) - soapboxers.Cut() + LAZYNULL(soapboxers) ///Gives a mob a unique say span /datum/component/soapbox/proc/soapbox_speech(datum/source, list/speech_args) diff --git a/code/datums/components/speechmod.dm b/code/datums/components/speechmod.dm index 45b2a691268243..e6d39faf57cadb 100644 --- a/code/datums/components/speechmod.dm +++ b/code/datums/components/speechmod.dm @@ -50,10 +50,13 @@ targeted = owner.loc RegisterSignal(targeted, COMSIG_MOB_SAY, PROC_REF(handle_speech)) - RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, PROC_REF(on_equipped)) - RegisterSignal(parent, COMSIG_ITEM_DROPPED, PROC_REF(on_unequipped)) - RegisterSignal(parent, COMSIG_ORGAN_IMPLANTED, PROC_REF(on_implanted)) - RegisterSignal(parent, COMSIG_ORGAN_REMOVED, PROC_REF(on_removed)) + if (isorgan(parent)) + RegisterSignal(parent, COMSIG_ORGAN_IMPLANTED, PROC_REF(on_implanted)) + RegisterSignal(parent, COMSIG_ORGAN_REMOVED, PROC_REF(on_removed)) + else + RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, PROC_REF(on_equipped)) + RegisterSignal(parent, COMSIG_ITEM_DROPPED, PROC_REF(on_unequipped)) + /datum/component/speechmod/proc/handle_speech(datum/source, list/speech_args) SIGNAL_HANDLER diff --git a/code/datums/components/splattercasting.dm b/code/datums/components/splattercasting.dm index cc11afbf789ef4..bac08cdbbecce9 100644 --- a/code/datums/components/splattercasting.dm +++ b/code/datums/components/splattercasting.dm @@ -82,7 +82,7 @@ var/blood_cost = (cooldown_remaining - new_cooldown ) * COOLDOWN_TO_BLOOD_RATIO spell.StartCooldown(new_cooldown) - source.blood_volume -= blood_cost + source.adjust_blood_volume(-blood_cost) var/cost_desc diff --git a/code/datums/components/squashable.dm b/code/datums/components/squashable.dm index 785c6771ad3f0b..faa9d0e37fe279 100644 --- a/code/datums/components/squashable.dm +++ b/code/datums/components/squashable.dm @@ -74,7 +74,7 @@ if(squash_flags & SQUASHED_SHOULD_BE_GIBBED) target.gib(DROP_ALL_REMAINS) else - target.adjustBruteLoss(squash_damage) + target.adjust_brute_loss(squash_damage) /datum/component/squashable/UnregisterFromParent() . = ..() diff --git a/code/datums/components/surgery_initiator.dm b/code/datums/components/surgery_initiator.dm deleted file mode 100644 index 56c49e4c0ec29b..00000000000000 --- a/code/datums/components/surgery_initiator.dm +++ /dev/null @@ -1,344 +0,0 @@ -/// Allows an item to be used to initiate surgeries. -/datum/component/surgery_initiator - /// The currently selected target that the user is proposing a surgery on - var/datum/weakref/surgery_target_ref - - /// The last user, as a weakref - var/datum/weakref/last_user_ref - -/datum/component/surgery_initiator/Initialize() - . = ..() - if(!isitem(parent)) - return COMPONENT_INCOMPATIBLE - - var/obj/item/surgery_tool = parent - surgery_tool.item_flags |= ITEM_HAS_CONTEXTUAL_SCREENTIPS - ///Make sure we can use the surgery UI while laying down - surgery_tool.interaction_flags_atom |= INTERACT_ATOM_IGNORE_MOBILITY - -/datum/component/surgery_initiator/Destroy(force) - last_user_ref = null - surgery_target_ref = null - - return ..() - -/datum/component/surgery_initiator/RegisterWithParent() - RegisterSignal(parent, COMSIG_ITEM_ATTACK, PROC_REF(initiate_surgery_moment)) - RegisterSignal(parent, COMSIG_ITEM_REQUESTING_CONTEXT_FOR_TARGET, PROC_REF(add_item_context)) - -/datum/component/surgery_initiator/UnregisterFromParent() - UnregisterSignal(parent, COMSIG_ITEM_ATTACK, COMSIG_ITEM_REQUESTING_CONTEXT_FOR_TARGET) - unregister_signals() - -/datum/component/surgery_initiator/proc/unregister_signals() - var/mob/living/last_user = last_user_ref?.resolve() - if (!isnull(last_user_ref)) - UnregisterSignal(last_user, COMSIG_MOB_SELECTED_ZONE_SET) - - var/mob/living/surgery_target = surgery_target_ref?.resolve() - if (!isnull(surgery_target_ref)) - UnregisterSignal(surgery_target, COMSIG_MOB_SURGERY_STARTED) - -/// Does the surgery initiation. -/datum/component/surgery_initiator/proc/initiate_surgery_moment(datum/source, atom/target, mob/user) - SIGNAL_HANDLER - if(!isliving(target)) - return - INVOKE_ASYNC(src, PROC_REF(do_initiate_surgery_moment), target, user) - return COMPONENT_CANCEL_ATTACK_CHAIN - -/datum/component/surgery_initiator/proc/do_initiate_surgery_moment(mob/living/target, mob/user) - var/datum/surgery/current_surgery - - for(var/i_one in target.surgeries) - var/datum/surgery/surgeryloop = i_one - if(surgeryloop.location == user.zone_selected) - current_surgery = surgeryloop - break - - if (!isnull(current_surgery) && !current_surgery.step_in_progress) - attempt_cancel_surgery(current_surgery, target, user) - return - - var/list/available_surgeries = get_available_surgeries(user, target) - - if(!length(available_surgeries)) - if (target.body_position == LYING_DOWN || !(target.mobility_flags & MOBILITY_LIEDOWN)) - target.balloon_alert(user, "no surgeries available!") - else - target.balloon_alert(user, "make them lie down!") - - return - - unregister_signals() - - last_user_ref = WEAKREF(user) - surgery_target_ref = WEAKREF(target) - - RegisterSignal(user, COMSIG_MOB_SELECTED_ZONE_SET, PROC_REF(on_set_selected_zone)) - RegisterSignal(target, COMSIG_MOB_SURGERY_STARTED, PROC_REF(on_mob_surgery_started)) - - ui_interact(user) - -/datum/component/surgery_initiator/proc/get_available_surgeries(mob/user, mob/living/target) - var/list/available_surgeries = list() - - var/obj/item/bodypart/affecting = target.get_bodypart(check_zone(user.zone_selected)) - - for(var/datum/surgery/surgery as anything in GLOB.surgeries_list) - if(!surgery.possible_locs.Find(user.zone_selected)) - continue - if(!is_type_in_list(target, surgery.target_mobtypes)) - continue - if(user == target && !HAS_TRAIT(user, TRAIT_SELF_SURGERY) && !(surgery.surgery_flags & SURGERY_SELF_OPERABLE)) - continue - - if(isnull(affecting)) - if(surgery.surgery_flags & SURGERY_REQUIRE_LIMB) - continue - else - if(surgery.requires_bodypart_type && !(affecting.bodytype & surgery.requires_bodypart_type)) - continue - if(surgery.targetable_wound && !affecting.get_wound_type(surgery.targetable_wound)) - continue - if((surgery.surgery_flags & SURGERY_REQUIRES_REAL_LIMB) && (affecting.bodypart_flags & BODYPART_PSEUDOPART)) - continue - - if(IS_IN_INVALID_SURGICAL_POSITION(target, surgery)) - continue - if(!surgery.can_start(user, target)) - continue - - available_surgeries += surgery - - return available_surgeries - -/// Does the surgery de-initiation. -/datum/component/surgery_initiator/proc/attempt_cancel_surgery(datum/surgery/the_surgery, mob/living/patient, mob/user) - var/selected_zone = user.zone_selected - - if(the_surgery.status == 1) - patient.surgeries -= the_surgery - user.visible_message( - span_notice("[user] removes [parent] from [patient]'s [patient.parse_zone_with_bodypart(selected_zone)]."), - span_notice("You remove [parent] from [patient]'s [patient.parse_zone_with_bodypart(selected_zone)]."), - ) - - patient.balloon_alert(user, "stopped work on [patient.parse_zone_with_bodypart(selected_zone)]") - - qdel(the_surgery) - return - - var/required_tool_type = TOOL_CAUTERY - var/obj/item/close_tool = user.get_inactive_held_item() - var/is_robotic = the_surgery.requires_bodypart_type == BODYTYPE_ROBOTIC - if(is_robotic) - required_tool_type = TOOL_SCREWDRIVER - - if(!close_tool || close_tool.tool_behaviour != required_tool_type) - patient.balloon_alert(user, "need a [is_robotic ? "screwdriver": "cautery"] in your inactive hand to stop the surgery!") - return - - if(the_surgery.operated_bodypart) - the_surgery.operated_bodypart.adjustBleedStacks(-5) - - patient.surgeries -= the_surgery - - user.visible_message( - span_notice("[user] closes [patient]'s [patient.parse_zone_with_bodypart(selected_zone)] with [close_tool] and removes [parent]."), - span_notice("You close [patient]'s [patient.parse_zone_with_bodypart(selected_zone)] with [close_tool] and remove [parent]."), - ) - - patient.balloon_alert(user, "closed up [patient.parse_zone_with_bodypart(selected_zone)]") - - qdel(the_surgery) - -/datum/component/surgery_initiator/proc/on_mob_surgery_started(mob/source, datum/surgery/surgery, surgery_location) - SIGNAL_HANDLER - - var/mob/living/last_user = last_user_ref.resolve() - - if (surgery_location != last_user.zone_selected) - return - - if (!isnull(last_user)) - source.balloon_alert(last_user, "someone else started a surgery!") - - ui_close() - -/datum/component/surgery_initiator/proc/on_set_selected_zone(mob/source, new_zone) - ui_interact(source) - -/datum/component/surgery_initiator/ui_interact(mob/user, datum/tgui/ui) - ui = SStgui.try_update_ui(user, src, ui) - if (!ui) - ui = new(user, src, "SurgeryInitiator") - ui.open() - -/datum/component/surgery_initiator/ui_act(action, list/params, datum/tgui/ui, datum/ui_state/state) - . = ..() - if (.) - return . - - var/mob/user = usr - var/mob/living/surgery_target = surgery_target_ref.resolve() - - if (isnull(surgery_target)) - return TRUE - - switch (action) - if ("change_zone") - var/zone = params["new_zone"] - if (!(zone in list( - BODY_ZONE_HEAD, - BODY_ZONE_CHEST, - BODY_ZONE_L_ARM, - BODY_ZONE_R_ARM, - BODY_ZONE_L_LEG, - BODY_ZONE_R_LEG, - BODY_ZONE_PRECISE_EYES, - BODY_ZONE_PRECISE_MOUTH, - BODY_ZONE_PRECISE_GROIN, - ))) - return TRUE - - var/atom/movable/screen/zone_sel/zone_selector = user.hud_used?.zone_select - zone_selector?.set_selected_zone(zone, user, should_log = FALSE) - - return TRUE - if ("start_surgery") - for (var/datum/surgery/surgery as anything in get_available_surgeries(user, surgery_target)) - if (surgery.name == params["surgery_name"]) - try_choose_surgery(user, surgery_target, surgery) - return TRUE - -/datum/component/surgery_initiator/ui_assets(mob/user) - return list( - get_asset_datum(/datum/asset/simple/body_zones), - ) - -/datum/component/surgery_initiator/ui_data(mob/user) - var/mob/living/surgery_target = surgery_target_ref?.resolve() - - var/list/surgeries = list() - if (!isnull(surgery_target)) - for (var/datum/surgery/surgery as anything in get_available_surgeries(user, surgery_target)) - var/list/surgery_info = list( - "name" = surgery.name, - ) - - if (surgery_needs_exposure(surgery, surgery_target)) - surgery_info["blocked"] = TRUE - - surgeries += list(surgery_info) - - return list( - "selected_zone" = user.zone_selected, - "target_name" = surgery_target?.name, - "surgeries" = surgeries, - ) - -/datum/component/surgery_initiator/ui_close(mob/user) - unregister_signals() - surgery_target_ref = null - - return ..() - -/datum/component/surgery_initiator/ui_status(mob/user, datum/ui_state/state) - var/mob/living/surgery_target = surgery_target_ref?.resolve() - if (isnull(surgery_target)) - return UI_CLOSE - - if (!can_start_surgery(user, surgery_target)) - return UI_CLOSE - - return ..() - -/datum/component/surgery_initiator/proc/can_start_surgery(mob/user, mob/living/target) - if (!user.Adjacent(target)) - return FALSE - - // The item was moved somewhere else - var/atom/movable/tool = parent - if (tool.loc != user) - return FALSE - - // While we were choosing, another surgery was started at the same location - for (var/datum/surgery/surgery in target.surgeries) - if (surgery.location == user.zone_selected) - return FALSE - - return TRUE - -/datum/component/surgery_initiator/proc/try_choose_surgery(mob/user, mob/living/target, datum/surgery/surgery) - if (!can_start_surgery(user, target)) - // This could have a more detailed message, but the UI closes when this is true anyway, so - // if it ever comes up, it'll be because of lag. - target.balloon_alert(user, "can't start the surgery!") - return - - var/selected_zone = user.zone_selected - var/obj/item/bodypart/affecting_limb = target.get_bodypart(check_zone(selected_zone)) - - if ((surgery.surgery_flags & SURGERY_REQUIRE_LIMB) && isnull(affecting_limb)) - target.balloon_alert(user, "patient has no [parse_zone(selected_zone)]!") - return - - if (!isnull(affecting_limb)) - if(surgery.requires_bodypart_type && !(affecting_limb.bodytype & surgery.requires_bodypart_type)) - target.balloon_alert(user, "not the right type of limb!") - return - if(surgery.targetable_wound && !affecting_limb.get_wound_type(surgery.targetable_wound)) - target.balloon_alert(user, "no wound to operate on!") - return - - if (IS_IN_INVALID_SURGICAL_POSITION(target, surgery)) - target.balloon_alert(user, "patient is not lying down!") - return - - if (!surgery.can_start(user, target)) - target.balloon_alert(user, "can't start the surgery!") - return - - if (surgery_needs_exposure(surgery, target)) - target.balloon_alert(user, "expose [target.p_their()] [target.parse_zone_with_bodypart(selected_zone)]!") - return - - ui_close() - - var/datum/surgery/procedure = new surgery.type(target, selected_zone, affecting_limb) - - target.balloon_alert(user, "starting \"[LOWER_TEXT(procedure.name)]\"") - - user.visible_message( - span_notice("[user] drapes [parent] over [target]'s [target.parse_zone_with_bodypart(selected_zone)] to prepare for surgery."), - span_notice("You drape [parent] over [target]'s [target.parse_zone_with_bodypart(selected_zone)] to prepare for \an [procedure.name]."), - ) - - log_combat(user, target, "operated on", null, "(OPERATION TYPE: [procedure.name]) (TARGET AREA: [selected_zone])") - -/datum/component/surgery_initiator/proc/surgery_needs_exposure(datum/surgery/surgery, mob/living/target) - var/mob/living/user = last_user_ref?.resolve() - if (isnull(user)) - return FALSE - if(surgery.surgery_flags & SURGERY_IGNORE_CLOTHES) - return FALSE - - return !get_location_accessible(target, user.zone_selected) - -/** - * Adds context sensitivy directly to the surgery initator file for screentips - * Arguments: - * * source - the surgery drapes, cloak, or bedsheet calling surgery initator - * * context - Preparing Surgery, the component has a lot of ballon alerts to deal with most contexts - * * target - the living target mob you are doing surgery on - * * user - refers to user who will see the screentip when the drapes are on a living target - */ -/datum/component/surgery_initiator/proc/add_item_context(obj/item/source, list/context, atom/target, mob/living/user,) - SIGNAL_HANDLER - - if(!isliving(target)) - return NONE - - context[SCREENTIP_CONTEXT_LMB] = "Prepare Surgery" - return CONTEXTUAL_SCREENTIP_SET diff --git a/code/datums/components/tackle.dm b/code/datums/components/tackle.dm index 94cc0a1edaa4e4..d044bd6cbb9450 100644 --- a/code/datums/components/tackle.dm +++ b/code/datums/components/tackle.dm @@ -118,7 +118,7 @@ clicked_atom = get_turf_in_angle(tackle_angle, get_turf(user), min_distance) user.Knockdown(base_knockdown, ignore_canstun = TRUE) - user.adjustStaminaLoss(stamina_cost) + user.adjust_stamina_loss(stamina_cost) user.throw_at(clicked_atom, range, speed, user, FALSE) addtimer(CALLBACK(src, PROC_REF(resetTackle)), base_knockdown, TIMER_STOPPABLE) return(COMSIG_MOB_CANCEL_CLICKON) @@ -466,11 +466,11 @@ if(human_sacker.mob_mood.sanity_level == SANITY_LEVEL_INSANE) //I've gone COMPLETELY INSANE attack_mod += 15 - human_sacker.adjustStaminaLoss(100) //AHAHAHAHAHAHAHAHA + human_sacker.adjust_stamina_loss(100) //AHAHAHAHAHAHAHAHA if(HAS_TRAIT(human_sacker, TRAIT_BRAWLING_KNOCKDOWN_BLOCKED)) // tackling with riot specialized armor, like riot armor, is effective but tiring attack_mod += 2 - human_sacker.adjustStaminaLoss(20) + human_sacker.adjust_stamina_loss(20) var/randomized_tackle_roll = rand(-3, 3) - defense_mod + attack_mod + skill_mod return randomized_tackle_roll @@ -622,7 +622,7 @@ embed.ignore_throwspeed_threshold = initial(embed.ignore_throwspeed_threshold) embed.impact_pain_mult = initial(embed.impact_pain_mult) windscreen_casualty.atom_destruction() - user.adjustStaminaLoss(10 * speed) + user.adjust_stamina_loss(10 * speed) user.Paralyze(3 SECONDS) user.visible_message(span_danger("[user] smacks into [windscreen_casualty] and shatters it, shredding [user.p_them()]self with glass!"), span_userdanger("You smacks into [windscreen_casualty] and shatter it, shredding yourself with glass!")) @@ -631,8 +631,8 @@ user.Paralyze(1 SECONDS) user.Knockdown(3 SECONDS) windscreen_casualty.take_damage(30 * speed) - user.adjustStaminaLoss(10 * speed, updating_stamina=FALSE) - user.adjustBruteLoss(5 * speed) + user.adjust_stamina_loss(10 * speed, updating_stamina=FALSE) + user.adjust_brute_loss(5 * speed) /datum/component/tackler/proc/delayedSmash(obj/structure/window/windscreen_casualty) if(windscreen_casualty) @@ -676,8 +676,8 @@ HOW_big_of_a_miss_did_we_just_make = ", making a ginormous mess!" // an extra exclamation point!! for emphasis!!! owner.visible_message(span_danger("[owner] trips over [kevved] and slams into it face-first[HOW_big_of_a_miss_did_we_just_make]!"), span_userdanger("You trip over [kevved] and slam into it face-first[HOW_big_of_a_miss_did_we_just_make]!")) - owner.adjustStaminaLoss(15 + messes.len * 2, updating_stamina = FALSE) - owner.adjustBruteLoss(8 + messes.len, updating_health = FALSE) + owner.adjust_stamina_loss(15 + messes.len * 2, updating_stamina = FALSE) + owner.adjust_brute_loss(8 + messes.len, updating_health = FALSE) owner.Paralyze(0.4 SECONDS * messes.len) // .4 seconds of paralyze for each thing you knock around owner.Knockdown(2 SECONDS + 0.4 SECONDS * messes.len) // 2 seconds of knockdown after the paralyze owner.updatehealth() diff --git a/code/datums/components/temporary_body.dm b/code/datums/components/temporary_body.dm index 3af84faaee94fa..deadf90e6f99de 100644 --- a/code/datums/components/temporary_body.dm +++ b/code/datums/components/temporary_body.dm @@ -12,10 +12,8 @@ var/datum/weakref/old_body_ref /// Returns the mind if the parent dies by any means var/delete_on_death = FALSE - /// If the temporary body is attached to a permanent body (split personality body) then we dont ghostize and instead just simply transfer client back - var/perma_body_attached -/datum/component/temporary_body/Initialize(datum/mind/old_mind, mob/living/old_body, delete_on_death = FALSE, perma_body_attached = FALSE) +/datum/component/temporary_body/Initialize(datum/mind/old_mind, mob/living/old_body, delete_on_death = FALSE) if(!isliving(parent)) return COMPONENT_INCOMPATIBLE src.old_mind_ref = WEAKREF(old_mind) @@ -23,7 +21,6 @@ ADD_TRAIT(old_body, TRAIT_MIND_TEMPORARILY_GONE, REF(src)) src.old_body_ref = WEAKREF(old_body) src.delete_on_death = delete_on_death - src.perma_body_attached = perma_body_attached /datum/component/temporary_body/RegisterWithParent() RegisterSignal(parent, COMSIG_QDELETING, PROC_REF(on_parent_destroy)) @@ -48,13 +45,12 @@ return var/mob/living/living_parent = parent - if(!perma_body_attached) - var/mob/dead/observer/ghost = living_parent.ghostize() - if(!ghost) - ghost = living_parent.get_ghost() - if(!ghost) - CRASH("[src] belonging to [parent] was completely unable to find a ghost to put back into a body!") - ghost.mind = old_mind + var/mob/dead/observer/ghost = living_parent.ghostize() + if(!ghost) + ghost = living_parent.get_ghost() + if(!ghost) + CRASH("[src] belonging to [parent] was completely unable to find a ghost to put back into a body!") + ghost.mind = old_mind if(old_body?.stat != DEAD) old_mind.transfer_to(old_body, force_key_move = TRUE) else diff --git a/code/datums/components/transforming.dm b/code/datums/components/transforming.dm index a8116bd6900541..a82f247df63089 100644 --- a/code/datums/components/transforming.dm +++ b/code/datums/components/transforming.dm @@ -273,11 +273,11 @@ var/obj/item/item_parent = parent switch(item_parent.damtype) if(STAMINA) - user.adjustStaminaLoss(clumsy_damage) + user.adjust_stamina_loss(clumsy_damage) if(OXY) - user.adjustOxyLoss(clumsy_damage) + user.adjust_oxy_loss(clumsy_damage) if(TOX) - user.adjustToxLoss(clumsy_damage) + user.adjust_tox_loss(clumsy_damage) if(BRUTE) user.take_bodypart_damage(brute=clumsy_damage) if(BURN) diff --git a/code/datums/components/trapdoor.dm b/code/datums/components/trapdoor.dm index 28b70820015980..7407e467bf0ad0 100644 --- a/code/datums/components/trapdoor.dm +++ b/code/datums/components/trapdoor.dm @@ -11,10 +11,13 @@ * assembly code at the bottom of this file */ /datum/component/trapdoor + can_transfer = TRUE ///assembly tied to this trapdoor var/obj/item/assembly/trapdoor/assembly ///path of the turf this should change into when the assembly is pulsed. needed for openspace trapdoors knowing what to turn back into var/trapdoor_turf_path + ///stack of baseturfs on top of the openspace under this trapdoor + var/list/trapdoor_baseturfs = list() /// is this trapdoor "conspicuous" (ie. it gets examine text and overlay added) var/conspicuous /// overlay that makes trapdoors more obvious @@ -32,8 +35,10 @@ var/autoclose = TRUE /// Delay before trapdoor shuts close var/autoclose_delay = 5 SECONDS + /// Is this trapdoor on a shuttle + var/on_shuttle = FALSE -/datum/component/trapdoor/Initialize(starts_open, trapdoor_turf_path, assembly, conspicuous = TRUE, list/carried_decals = null, autoclose = TRUE) +/datum/component/trapdoor/Initialize(starts_open, trapdoor_turf_path, trapdoor_baseturfs, assembly, conspicuous = TRUE, list/carried_decals = null, autoclose = TRUE) if(!isopenturf(parent)) return COMPONENT_INCOMPATIBLE @@ -46,29 +51,57 @@ if(!trapdoor_overlay) trapdoor_overlay = mutable_appearance('icons/turf/overlays.dmi', "border_black", ABOVE_NORMAL_TURF_LAYER) + var/turf/parent_turf = parent + if(SSshuttle.get_containing_shuttle(parent_turf)) + on_shuttle = TRUE + if(IS_OPEN(parent)) - openspace_trapdoor_setup(trapdoor_turf_path, assembly) + openspace_trapdoor_setup(trapdoor_turf_path, trapdoor_baseturfs) if(autoclose) addtimer(CALLBACK(src, PROC_REF(try_closing)), autoclose_delay) else - tile_trapdoor_setup(trapdoor_turf_path, assembly) + tile_trapdoor_setup() if(starts_open) try_opening() +/datum/component/trapdoor/PostTransfer(datum/new_parent) + if(!isopenturf(new_parent)) + if(isatom(new_parent)) + var/atom/new_parent_atom = new_parent + new_parent_atom.visible_message(span_warning("The trapdoor mechanism under [new_parent_atom] is broken!")) + return COMPONENT_NOTRANSFER + if(SSshuttle.get_containing_shuttle(new_parent)) + on_shuttle = TRUE + else + on_shuttle = FALSE + +/datum/component/trapdoor/proc/is_under_shuttle() + var/turf/parent_turf = parent + var/shuttle_skipover_depth = parent_turf.depth_to_find_baseturf(/turf/baseturf_skipover/shuttle) + return shuttle_skipover_depth && parent_turf.depth_to_find_baseturf(/turf/baseturf_skipover/trapdoor) > shuttle_skipover_depth + ///initializing as an opened trapdoor, we need to trust that we were given the data by a closed trapdoor -/datum/component/trapdoor/proc/openspace_trapdoor_setup(trapdoor_turf_path) +/datum/component/trapdoor/proc/openspace_trapdoor_setup(trapdoor_turf_path, trapdoor_baseturfs) src.trapdoor_turf_path = trapdoor_turf_path + src.trapdoor_baseturfs = trapdoor_baseturfs ///initializing as a closed trapdoor, we need to take data from the tile we're on to give it to the open state to store -/datum/component/trapdoor/proc/tile_trapdoor_setup(trapdoor_turf_path) +/datum/component/trapdoor/proc/tile_trapdoor_setup() src.trapdoor_turf_path = parent.type + insert_trapdoor_skipover() if(stored_decals.len) reapply_all_decals() if(conspicuous) var/turf/parent_turf = parent parent_turf.add_overlay(trapdoor_overlay) +/datum/component/trapdoor/proc/insert_trapdoor_skipover() + var/turf/parent_turf = parent + if(parent_turf.depth_to_find_baseturf(/turf/baseturf_skipover/trapdoor)) + return + parent_turf.insert_baseturf((parent_turf.level_to_find_baseturf(/turf/baseturf_skipover/shuttle) || 1) + 1, /turf/baseturf_skipover/trapdoor) + /datum/component/trapdoor/RegisterWithParent() . = ..() RegisterSignal(parent, COMSIG_TURF_CHANGE, PROC_REF(turf_changed_pre)) @@ -79,6 +112,8 @@ RegisterSignal(assembly, COMSIG_ASSEMBLY_PULSED, PROC_REF(toggle_trapdoor)) RegisterSignal(parent, COMSIG_ATOM_TOOL_ACT(TOOL_MULTITOOL), PROC_REF(try_unlink)) RegisterSignal(parent, COMSIG_ATOM_ITEM_INTERACTION, PROC_REF(try_link)) + RegisterSignal(parent, COMSIG_SHUTTLE_TURF_SHOULD_MOVE_SPECIAL, PROC_REF(should_move_special)) + RegisterSignal(parent, COMSIG_SHUTTLE_TURF_ON_MOVE_SPECIAL, PROC_REF(on_move_special)) /datum/component/trapdoor/UnregisterFromParent() . = ..() @@ -89,9 +124,13 @@ UnregisterSignal(parent, COMSIG_ATOM_EXAMINE) UnregisterSignal(parent, COMSIG_ATOM_TOOL_ACT(TOOL_MULTITOOL)) UnregisterSignal(parent, COMSIG_ATOM_ITEM_INTERACTION) + UnregisterSignal(parent, COMSIG_SHUTTLE_TURF_SHOULD_MOVE_SPECIAL) + UnregisterSignal(parent, COMSIG_SHUTTLE_TURF_ON_MOVE_SPECIAL) /datum/component/trapdoor/proc/try_unlink(turf/source, mob/user, obj/item/tool) SIGNAL_HANDLER + if(is_under_shuttle()) + return if(!assembly) return if(IS_OPEN(parent)) @@ -103,6 +142,8 @@ /datum/component/trapdoor/proc/try_link(turf/source, mob/user, obj/item/tool) SIGNAL_HANDLER + if(is_under_shuttle()) + return if(!istype(tool, /obj/item/trapdoor_remote)) return var/obj/item/trapdoor_remote/remote = tool @@ -121,6 +162,8 @@ /datum/component/trapdoor/proc/async_try_link(turf/source, mob/user, obj/item/trapdoor_remote/remote) if(!do_after(user, 2 SECONDS, target=source)) return + if(QDELETED(src)) + return if(IS_OPEN(parent)) source.balloon_alert(user, "can't link trapdoor when its open") return @@ -134,6 +177,8 @@ /datum/component/trapdoor/proc/async_try_unlink(turf/source, mob/user, obj/item/tool) if(!do_after(user, 5 SECONDS, target=source)) return + if(QDELETED(src)) + return if(IS_OPEN(parent)) source.balloon_alert(user, "can't unlink trapdoor when its open") return @@ -156,6 +201,8 @@ * changing turfs does not bring over decals, so we must perform a little bit of element reapplication. */ /datum/component/trapdoor/proc/reapply_all_decals() + if(is_under_shuttle()) + return for(var/list/element_data as anything in stored_decals) apply_decal(element_data[1], element_data[2], element_data[3], element_data[4]) stored_decals = list() @@ -187,12 +234,12 @@ try_closing() ///signal called by turf changing -/datum/component/trapdoor/proc/turf_changed_pre(datum/source, path, new_baseturfs, flags, post_change_callbacks) +/datum/component/trapdoor/proc/turf_changed_pre(datum/source, path, list/new_baseturfs, flags, post_change_callbacks) SIGNAL_HANDLER var/turf/open/dying_trapdoor = parent if((flags & CHANGETURF_TRAPDOOR_INDUCED) == 0) //not a process of the trapdoor - if(!IS_OPEN(parent) && !ispath(path, /turf/closed) && !ispath(path, /turf/open/openspace)) // allow people to place tiles on plating / change tiles without breaking the trapdoor - post_change_callbacks += CALLBACK(src, TYPE_PROC_REF(/datum/component/trapdoor, carry_over_trapdoor), path, conspicuous, assembly) + if(!IS_OPEN(parent) && !ispath(path, /turf/closed) && islist(new_baseturfs) && new_baseturfs.Find(/turf/baseturf_skipover/trapdoor)) // allow people to place tiles on plating / change tiles without breaking the trapdoor + post_change_callbacks += CALLBACK(src, TYPE_PROC_REF(/datum/component/trapdoor, carry_over_trapdoor), path, null, conspicuous, assembly) return // otherwise, break trapdoor dying_trapdoor.visible_message(span_warning("The trapdoor mechanism in [dying_trapdoor] is broken!")) @@ -201,7 +248,7 @@ stored_decals.Cut() assembly = null return - post_change_callbacks += CALLBACK(src, TYPE_PROC_REF(/datum/component/trapdoor, carry_over_trapdoor), trapdoor_turf_path, conspicuous, assembly) + post_change_callbacks += CALLBACK(src, TYPE_PROC_REF(/datum/component/trapdoor, carry_over_trapdoor), trapdoor_turf_path, trapdoor_baseturfs, conspicuous, assembly) /** * ## carry_over_trapdoor @@ -209,8 +256,8 @@ * applies the trapdoor to the new turf (created by the last trapdoor) * apparently callbacks with arguments on invoke and the callback itself have the callback args go first. interesting! */ -/datum/component/trapdoor/proc/carry_over_trapdoor(trapdoor_turf_path, conspicuous, assembly, turf/new_turf) - new_turf.AddComponent(/datum/component/trapdoor, FALSE, trapdoor_turf_path, assembly, conspicuous, stored_decals, autoclose) +/datum/component/trapdoor/proc/carry_over_trapdoor(trapdoor_turf_path, trapdoor_baseturfs, conspicuous, assembly, turf/new_turf) + new_turf.AddComponent(/datum/component/trapdoor, FALSE, trapdoor_turf_path, trapdoor_baseturfs, assembly, conspicuous, stored_decals, autoclose) /** * ## on_examine @@ -219,6 +266,8 @@ */ /datum/component/trapdoor/proc/on_examine(datum/source, mob/user, list/examine_text) SIGNAL_HANDLER + if(is_under_shuttle()) + return if(conspicuous) examine_text += "There seems to be a tiny gap around this tile with some wires that you might be able to pulse with a multitool." @@ -230,12 +279,19 @@ */ /datum/component/trapdoor/proc/try_opening() var/turf/open/trapdoor_turf = parent + var/opening_depth = trapdoor_turf.depth_to_find_baseturf(/turf/baseturf_skipover/trapdoor) + if(!opening_depth) + stack_trace("Could not find baseturf skipover for trapdoor") + return + if(is_under_shuttle()) + return ///we want to save this turf's decals as they were right before deletion, so this is the point where we begin listening if(assembly) RegisterSignal(parent, COMSIG_TURF_DECAL_DETACHED, PROC_REF(decal_detached)) playsound(trapdoor_turf, 'sound/machines/trapdoor/trapdoor_open.ogg', 50) + trapdoor_baseturfs = trapdoor_turf.get_baseturfs_to_depth(opening_depth) trapdoor_turf.visible_message(span_warning("[trapdoor_turf] swings open!")) - trapdoor_turf.ChangeTurf(/turf/open/openspace, flags = CHANGETURF_INHERIT_AIR | CHANGETURF_TRAPDOOR_INDUCED) + trapdoor_turf.ScrapeAway(opening_depth, flags = CHANGETURF_INHERIT_AIR | CHANGETURF_TRAPDOOR_INDUCED) /** * ## try_closing @@ -251,7 +307,23 @@ return playsound(trapdoor_turf, 'sound/machines/trapdoor/trapdoor_shut.ogg', 50) trapdoor_turf.visible_message(span_warning("The trapdoor mechanism in [trapdoor_turf] swings shut!")) - trapdoor_turf.ChangeTurf(trapdoor_turf_path, flags = CHANGETURF_INHERIT_AIR | CHANGETURF_TRAPDOOR_INDUCED) + var/list/new_baseturfs = list() + new_baseturfs += trapdoor_turf.baseturfs + new_baseturfs += trapdoor_turf.type + if(on_shuttle) + new_baseturfs += /turf/baseturf_skipover/shuttle + new_baseturfs += trapdoor_baseturfs + trapdoor_baseturfs = null + trapdoor_turf.ChangeTurf(trapdoor_turf_path, new_baseturfs, flags = CHANGETURF_INHERIT_AIR | CHANGETURF_TRAPDOOR_INDUCED) + +/datum/component/trapdoor/proc/should_move_special(datum/source) + SIGNAL_HANDLER + var/turf/source_turf = source + return IS_OPEN(source_turf) && !is_under_shuttle() + +/datum/component/trapdoor/proc/on_move_special(datum/source, turf/new_turf) + SIGNAL_HANDLER + new_turf.TakeComponent(src) #undef IS_OPEN @@ -305,6 +377,7 @@ icon = 'icons/obj/devices/remote.dmi' icon_state = "trapdoor_remote" COOLDOWN_DECLARE(trapdoor_cooldown) + custom_materials = list(/datum/material/iron = SMALL_MATERIAL_AMOUNT * 1.5, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.5) var/trapdoor_cooldown_time = 2 SECONDS var/obj/item/assembly/trapdoor/internals @@ -402,6 +475,7 @@ desc = "A kit containing all the parts needed to build a trapdoor. Can only be used on open space." icon = 'icons/obj/weapons/improvised.dmi' icon_state = "kitsuitcase" + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 6.5, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 2.2) var/in_use = FALSE /obj/item/trapdoor_kit/Initialize(mapload) diff --git a/code/datums/components/usb_port.dm b/code/datums/components/usb_port.dm index a6ec5ffcf78472..832d9fe67a9ffd 100644 --- a/code/datums/components/usb_port.dm +++ b/code/datums/components/usb_port.dm @@ -29,8 +29,6 @@ if (!isatom(parent)) return COMPONENT_INCOMPATIBLE - circuit_components = list() - src.circuit_component_types = circuit_component_types src.extra_registration_callback = extra_registration_callback src.extra_unregistration_callback = extra_unregistration_callback @@ -40,7 +38,7 @@ if(length(circuit_components)) UnregisterFromParent() should_register = TRUE - QDEL_LIST(circuit_components) + QDEL_LAZYLIST(circuit_components) for(var/circuit_component in components) var/obj/item/circuit_component/component = circuit_component @@ -49,7 +47,7 @@ if(!should_register) component.register_usb_parent(parent) RegisterSignal(component, COMSIG_CIRCUIT_COMPONENT_SAVE, PROC_REF(save_component)) - circuit_components += component + LAZYADD(circuit_components, component) if(should_register) RegisterWithParent() @@ -113,7 +111,7 @@ on_atom_usb_cable_try_attach(src, cable, null) /datum/component/usb_port/Destroy() - QDEL_LIST(circuit_components) + QDEL_LAZYLIST(circuit_components) QDEL_NULL(usb_cable_beam) attached_circuit = null @@ -160,7 +158,7 @@ /datum/component/usb_port/proc/on_atom_usb_cable_try_attach(datum/source, obj/item/usb_cable/connecting_cable, mob/user) SIGNAL_HANDLER - if (!length(circuit_components)) + if (!LAZYLEN(circuit_components)) set_circuit_components(circuit_component_types) var/atom/atom_parent = parent diff --git a/code/datums/components/wall_mounted.dm b/code/datums/components/wall_mounted.dm deleted file mode 100644 index ef050a7fc612c1..00000000000000 --- a/code/datums/components/wall_mounted.dm +++ /dev/null @@ -1,77 +0,0 @@ -// This element should be applied to wall-mounted machines/structures, so that if the wall it's "hanging" from is broken or deconstructed, the wall-hung structure will deconstruct. -/datum/component/wall_mounted - dupe_mode = COMPONENT_DUPE_ALLOWED - /// The wall our object is currently linked to. - var/turf/closed/wall/hanging_wall_turf - -/datum/component/wall_mounted/Initialize(target_wall, on_drop_callback) - . = ..() - if(!isobj(parent) || !iswallturf(target_wall)) - return COMPONENT_INCOMPATIBLE - hanging_wall_turf = target_wall - -/datum/component/wall_mounted/RegisterWithParent() - ADD_TRAIT(parent, TRAIT_WALLMOUNTED, REF(src)) - RegisterSignal(hanging_wall_turf, COMSIG_ATOM_EXAMINE, PROC_REF(on_examine)) - RegisterSignal(hanging_wall_turf, COMSIG_TURF_CHANGE, PROC_REF(on_turf_changing)) - RegisterSignal(parent, COMSIG_MOVABLE_MOVED, PROC_REF(on_move)) - -/datum/component/wall_mounted/UnregisterFromParent() - REMOVE_TRAIT(parent, TRAIT_WALLMOUNTED, REF(src)) - UnregisterSignal(hanging_wall_turf, list(COMSIG_ATOM_EXAMINE, COMSIG_TURF_CHANGE)) - UnregisterSignal(parent, COMSIG_MOVABLE_MOVED) - hanging_wall_turf = null - -/** - * When the wall is examined, explains that it's supporting the linked object. - */ -/datum/component/wall_mounted/proc/on_examine(datum/source, mob/user, list/examine_list) - SIGNAL_HANDLER - - if (parent in view(user.client?.view || world.view, user)) - examine_list += span_notice("\The [hanging_wall_turf] is currently supporting [span_bold("[parent]")]. Deconstruction or excessive damage would cause it to [span_bold("fall to the ground")].") - -/** - * When the type of turf changes, if it is changing into a floor we should drop our contents - */ -/datum/component/wall_mounted/proc/on_turf_changing(datum/source, path, new_baseturfs, flags, post_change_callbacks) - SIGNAL_HANDLER - - if(ispath(path, /turf/open)) - drop_wallmount() - - -/** - * If we get dragged from our wall (by a singulo for instance) we should deconstruct - */ -/datum/component/wall_mounted/proc/on_move(datum/source, atom/old_loc, dir, forced, list/old_locs) - SIGNAL_HANDLER - // If we're having our lighting messed with we're likely to get dragged about - // That shouldn't lead to a decon - if(HAS_TRAIT(parent, TRAIT_LIGHTING_DEBUGGED)) - return - drop_wallmount() - -/** - * Handles the dropping of the linked object. This is done via deconstruction, as that should be the most sane way to handle it for most objects. - * Except for intercoms, which are handled by creating a new wallframe intercom, as they're apparently items. - */ -/datum/component/wall_mounted/proc/drop_wallmount() - PRIVATE_PROC(TRUE) - - var/obj/hanging_parent = parent - hanging_parent.visible_message(message = span_warning("\The [hanging_parent] falls apart!"), vision_distance = 5) - hanging_parent.deconstruct(FALSE) - - -///Checks object direction and then verifies if there's a wall in that direction. Finally, applies a wall_mounted component to the object. -/obj/proc/find_and_hang_on_wall() - if(istype(get_area(src), /area/shuttle)) - return FALSE //For now, we're going to keep the component off of shuttles to avoid the turf changing issue. We'll hit that later really; - var/turf/attachable_wall = loc //first attempt to locate a wall in our current turf - if(!iswallturf(attachable_wall)) - attachable_wall = get_step(src, dir) //if no then attempt to locate it in our direction - if(!iswallturf(attachable_wall)) - return FALSE //Nothing to latch onto, or not the right thing. - AddComponent(/datum/component/wall_mounted, attachable_wall) - return TRUE diff --git a/code/datums/components/wet_floor.dm b/code/datums/components/wet_floor.dm index f362359f3cde56..720d1ff3495394 100644 --- a/code/datums/components/wet_floor.dm +++ b/code/datums/components/wet_floor.dm @@ -54,28 +54,25 @@ return ..() /datum/component/wet_floor/proc/update_overlay() + var/turf/parent_turf = parent if(!should_display_overlay) if(!current_overlay) return - var/turf/parent_turf = parent parent_turf.cut_overlay(current_overlay) current_overlay = null return var/intended - if(!isfloorturf(parent)) - intended = generic_turf_overlay - else - switch(highest_strength) - if(TURF_WET_PERMAFROST) - intended = permafrost_overlay - if(TURF_WET_ICE) - intended = ice_overlay - else - intended = water_overlay + switch(highest_strength) + if(TURF_WET_PERMAFROST) + intended = permafrost_overlay + if(TURF_WET_ICE) + // Should really get someone to make a generic_ice_overlay. + intended = parent_turf.tiled_turf ? ice_overlay : generic_turf_overlay + else + intended = parent_turf.tiled_turf ? water_overlay : generic_turf_overlay if(current_overlay != intended) - var/turf/parent_turf = parent parent_turf.cut_overlay(current_overlay) parent_turf.add_overlay(intended) current_overlay = intended diff --git a/code/datums/diseases/_disease.dm b/code/datums/diseases/_disease.dm index d3c8c0f7dc043c..8bb65e43049c02 100644 --- a/code/datums/diseases/_disease.dm +++ b/code/datums/diseases/_disease.dm @@ -98,7 +98,7 @@ UnregisterSignal(affected_mob, COMSIG_CARBON_PRE_BREATHE) ///Proc to process the disease and decide on whether to advance, cure or make the symptoms appear. Returns a boolean on whether to continue acting on the symptoms or not. -/datum/disease/proc/stage_act(seconds_per_tick, times_fired) +/datum/disease/proc/stage_act(seconds_per_tick) var/slowdown = HAS_TRAIT(affected_mob, TRAIT_VIRUS_RESISTANCE) ? 0.5 : 1 // spaceacillin slows stage speed by 50% var/recovery_prob = 0 var/cure_mod diff --git a/code/datums/diseases/adrenal_crisis.dm b/code/datums/diseases/adrenal_crisis.dm index aa9587c2e1ab90..72882bd369488c 100644 --- a/code/datums/diseases/adrenal_crisis.dm +++ b/code/datums/diseases/adrenal_crisis.dm @@ -15,7 +15,7 @@ visibility_flags = HIDDEN_PANDEMIC bypasses_immunity = TRUE -/datum/disease/adrenal_crisis/stage_act(seconds_per_tick, times_fired) +/datum/disease/adrenal_crisis/stage_act(seconds_per_tick) . = ..() if(!.) return diff --git a/code/datums/diseases/advance/advance.dm b/code/datums/diseases/advance/advance.dm index 5efa1554bafbbe..298f537ef6331b 100644 --- a/code/datums/diseases/advance/advance.dm +++ b/code/datums/diseases/advance/advance.dm @@ -142,7 +142,7 @@ // Randomly pick a symptom to activate. -/datum/disease/advance/stage_act(seconds_per_tick, times_fired) +/datum/disease/advance/stage_act(seconds_per_tick) . = ..() if(!.) return @@ -543,6 +543,9 @@ /datum/disease/advance/proc/totalTransmittable() return properties["transmittable"] +/datum/disease/advance/proc/totalSeverity() + return properties["severity"] + /** * If the disease has an incubation time (such as event diseases) start the timer, let properties determine if there's no timer set. */ diff --git a/code/datums/diseases/advance/symptoms/bleeding.dm b/code/datums/diseases/advance/symptoms/bleeding.dm new file mode 100644 index 00000000000000..2964c01cefe030 --- /dev/null +++ b/code/datums/diseases/advance/symptoms/bleeding.dm @@ -0,0 +1,68 @@ +/*Anticoagulant + * Increases stealth + * No change to resistance + * Reduces to stage speed + * Reduces transmissibility + * Fatal Level + * Bonus: Worsens blood loss +*/ + +/datum/symptom/bleeding + name = "Anticoagulant" + desc = "The virus prevents the body from clotting blood. Unnoticable unless the host is bleeding." + stealth = 1 + resistance = 0 + stage_speed = -2 + transmittable = -2 + severity = 3 + level = 7 + threshold_descs = list( + "Stage Speed 9" = "The host becomes more vulnerable to bleeding wounds.", + "Stealth 3" = "The symptom remains hidden even while active." + ) + var/easybleed = FALSE + var/hidden = FALSE + +/datum/symptom/bleeding/Start(datum/disease/advance/A) + . = ..() + if(!.) + return + if(A.totalStageSpeed() >= 9) + easybleed = TRUE + if(A.totalStealth() >= 3) + hidden = TRUE + +/datum/symptom/bleeding/Activate(datum/disease/advance/A) + . = ..() + if(!.) + return + var/mob/living/carbon/carbon_host = A.affected_mob + for(var/datum/wound/possible_bleeding_wound as anything in carbon_host.all_wounds) + if(possible_bleeding_wound.blood_flow && !hidden) + if(4 > A.stage >= 2) + to_chat(carbon_host, span_warning("Your bleeding wounds start to itch.")) + if(A.stage >= 4) + to_chat(carbon_host, span_warning("Your bleeding wounds itch like crazy as more blood leaves your body.")) + return + +/datum/symptom/bleeding/on_stage_change(datum/disease/advance/A) + . = ..() + if(!.) + return + var/mob/living/carbon/carbon_host = A.affected_mob + if(A.stage >= 4) + ADD_TRAIT(carbon_host, TRAIT_BLOOD_FOUNTAIN, DISEASE_TRAIT) + if(easybleed) + ADD_TRAIT(carbon_host, TRAIT_EASYBLEED, DISEASE_TRAIT) + return + REMOVE_TRAIT(carbon_host, TRAIT_BLOOD_FOUNTAIN, DISEASE_TRAIT) + REMOVE_TRAIT(carbon_host, TRAIT_EASYBLEED, DISEASE_TRAIT) + + +/datum/symptom/bleeding/End(datum/disease/advance/A) + . = ..() + if(!.) + return + var/mob/living/carbon/carbon_host = A.affected_mob + REMOVE_TRAIT(carbon_host, TRAIT_BLOOD_FOUNTAIN, DISEASE_TRAIT) + REMOVE_TRAIT(carbon_host, TRAIT_EASYBLEED, DISEASE_TRAIT) diff --git a/code/datums/diseases/advance/symptoms/choking.dm b/code/datums/diseases/advance/symptoms/choking.dm index 6ae9fe42b6e3a0..68ad1720d9f7ab 100644 --- a/code/datums/diseases/advance/symptoms/choking.dm +++ b/code/datums/diseases/advance/symptoms/choking.dm @@ -60,11 +60,11 @@ infected_mob.emote("gasp") /datum/symptom/choking/proc/Choke_stage_3_4(mob/living/M, datum/disease/advance/A) - M.adjustOxyLoss(rand(6,13)) + M.adjust_oxy_loss(rand(6,13)) return 1 /datum/symptom/choking/proc/Choke(mob/living/M, datum/disease/advance/A) - M.adjustOxyLoss(rand(10,18)) + M.adjust_oxy_loss(rand(10,18)) return 1 /* @@ -128,25 +128,25 @@ Bonus to_chat(M, span_userdanger("[pick("Your lungs hurt!", "It hurts to breathe!")]")) Asphyxiate(M, A) M.emote("gasp") - if(M.getOxyLoss() >= (M.maxHealth / (200/120))) + if(M.get_oxy_loss() >= (M.maxHealth / (200/120))) M.visible_message(span_warning("[M] stops breathing, as if their lungs have totally collapsed!")) Asphyxiate_death(M, A) return /datum/symptom/asphyxiation/proc/Asphyxiate_stage_3_4(mob/living/M, datum/disease/advance/A) var/get_damage = rand(10,15) * power - M.adjustOxyLoss(get_damage) + M.adjust_oxy_loss(get_damage) return 1 /datum/symptom/asphyxiation/proc/Asphyxiate(mob/living/M, datum/disease/advance/A) var/get_damage = rand(15,21) * power - M.adjustOxyLoss(get_damage) + M.adjust_oxy_loss(get_damage) if(paralysis) M.reagents.add_reagent_list(list(/datum/reagent/toxin/pancuronium = 3, /datum/reagent/toxin/sodium_thiopental = 3)) return 1 /datum/symptom/asphyxiation/proc/Asphyxiate_death(mob/living/M, datum/disease/advance/A) var/get_damage = rand(25,35) * power - M.adjustOxyLoss(get_damage) - M.adjustOrganLoss(ORGAN_SLOT_BRAIN, get_damage/2) + M.adjust_oxy_loss(get_damage) + M.adjust_organ_loss(ORGAN_SLOT_BRAIN, get_damage/2) return 1 diff --git a/code/datums/diseases/advance/symptoms/confusion.dm b/code/datums/diseases/advance/symptoms/confusion.dm index 159eccfbd1ccdf..1d54a2b788827e 100644 --- a/code/datums/diseases/advance/symptoms/confusion.dm +++ b/code/datums/diseases/advance/symptoms/confusion.dm @@ -57,6 +57,6 @@ to_chat(infected_mob, span_userdanger("You can't think straight!")) infected_mob.adjust_confusion_up_to(16 SECONDS * power, 30 SECONDS) if(brain_damage) - infected_mob.adjustOrganLoss(ORGAN_SLOT_BRAIN, 3 * power, 80) + infected_mob.adjust_organ_loss(ORGAN_SLOT_BRAIN, 3 * power, 80) infected_mob.updatehealth() return diff --git a/code/datums/diseases/advance/symptoms/deafness.dm b/code/datums/diseases/advance/symptoms/deafness.dm index 649cf56b98040d..7cf4f3cff9c532 100644 --- a/code/datums/diseases/advance/symptoms/deafness.dm +++ b/code/datums/diseases/advance/symptoms/deafness.dm @@ -55,8 +55,8 @@ if(!HAS_TRAIT_FROM(infected_mob, TRAIT_DEAF, DISEASE_TRAIT)) to_chat(infected_mob, span_userdanger("Your ears pop painfully and start bleeding!")) // Just absolutely murder me man - infected_mob.adjustOrganLoss(ORGAN_SLOT_EARS, INFINITY) - infected_mob.painful_scream() // DOPPLER EDIT: check for painkilling before screaming + infected_mob.adjust_organ_loss(ORGAN_SLOT_EARS, INFINITY) + infected_mob.painful_scream() // DOPPLER EDIT - Screams check pain - ORIGINAL: infected_mob.emote("scream") ADD_TRAIT(infected_mob, TRAIT_DEAF, DISEASE_TRAIT) else to_chat(infected_mob, span_userdanger("Your ears pop and begin ringing loudly!")) diff --git a/code/datums/diseases/advance/symptoms/flesh_eating.dm b/code/datums/diseases/advance/symptoms/flesh_eating.dm index 005a651b7f3381..df282fb82aea0c 100644 --- a/code/datums/diseases/advance/symptoms/flesh_eating.dm +++ b/code/datums/diseases/advance/symptoms/flesh_eating.dm @@ -54,7 +54,7 @@ Bonus var/get_damage = rand(15,25) * power M.take_overall_damage(brute = get_damage, required_bodytype = BODYTYPE_ORGANIC) if(pain) - M.adjustStaminaLoss(get_damage * 2) + M.adjust_stamina_loss(get_damage * 2) if(bleed) if(ishuman(M)) var/mob/living/carbon/human/H = M diff --git a/code/datums/diseases/advance/symptoms/headache.dm b/code/datums/diseases/advance/symptoms/headache.dm index f6e2be2aba0d2d..b11a461c3adcc4 100644 --- a/code/datums/diseases/advance/symptoms/headache.dm +++ b/code/datums/diseases/advance/symptoms/headache.dm @@ -50,7 +50,7 @@ to_chat(M, span_warning("[pick("Your head hurts.", "Your head pounds.")]")) if(power >= 2 && A.stage >= 4) to_chat(M, span_warning("[pick("Your head hurts a lot.", "Your head pounds incessantly.")]")) - M.adjustStaminaLoss(25) + M.adjust_stamina_loss(25) if(power >= 3 && A.stage >= 5) to_chat(M, span_userdanger("[pick("Your head hurts!", "You feel a burning knife inside your brain!", "A wave of pain fills your head!")]")) M.Stun(35) diff --git a/code/datums/diseases/advance/symptoms/heal.dm b/code/datums/diseases/advance/symptoms/heal.dm index 2b31a2091a4be8..154642529983ef 100644 --- a/code/datums/diseases/advance/symptoms/heal.dm +++ b/code/datums/diseases/advance/symptoms/heal.dm @@ -10,30 +10,36 @@ symptom_delay_min = 1 symptom_delay_max = 1 var/passive_message = "" //random message to infected but not actively healing people + var/healable_bodytypes = BODYTYPE_ORGANIC // What types of body parts we can heal -/datum/symptom/heal/Activate(datum/disease/advance/A) +/datum/symptom/heal/Activate(datum/disease/advance/our_disease) . = ..() if(!.) return - var/mob/living/M = A.affected_mob - switch(A.stage) + healable_bodytypes = BODYTYPE_ORGANIC + if(our_disease.infectable_biotypes & MOB_ROBOTIC) + healable_bodytypes |= BODYTYPE_ROBOTIC // Inorganic biology lets us heal more bodytypes + if(our_disease.infectable_biotypes & MOB_MINERAL) + healable_bodytypes |= BODYTYPE_GOLEM + var/mob/living/living_host = our_disease.affected_mob + switch(our_disease.stage) if(4, 5) - var/effectiveness = CanHeal(A) + var/effectiveness = CanHeal(our_disease) if(!effectiveness) - if(passive_message && prob(2) && passive_message_condition(M)) - to_chat(M, passive_message) + if(passive_message && prob(2) && passive_message_condition(living_host)) + to_chat(living_host, passive_message) return else - Heal(M, A, effectiveness) + Heal(living_host, our_disease, effectiveness) return -/datum/symptom/heal/proc/CanHeal(datum/disease/advance/A) +/datum/symptom/heal/proc/CanHeal(datum/disease/advance/our_disease) return power -/datum/symptom/heal/proc/Heal(mob/living/M, datum/disease/advance/A, actual_power) +/datum/symptom/heal/proc/Heal(mob/living/living_host, datum/disease/advance/our_disease, actual_power) return TRUE -/datum/symptom/heal/proc/passive_message_condition(mob/living/M) +/datum/symptom/heal/proc/passive_message_condition(mob/living/living_host) return TRUE /*Starlight Condensation @@ -64,13 +70,13 @@ #define STARLIGHT_CANNOT_HEAL 0 #define STARLIGHT_MAX_RANGE 2 -/datum/symptom/heal/starlight/Start(datum/disease/advance/A) +/datum/symptom/heal/starlight/Start(datum/disease/advance/our_disease) . = ..() if(!.) return - if(A.totalTransmittable() >= 6) + if(our_disease.totalTransmittable() >= 6) nearspace_penalty = 1 - if(A.totalStageSpeed() >= 6) + if(our_disease.totalStageSpeed() >= 6) power = 2 /datum/symptom/heal/starlight/proc/CanTileHealDirectional(turf/turf_to_check, direction) @@ -132,15 +138,15 @@ else return current_heal_level -/datum/symptom/heal/starlight/CanHeal(datum/disease/advance/A) - var/mob/living/affected_mob = A.affected_mob - var/turf/turf_of_mob = get_turf(affected_mob) +/datum/symptom/heal/starlight/CanHeal(datum/disease/advance/our_disease) + var/mob/living/living_host = our_disease.affected_mob + var/turf/turf_of_mob = get_turf(living_host) switch(CanTileHeal(turf_of_mob, FALSE)) if(STARLIGHT_CAN_HEAL_WITH_PENALTY) return power * nearspace_penalty if(STARLIGHT_CAN_HEAL) return power - for(var/turf/turf_to_check in view(affected_mob, STARLIGHT_MAX_RANGE)) + for(var/turf/turf_to_check in view(living_host, STARLIGHT_MAX_RANGE)) if(CanTileHeal(turf_to_check, TRUE)) return power * nearspace_penalty @@ -149,25 +155,19 @@ #undef STARLIGHT_CANNOT_HEAL #undef STARLIGHT_MAX_RANGE -/datum/symptom/heal/starlight/Heal(mob/living/carbon/M, datum/disease/advance/A, actual_power) +/datum/symptom/heal/starlight/Heal(mob/living/carbon/carbon_host, datum/disease/advance/our_disease, actual_power) var/heal_amt = actual_power - if(M.getToxLoss() && prob(5)) - to_chat(M, span_notice("Your skin tingles as the starlight seems to heal you.")) - - M.adjustToxLoss(-(4 * heal_amt)) //most effective on toxins - - var/list/parts = M.get_damaged_bodyparts(1,1, BODYTYPE_ORGANIC) - - if(!parts.len) - return - - for(var/obj/item/bodypart/bodypart in parts) - if(bodypart.heal_damage(heal_amt/parts.len, heal_amt/parts.len, required_bodytype = BODYTYPE_ORGANIC)) - M.update_damage_overlays() - return 1 + if(carbon_host.get_tox_loss() && prob(5)) + to_chat(carbon_host, span_notice("Your skin tingles as the starlight seems to heal you.")) + var/needs_update = FALSE + needs_update += carbon_host.adjust_tox_loss(-4 * heal_amt, updating_health = FALSE, required_biotype = healable_bodytypes) // Most effective on toxins + needs_update += carbon_host.heal_overall_damage(heal_amt, heal_amt, required_bodytype = healable_bodytypes, updating_health = FALSE) + if(needs_update) + carbon_host.updatehealth() + return TRUE -/datum/symptom/heal/starlight/passive_message_condition(mob/living/M) - if(M.getBruteLoss() || M.getFireLoss() || M.getToxLoss()) +/datum/symptom/heal/starlight/passive_message_condition(mob/living/living_host) + if(living_host.get_brute_loss() || living_host.get_fire_loss() || living_host.get_tox_loss()) return TRUE return FALSE @@ -193,23 +193,23 @@ ) var/food_conversion = FALSE -/datum/symptom/heal/chem/Start(datum/disease/advance/A) +/datum/symptom/heal/chem/Start(datum/disease/advance/our_disease) . = ..() if(!.) return - if(A.totalStageSpeed() >= 6) + if(our_disease.totalStageSpeed() >= 6) food_conversion = TRUE - if(A.totalResistance() >= 7) + if(our_disease.totalResistance() >= 7) power = 2 -/datum/symptom/heal/chem/Heal(mob/living/M, datum/disease/advance/A, actual_power) - for(var/datum/reagent/R in M.reagents.reagent_list) //Not just toxins! - M.reagents.remove_reagent(R.type, actual_power) +/datum/symptom/heal/chem/Heal(mob/living/living_host, datum/disease/advance/our_disease, actual_power) + for(var/datum/reagent/each_reagent in living_host.reagents.reagent_list) //Not just toxins! + var/food = living_host.reagents.remove_reagent(each_reagent.type, actual_power) if(food_conversion) - M.adjust_nutrition(0.3) + living_host.adjust_nutrition(0.3 * food) if(prob(2)) - to_chat(M, span_notice("You feel a mild warmth as your blood purifies itself.")) - return 1 + to_chat(living_host, span_notice("You feel a mild warmth as your blood purifies itself.")) + return TRUE /*Metabolic Boost @@ -237,23 +237,23 @@ var/triple_metabolism = FALSE var/reduced_hunger = FALSE -/datum/symptom/heal/metabolism/Start(datum/disease/advance/A) +/datum/symptom/heal/metabolism/Start(datum/disease/advance/our_disease) . = ..() if(!.) return - if(A.totalStageSpeed() >= 10) + if(our_disease.totalStageSpeed() >= 10) triple_metabolism = TRUE - if(A.totalStealth() >= 3) + if(our_disease.totalStealth() >= 3) reduced_hunger = TRUE -/datum/symptom/heal/metabolism/Heal(mob/living/carbon/infected_mob, datum/disease/advance/A, actual_power) +/datum/symptom/heal/metabolism/Heal(mob/living/carbon/carbon_host, datum/disease/advance/our_disease, actual_power) var/metabolic_boost = triple_metabolism ? 2 : 1 - infected_mob.reagents.metabolize(infected_mob, metabolic_boost * SSMOBS_DT, 0, can_overdose=TRUE) //this works even without a liver; it's intentional since the virus is metabolizing by itself - infected_mob.overeatduration = max(infected_mob.overeatduration - 4 SECONDS, 0) + carbon_host.reagents.metabolize(carbon_host, metabolic_boost * SSMOBS_DT, 0, can_overdose=TRUE) //this works even without a liver; it's intentional since the virus is metabolizing by itself + carbon_host.overeatduration = max(carbon_host.overeatduration - 4 SECONDS, 0) var/lost_nutrition = 9 - (reduced_hunger * 5) - infected_mob.adjust_nutrition(-lost_nutrition * HUNGER_FACTOR) //Hunger depletes at 10x the normal speed + carbon_host.adjust_nutrition(-lost_nutrition * HUNGER_FACTOR) //Hunger depletes at 10x the normal speed if(prob(2)) - to_chat(infected_mob, span_notice("You feel an odd gurgle in your stomach, as if it was working much faster than normal.")) + to_chat(carbon_host, span_notice("You feel an odd gurgle in your stomach, as if it was working much faster than normal.")) return TRUE /*Nocturnal Regeneration @@ -276,40 +276,31 @@ "Stage Speed 8" = "Doubles healing speed.", ) -/datum/symptom/heal/darkness/Start(datum/disease/advance/A) +/datum/symptom/heal/darkness/Start(datum/disease/advance/our_disease) . = ..() if(!.) return - if(A.totalStageSpeed() >= 8) + if(our_disease.totalStageSpeed() >= 8) power = 2 -/datum/symptom/heal/darkness/CanHeal(datum/disease/advance/A) - var/mob/living/M = A.affected_mob +/datum/symptom/heal/darkness/CanHeal(datum/disease/advance/our_disease) + var/mob/living/living_host = our_disease.affected_mob var/light_amount = 0 - if(isturf(M.loc)) //else, there's considered to be no light - var/turf/T = M.loc - light_amount = min(1,T.get_lumcount()) - 0.5 + if(isturf(living_host.loc)) //else, there's considered to be no light + var/turf/host_turf = living_host.loc + light_amount = min(1,host_turf.get_lumcount()) - 0.5 if(light_amount < SHADOW_SPECIES_LIGHT_THRESHOLD) return power -/datum/symptom/heal/darkness/Heal(mob/living/carbon/M, datum/disease/advance/A, actual_power) +/datum/symptom/heal/darkness/Heal(mob/living/carbon/carbon_host, datum/disease/advance/our_disease, actual_power) var/heal_amt = 2 * actual_power - - var/list/parts = M.get_damaged_bodyparts(1,1,BODYTYPE_ORGANIC) - - if(!parts.len) - return - + carbon_host.heal_overall_damage(heal_amt, heal_amt * 0.5, required_bodytype = healable_bodytypes) if(prob(5)) - to_chat(M, span_notice("The darkness soothes and mends your wounds.")) - - for(var/obj/item/bodypart/bodypart in parts) - if(bodypart.heal_damage(heal_amt/parts.len, heal_amt/parts.len * 0.5, required_bodytype = BODYTYPE_ORGANIC)) //more effective on brute - M.update_damage_overlays() - return 1 + to_chat(carbon_host, span_notice("The darkness soothes and mends your wounds.")) + return TRUE -/datum/symptom/heal/darkness/passive_message_condition(mob/living/M) - if(M.getBruteLoss() || M.getFireLoss()) +/datum/symptom/heal/darkness/passive_message_condition(mob/living/living_host) + if(living_host.get_brute_loss() || living_host.get_fire_loss()) return TRUE return FALSE @@ -338,84 +329,74 @@ "Stage Speed 7" = "Increases healing speed.", ) -/datum/symptom/heal/coma/Start(datum/disease/advance/A) +/datum/symptom/heal/coma/Start(datum/disease/advance/our_disease) . = ..() if(!.) return - if(A.totalStageSpeed() >= 7) + if(our_disease.totalStageSpeed() >= 7) power = 1.5 - if(A.totalResistance() >= 4) + if(our_disease.totalResistance() >= 4) stabilize = TRUE - if(A.totalStealth() >= 2) + if(our_disease.totalStealth() >= 2) deathgasp = TRUE -/datum/symptom/heal/coma/on_stage_change(datum/disease/advance/A) //mostly copy+pasted from the code for self-respiration's TRAIT_NOBREATH stuff +/datum/symptom/heal/coma/on_stage_change(datum/disease/advance/our_disease) //mostly copy+pasted from the code for self-respiration's TRAIT_NOBREATH stuff . = ..() if(!.) return FALSE - if(A.stage >= 4 && stabilize) - ADD_TRAIT(A.affected_mob, TRAIT_NOCRITDAMAGE, DISEASE_TRAIT) + if(our_disease.stage >= 4 && stabilize) + ADD_TRAIT(our_disease.affected_mob, TRAIT_NOCRITDAMAGE, DISEASE_TRAIT) else - REMOVE_TRAIT(A.affected_mob, TRAIT_NOCRITDAMAGE, DISEASE_TRAIT) + REMOVE_TRAIT(our_disease.affected_mob, TRAIT_NOCRITDAMAGE, DISEASE_TRAIT) return TRUE -/datum/symptom/heal/coma/End(datum/disease/advance/A) +/datum/symptom/heal/coma/End(datum/disease/advance/our_disease) . = ..() if(!.) return if(active_coma) uncoma() - REMOVE_TRAIT(A.affected_mob, TRAIT_NOCRITDAMAGE, DISEASE_TRAIT) + REMOVE_TRAIT(our_disease.affected_mob, TRAIT_NOCRITDAMAGE, DISEASE_TRAIT) -/datum/symptom/heal/coma/CanHeal(datum/disease/advance/A) - var/mob/living/M = A.affected_mob - if(HAS_TRAIT(M, TRAIT_DEATHCOMA)) +/datum/symptom/heal/coma/CanHeal(datum/disease/advance/our_disease) + var/mob/living/living_host = our_disease.affected_mob + if(HAS_TRAIT(living_host, TRAIT_DEATHCOMA)) return power - if(M.IsSleeping()) + if(living_host.IsSleeping()) return power * 0.25 //Voluntary unconsciousness yields lower healing. - switch(M.stat) + switch(living_host.stat) if(UNCONSCIOUS, HARD_CRIT) return power * 0.9 if(SOFT_CRIT) return power * 0.5 - if(M.getBruteLoss() + M.getFireLoss() >= 70 && !active_coma && !(HAS_TRAIT(M,TRAIT_NOSOFTCRIT))) - to_chat(M, span_warning("You feel yourself slip into a regenerative coma...")) + if(living_host.get_brute_loss() + living_host.get_fire_loss() >= living_host.maxHealth * 0.7 && !active_coma && !(HAS_TRAIT(living_host, TRAIT_NOSOFTCRIT))) + to_chat(living_host, span_warning("You feel yourself slip into a regenerative coma...")) active_coma = TRUE - addtimer(CALLBACK(src, PROC_REF(coma), M), 6 SECONDS) + addtimer(CALLBACK(src, PROC_REF(coma), living_host), 6 SECONDS) -/datum/symptom/heal/coma/proc/coma(mob/living/M) - if(QDELETED(M) || M.stat == DEAD) +/datum/symptom/heal/coma/proc/coma(mob/living/living_host) + if(QDELETED(living_host) || living_host.stat == DEAD || HAS_TRAIT(living_host, TRAIT_NOSOFTCRIT)) return - M.fakedeath("regenerative_coma", !deathgasp) - addtimer(CALLBACK(src, PROC_REF(uncoma), M), 30 SECONDS) + living_host.fakedeath("regenerative_coma", !deathgasp) + addtimer(CALLBACK(src, PROC_REF(uncoma), living_host), 30 SECONDS) -/datum/symptom/heal/coma/proc/uncoma(mob/living/M) - if(QDELETED(M) || !active_coma) +/datum/symptom/heal/coma/proc/uncoma(mob/living/living_host) + if(QDELETED(living_host) || !active_coma) return active_coma = FALSE - M.cure_fakedeath("regenerative_coma") + living_host.cure_fakedeath("regenerative_coma") -/datum/symptom/heal/coma/Heal(mob/living/carbon/M, datum/disease/advance/A, actual_power) +/datum/symptom/heal/coma/Heal(mob/living/carbon/carbon_host, datum/disease/advance/our_disease, actual_power) var/heal_amt = 4 * actual_power - - var/list/parts = M.get_damaged_bodyparts(1,1) - - if(!parts.len) - return - - for(var/obj/item/bodypart/bodypart in parts) - if(bodypart.heal_damage(heal_amt/parts.len, heal_amt/parts.len, required_bodytype = BODYTYPE_ORGANIC)) - M.update_damage_overlays() - - if(active_coma && M.getBruteLoss() + M.getFireLoss() == 0) - uncoma(M) - + carbon_host.heal_overall_damage(heal_amt, heal_amt, required_bodytype = healable_bodytypes) + if(active_coma && carbon_host.get_brute_loss() + carbon_host.get_fire_loss() == 0) + uncoma(carbon_host) return 1 -/datum/symptom/heal/coma/passive_message_condition(mob/living/M) - if((M.getBruteLoss() + M.getFireLoss()) > 30) +/datum/symptom/heal/coma/passive_message_condition(mob/living/living_host) + if((living_host.get_brute_loss() + living_host.get_fire_loss()) > living_host.maxHealth * 0.3) return TRUE return FALSE @@ -435,48 +416,37 @@ ) var/absorption_coeff = 1 -/datum/symptom/heal/water/Start(datum/disease/advance/A) +/datum/symptom/heal/water/Start(datum/disease/advance/our_disease) . = ..() if(!.) return - if(A.totalStageSpeed() >= 7) + if(our_disease.totalStageSpeed() >= 7) power = 2 - if(A.totalResistance() >= 5) + if(our_disease.totalResistance() >= 5) absorption_coeff = 0.25 -/datum/symptom/heal/water/CanHeal(datum/disease/advance/advanced_disease) +/datum/symptom/heal/water/CanHeal(datum/disease/advance/our_disease) . = 0 - var/mob/living/carbon/infected_mob = advanced_disease.affected_mob + var/mob/living/carbon/carbon_host = our_disease.affected_mob - if(infected_mob.fire_stacks < 0) - infected_mob.adjust_fire_stacks(min(absorption_coeff, -infected_mob.fire_stacks)) + if(carbon_host.fire_stacks < 0) + carbon_host.adjust_fire_stacks(min(absorption_coeff, -carbon_host.fire_stacks)) . += power - if(infected_mob.reagents.has_reagent(/datum/reagent/water/holywater, needs_metabolizing = FALSE)) - infected_mob.reagents.remove_reagent(/datum/reagent/water/holywater, 0.5 * absorption_coeff) + if(carbon_host.reagents.has_reagent(/datum/reagent/water/holywater, needs_metabolizing = FALSE)) + carbon_host.reagents.remove_reagent(/datum/reagent/water/holywater, 0.5 * absorption_coeff) . += power * 0.75 - else if(infected_mob.reagents.has_reagent(/datum/reagent/water, needs_metabolizing = FALSE)) - infected_mob.reagents.remove_reagent(/datum/reagent/water, 0.5 * absorption_coeff) + else if(carbon_host.reagents.has_reagent(/datum/reagent/water, needs_metabolizing = FALSE)) + carbon_host.reagents.remove_reagent(/datum/reagent/water, 0.5 * absorption_coeff) . += power * 0.5 -/datum/symptom/heal/water/Heal(mob/living/carbon/M, datum/disease/advance/A, actual_power) +/datum/symptom/heal/water/Heal(mob/living/carbon/carbon_host, datum/disease/advance/our_disease, actual_power) var/heal_amt = 2 * actual_power + if(carbon_host.heal_overall_damage(heal_amt * 0.5, heal_amt, required_bodytype = healable_bodytypes) && prob(5)) + to_chat(carbon_host, span_notice("You feel yourself absorbing the water around you to soothe your damaged skin.")) + return TRUE - var/list/parts = M.get_damaged_bodyparts(1,1, BODYTYPE_ORGANIC) //more effective on burns - - if(!parts.len) - return - - if(prob(5)) - to_chat(M, span_notice("You feel yourself absorbing the water around you to soothe your damaged skin.")) - - for(var/obj/item/bodypart/bodypart in parts) - if(bodypart.heal_damage(heal_amt/parts.len * 0.5, heal_amt/parts.len, required_bodytype = BODYTYPE_ORGANIC)) - M.update_damage_overlays() - - return 1 - -/datum/symptom/heal/water/passive_message_condition(mob/living/carbon/infected_mob) - if(infected_mob.getBruteLoss() || infected_mob.getFireLoss()) +/datum/symptom/heal/water/passive_message_condition(mob/living/carbon/carbon_host) + if(carbon_host.get_brute_loss() || carbon_host.get_fire_loss()) return TRUE return FALSE @@ -510,37 +480,37 @@ ) var/temp_rate = 1 -/datum/symptom/heal/plasma/Start(datum/disease/advance/A) +/datum/symptom/heal/plasma/Start(datum/disease/advance/our_disease) . = ..() if(!.) return - if(A.totalStageSpeed() >= 7) + if(our_disease.totalStageSpeed() >= 7) power = 2 - if(A.totalTransmittable() >= 6) + if(our_disease.totalTransmittable() >= 6) temp_rate = 4 // We do this to prevent liver damage from injecting plasma when plasma fixation virus reaches stage 4 and beyond -/datum/symptom/heal/plasma/on_stage_change(datum/disease/advance/advanced_disease) +/datum/symptom/heal/plasma/on_stage_change(datum/disease/advance/our_disease) . = ..() if(!.) return FALSE - if(advanced_disease.stage >= 4) - ADD_TRAIT(advanced_disease.affected_mob, TRAIT_PLASMA_LOVER_METABOLISM, DISEASE_TRAIT) + if(our_disease.stage >= 4) + ADD_TRAIT(our_disease.affected_mob, TRAIT_PLASMA_LOVER_METABOLISM, DISEASE_TRAIT) else - REMOVE_TRAIT(advanced_disease.affected_mob, TRAIT_PLASMA_LOVER_METABOLISM, DISEASE_TRAIT) + REMOVE_TRAIT(our_disease.affected_mob, TRAIT_PLASMA_LOVER_METABOLISM, DISEASE_TRAIT) return TRUE -/datum/symptom/heal/plasma/End(datum/disease/advance/advanced_disease) +/datum/symptom/heal/plasma/End(datum/disease/advance/our_disease) . = ..() if(!.) return - REMOVE_TRAIT(advanced_disease.affected_mob, TRAIT_PLASMA_LOVER_METABOLISM, DISEASE_TRAIT) + REMOVE_TRAIT(our_disease.affected_mob, TRAIT_PLASMA_LOVER_METABOLISM, DISEASE_TRAIT) // Check internals breath, environmental plasma, and plasma in bloodstream to determine the heal power -/datum/symptom/heal/plasma/CanHeal(datum/disease/advance/advanced_disease) - var/mob/living/carbon/infected_mob = advanced_disease.affected_mob +/datum/symptom/heal/plasma/CanHeal(datum/disease/advance/our_disease) + var/mob/living/carbon/carbon_host = our_disease.affected_mob var/datum/gas_mixture/environment var/list/gases @@ -550,7 +520,7 @@ /// the amount of mols in a breath is significantly lower than in the environment so we are just going to use the tank's /// distribution pressure as an abstraction rather than calculate it using the ideal gas equation. /// balanced around a tank set to 4kpa = about 0.2 healing power. maxes out at 0.75 healing power, or 15kpa. - var/obj/item/tank/internals/internals_tank = infected_mob.internal + var/obj/item/tank/internals/internals_tank = carbon_host.internal if(internals_tank) var/datum/gas_mixture/tank_contents = internals_tank.return_air() if(tank_contents && round(tank_contents.return_pressure())) // make sure the tank is not empty or 0 pressure @@ -558,44 +528,39 @@ // higher tank distribution pressure leads to more healing, but once you get to about 15kpa you reach the max . += power * min(MAX_HEAL_COEFFICIENT_INTERNALS, internals_tank.distribute_pressure * HEALING_PER_BREATH_PRESSURE) else // Check environment - if(infected_mob.loc) - environment = infected_mob.loc.return_air() + if(carbon_host.loc) + environment = carbon_host.loc.return_air() if(environment) gases = environment.gases if(gases[/datum/gas/plasma]) . += power * min(MAX_HEAL_COEFFICIENT_INTERNALS, gases[/datum/gas/plasma][MOLES] * HEALING_PER_MOL) // Check for reagents in bloodstream - if(infected_mob.reagents.has_reagent(/datum/reagent/toxin/plasma, needs_metabolizing = TRUE)) + if(carbon_host.reagents.has_reagent(/datum/reagent/toxin/plasma, needs_metabolizing = TRUE)) . += power * MAX_HEAL_COEFFICIENT_BLOODSTREAM //Determines how much the symptom heals if injected or ingested -/datum/symptom/heal/plasma/Heal(mob/living/carbon/M, datum/disease/advance/A, actual_power) +/datum/symptom/heal/plasma/Heal(mob/living/carbon/carbon_host, datum/disease/advance/our_disease, actual_power) var/heal_amt = BASE_HEAL_PLASMA_FIXATION * actual_power if(prob(5)) - to_chat(M, span_notice("You feel yourself absorbing plasma inside and around you...")) - - var/target_temp = M.get_body_temp_normal() - if(M.bodytemperature > target_temp) - M.adjust_bodytemperature(-20 * temp_rate * TEMPERATURE_DAMAGE_COEFFICIENT, target_temp) - if(prob(5)) - to_chat(M, span_notice("You feel less hot.")) - else if(M.bodytemperature < (M.get_body_temp_normal() + 1)) - M.adjust_bodytemperature(20 * temp_rate * TEMPERATURE_DAMAGE_COEFFICIENT, 0, target_temp) - if(prob(5)) - to_chat(M, span_notice("You feel warmer.")) - - M.adjustToxLoss(-heal_amt) - - var/list/parts = M.get_damaged_bodyparts(1,1, BODYTYPE_ORGANIC) - if(!parts.len) - return + to_chat(carbon_host, span_notice("You feel yourself absorbing plasma inside and around you...")) + + var/difference = carbon_host.get_body_temp_normal() - carbon_host.bodytemperature if(prob(5)) - to_chat(M, span_notice("The pain from your wounds fades rapidly.")) - for(var/obj/item/bodypart/bodypart in parts) - if(bodypart.heal_damage(heal_amt/parts.len, heal_amt/parts.len, required_bodytype = BODYTYPE_ORGANIC)) - M.update_damage_overlays() - return 1 + if(difference > -1) // Yes, it's supposed to be -1 and not 0. Probably so you keep getting passive messages even at normal temperature. + to_chat(carbon_host, span_notice("You feel warmer.")) + if(difference < 0) + to_chat(carbon_host, span_notice("You feel less hot.")) + carbon_host.adjust_bodytemperature(clamp(difference, -20 * temp_rate, 20 * temp_rate)) + var/needs_update = FALSE + needs_update += carbon_host.adjust_tox_loss(-heal_amt, updating_health = FALSE, required_biotype = healable_bodytypes) + var/brute_burn_heal = carbon_host.heal_overall_damage(heal_amt, heal_amt, required_bodytype = healable_bodytypes, updating_health = FALSE) + needs_update += brute_burn_heal + if(brute_burn_heal && prob(5)) + to_chat(carbon_host, span_notice("The pain from your wounds fades rapidly.")) + if(needs_update) + carbon_host.updatehealth() + return TRUE ///Plasma End #undef HEALING_PER_MOL @@ -617,38 +582,28 @@ symptom_delay_max = 1 passive_message = span_notice("Your skin glows faintly for a moment.") threshold_descs = list( - "Transmission 6" = "Additionally heals cellular damage.", "Resistance 7" = "Increases healing speed.", ) -/datum/symptom/heal/radiation/Start(datum/disease/advance/A) +/datum/symptom/heal/radiation/Start(datum/disease/advance/our_disease) . = ..() if(!.) return - if(A.totalResistance() >= 7) + if(our_disease.totalResistance() >= 7) power = 2 -/datum/symptom/heal/radiation/CanHeal(datum/disease/advance/A) - return HAS_TRAIT(A.affected_mob, TRAIT_IRRADIATED) ? power : 0 +/datum/symptom/heal/radiation/CanHeal(datum/disease/advance/our_disease) + return HAS_TRAIT(our_disease.affected_mob, TRAIT_IRRADIATED) ? power : 0 -/datum/symptom/heal/radiation/Heal(mob/living/carbon/M, datum/disease/advance/A, actual_power) +/datum/symptom/heal/radiation/Heal(mob/living/carbon/carbon_host, datum/disease/advance/our_disease, actual_power) var/heal_amt = actual_power - - if(M.adjustToxLoss(-(2 * heal_amt), updating_health = FALSE)) - M.updatehealth() - - var/list/parts = M.get_damaged_bodyparts(1,1, BODYTYPE_ORGANIC) - - if(!parts.len) - return - - if(prob(4)) - to_chat(M, span_notice("Your skin glows faintly, and you feel your wounds mending themselves.")) - - for(var/obj/item/bodypart/bodypart in parts) - if(bodypart.heal_damage(heal_amt/parts.len, heal_amt/parts.len, required_bodytype = BODYTYPE_ORGANIC)) - M.update_damage_overlays() - return 1 + var/needs_update = FALSE + needs_update += carbon_host.adjust_tox_loss(-2 * heal_amt, updating_health = FALSE) + var/brute_burn_heal = carbon_host.heal_overall_damage(heal_amt, heal_amt, required_bodytype = healable_bodytypes, updating_health = FALSE) + needs_update += brute_burn_heal + if(brute_burn_heal && prob(4)) + to_chat(carbon_host, span_notice("Your skin glows faintly, and you feel your wounds mending themselves.")) + return TRUE /datum/symptom/heal/radiation/can_generate_randomly() - return ..() && !HAS_TRAIT(SSstation, STATION_TRAIT_RADIOACTIVE_NEBULA) //because people can never really suffer enough + return ..() && !HAS_TRAIT(SSstation, STATION_TRAIT_RADIOACTIVE_NEBULA) // Because people can never really suffer enough diff --git a/code/datums/diseases/advance/symptoms/oxygen.dm b/code/datums/diseases/advance/symptoms/oxygen.dm index 79f0646a5c4b35..3478114bc6b3df 100644 --- a/code/datums/diseases/advance/symptoms/oxygen.dm +++ b/code/datums/diseases/advance/symptoms/oxygen.dm @@ -39,11 +39,11 @@ switch(advanced_disease.stage) if(4, 5) infected_mob.losebreath = max(0, infected_mob.losebreath - 4) - infected_mob.adjustOxyLoss(-7) + infected_mob.adjust_oxy_loss(-7) if(prob(base_message_chance)) to_chat(infected_mob, span_notice("You realize you haven't been breathing.")) - if(regenerate_blood && infected_mob.blood_volume < BLOOD_VOLUME_NORMAL) - infected_mob.blood_volume += 1 + if(regenerate_blood) + infected_mob.adjust_blood_volume(1, maximum = BLOOD_VOLUME_NORMAL) else if(prob(base_message_chance)) to_chat(infected_mob, span_notice("Your lungs feel great.")) diff --git a/code/datums/diseases/advance/symptoms/sensory.dm b/code/datums/diseases/advance/symptoms/sensory.dm index e0677571599807..894b6ffcfec4f5 100644 --- a/code/datums/diseases/advance/symptoms/sensory.dm +++ b/code/datums/diseases/advance/symptoms/sensory.dm @@ -64,7 +64,7 @@ M.adjust_hallucinations(-20 SECONDS) if(A.stage >= 5) - M.adjustOrganLoss(ORGAN_SLOT_BRAIN, -3) + M.adjust_organ_loss(ORGAN_SLOT_BRAIN, -3) if(trauma_heal_mild && iscarbon(M)) var/mob/living/carbon/C = M if(prob(10)) diff --git a/code/datums/diseases/advance/symptoms/thermoregulation.dm b/code/datums/diseases/advance/symptoms/thermoregulation.dm new file mode 100644 index 00000000000000..7ab1ae6f7f918a --- /dev/null +++ b/code/datums/diseases/advance/symptoms/thermoregulation.dm @@ -0,0 +1,39 @@ +/** Thermoregulation + * No change to stealth. + * Increases resistance. + * Reduces stage speed. + * Reduces transmissibility + * Bonus: Regulates body temperature. + */ + +/datum/symptom/thermoregulation + name = "Thermoregulation" + desc = "The virus reacts to extreme conditions and assists the body in regulating its temperature." + stealth = 0 + resistance = 1 + stage_speed = -2 + transmittable = -1 + level = 5 + severity = 0 + threshold_descs = list( + "Resistance 8" = "Increases thermal regulation speed." + ) + +/datum/symptom/thermoregulation/Start(datum/disease/advance/A) + . = ..() + if(!.) + return + if(A.totalResistance() >= 8) + power = 1.75 + +/datum/symptom/thermoregulation/Activate(datum/disease/advance/A) + . = ..() + if(!.) + return + if(A.stage >= 3) + var/mob/living/carbon/carbon_host = A.affected_mob + var/difference = carbon_host.dna.species.bodytemp_normal - carbon_host.bodytemperature + if(!(carbon_host.dna.species.bodytemp_cold_damage_limit < carbon_host.bodytemperature < carbon_host.dna.species.bodytemp_heat_damage_limit)) // No need to spam chat + to_chat(carbon_host, span_notice("You feel a [difference < 0 ? "warmth" : "chill"] spread through your body.")) + var/stage_power = (A.stage == 3) ? power * 5 : power * 10 // Half as strong at stage 3 + carbon_host.adjust_bodytemperature(clamp(difference, -stage_power, stage_power)) diff --git a/code/datums/diseases/anaphylaxis.dm b/code/datums/diseases/anaphylaxis.dm index 12d408ad2159a2..544082357557cb 100644 --- a/code/datums/diseases/anaphylaxis.dm +++ b/code/datums/diseases/anaphylaxis.dm @@ -16,7 +16,7 @@ bypasses_immunity = TRUE stage_prob = 5 -/datum/disease/anaphylaxis/stage_act(seconds_per_tick, times_fired) +/datum/disease/anaphylaxis/stage_act(seconds_per_tick) . = ..() if(!.) return @@ -54,8 +54,8 @@ if(affected_mob.num_legs >= 1 && SPT_PROB(5, seconds_per_tick)) to_chat(affected_mob, span_warning("You feel your leg[affected_mob.num_hands == 1 ? "":"s"] shake violently.")) affected_mob.adjust_jitter_up_to(8 SECONDS * seconds_per_tick, 1 MINUTES) - if(prob(40) && affected_mob.getStaminaLoss() < 75) - affected_mob.adjustStaminaLoss(15) + if(prob(40) && affected_mob.get_stamina_loss() < 75) + affected_mob.adjust_stamina_loss(15) if(affected_mob.get_organ_slot(ORGAN_SLOT_EYES) && SPT_PROB(4, seconds_per_tick)) affected_mob.adjust_eye_blur(4 SECONDS * seconds_per_tick) to_chat(affected_mob, span_warning("It's getting harder to see clearly.")) diff --git a/code/datums/diseases/anxiety.dm b/code/datums/diseases/anxiety.dm index df24ae2ffa58ac..2b6df5808f1c1a 100644 --- a/code/datums/diseases/anxiety.dm +++ b/code/datums/diseases/anxiety.dm @@ -12,7 +12,7 @@ severity = DISEASE_SEVERITY_MINOR -/datum/disease/anxiety/stage_act(seconds_per_tick, times_fired) +/datum/disease/anxiety/stage_act(seconds_per_tick) . = ..() if(!.) return diff --git a/code/datums/diseases/asthma_attack.dm b/code/datums/diseases/asthma_attack.dm index 7adefd2f746429..3c01accc11342a 100644 --- a/code/datums/diseases/asthma_attack.dm +++ b/code/datums/diseases/asthma_attack.dm @@ -72,7 +72,7 @@ return (locate(/datum/quirk/item_quirk/asthma) in target.quirks) -/datum/disease/asthma_attack/stage_act(seconds_per_tick, times_fired) +/datum/disease/asthma_attack/stage_act(seconds_per_tick) . = ..() if (!.) return @@ -116,7 +116,7 @@ "3" = 0.6, ) -/datum/disease/asthma_attack/minor/stage_act(seconds_per_tick, times_fired) +/datum/disease/asthma_attack/minor/stage_act(seconds_per_tick) . = ..() if (!.) return FALSE @@ -140,7 +140,7 @@ "4" = 4, ) -/datum/disease/asthma_attack/moderate/stage_act(seconds_per_tick, times_fired) +/datum/disease/asthma_attack/moderate/stage_act(seconds_per_tick) . = ..() if (!.) return FALSE @@ -174,7 +174,7 @@ visibility_flags = HIDDEN_SCANNER alert_ghosts = TRUE -/datum/disease/asthma_attack/severe/stage_act(seconds_per_tick, times_fired) +/datum/disease/asthma_attack/severe/stage_act(seconds_per_tick) . = ..() if (!.) return FALSE @@ -216,7 +216,7 @@ /// Have we ever reached our max stage? If no, and we are at our max stage, we send a ominous message warning them of their imminent demise. var/max_stage_reached = FALSE -/datum/disease/asthma_attack/critical/stage_act(seconds_per_tick, times_fired) +/datum/disease/asthma_attack/critical/stage_act(seconds_per_tick) . = ..() if (!.) return FALSE diff --git a/code/datums/diseases/beesease.dm b/code/datums/diseases/beesease.dm index f2ef68b4e499e6..ead9c35da18d99 100644 --- a/code/datums/diseases/beesease.dm +++ b/code/datums/diseases/beesease.dm @@ -13,7 +13,7 @@ infectable_biotypes = MOB_ORGANIC|MOB_UNDEAD //bees nesting in corpses -/datum/disease/beesease/stage_act(seconds_per_tick, times_fired) +/datum/disease/beesease/stage_act(seconds_per_tick) . = ..() if(!.) return @@ -28,7 +28,7 @@ if(SPT_PROB(1, seconds_per_tick)) to_chat(affected_mob, span_danger("Your stomach stings painfully.")) if(prob(20)) - affected_mob.adjustToxLoss(2) + affected_mob.adjust_tox_loss(2) if(4) if(SPT_PROB(5, seconds_per_tick)) affected_mob.visible_message(span_danger("[affected_mob] buzzes."), \ diff --git a/code/datums/diseases/brainrot.dm b/code/datums/diseases/brainrot.dm index 4f8571765aa98f..e3a4e3d35a2d44 100644 --- a/code/datums/diseases/brainrot.dm +++ b/code/datums/diseases/brainrot.dm @@ -13,7 +13,7 @@ severity = DISEASE_SEVERITY_HARMFUL bypasses_immunity = TRUE -/datum/disease/brainrot/stage_act(seconds_per_tick, times_fired) //Removed toxloss because damaging diseases are pretty horrible. Last round it killed the entire station because the cure didn't work -- Urist -ACTUALLY Removed rather than commented out, I don't see it returning - RR +/datum/disease/brainrot/stage_act(seconds_per_tick) //Removed toxloss because damaging diseases are pretty horrible. Last round it killed the entire station because the cure didn't work -- Urist -ACTUALLY Removed rather than commented out, I don't see it returning - RR . = ..() if(!.) return @@ -27,14 +27,14 @@ if(SPT_PROB(1, seconds_per_tick)) to_chat(affected_mob, span_danger("You don't feel like yourself.")) if(SPT_PROB(2.5, seconds_per_tick)) - affected_mob.adjustOrganLoss(ORGAN_SLOT_BRAIN, 1, 170) + affected_mob.adjust_organ_loss(ORGAN_SLOT_BRAIN, 1, 170) if(3) if(SPT_PROB(1, seconds_per_tick)) affected_mob.emote("stare") if(SPT_PROB(1, seconds_per_tick)) affected_mob.emote("drool") if(SPT_PROB(5, seconds_per_tick)) - affected_mob.adjustOrganLoss(ORGAN_SLOT_BRAIN, 2, 170) + affected_mob.adjust_organ_loss(ORGAN_SLOT_BRAIN, 2, 170) if(prob(2)) to_chat(affected_mob, span_danger("Your try to remember something important...but can't.")) @@ -44,7 +44,7 @@ if(SPT_PROB(1, seconds_per_tick)) affected_mob.emote("drool") if(SPT_PROB(7.5, seconds_per_tick)) - affected_mob.adjustOrganLoss(ORGAN_SLOT_BRAIN, 3, 170) + affected_mob.adjust_organ_loss(ORGAN_SLOT_BRAIN, 3, 170) if(prob(2)) to_chat(affected_mob, span_danger("Strange buzzing fills your head, removing all thoughts.")) if(SPT_PROB(1.5, seconds_per_tick)) diff --git a/code/datums/diseases/chronic_illness.dm b/code/datums/diseases/chronic_illness.dm index 47e9e710a6f019..c6bee31a937790 100644 --- a/code/datums/diseases/chronic_illness.dm +++ b/code/datums/diseases/chronic_illness.dm @@ -16,7 +16,7 @@ severity = DISEASE_SEVERITY_UNCURABLE bypasses_immunity = TRUE -/datum/disease/chronic_illness/stage_act(seconds_per_tick, times_fired) +/datum/disease/chronic_illness/stage_act(seconds_per_tick) . = ..() if(!.) return @@ -39,12 +39,12 @@ affected_mob.vomit(VOMIT_CATEGORY_BLOOD, lost_nutrition = 20) if(SPT_PROB(0.5, seconds_per_tick)) to_chat(affected_mob, span_userdanger("[pick("You feel your heart slowing...", "You relax and slow your heartbeat.")]")) - need_mob_update += affected_mob.adjustStaminaLoss(70, updating_stamina = FALSE) + need_mob_update += affected_mob.adjust_stamina_loss(70, updating_stamina = FALSE) if(SPT_PROB(1, seconds_per_tick)) to_chat(affected_mob, span_danger("You feel a buzzing in your brain.")) SEND_SOUND(affected_mob, sound('sound/items/weapons/flash_ring.ogg')) if(SPT_PROB(0.5, seconds_per_tick)) - need_mob_update += affected_mob.adjustBruteLoss(1, updating_health = FALSE) + need_mob_update += affected_mob.adjust_brute_loss(1, updating_health = FALSE) if(need_mob_update) affected_mob.updatehealth() if(4) @@ -56,15 +56,15 @@ if(prob(75)) affected_mob.vomit(VOMIT_CATEGORY_BLOOD, lost_nutrition = 45) if(SPT_PROB(1, seconds_per_tick)) - need_mob_update += affected_mob.adjustStaminaLoss(100, updating_stamina = FALSE) + need_mob_update += affected_mob.adjust_stamina_loss(100, updating_stamina = FALSE) affected_mob.visible_message(span_warning("[affected_mob] collapses!")) if(prob(30)) to_chat(affected_mob, span_danger("Your vision blurs as you faint!")) affected_mob.AdjustSleeping(1 SECONDS) if(SPT_PROB(0.5, seconds_per_tick)) to_chat(affected_mob, span_danger("[pick("You feel as though your atoms are accelerating in place.", "You feel like you're being torn apart!")]")) - affected_mob.painful_scream() // DOPPLER EDIT: check for painkilling before screaming - need_mob_update += affected_mob.adjustBruteLoss(10, updating_health = FALSE) + affected_mob.painful_scream() // DOPPLER EDIT - Screams check pain - ORIGINAL: affected_mob.emote("scream") + need_mob_update += affected_mob.adjust_brute_loss(10, updating_health = FALSE) if(need_mob_update) affected_mob.updatehealth() if(5) @@ -74,7 +74,7 @@ update_stage(1) if(2) to_chat(affected_mob, span_boldwarning("There is no place for you in this timeline.")) - affected_mob.adjustStaminaLoss(100, forced = TRUE) + affected_mob.adjust_stamina_loss(100, forced = TRUE) playsound(affected_mob.loc, 'sound/effects/magic/repulse.ogg', 100, FALSE) affected_mob.painful_scream() // DOPPLER EDIT: check for painkilling before screaming for(var/mob/living/viewers in viewers(3, affected_mob.loc)) diff --git a/code/datums/diseases/cold.dm b/code/datums/diseases/cold.dm index f7bf6cf4b18a7b..990a138e9ad400 100644 --- a/code/datums/diseases/cold.dm +++ b/code/datums/diseases/cold.dm @@ -12,7 +12,7 @@ required_organ = ORGAN_SLOT_LUNGS -/datum/disease/cold/stage_act(seconds_per_tick, times_fired) +/datum/disease/cold/stage_act(seconds_per_tick) . = ..() if(!.) return diff --git a/code/datums/diseases/cold9.dm b/code/datums/diseases/cold9.dm index 2e55df23b7ec80..667be8c88e54c4 100644 --- a/code/datums/diseases/cold9.dm +++ b/code/datums/diseases/cold9.dm @@ -11,7 +11,7 @@ severity = DISEASE_SEVERITY_HARMFUL required_organ = ORGAN_SLOT_LUNGS -/datum/disease/cold9/stage_act(seconds_per_tick, times_fired) +/datum/disease/cold9/stage_act(seconds_per_tick) . = ..() if(!.) return diff --git a/code/datums/diseases/death_sandwich_poisoning.dm b/code/datums/diseases/death_sandwich_poisoning.dm index f865f4fb5be6ad..375d97c9eee371 100644 --- a/code/datums/diseases/death_sandwich_poisoning.dm +++ b/code/datums/diseases/death_sandwich_poisoning.dm @@ -16,7 +16,7 @@ bypasses_immunity = TRUE required_organ = ORGAN_SLOT_STOMACH -/datum/disease/death_sandwich_poisoning/stage_act(seconds_per_tick, times_fired) +/datum/disease/death_sandwich_poisoning/stage_act(seconds_per_tick) . = ..() if(!.) return @@ -28,7 +28,7 @@ if(SPT_PROB(0.5, seconds_per_tick)) affected_mob.emote("gag") if(SPT_PROB(0.5, seconds_per_tick)) - affected_mob.adjustToxLoss(5) + affected_mob.adjust_tox_loss(5) if(2) if(SPT_PROB(5, seconds_per_tick)) affected_mob.emote("cough") @@ -39,7 +39,7 @@ if(prob(20)) affected_mob.take_bodypart_damage(burn = 1) if(SPT_PROB(3, seconds_per_tick)) - affected_mob.adjustToxLoss(10) + affected_mob.adjust_tox_loss(10) if(3) if(SPT_PROB(5, seconds_per_tick)) @@ -53,7 +53,7 @@ if(prob(60)) affected_mob.take_bodypart_damage(burn = 2) if(SPT_PROB(6, seconds_per_tick)) - affected_mob.adjustToxLoss(15) + affected_mob.adjust_tox_loss(15) if(SPT_PROB(1.5, seconds_per_tick)) to_chat(affected_mob, span_danger("You try to scream, but nothing comes out!")) affected_mob.set_silence_if_lower(5 SECONDS) diff --git a/code/datums/diseases/decloning.dm b/code/datums/diseases/decloning.dm index 4e13341dab6f1b..b3017b9ca21189 100644 --- a/code/datums/diseases/decloning.dm +++ b/code/datums/diseases/decloning.dm @@ -18,7 +18,7 @@ affected_mob.remove_status_effect(/datum/status_effect/decloning) return ..() -/datum/disease/decloning/stage_act(seconds_per_tick, times_fired) +/datum/disease/decloning/stage_act(seconds_per_tick) . = ..() if(!.) return @@ -49,7 +49,7 @@ affected_mob.emote("drool") if(SPT_PROB(2.5, seconds_per_tick)) affected_mob.apply_status_effect(/datum/status_effect/decloning) - affected_mob.adjustOrganLoss(ORGAN_SLOT_BRAIN, 1, 170) + affected_mob.adjust_organ_loss(ORGAN_SLOT_BRAIN, 1, 170) if(SPT_PROB(7.5, seconds_per_tick)) affected_mob.adjust_stutter(6 SECONDS) if(5) @@ -61,4 +61,4 @@ to_chat(affected_mob, span_danger("Your skin starts degrading!")) if(SPT_PROB(5, seconds_per_tick)) affected_mob.apply_status_effect(/datum/status_effect/decloning) - affected_mob.adjustOrganLoss(ORGAN_SLOT_BRAIN, 2, 170) + affected_mob.adjust_organ_loss(ORGAN_SLOT_BRAIN, 2, 170) diff --git a/code/datums/diseases/dna_spread.dm b/code/datums/diseases/dna_spread.dm index 77f1b1a3cd252d..2630a805c747fd 100644 --- a/code/datums/diseases/dna_spread.dm +++ b/code/datums/diseases/dna_spread.dm @@ -15,7 +15,7 @@ bypasses_immunity = TRUE -/datum/disease/dnaspread/stage_act(seconds_per_tick, times_fired) +/datum/disease/dnaspread/stage_act(seconds_per_tick) . = ..() if(!.) return @@ -50,7 +50,7 @@ if(SPT_PROB(0.5, seconds_per_tick)) to_chat(affected_mob, span_danger("Your stomach hurts.")) if(prob(20)) - affected_mob.adjustToxLoss(2, FALSE) + affected_mob.adjust_tox_loss(2, FALSE) if(4) if(!transformed && !carrier) //Save original dna for when the disease is cured. diff --git a/code/datums/diseases/fake_gbs.dm b/code/datums/diseases/fake_gbs.dm index 655439cdc6cc55..59ffb1e1c9a559 100644 --- a/code/datums/diseases/fake_gbs.dm +++ b/code/datums/diseases/fake_gbs.dm @@ -11,7 +11,7 @@ severity = DISEASE_SEVERITY_BIOHAZARD -/datum/disease/fake_gbs/stage_act(seconds_per_tick, times_fired) +/datum/disease/fake_gbs/stage_act(seconds_per_tick) . = ..() if(!.) return diff --git a/code/datums/diseases/floor_diseases/carpellosis.dm b/code/datums/diseases/floor_diseases/carpellosis.dm index 5f5fcb9051c373..50a6481c575ea4 100644 --- a/code/datums/diseases/floor_diseases/carpellosis.dm +++ b/code/datums/diseases/floor_diseases/carpellosis.dm @@ -22,7 +22,7 @@ /// Whether the host has carp ability var/ability_granted = FALSE -/datum/disease/carpellosis/stage_act(seconds_per_tick, times_fired) +/datum/disease/carpellosis/stage_act(seconds_per_tick) . = ..() if(!.) return diff --git a/code/datums/diseases/floor_diseases/gastritium.dm b/code/datums/diseases/floor_diseases/gastritium.dm index dfa445a06488da..cbee6e1fe8792c 100644 --- a/code/datums/diseases/floor_diseases/gastritium.dm +++ b/code/datums/diseases/floor_diseases/gastritium.dm @@ -14,7 +14,7 @@ /// The chance of burped out tritium to be hot during max stage var/tritium_burp_hot_chance = 10 -/datum/disease/gastritium/stage_act(seconds_per_tick, times_fired) +/datum/disease/gastritium/stage_act(seconds_per_tick) . = ..() if(!.) return diff --git a/code/datums/diseases/floor_diseases/nebula_nausea.dm b/code/datums/diseases/floor_diseases/nebula_nausea.dm index 85d7716a1d3a61..9f8e45648deb1d 100644 --- a/code/datums/diseases/floor_diseases/nebula_nausea.dm +++ b/code/datums/diseases/floor_diseases/nebula_nausea.dm @@ -12,7 +12,7 @@ required_organ = ORGAN_SLOT_STOMACH max_stages = 5 -/datum/disease/advance/nebula_nausea/stage_act(seconds_per_tick, times_fired) +/datum/disease/advance/nebula_nausea/stage_act(seconds_per_tick) . = ..() if(!.) return diff --git a/code/datums/diseases/flu.dm b/code/datums/diseases/flu.dm index 9412d2a2a2f63d..97563ed515cc9d 100644 --- a/code/datums/diseases/flu.dm +++ b/code/datums/diseases/flu.dm @@ -12,7 +12,7 @@ severity = DISEASE_SEVERITY_MINOR required_organ = ORGAN_SLOT_LUNGS -/datum/disease/flu/stage_act(seconds_per_tick, times_fired) +/datum/disease/flu/stage_act(seconds_per_tick) . = ..() if(!.) return @@ -30,7 +30,7 @@ if(SPT_PROB(0.5, seconds_per_tick)) to_chat(affected_mob, span_danger("Your stomach hurts.")) if(prob(20)) - affected_mob.adjustToxLoss(1, FALSE) + affected_mob.adjust_tox_loss(1, FALSE) if(affected_mob.body_position == LYING_DOWN && SPT_PROB(10, seconds_per_tick)) to_chat(affected_mob, span_notice("You feel better.")) stage-- @@ -48,7 +48,7 @@ if(SPT_PROB(0.5, seconds_per_tick)) to_chat(affected_mob, span_danger("Your stomach hurts.")) if(prob(20)) - affected_mob.adjustToxLoss(1, FALSE) + affected_mob.adjust_tox_loss(1, FALSE) if(affected_mob.body_position == LYING_DOWN && SPT_PROB(7.5, seconds_per_tick)) to_chat(affected_mob, span_notice("You feel better.")) stage-- diff --git a/code/datums/diseases/fluspanish.dm b/code/datums/diseases/fluspanish.dm index 6919884b2fe300..7fd35c631b4092 100644 --- a/code/datums/diseases/fluspanish.dm +++ b/code/datums/diseases/fluspanish.dm @@ -12,7 +12,7 @@ severity = DISEASE_SEVERITY_DANGEROUS required_organ = ORGAN_SLOT_LUNGS -/datum/disease/fluspanish/stage_act(seconds_per_tick, times_fired) +/datum/disease/fluspanish/stage_act(seconds_per_tick) . = ..() if(!.) return diff --git a/code/datums/diseases/gastrolisis.dm b/code/datums/diseases/gastrolisis.dm index 5b53683a4796df..9d9df10281bbda 100644 --- a/code/datums/diseases/gastrolisis.dm +++ b/code/datums/diseases/gastrolisis.dm @@ -12,7 +12,7 @@ bypasses_immunity = TRUE -/datum/disease/gastrolosis/stage_act(seconds_per_tick, times_fired) +/datum/disease/gastrolosis/stage_act(seconds_per_tick) . = ..() if(!.) return diff --git a/code/datums/diseases/gbs.dm b/code/datums/diseases/gbs.dm index c9faf303674584..162a688a86e146 100644 --- a/code/datums/diseases/gbs.dm +++ b/code/datums/diseases/gbs.dm @@ -13,7 +13,7 @@ severity = DISEASE_SEVERITY_BIOHAZARD bypasses_immunity = TRUE -/datum/disease/gbs/stage_act(seconds_per_tick, times_fired) +/datum/disease/gbs/stage_act(seconds_per_tick) . = ..() if(!.) return diff --git a/code/datums/diseases/magnitis.dm b/code/datums/diseases/magnitis.dm index a0fbc957e74913..295fa0b6a7e44b 100644 --- a/code/datums/diseases/magnitis.dm +++ b/code/datums/diseases/magnitis.dm @@ -15,7 +15,7 @@ process_dead = TRUE -/datum/disease/magnitis/stage_act(seconds_per_tick, times_fired) +/datum/disease/magnitis/stage_act(seconds_per_tick) . = ..() if(!.) return diff --git a/code/datums/diseases/parasitic_infection.dm b/code/datums/diseases/parasitic_infection.dm index 53b61266271fac..ec008c504956a4 100644 --- a/code/datums/diseases/parasitic_infection.dm +++ b/code/datums/diseases/parasitic_infection.dm @@ -14,7 +14,7 @@ required_organ = ORGAN_SLOT_LIVER bypasses_immunity = TRUE -/datum/disease/parasite/stage_act(seconds_per_tick, times_fired) +/datum/disease/parasite/stage_act(seconds_per_tick) . = ..() if(!.) return diff --git a/code/datums/diseases/parrotpossession.dm b/code/datums/diseases/parrotpossession.dm index 114d144902a009..0bb50df6b29a6d 100644 --- a/code/datums/diseases/parrotpossession.dm +++ b/code/datums/diseases/parrotpossession.dm @@ -19,7 +19,7 @@ var/datum/ai_controller/basic_controller/parrot_controller -/datum/disease/parrot_possession/stage_act(seconds_per_tick, times_fired) +/datum/disease/parrot_possession/stage_act(seconds_per_tick) . = ..() if(!. || isnull(parrot_controller)) diff --git a/code/datums/diseases/pierrot_throat.dm b/code/datums/diseases/pierrot_throat.dm index afc27eff07ae28..950d98b22f0699 100644 --- a/code/datums/diseases/pierrot_throat.dm +++ b/code/datums/diseases/pierrot_throat.dm @@ -12,7 +12,7 @@ severity = DISEASE_SEVERITY_MEDIUM required_organ = ORGAN_SLOT_TONGUE -/datum/disease/pierrot_throat/stage_act(seconds_per_tick, times_fired) +/datum/disease/pierrot_throat/stage_act(seconds_per_tick) . = ..() if(!.) return diff --git a/code/datums/diseases/retrovirus.dm b/code/datums/diseases/retrovirus.dm index 4524c2af346602..507c9340a5cc5c 100644 --- a/code/datums/diseases/retrovirus.dm +++ b/code/datums/diseases/retrovirus.dm @@ -27,7 +27,7 @@ D.restcure = restcure return D -/datum/disease/dna_retrovirus/stage_act(seconds_per_tick, times_fired) +/datum/disease/dna_retrovirus/stage_act(seconds_per_tick) . = ..() if(!.) return diff --git a/code/datums/diseases/rhumba_beat.dm b/code/datums/diseases/rhumba_beat.dm index ee38d36b1f75e5..ac45d32e403501 100644 --- a/code/datums/diseases/rhumba_beat.dm +++ b/code/datums/diseases/rhumba_beat.dm @@ -11,7 +11,7 @@ severity = DISEASE_SEVERITY_BIOHAZARD bypasses_immunity = TRUE -/datum/disease/rhumba_beat/stage_act(seconds_per_tick, times_fired) +/datum/disease/rhumba_beat/stage_act(seconds_per_tick) . = ..() if(!.) return @@ -19,7 +19,7 @@ switch(stage) if(2) if(SPT_PROB(26, seconds_per_tick)) - affected_mob.adjustFireLoss(5) + affected_mob.adjust_fire_loss(5) if(SPT_PROB(0.5, seconds_per_tick)) to_chat(affected_mob, span_danger("You feel strange...")) if(3) diff --git a/code/datums/diseases/transformation.dm b/code/datums/diseases/transformation.dm index 5c11528b686c96..a2de17f8531972 100644 --- a/code/datums/diseases/transformation.dm +++ b/code/datums/diseases/transformation.dm @@ -31,7 +31,7 @@ return D -/datum/disease/transformation/stage_act(seconds_per_tick, times_fired) +/datum/disease/transformation/stage_act(seconds_per_tick) . = ..() if(!.) return @@ -129,7 +129,7 @@ /datum/disease/transformation/jungle_flu/do_disease_transformation(mob/living/carbon/affected_mob) affected_mob.monkeyize() -/datum/disease/transformation/jungle_flu/stage_act(seconds_per_tick, times_fired) +/datum/disease/transformation/jungle_flu/stage_act(seconds_per_tick) . = ..() if(!.) return @@ -168,7 +168,7 @@ infectable_biotypes = MOB_ORGANIC|MOB_UNDEAD|MOB_ROBOTIC bantype = JOB_CYBORG -/datum/disease/transformation/robot/stage_act(seconds_per_tick, times_fired) +/datum/disease/transformation/robot/stage_act(seconds_per_tick) . = ..() if(!.) return @@ -212,7 +212,7 @@ bantype = ROLE_ALIEN -/datum/disease/transformation/xeno/stage_act(seconds_per_tick, times_fired) +/datum/disease/transformation/xeno/stage_act(seconds_per_tick) . = ..() if(!.) return @@ -244,7 +244,7 @@ new_form = /mob/living/basic/slime -/datum/disease/transformation/slime/stage_act(seconds_per_tick, times_fired) +/datum/disease/transformation/slime/stage_act(seconds_per_tick) . = ..() if(!.) return @@ -284,7 +284,7 @@ new_form = /mob/living/basic/pet/dog/corgi -/datum/disease/transformation/corgi/stage_act(seconds_per_tick, times_fired) +/datum/disease/transformation/corgi/stage_act(seconds_per_tick) . = ..() if(!.) return @@ -337,7 +337,7 @@ new_form = /mob/living/basic/pet/gondola -/datum/disease/transformation/gondola/stage_act(seconds_per_tick, times_fired) +/datum/disease/transformation/gondola/stage_act(seconds_per_tick) . = ..() if(!.) return diff --git a/code/datums/diseases/tuberculosis.dm b/code/datums/diseases/tuberculosis.dm index 4b01ef804af291..4c14337ba27657 100644 --- a/code/datums/diseases/tuberculosis.dm +++ b/code/datums/diseases/tuberculosis.dm @@ -13,7 +13,7 @@ severity = DISEASE_SEVERITY_BIOHAZARD bypasses_immunity = TRUE // TB primarily impacts the lungs; it's also bacterial or fungal in nature; viral immunity should do nothing. -/datum/disease/tuberculosis/stage_act(seconds_per_tick, times_fired) //it begins +/datum/disease/tuberculosis/stage_act(seconds_per_tick) //it begins . = ..() if(!.) return @@ -35,11 +35,11 @@ affected_mob.set_dizzy_if_lower(10 SECONDS) if(SPT_PROB(1, seconds_per_tick)) to_chat(affected_mob, span_danger("You feel a sharp pain from your lower chest!")) - need_mob_update += affected_mob.adjustOxyLoss(5, updating_health = FALSE) + need_mob_update += affected_mob.adjust_oxy_loss(5, updating_health = FALSE) affected_mob.emote("gasp") if(SPT_PROB(5, seconds_per_tick)) to_chat(affected_mob, span_danger("You feel air escape from your lungs painfully.")) - need_mob_update += affected_mob.adjustOxyLoss(25, updating_health = FALSE) + need_mob_update += affected_mob.adjust_oxy_loss(25, updating_health = FALSE) affected_mob.emote("gasp") if(need_mob_update) affected_mob.updatehealth() @@ -47,9 +47,9 @@ var/need_mob_update = FALSE if(SPT_PROB(1, seconds_per_tick)) to_chat(affected_mob, span_userdanger("[pick("You feel your heart slowing...", "You relax and slow your heartbeat.")]")) - need_mob_update += affected_mob.adjustStaminaLoss(70, updating_stamina = FALSE) + need_mob_update += affected_mob.adjust_stamina_loss(70, updating_stamina = FALSE) if(SPT_PROB(5, seconds_per_tick)) - need_mob_update += affected_mob.adjustStaminaLoss(100, updating_stamina = FALSE) + need_mob_update += affected_mob.adjust_stamina_loss(100, updating_stamina = FALSE) affected_mob.visible_message(span_warning("[affected_mob] faints!"), span_userdanger("You surrender yourself and feel at peace...")) affected_mob.AdjustSleeping(10 SECONDS) if(SPT_PROB(1, seconds_per_tick)) @@ -62,7 +62,11 @@ affected_mob.overeatduration = max(affected_mob.overeatduration - (200 SECONDS), 0) affected_mob.adjust_nutrition(-100) if(SPT_PROB(7.5, seconds_per_tick)) - to_chat(affected_mob, span_danger("[pick("You feel uncomfortably hot...", "You feel like unzipping your jumpsuit...", "You feel like taking off some clothes...")]")) + if(ishuman(affected_mob)) + var/mob/living/carbon/human/human_victim = affected_mob + to_chat(human_victim, span_danger("[human_victim.w_uniform? pick("You feel uncomfortably hot...", "You feel like unzipping your jumpsuit...", "You feel like taking off some clothes...") : "You feel uncomfortably hot..."]")) + else + to_chat(affected_mob, span_danger("You feel uncomfortably hot...")) affected_mob.adjust_bodytemperature(40) if(need_mob_update) affected_mob.updatehealth() diff --git a/code/datums/diseases/weightlessness.dm b/code/datums/diseases/weightlessness.dm index 2eac4aca19c424..877b16574ccc97 100644 --- a/code/datums/diseases/weightlessness.dm +++ b/code/datums/diseases/weightlessness.dm @@ -15,7 +15,7 @@ infectable_biotypes = MOB_ORGANIC -/datum/disease/weightlessness/stage_act(seconds_per_tick, times_fired) +/datum/disease/weightlessness/stage_act(seconds_per_tick) . = ..() if(!.) return diff --git a/code/datums/diseases/wizarditis.dm b/code/datums/diseases/wizarditis.dm index fe0502387f9e30..b4a420d22cf3ac 100644 --- a/code/datums/diseases/wizarditis.dm +++ b/code/datums/diseases/wizarditis.dm @@ -47,7 +47,7 @@ QDEL_LIST(random_targeted_spells) return ..() -/datum/disease/wizarditis/stage_act(seconds_per_tick, times_fired) +/datum/disease/wizarditis/stage_act(seconds_per_tick) . = ..() if(!.) return diff --git a/code/datums/dna/blocks/dna_features_block.dm b/code/datums/dna/blocks/dna_features_block.dm index 88754da4639326..bad4fdec00262a 100644 --- a/code/datums/dna/blocks/dna_features_block.dm +++ b/code/datums/dna/blocks/dna_features_block.dm @@ -20,6 +20,7 @@ /// Features tied to a sprite accessory /datum/dna_block/feature/accessory + abstract_type = /datum/dna_block/feature/accessory /datum/dna_block/feature/accessory/create_unique_block(mob/living/carbon/human/target) var/block_value = SSaccessories.feature_list[feature_key].Find(target.dna.features[feature_key]) @@ -33,7 +34,6 @@ target.dna.features[feature_key] = SSaccessories.feature_list[feature_key][deconstructed] /datum/dna_block/feature/accessory/ears - abstract_type = /datum/dna_block/feature/accessory feature_key = FEATURE_EARS // One day, someone should consider merging all tails into one, this is stupid diff --git a/code/datums/dna/blocks/dna_identity_block.dm b/code/datums/dna/blocks/dna_identity_block.dm index 6543da28348118..74ac384b3f9d3a 100644 --- a/code/datums/dna/blocks/dna_identity_block.dm +++ b/code/datums/dna/blocks/dna_identity_block.dm @@ -95,7 +95,7 @@ /datum/dna_block/identity/hair_gradient /datum/dna_block/identity/hair_gradient/create_unique_block(mob/living/carbon/human/target) - return construct_block(SSaccessories.hair_gradients_list.Find(target.grad_style[GRADIENT_HAIR_KEY]), length(SSaccessories.hair_gradients_list)) + return construct_block(SSaccessories.hair_gradients_list.Find(target.get_hair_gradient_style(GRADIENT_HAIR_KEY)), length(SSaccessories.hair_gradients_list)) /datum/dna_block/identity/hair_gradient/apply_to_mob(mob/living/carbon/human/target, dna_hash) var/gradient_style = SSaccessories.hair_gradients_list[deconstruct_block(get_block(dna_hash), length(SSaccessories.hair_gradients_list))] @@ -105,7 +105,7 @@ block_length = DNA_BLOCK_SIZE_COLOR /datum/dna_block/identity/hair_gradient_color/create_unique_block(mob/living/carbon/human/target) - return sanitize_hexcolor(target.grad_color[GRADIENT_HAIR_KEY], include_crunch = FALSE) + return sanitize_hexcolor(target.get_hair_gradient_color(GRADIENT_HAIR_KEY), include_crunch = FALSE) /datum/dna_block/identity/hair_gradient_color/apply_to_mob(mob/living/carbon/human/target, dna_hash) target.set_hair_gradient_color(sanitize_hexcolor(get_block(dna_hash)), update = FALSE) @@ -113,7 +113,7 @@ /datum/dna_block/identity/facial_gradient /datum/dna_block/identity/facial_gradient/create_unique_block(mob/living/carbon/human/target) - return construct_block(SSaccessories.facial_hair_gradients_list.Find(target.grad_style[GRADIENT_FACIAL_HAIR_KEY]), length(SSaccessories.facial_hair_gradients_list)) + return construct_block(SSaccessories.facial_hair_gradients_list.Find(target.get_hair_gradient_style(GRADIENT_FACIAL_HAIR_KEY)), length(SSaccessories.facial_hair_gradients_list)) /datum/dna_block/identity/facial_gradient/apply_to_mob(mob/living/carbon/human/target, dna_hash) var/gradient_style = SSaccessories.facial_hair_gradients_list[deconstruct_block(get_block(dna_hash), length(SSaccessories.facial_hair_gradients_list))] @@ -123,7 +123,7 @@ block_length = DNA_BLOCK_SIZE_COLOR /datum/dna_block/identity/facial_gradient_color/create_unique_block(mob/living/carbon/human/target) - return sanitize_hexcolor(target.grad_color[GRADIENT_FACIAL_HAIR_KEY], include_crunch = FALSE) + return sanitize_hexcolor(target.get_hair_gradient_color(GRADIENT_FACIAL_HAIR_KEY), include_crunch = FALSE) /datum/dna_block/identity/facial_gradient_color/apply_to_mob(mob/living/carbon/human/target, dna_hash) target.set_facial_hair_gradient_color(sanitize_hexcolor(get_block(dna_hash)), update = FALSE) diff --git a/code/datums/dna/dna.dm b/code/datums/dna/dna.dm index 3720b03bd1ea98..b0cd64e4bef8f3 100644 --- a/code/datums/dna/dna.dm +++ b/code/datums/dna/dna.dm @@ -43,11 +43,11 @@ GLOBAL_LIST_INIT(total_uf_len_by_block, populate_total_uf_len_by_block()) ///Stores the real name of the person who originally got this dna datum. Used primarily for changelings var/real_name ///All mutations are from now on here - var/list/mutations = list() + var/list/mutations ///Temporary changes to the UE - var/list/temporary_mutations = list() + var/list/temporary_mutations ///For temporary name/ui/ue/blood_type modifications - var/list/previous = list() + var/list/previous var/mob/living/holder ///List of which mutations this carbon has and its assigned block var/mutation_index[DNA_MUTATION_BLOCKS] @@ -76,9 +76,9 @@ GLOBAL_LIST_INIT(total_uf_len_by_block, populate_total_uf_len_by_block()) QDEL_NULL(species) - mutations.Cut() //This only references mutations, just dereference. - temporary_mutations.Cut() //^ - previous.Cut() //^ + LAZYNULL(mutations) //This only references mutations, just dereference. + LAZYNULL(temporary_mutations) //^ + LAZYNULL(previous) //^ return ..() @@ -89,7 +89,7 @@ GLOBAL_LIST_INIT(total_uf_len_by_block, populate_total_uf_len_by_block()) new_dna.unique_features = unique_features new_dna.features = features.Copy() new_dna.real_name = real_name - new_dna.temporary_mutations = temporary_mutations.Copy() + new_dna.temporary_mutations = LAZYLISTDUPLICATE(temporary_mutations) new_dna.mutation_index = mutation_index new_dna.default_mutation_genes = default_mutation_genes //if the new DNA has a holder, transform them immediately, otherwise save it @@ -722,4 +722,4 @@ GLOBAL_LIST_INIT(total_uf_len_by_block, populate_total_uf_len_by_block()) eyes.Remove(src) qdel(eyes) visible_message(span_notice("[src] looks up and their eyes melt away!"), span_userdanger("I understand now.")) - addtimer(CALLBACK(src, PROC_REF(adjustOrganLoss), ORGAN_SLOT_BRAIN, 200), 2 SECONDS) + addtimer(CALLBACK(src, PROC_REF(adjust_organ_loss), ORGAN_SLOT_BRAIN, 200), 2 SECONDS) diff --git a/code/datums/dog_fashion.dm b/code/datums/dog_fashion.dm index 817529ce9d7d08..1c27df60822929 100644 --- a/code/datums/dog_fashion.dm +++ b/code/datums/dog_fashion.dm @@ -4,13 +4,13 @@ ///Description modifier for the dog that we're dressing up var/desc = null ///Hearable emotes modifier for the dog that we're dressing up - var/list/emote_hear = list() + var/list/emote_hear ///Visible emotes modifier for the dog that we're dressing up - var/list/emote_see = list() + var/list/emote_see ///Speech modifier for the dog that we're dressing up - var/list/speak = list() + var/list/speak ///Speech verb modifier for the dog that we're dressing up - var/list/speak_emote = list() + var/list/speak_emote // This isn't applied to the dog, but stores the icon_state of the // sprite that the associated item uses @@ -41,16 +41,16 @@ dressup_doggy.name = name if(desc) dressup_doggy.desc = desc - if(length(speak_emote)) + if(LAZYLEN(speak_emote)) dressup_doggy.speak_emote = string_list(speak_emote) ///Applies random speech modifiers to the dog /datum/dog_fashion/proc/apply_to_speech(datum/ai_planning_subtree/random_speech/speech) - if(length(emote_see)) + if(LAZYLEN(emote_see)) speech.emote_see = string_list(emote_see) - if(length(emote_hear)) + if(LAZYLEN(emote_hear)) speech.emote_hear = string_list(emote_hear) - if(length(speak)) + if(LAZYLEN(speak)) speech.speak = string_list(speak) /** @@ -237,7 +237,7 @@ name = "Butter %REAL_NAME%" desc = "%NAME%. %CAPITAL_REAL_NAME% with the butter. %NAME%. %CAPITAL_REAL_NAME% with a butter on 'em." obj_icon_state = "butter" - speak = list() //they're very patient and focused on holding the butter on 'em + speak = null //they're very patient and focused on holding the butter on 'em emote_see = list("shakes a little.", "looks around.") emote_hear = list("licks a trickle of the butter up.", "smiles.") diff --git a/code/datums/ductnet.dm b/code/datums/ductnet.dm deleted file mode 100644 index 5cc241cce2b5be..00000000000000 --- a/code/datums/ductnet.dm +++ /dev/null @@ -1,76 +0,0 @@ -///We handle the unity part of plumbing. We track who is connected to who. -/datum/ductnet - ///Stuff that can supply chems - var/list/suppliers = list() - ////Stuff that can take chems - var/list/demanders = list() - ///All the ducts that make this network - var/list/obj/machinery/duct/ducts = list() - - ///Max reagents we can carry per tick - var/capacity - -///Add a duct to our network -/datum/ductnet/proc/add_duct(obj/machinery/duct/D) - if(!D || (D in ducts)) - return - ducts += D - D.duct = src - -///Remove a duct from our network and commit suicide, because this is probably easier than to check who that duct was connected to and what part of us was lost -/datum/ductnet/proc/remove_duct(obj/machinery/duct/ducting) - destroy_network(FALSE) - for(var/obj/machinery/duct/D in ducting.neighbours) - addtimer(CALLBACK(D, TYPE_PROC_REF(/obj/machinery/duct,attempt_connect))) //needs to happen after qdel - qdel(src) - -///add a plumbing object to either demanders or suppliers -/datum/ductnet/proc/add_plumber(datum/component/plumbing/P, dir) - if(!P.can_add(src, dir)) - return FALSE - P.ducts[num2text(dir)] = src - if(dir & P.supply_connects) - suppliers += P - else if(dir & P.demand_connects) - demanders += P - return TRUE - -///remove a plumber. we don't delete ourselves because ductnets don't persist through plumbing objects -/datum/ductnet/proc/remove_plumber(datum/component/plumbing/P) - suppliers.Remove(P) //we're probably only in one of these, but Remove() is inherently sane so this is fine - demanders.Remove(P) - - for(var/dir in P.ducts) - if(P.ducts[dir] == src) - P.ducts -= dir - - if(!ducts.len) //there were no ducts, so it was a direct connection. we destroy ourselves since a ductnet with only one plumber and no ducts is worthless - destroy_network() - -///we combine ductnets. this occurs when someone connects to separate sets of fluid ducts -/datum/ductnet/proc/assimilate(datum/ductnet/D) - ducts.Add(D.ducts) - suppliers.Add(D.suppliers) - demanders.Add(D.demanders) - for(var/A in D.suppliers + D.demanders) - var/datum/component/plumbing/P = A - for(var/s in P.ducts) - if(P.ducts[s] != D) - continue - P.ducts[s] = src //all your ducts are belong to us - for(var/A in D.ducts) - var/obj/machinery/duct/M = A - M.duct = src //forget your old master - - D.ducts.Cut() //clear this so the other network doesn't clear the ducts along with themselves (this took the life out of me) - D.destroy_network() - -///destroy the network and tell all our ducts and plumbers we are gone -/datum/ductnet/proc/destroy_network(delete=TRUE) - for(var/A in suppliers + demanders) - remove_plumber(A) - for(var/A in ducts) - var/obj/machinery/duct/D = A - D.duct = null - if(delete) //I don't want code to run with qdeleted objects because that can never be good, so keep this in-case the ductnet has some business left to attend to before committing suicide - qdel(src) diff --git a/code/datums/elements/adjust_fishing_difficulty.dm b/code/datums/elements/adjust_fishing_difficulty.dm new file mode 100644 index 00000000000000..e139fb376d9e83 --- /dev/null +++ b/code/datums/elements/adjust_fishing_difficulty.dm @@ -0,0 +1,104 @@ +///Influences the difficulty of the minigame when worn or if buckled to. +/datum/element/adjust_fishing_difficulty + element_flags = ELEMENT_BESPOKE + argument_hash_start_idx = 2 + ///The additive numerical modifier to the difficulty of the minigame + var/modifier + ///For items, in which slot it has to be worn to influence the difficulty of the minigame + var/slots + +/datum/element/adjust_fishing_difficulty/Attach(datum/target, modifier, slots = NONE) + . = ..() + if(!ismovable(target) || !modifier) + return COMPONENT_INCOMPATIBLE + + if(!isitem(target)) + var/atom/movable/movable_target = target + if(!movable_target.can_buckle) + return COMPONENT_INCOMPATIBLE + + RegisterSignal(target, COMSIG_MOVABLE_BUCKLE, PROC_REF(on_buckle), override = TRUE) + RegisterSignal(target, COMSIG_MOVABLE_UNBUCKLE, PROC_REF(on_unbuckle), override = TRUE) + RegisterSignal(target, COMSIG_ATOM_EXAMINE, PROC_REF(on_buckle_examine), override = TRUE) + + else + RegisterSignal(target, COMSIG_ITEM_EQUIPPED, PROC_REF(on_equipped), override = TRUE) + RegisterSignal(target, COMSIG_ITEM_DROPPED, PROC_REF(on_dropped), override = TRUE) + RegisterSignal(target, COMSIG_ATOM_EXAMINE, PROC_REF(on_item_examine), override = TRUE) + + src.modifier = modifier + src.slots = slots + + update_check(target) + +/datum/element/adjust_fishing_difficulty/Detach(datum/source, ...) + . = ..() + UnregisterSignal(source, list( + COMSIG_ATOM_EXAMINE, + COMSIG_MOVABLE_BUCKLE, + COMSIG_MOVABLE_UNBUCKLE, + COMSIG_ITEM_EQUIPPED, + COMSIG_ITEM_DROPPED, + )) + + update_check(source, TRUE) + +/datum/element/adjust_fishing_difficulty/proc/update_check(atom/movable/movable_source, removing = FALSE) + for(var/mob/living/buckled_mob as anything in movable_source.buckled_mobs) + update_user(buckled_mob, movable_source, removing) + if(!isitem(movable_source) || !isliving(movable_source.loc)) + return + var/mob/living/holder = movable_source.loc + var/obj/item/item = movable_source + if(holder.get_slot_by_item(movable_source) & (slots || item.slot_flags)) + update_user(holder, movable_source, removing) + +/datum/element/adjust_fishing_difficulty/proc/on_item_examine(obj/item/item, mob/user, list/examine_text) + SIGNAL_HANDLER + if(!HAS_MIND_TRAIT(user, TRAIT_EXAMINE_FISH)) + return + var/method = "[(slots || item.slot_flags) & ITEM_SLOT_HANDS ? "Holding" : "Wearing"] [item.p_them()]" + add_examine_line(user, examine_text, method) + +/datum/element/adjust_fishing_difficulty/proc/on_buckle_examine(atom/movable/source, mob/user, list/examine_text) + SIGNAL_HANDLER + if(!HAS_MIND_TRAIT(user, TRAIT_EXAMINE_FISH)) + return + add_examine_line(user, examine_text, "Buckling to [source.p_them()]") + +/datum/element/adjust_fishing_difficulty/proc/add_examine_line(mob/user, list/examine_text, method) + var/percent = HAS_MIND_TRAIT(user, TRAIT_EXAMINE_DEEPER_FISH) ? "[abs(modifier)]% " : "" + var/text = "[method] will make fishing [percent][modifier < 0 ? "easier" : "harder"]." + if(modifier < 0) + examine_text += span_nicegreen(text) + else + examine_text += span_danger(text) + +/datum/element/adjust_fishing_difficulty/proc/on_buckle(atom/movable/source, mob/living/buckled_mob, forced) + SIGNAL_HANDLER + update_user(buckled_mob, source) + +/datum/element/adjust_fishing_difficulty/proc/on_unbuckle(atom/movable/source, mob/living/buckled_mob, forced) + SIGNAL_HANDLER + update_user(buckled_mob, source, TRUE) + +/datum/element/adjust_fishing_difficulty/proc/on_equipped(obj/item/source, mob/living/wearer, slot) + SIGNAL_HANDLER + if(slot & (slots || source.slot_flags)) + update_user(wearer, source) + +/datum/element/adjust_fishing_difficulty/proc/on_dropped(obj/item/source, mob/living/dropper) + SIGNAL_HANDLER + update_user(dropper, source, TRUE) + +/// Updates the user's tracked current fishing modifiers +/datum/element/adjust_fishing_difficulty/proc/update_user(mob/living/user, obj/source_item, removing = FALSE) + if(removing) + LAZYREMOVE(user.fishing_difficulty_mods_by_source, source_item.type) + else + LAZYSET(user.fishing_difficulty_mods_by_source, source_item.type, modifier) + + // Are we currently in a fishing challenge? If so, update that challenge as well + var/datum/fishing_challenge/challenge = GLOB.fishing_challenges_by_user[user] + if(challenge) + challenge.update_difficulty() diff --git a/code/datums/elements/atmos_requirements.dm b/code/datums/elements/atmos_requirements.dm index 42f5ceefe3872c..0b4b6e17443f10 100644 --- a/code/datums/elements/atmos_requirements.dm +++ b/code/datums/elements/atmos_requirements.dm @@ -39,7 +39,7 @@ if(is_breathable_atmos(target)) target.clear_alert(ALERT_NOT_ENOUGH_OXYGEN) return - target.adjustBruteLoss(unsuitable_atmos_damage * seconds_per_tick) + target.adjust_brute_loss(unsuitable_atmos_damage * seconds_per_tick) target.throw_alert(ALERT_NOT_ENOUGH_OXYGEN, /atom/movable/screen/alert/not_enough_oxy) /datum/element/atmos_requirements/proc/is_breathable_atmos(mob/living/target) diff --git a/code/datums/elements/basic_eating.dm b/code/datums/elements/basic_eating.dm index a0f5a2cedefa24..8b011823e16ffa 100644 --- a/code/datums/elements/basic_eating.dm +++ b/code/datums/elements/basic_eating.dm @@ -16,10 +16,12 @@ var/drinking /// If true, we put food in our tummy instead of deleting it var/add_to_contents - /// Types the animal can eat. + /// If true, when add_to_contents would put the item into contents but when used for healing, the item is consumed instead + var/consume_healing + /// Types the animal can eat. Can be an assoc list with amount to heal/damage the mob by var/list/food_types -/datum/element/basic_eating/Attach(datum/target, heal_amt = 0, damage_amount = 0, damage_type = null, drinking = FALSE, add_to_contents = FALSE, food_types = list()) +/datum/element/basic_eating/Attach(datum/target, heal_amt = 0, damage_amount = 0, damage_type = null, drinking = FALSE, add_to_contents = FALSE, consume_healing = TRUE, food_types = list()) . = ..() if(!isliving(target)) @@ -31,6 +33,7 @@ src.damage_type = damage_type src.drinking = drinking src.add_to_contents = add_to_contents + src.consume_healing = consume_healing src.food_types = food_types RegisterSignal(target, COMSIG_ATOM_ITEM_INTERACTION, PROC_REF(try_feed)) @@ -66,7 +69,8 @@ /datum/element/basic_eating/proc/try_eating(mob/living/eater, atom/target, mob/living/feeder) if(!is_type_in_list(target, food_types)) return FALSE - if(SEND_SIGNAL(eater, COMSIG_MOB_PRE_EAT, target, feeder) & COMSIG_MOB_CANCEL_EAT) + var/list/effect_mult = list() + if(SEND_SIGNAL(eater, COMSIG_MOB_PRE_EAT, target, feeder, effect_mult) & COMSIG_MOB_CANCEL_EAT) return FALSE if(add_to_contents && !ismovable(target)) return FALSE @@ -76,22 +80,44 @@ else eat_verb = pick("bite","chew","nibble","gnaw","gobble","chomp") - if (heal_amt > 0) - var/healed = heal_amt && eater.health < eater.maxHealth - eater.heal_overall_damage(heal_amt) + var/best_match = null + var/best_value = 0 + for (var/food_path in food_types) + // Not an assoc list + if (isnull(food_types[food_path])) + break + if (istype(target, food_path) && (!best_match || ispath(food_path, best_match))) + best_match = food_path + best_value = food_types[food_path] + + var/to_heal = heal_amt + var/to_damage = damage_amount + + if (best_match) + to_heal = 0 + to_damage = 0 + if (best_value > 0) + to_heal = best_value + else if (best_value < 0) + to_damage = -best_value + + for (var/mult in effect_mult) + to_heal *= mult + to_damage *= mult + + if (to_heal > 0) + var/healed = eater.heal_overall_damage(to_heal) eater.visible_message(span_notice("[eater] [eat_verb]s [target]."), span_notice("You [eat_verb] [target][healed ? ", restoring some health" : ""].")) - - else if (damage_amount > 0 && damage_type) - eater.apply_damage(damage_amount, damage_type) - eater.visible_message(span_notice("[eater] [eat_verb]s [target], and seems to hurt itself."), span_notice("You [eat_verb] [target], hurting yourself in the process.")) - + else if (to_damage > 0 && damage_type) + var/damaged = eater.apply_damage(to_damage, damage_type) + eater.visible_message(span_notice("[eater] [eat_verb]s [target][damaged ? ", and seems to hurt [eater.p_themselves()]!" : "."]"), span_notice("You [eat_verb] [target][damaged ? ", hurting yourself in the process" : ""].")) else eater.visible_message(span_notice("[eater] [eat_verb]s [target]."), span_notice("You [eat_verb] [target].")) - finish_eating(eater, target, feeder) + finish_eating(eater, target, feeder, to_heal) return TRUE -/datum/element/basic_eating/proc/finish_eating(mob/living/eater, atom/target, mob/living/feeder) +/datum/element/basic_eating/proc/finish_eating(mob/living/eater, atom/target, mob/living/feeder, to_heal) set waitfor = FALSE if(drinking) playsound(eater.loc,'sound/items/drink.ogg', rand(10,50), TRUE) @@ -104,10 +130,12 @@ var/obj/item/stack/food_stack = target final_target = food_stack.split_stack(1) - eater.log_message("has eaten [target], [add_to_contents ? "swallowing it" : "destroying it"]!", LOG_ATTACK) + var/devour = add_to_contents && !to_heal + eater.log_message("has eaten [target], [devour ? "swallowing it" : "destroying it"]!", LOG_ATTACK) - if (add_to_contents) + if (devour) var/atom/movable/movable_target = final_target movable_target.forceMove(eater) else qdel(final_target) + diff --git a/code/datums/elements/beauty.dm b/code/datums/elements/beauty.dm index 8bfa298c1a725f..edc2c007517557 100644 --- a/code/datums/elements/beauty.dm +++ b/code/datums/elements/beauty.dm @@ -11,7 +11,7 @@ * Assoc list of atoms as keys and number of time the same element instance has been attached to them as assoc value. * So things don't get odd with same-valued yet dissimilar beauty modifiers being added to the same atom. */ - var/beauty_counter = list() + var/beauty_counter /datum/element/beauty/Attach(datum/target, beauty) . = ..() @@ -19,6 +19,7 @@ return ELEMENT_INCOMPATIBLE src.beauty = beauty + LAZYINITLIST(beauty_counter) var/area/current_area = get_area(target) var/beauty_active = TRUE diff --git a/code/datums/elements/body_temp_sensitive.dm b/code/datums/elements/body_temp_sensitive.dm index e3a694baed78e7..ce74f9c9f7fde4 100644 --- a/code/datums/elements/body_temp_sensitive.dm +++ b/code/datums/elements/body_temp_sensitive.dm @@ -43,14 +43,14 @@ UnregisterSignal(source, COMSIG_LIVING_LIFE) return ..() -/datum/element/body_temp_sensitive/proc/on_life(datum/target, seconds_per_tick, times_fired) +/datum/element/body_temp_sensitive/proc/on_life(datum/target, seconds_per_tick) SIGNAL_HANDLER var/mob/living/living_mob = target var/gave_alert = FALSE if(living_mob.bodytemperature < min_body_temp) - living_mob.adjustFireLoss(cold_damage * seconds_per_tick, forced = TRUE) + living_mob.adjust_fire_loss(cold_damage * seconds_per_tick, forced = TRUE) if(!living_mob.has_status_effect(/datum/status_effect/inebriated)) switch(cold_damage) if(1 to 5) @@ -62,7 +62,7 @@ gave_alert = TRUE else if(living_mob.bodytemperature > max_body_temp) - living_mob.adjustFireLoss(heat_damage * seconds_per_tick, forced = TRUE) + living_mob.adjust_fire_loss(heat_damage * seconds_per_tick, forced = TRUE) switch(heat_damage) if(1 to 5) living_mob.throw_alert(ALERT_TEMPERATURE, /atom/movable/screen/alert/hot, 1) diff --git a/code/datums/elements/bonus_damage.dm b/code/datums/elements/bonus_damage.dm index 1fce0672c51574..b99d346d289884 100644 --- a/code/datums/elements/bonus_damage.dm +++ b/code/datums/elements/bonus_damage.dm @@ -32,4 +32,4 @@ var/health_percentage = (living_target.health / living_target.maxHealth) * 100 if(living_target.stat == DEAD || health_percentage > damage_percentage) return - living_target.adjustBruteLoss(brute_damage_amount) + living_target.adjust_brute_loss(brute_damage_amount) diff --git a/code/datums/elements/bugkiller_reagent.dm b/code/datums/elements/bugkiller_reagent.dm index f6a09989335b5b..226e59da3329c2 100644 --- a/code/datums/elements/bugkiller_reagent.dm +++ b/code/datums/elements/bugkiller_reagent.dm @@ -30,7 +30,7 @@ return // capping damage so splashing a beaker on a moth is not an instant crit - var/damage = min(round(0.4 * reac_volume * (1 - touch_protection), 0.1), 12) + var/damage = min(round(reac_volume * (1 - touch_protection), 0.1), 20) if(damage < 1) return @@ -87,4 +87,5 @@ /atom/movable/screen/alert/status_effect/bugkiller_death name = "Overwhelming Toxicity" desc = "Don't go into the light!" - icon_state = "paralysis" + use_user_hud_icon = TRUE + overlay_state = "paralysis" diff --git a/code/datums/elements/climb_walkable.dm b/code/datums/elements/climb_walkable.dm new file mode 100644 index 00000000000000..111025f44ef9a6 --- /dev/null +++ b/code/datums/elements/climb_walkable.dm @@ -0,0 +1,43 @@ +/// Allows objects that entered parent's tile to move freely through other objects with this component regardless of density +/datum/element/climb_walkable + var/static/list/turf_connections = list( + COMSIG_ATOM_ENTERED = TYPE_PROC_REF(/obj/structure, on_climb_enter), + COMSIG_ATOM_AFTER_SUCCESSFUL_INITIALIZED_ON = TYPE_PROC_REF(/obj/structure, on_climb_enter), + COMSIG_ATOM_EXITED = TYPE_PROC_REF(/obj/structure, on_climb_exit), + ) + +/datum/element/climb_walkable/Attach(datum/target) + . = ..() + target.AddElement(/datum/element/connect_loc, turf_connections) + RegisterSignal(target, COMSIG_ATOM_TRIED_PASS, PROC_REF(can_allow_through)) + RegisterSignal(target, COMSIG_MOVABLE_MOVED, PROC_REF(on_climbable_moved)) + +/datum/element/climb_walkable/Detach(datum/source, ...) + . = ..() + UnregisterSignal(source, list(COMSIG_ATOM_TRIED_PASS, COMSIG_MOVABLE_MOVED)) + for (var/atom/movable/climber in get_turf(source)) + if(HAS_TRAIT(climber, TRAIT_ON_CLIMBABLE)) + REMOVE_TRAIT(climber, TRAIT_ON_CLIMBABLE, ELEMENT_TRAIT(type)) + source.RemoveElement(/datum/element/connect_loc, turf_connections) + +/datum/element/climb_walkable/proc/can_allow_through(datum/source, atom/movable/mover, border_dir) + SIGNAL_HANDLER + if(HAS_TRAIT(mover, TRAIT_ON_CLIMBABLE)) + return COMSIG_COMPONENT_PERMIT_PASSAGE + +// Removes the climbable trait if the crate or whatever it is gets pushed away. +/datum/element/climb_walkable/proc/on_climbable_moved(datum/source, atom/old_loc) + SIGNAL_HANDLER + for (var/atom/movable/climber in get_turf(old_loc)) + if(HAS_TRAIT(climber, TRAIT_ON_CLIMBABLE)) + REMOVE_TRAIT(climber, TRAIT_ON_CLIMBABLE, ELEMENT_TRAIT(type)) + +/obj/structure/proc/on_climb_enter(datum/source, atom/movable/arrived) + SIGNAL_HANDLER + if(arrived.density) + ADD_TRAIT(arrived, TRAIT_ON_CLIMBABLE, ELEMENT_TRAIT(/datum/element/climb_walkable)) + +/obj/structure/proc/on_climb_exit(datum/source, atom/movable/gone, direction) + SIGNAL_HANDLER + if(HAS_TRAIT(gone, TRAIT_ON_CLIMBABLE)) + REMOVE_TRAIT(gone, TRAIT_ON_CLIMBABLE, ELEMENT_TRAIT(/datum/element/climb_walkable)) diff --git a/code/datums/elements/corrupted_organ.dm b/code/datums/elements/corrupted_organ.dm index ccf56b17c30e87..7ba5b3ae8b6e31 100644 --- a/code/datums/elements/corrupted_organ.dm +++ b/code/datums/elements/corrupted_organ.dm @@ -30,7 +30,7 @@ /// When we're taken out of someone, do something spooky /datum/element/corrupted_organ/proc/on_removed(atom/organ, mob/living/remover, mob/living/carbon/loser) SIGNAL_HANDLER - if (loser.has_reagent(/datum/reagent/water/holywater) || loser.can_block_magic(MAGIC_RESISTANCE|MAGIC_RESISTANCE_HOLY) || prob(20)) + if (loser?.has_reagent(/datum/reagent/water/holywater) || loser?.can_block_magic(MAGIC_RESISTANCE|MAGIC_RESISTANCE_HOLY) || prob(20)) return if (prob(75)) organ.AddComponent(\ diff --git a/code/datums/elements/death_drops.dm b/code/datums/elements/death_drops.dm index 70543260707ba4..b5d8f988d2d721 100644 --- a/code/datums/elements/death_drops.dm +++ b/code/datums/elements/death_drops.dm @@ -41,15 +41,18 @@ if (SEND_SIGNAL(target, COMSIG_LIVING_DROP_LOOT, spawn_loot, gibbed) & COMPONENT_NO_LOOT_DROP) return + var/list/all_loot = list() for(var/thing_to_spawn in spawn_loot) for(var/i in 1 to (spawn_loot[thing_to_spawn] || 1)) - create_loot(thing_to_spawn, loot_loc, target, gibbed, spread_px = spawn_loot.len * 3) + all_loot += create_loot(thing_to_spawn, loot_loc, target, gibbed, spread_px = spawn_loot.len * 3) + + list_clear_nulls(all_loot) // in case of gibbed corpses + SEND_SIGNAL(target, COMSIG_LIVING_DROPPED_LOOT, all_loot, gibbed) /// Handles creating the loots /datum/element/death_drops/proc/create_loot(typepath, atom/loot_loc, mob/living/dead, gibbed, spread_px = 4) if(ispath(typepath, /obj/effect/mob_spawn/corpse)) - handle_corpse(typepath, loot_loc, dead, gibbed) - return + return handle_corpse(typepath, loot_loc, dead, gibbed) var/drop = new typepath(loot_loc) if(isitem(drop) && spread_px) @@ -57,18 +60,20 @@ var/clamped_px = clamp(spread_px, 0, 16) dropped_item.pixel_x = rand(-clamped_px, clamped_px) dropped_item.pixel_y = rand(-clamped_px, clamped_px) + return drop /// Handles snowflake case of mob corpses /datum/element/death_drops/proc/handle_corpse(typepath, atom/loot_loc, mob/living/dead, gibbed) var/obj/effect/mob_spawn/corpse/spawner = new typepath(loot_loc, TRUE) var/mob/living/body = spawner.create() // done before the gib check so the bodyparts will be damaged - body.setBruteLoss(dead.getBruteLoss()) - body.setFireLoss(dead.getFireLoss()) + body.set_brute_loss(dead.get_brute_loss()) + body.set_fire_loss(dead.get_fire_loss()) // if gibbed, dispose of the body if(gibbed) body.gib(DROP_ALL_REMAINS) - return + return null // otherwise continue with the rest of the damage types - body.setToxLoss(dead.getToxLoss()) - body.setOxyLoss(dead.getOxyLoss()) + body.set_tox_loss(dead.get_tox_loss()) + body.set_oxy_loss(dead.get_oxy_loss()) + return body diff --git a/code/datums/elements/drag_activation.dm b/code/datums/elements/drag_activation.dm new file mode 100644 index 00000000000000..12f44782f55dcc --- /dev/null +++ b/code/datums/elements/drag_activation.dm @@ -0,0 +1,29 @@ +/** + * drag_to_activate element + * + * Allowing things to be activated by mouse dragging. + * Useful for objects which have a TGUI window on interaction. + */ +/datum/element/drag_to_activate + +/datum/element/drag_to_activate/Attach(datum/target) + if(!ismovable(target)) + return ELEMENT_INCOMPATIBLE + RegisterSignal(target, COMSIG_MOUSEDROP_ONTO, PROC_REF(activate)) + return ..() + +/datum/element/drag_to_activate/Detach(datum/source) + UnregisterSignal(source, COMSIG_MOUSEDROP_ONTO) + return ..() + +/datum/element/drag_to_activate/proc/activate(atom/movable/source, atom/over, mob/user) + SIGNAL_HANDLER + + if(!user.can_perform_action(source, FORBID_TELEKINESIS_REACH)) + return NONE + + var/obj/item/item_source = source + if(!istype(over, /atom/movable/screen)) + INVOKE_ASYNC(item_source, TYPE_PROC_REF(/obj/item, attack_self), user) + source.add_fingerprint(user) + return COMPONENT_CANCEL_MOUSEDROP_ONTO diff --git a/code/datums/elements/dryable.dm b/code/datums/elements/dryable.dm index 3d7842b30891c3..8a0f9964a7d75a 100644 --- a/code/datums/elements/dryable.dm +++ b/code/datums/elements/dryable.dm @@ -21,8 +21,8 @@ var/atom/result = new dry_result if(!atom_target.compare_materials(result)) var/warning = "custom_materials of [result.type] when dried compared to just spawned don't match" - var/what_it_should_be = atom_target.get_materials_english_list() - stack_trace("[warning]. custom_materials should be [what_it_should_be].") + var/what_it_should_be = atom_target.transcribe_materials_list() + stack_trace("[warning]. should be: custom_materials = [what_it_should_be].") qdel(result) diff --git a/code/datums/elements/elevation.dm b/code/datums/elements/elevation.dm index 304d79ad16087e..a0c3da5f3ab7f5 100644 --- a/code/datums/elements/elevation.dm +++ b/code/datums/elements/elevation.dm @@ -58,8 +58,8 @@ return if(!HAS_TRAIT(location, TRAIT_TURF_HAS_ELEVATED_OBJ(pixel_shift))) RegisterSignal(location, COMSIG_TURF_RESET_ELEVATION, PROC_REF(check_elevation)) + reset_elevation(location) // This needs to go in the before COMSIG_TURF_CHANGE, or we can end up bouncing back into this and getting a runtime RegisterSignal(location, COMSIG_TURF_CHANGE, PROC_REF(pre_change_turf)) - reset_elevation(location) ADD_TRAIT(location, TRAIT_TURF_HAS_ELEVATED_OBJ(pixel_shift), ref(source)) /datum/element/elevation/proc/unregister_turf(atom/movable/source, atom/location) diff --git a/code/datums/elements/empprotection.dm b/code/datums/elements/empprotection.dm index c0dacc7bf1f005..55db13d2809bc3 100644 --- a/code/datums/elements/empprotection.dm +++ b/code/datums/elements/empprotection.dm @@ -26,18 +26,18 @@ if(flags & EMP_NO_EXAMINE) return - if(flags & EMP_PROTECT_ALL == EMP_PROTECT_ALL) + if((flags & EMP_PROTECT_ALL) == EMP_PROTECT_ALL) examine_list["EMP proof"] = "[source.p_They()] [source.p_are()] unaffected by electromagnetic pulses, and shields [source.p_their()] contents and wiring from them." return if(flags & EMP_PROTECT_SELF) examine_list["EMP resilient"] = "[source.p_They()] [source.p_are()] unaffected by electromagnetic pulses." - if(flags & (EMP_PROTECT_CONTENTS|EMP_PROTECT_WIRES) == (EMP_PROTECT_CONTENTS|EMP_PROTECT_WIRES)) - examine_list["EMP blocking"] = "[source.p_They()] protects [source.p_their()] wiring and contents from electromagnetic pulses." + if((flags & (EMP_PROTECT_CONTENTS|EMP_PROTECT_WIRES)) == (EMP_PROTECT_CONTENTS|EMP_PROTECT_WIRES)) + examine_list["partially EMP blocking"] = "[source.p_They()] protects [source.p_their()] wiring and contents from electromagnetic pulses." else if(flags & EMP_PROTECT_CONTENTS) - examine_list["EMP blocking"] = "[source.p_They()] protects [source.p_their()] contents from electromagnetic pulses." + examine_list["partially EMP blocking"] = "[source.p_They()] protects [source.p_their()] contents from electromagnetic pulses." else if(flags & EMP_PROTECT_WIRES) - examine_list["EMP blocking"] = "[source.p_They()] protects [source.p_their()] wiring from electromagnetic pulses." + examine_list["partially EMP blocking"] = "[source.p_They()] protects [source.p_their()] wiring from electromagnetic pulses." diff --git a/code/datums/elements/examine_lore.dm b/code/datums/elements/examine_lore.dm index 00066ef51c58f3..1ed3f998bb23d2 100644 --- a/code/datums/elements/examine_lore.dm +++ b/code/datums/elements/examine_lore.dm @@ -11,11 +11,11 @@ /datum/element/examine_lore/Attach(datum/target, lore_hint, lore) . = ..() - src.lore_hint = lore_hint + src.lore_hint = lore_hint || span_notice("You can [EXAMINE_HINT("look closer")] to learn a little more about [target].") src.lore = lore - if(!lore_hint || !lore) - stack_trace("[type] initialized without lore or a lore hint! Double-check element addition?") + if(!lore) + stack_trace("[type] initialized without lore! Double-check element addition?") return ELEMENT_INCOMPATIBLE RegisterSignal(target, COMSIG_ATOM_EXAMINE, PROC_REF(on_examine)) diff --git a/code/datums/elements/food/food_trash.dm b/code/datums/elements/food/food_trash.dm index 47dbdefef1df90..d6667e41e30df2 100644 --- a/code/datums/elements/food/food_trash.dm +++ b/code/datums/elements/food/food_trash.dm @@ -88,7 +88,7 @@ /datum/element/food_trash/proc/open_trash(datum/source, mob/user) SIGNAL_HANDLER - to_chat(user, span_notice("You open the [source], revealing \a [initial(trash.name)].")) + to_chat(user, span_notice("You open \the [source], revealing \a [initial(trash.name)].")) INVOKE_ASYNC(src, PROC_REF(async_generate_trash), source) qdel(source) diff --git a/code/datums/elements/food/microwavable.dm b/code/datums/elements/food/microwavable.dm index e7efeae4501c8b..a9f5388cba1c81 100644 --- a/code/datums/elements/food/microwavable.dm +++ b/code/datums/elements/food/microwavable.dm @@ -31,8 +31,8 @@ var/atom/result = new result_typepath if(!target.compare_materials(result)) var/warning = "custom_materials of [result.type] when microwaved compared to just spawned don't match" - var/what_it_should_be = target.get_materials_english_list() - stack_trace("[warning]. custom_materials should be [what_it_should_be].") + var/what_it_should_be = target.transcribe_materials_list() + stack_trace("[warning]. should be: custom_materials = [what_it_should_be].") qdel(result) /datum/element/microwavable/Detach(datum/source) diff --git a/code/datums/elements/food/processable.dm b/code/datums/elements/food/processable.dm index cffd0c5f22f59f..b3a1e2c54e273d 100644 --- a/code/datums/elements/food/processable.dm +++ b/code/datums/elements/food/processable.dm @@ -45,11 +45,11 @@ var/atom/movable/result = new result_atom_type if(!prototype.compare_materials(result)) var/warning = "custom_materials of [result.type] when processed compared to just spawned don't match" - var/what_it_should_be = prototype.get_materials_english_list() + var/what_it_should_be = prototype.transcribe_materials_list() //compose a text string containing the syntax and paths to use for editing the custom_materials var if(result.custom_materials) what_it_should_be += " (you can round values a bit)" - stack_trace("[warning]. custom_materials should be [what_it_should_be] (you can round values a bit).") + stack_trace("[warning]. should be: custom_materials = [what_it_should_be] (you can round values a bit).") qdel(prototype) qdel(result) diff --git a/code/datums/elements/force_move_pulled.dm b/code/datums/elements/force_move_pulled.dm new file mode 100644 index 00000000000000..165da8240e8f01 --- /dev/null +++ b/code/datums/elements/force_move_pulled.dm @@ -0,0 +1,20 @@ +/// Click dragging (thing) will force move (thing). A good use-case example for this would be clicking on a tile with a blood decal. +/datum/element/force_move_pulled + +/datum/element/force_move_pulled/Attach(datum/target) + if(!isatom(target)) + return ELEMENT_INCOMPATIBLE + . = ..() + RegisterSignal(target, COMSIG_ATOM_ATTACK_HAND, PROC_REF(on_click), override = TRUE) + +/datum/element/force_move_pulled/Detach(datum/target) + . = ..() + UnregisterSignal(target, COMSIG_ATOM_ATTACK_HAND) + +/datum/element/force_move_pulled/proc/on_click(atom/moving_atom, mob/user, list/modifiers) + SIGNAL_HANDLER + if(isnull(user.pulling)) + return NONE + + user.Move_Pulled(moving_atom) + return COMPONENT_CANCEL_ATTACK_CHAIN diff --git a/code/datums/elements/haunted.dm b/code/datums/elements/haunted.dm index 04f985c0d891c2..72048122c63d6b 100644 --- a/code/datums/elements/haunted.dm +++ b/code/datums/elements/haunted.dm @@ -24,12 +24,12 @@ REMOVE_TRAIT(master, TRAIT_MOVE_FLYING, ELEMENT_TRAIT(type)) master.RemoveElement(/datum/element/movetype_handler) -/atom/movable/proc/make_haunted(source, color) //if not haunted, make haunted +/obj/item/proc/make_haunted(source, color) //if not haunted, make haunted if(!HAS_TRAIT(src, TRAIT_HAUNTED)) AddElement(/datum/element/haunted, color) ADD_TRAIT(src, TRAIT_HAUNTED, source) -/atom/movable/proc/remove_haunted(source) //if haunted, make not haunted +/obj/item/proc/remove_haunted(source) //if haunted, make not haunted REMOVE_TRAIT(src, TRAIT_HAUNTED, source) if(!HAS_TRAIT(src, TRAIT_HAUNTED)) RemoveElement(/datum/element/haunted) diff --git a/code/datums/elements/immerse.dm b/code/datums/elements/immerse.dm index e1e1d60a86be5d..b23623d51b0db3 100644 --- a/code/datums/elements/immerse.dm +++ b/code/datums/elements/immerse.dm @@ -198,6 +198,8 @@ GLOBAL_LIST_INIT(immerse_ignored_movable, typecacheof(list( /// Generate a mask filter mutable to use as render_source for the alpha filter based on provided width, height and immersion state /datum/element/immerse/proc/generate_immerse_mask(width, height, is_below_water) + if (!width || !height) + return var/clean_height = height width = ceil(width / ICON_SIZE_X) * ICON_SIZE_X height = ceil(height / ICON_SIZE_Y) * ICON_SIZE_Y @@ -245,6 +247,8 @@ GLOBAL_LIST_INIT(immerse_ignored_movable, typecacheof(list( var/is_below_water = (movable.layer < layer_to_check) ? "underwater-" : "" // Tall mobs still only get covered to their feet, unless they're offset down var/mutable_appearance/immerse_mask = generate_immerse_mask(movable.get_cached_width(), max(ICON_SIZE_Y - movable.pixel_z, ICON_SIZE_Y), is_below_water) + if (!immerse_mask) + return var/atom/movable/immerse_mask/effect_relay = generated_visual_overlays[movable] if (!effect_relay) effect_relay = new(movable) diff --git a/code/datums/elements/leeching_walk.dm b/code/datums/elements/leeching_walk.dm index a0d9e7a27060e5..25ecb3fe1f93e1 100644 --- a/code/datums/elements/leeching_walk.dm +++ b/code/datums/elements/leeching_walk.dm @@ -34,7 +34,7 @@ * Gradually heals the heretic ([source]) on rust, * including baton knockdown and stamina damage. */ -/datum/element/leeching_walk/proc/on_life(mob/living/source, seconds_per_tick, times_fired) +/datum/element/leeching_walk/proc/on_life(mob/living/source, seconds_per_tick) SIGNAL_HANDLER var/turf/our_turf = get_turf(source) @@ -44,19 +44,18 @@ // Heals all damage + Stamina var/need_mob_update = FALSE var/delta_time = DELTA_WORLD_TIME(SSmobs) * 0.5 // SSmobs.wait is 2 secs, so this should be halved. - need_mob_update += source.adjustBruteLoss(-3 * delta_time * healing_multiplier, updating_health = FALSE) - need_mob_update += source.adjustFireLoss(-3 * delta_time * healing_multiplier, updating_health = FALSE) - need_mob_update += source.adjustToxLoss(-3 * delta_time * healing_multiplier, updating_health = FALSE, forced = TRUE) // Slimes are people too - need_mob_update += source.adjustOxyLoss(-1.5 * delta_time * healing_multiplier, updating_health = FALSE) - need_mob_update += source.adjustStaminaLoss(-10 * delta_time * healing_multiplier, updating_stamina = FALSE) + need_mob_update += source.adjust_brute_loss(-3 * delta_time * healing_multiplier, updating_health = FALSE) + need_mob_update += source.adjust_fire_loss(-3 * delta_time * healing_multiplier, updating_health = FALSE) + need_mob_update += source.adjust_tox_loss(-3 * delta_time * healing_multiplier, updating_health = FALSE, forced = TRUE) // Slimes are people too + need_mob_update += source.adjust_oxy_loss(-1.5 * delta_time * healing_multiplier, updating_health = FALSE) + need_mob_update += source.adjust_stamina_loss(-10 * delta_time * healing_multiplier, updating_stamina = FALSE) if(need_mob_update) source.updatehealth() new /obj/effect/temp_visual/heal(get_turf(source), COLOR_BROWN) // Reduces duration of stuns/etc source.AdjustAllImmobility((-0.5 SECONDS) * delta_time) // Heals blood loss - if(source.blood_volume < BLOOD_VOLUME_NORMAL) - source.blood_volume += 2.5 * delta_time + source.adjust_blood_volume(2.5 * delta_time, maximum = BLOOD_VOLUME_NORMAL) // Slowly regulates your body temp source.adjust_bodytemperature((source.get_body_temp_normal() - source.bodytemperature) / 5) diff --git a/code/datums/elements/light_eater.dm b/code/datums/elements/light_eater.dm index c13712cbce8fc7..6338b7ca2c4ee1 100644 --- a/code/datums/elements/light_eater.dm +++ b/code/datums/elements/light_eater.dm @@ -128,6 +128,12 @@ /datum/element/light_eater/proc/on_interacting_with(obj/item/source, mob/living/user, atom/target) SIGNAL_HANDLER if(eat_lights(target, source)) + if (ismob(target)) + var/mob/hit_user = target + if (hit_user.pulling) + var/atom/pulled_thing = hit_user.pulling // potentially dragging a light + if (!isliving(pulled_thing)) // we don't want conga lines to be affected + eat_lights(pulled_thing, source) // do a "pretend" attack if we're hitting something that can't normally be if(isobj(target)) var/obj/smacking = target diff --git a/code/datums/elements/noticable_organ.dm b/code/datums/elements/noticable_organ.dm index a6247d18bb53be..7feac28d8d7986 100644 --- a/code/datums/elements/noticable_organ.dm +++ b/code/datums/elements/noticable_organ.dm @@ -34,9 +34,7 @@ /// Proc that returns true or false if the organ should show its examine check. /datum/element/noticable_organ/proc/should_show_text(mob/living/carbon/examined) - if(body_zone && (body_zone in examined.get_covered_body_zones())) - return FALSE - return TRUE + return examined.is_location_accessible(body_zone) /datum/element/noticable_organ/proc/enable_description(obj/item/organ/target, mob/living/carbon/receiver) SIGNAL_HANDLER diff --git a/code/datums/elements/organ_set_bonus.dm b/code/datums/elements/organ_set_bonus.dm index fa6b272897a0df..07d7e2474d221b 100644 --- a/code/datums/elements/organ_set_bonus.dm +++ b/code/datums/elements/organ_set_bonus.dm @@ -106,6 +106,8 @@ RegisterSignal(carbon_owner, COMSIG_CARBON_REMOVE_LIMB, PROC_REF(untexture_limb)) for(var/obj/item/bodypart/limb as anything in carbon_owner.bodyparts) + if (!(limb.bodytype & BODYTYPE_ORGANIC)) + continue limb.add_bodypart_overlay(new limb_overlay(), update = FALSE) if (color_overlay_priority) limb.add_color_override(COLOR_WHITE, color_overlay_priority) @@ -150,6 +152,9 @@ /datum/status_effect/organ_set_bonus/proc/texture_limb(atom/source, obj/item/bodypart/limb) SIGNAL_HANDLER + if (!(limb.bodytype & BODYTYPE_ORGANIC)) + return + // Not updating because enable/disable_bonus(obj/item/organ/removed_organ) call it down the line, and calls coming from comsigs update the owner's body themselves limb.add_bodypart_overlay(new limb_overlay(), update = FALSE) if(color_overlay_priority) diff --git a/code/datums/elements/raptor_food.dm b/code/datums/elements/raptor_food.dm new file mode 100644 index 00000000000000..514509eaaba232 --- /dev/null +++ b/code/datums/elements/raptor_food.dm @@ -0,0 +1,87 @@ +/// Element which influences raptor children upon owner's consumption as food +/datum/element/raptor_food + element_flags = ELEMENT_BESPOKE + argument_hash_start_idx = 2 + /// Flat damage modifier + var/attack_modifier = null + /// Flat health modifier + var/health_modifier = null + /// Speed modifier + var/speed_modifier = null + /// Primary ability stat modifier + /// Multiplier equates to 1 + this + var/ability_modifier = null + /// Growth rate modifier + /// Multiplier equates to 1 + this + var/growth_modifier = null + /// Personality traits the child may get + var/list/personality_traits = null + /// Offspring color probability modifiers + var/list/color_chances = null + +/datum/element/raptor_food/Attach(obj/item/target, attack_modifier, health_modifier, speed_modifier, ability_modifier, growth_modifier, list/personality_traits, list/color_chances) + . = ..() + if (!isitem(target)) + return ELEMENT_INCOMPATIBLE + src.attack_modifier = attack_modifier + src.health_modifier = health_modifier + src.speed_modifier = speed_modifier + src.ability_modifier = ability_modifier + src.growth_modifier = growth_modifier + src.personality_traits = personality_traits + src.color_chances = color_chances + RegisterSignal(target, COMSIG_ITEM_EATEN_BY_BASIC_MOB, PROC_REF(on_eaten)) + RegisterSignal(target, COMSIG_ATOM_EXAMINE_MORE, PROC_REF(on_examine_more)) + +/datum/element/raptor_food/Detach(datum/source, ...) + UnregisterSignal(source, list(COMSIG_ITEM_EATEN_BY_BASIC_MOB, COMSIG_ATOM_EXAMINE_MORE)) + return ..() + +/datum/element/raptor_food/proc/on_examine_more(obj/item/source, mob/examiner, list/examine_list) + SIGNAL_HANDLER + + if (!istype(examiner.buckled, /mob/living/basic/raptor)) + return + + // Just to check for priority + var/strognest_effect = max(attack_modifier, health_modifier, speed_modifier, ability_modifier, growth_modifier, 0) + + // Only personality or color probability effects, or just pure negatives + if (strognest_effect == 0) + examine_list += span_notice("You reckon this would have unique effects on your raptor's offspring if you fed it to them...") + return + + if (strognest_effect == attack_modifier) + examine_list += span_notice("You reckon this would have make your raptor's offspring stronger if you fed it to them...") + else if (strognest_effect == health_modifier) + examine_list += span_notice("You reckon this would have make your raptor's offspring tougher if you fed it to them...") + else if (strognest_effect == speed_modifier) + examine_list += span_notice("You reckon this would have make your raptor's offspring faster if you fed it to them...") + else if (strognest_effect == ability_modifier) + examine_list += span_notice("You reckon this would have make your raptor's offspring more capable if you fed it to them...") + else if (strognest_effect == growth_modifier) + examine_list += span_notice("You reckon this would have make your raptor's offspring grow faster if you fed it to them...") + +/datum/element/raptor_food/proc/on_eaten(obj/item/source, mob/living/eater, mob/living/feeder) + SIGNAL_HANDLER + + if (!istype(eater, /mob/living/basic/raptor)) + return + + var/mob/living/basic/raptor/raptor = eater + var/list/our_food = raptor.inherited_stats.foods_eaten[source.type] + if (our_food) + our_food["amount"] += 1 + return + + raptor.inherited_stats.foods_eaten[source.type] = list( + "amount" = 1, + "attack" = attack_modifier, + "health" = health_modifier, + "speed" = speed_modifier, + "ability" = ability_modifier, + "growth" = growth_modifier, + "traits" = personality_traits?.Copy(), + "color_chances" = color_chances?.Copy(), + ) + diff --git a/code/datums/elements/reagent_scoopable_atom.dm b/code/datums/elements/reagent_scoopable_atom.dm new file mode 100644 index 00000000000000..dddd7f79e4e4be --- /dev/null +++ b/code/datums/elements/reagent_scoopable_atom.dm @@ -0,0 +1,37 @@ +/datum/element/reagent_scoopable_atom + element_flags = ELEMENT_BESPOKE|ELEMENT_DETACH_ON_HOST_DESTROY + argument_hash_start_idx = 2 + var/datum/reagent/reagent_to_extract + +/datum/element/reagent_scoopable_atom/Attach(datum/target, reagent_to_extract) + . = ..() + if(!isatom(target)) + return ELEMENT_INCOMPATIBLE + if(!reagent_to_extract) + CRASH("[type] added to [target] without any reagent specified.") + src.reagent_to_extract = reagent_to_extract + RegisterSignal(target, COMSIG_ATOM_EXAMINE, PROC_REF(on_examine)) + RegisterSignal(target, COMSIG_ATOM_ITEM_INTERACTION, PROC_REF(on_item_interaction)) + +/datum/element/reagent_scoopable_atom/Detach(datum/source, ...) + UnregisterSignal(source, list(COMSIG_ATOM_EXAMINE, COMSIG_ATOM_ITEM_INTERACTION)) + return ..() + +/datum/element/reagent_scoopable_atom/proc/on_examine(atom/source, mob/user, list/examine_list) + SIGNAL_HANDLER + + examine_list += span_info("Some [reagent_to_extract::name] could probably be scooped up with a container.") + +/datum/element/reagent_scoopable_atom/proc/on_item_interaction(atom/source, mob/living/user, obj/item/tool, list/modifiers) + SIGNAL_HANDLER + + if(tool.is_open_container()) + return extract_reagents(source, tool, user) + +/datum/element/reagent_scoopable_atom/proc/extract_reagents(atom/source, obj/item/container, mob/living/user) + if(!reagent_to_extract) + return ITEM_INTERACT_BLOCKING + if(!container.reagents.add_reagent(reagent_to_extract, rand(5, 10))) + to_chat(user, span_warning("[container] is full.")) + user.visible_message(span_notice("[user] scoops [reagent_to_extract::name] from the [source] with [container]."), span_notice("You scoop out [reagent_to_extract::name] from the [src] using [container].")) + return ITEM_INTERACT_SUCCESS diff --git a/code/datums/elements/rotation.dm b/code/datums/elements/rotation.dm new file mode 100644 index 00000000000000..6b496b5edd0016 --- /dev/null +++ b/code/datums/elements/rotation.dm @@ -0,0 +1,136 @@ +/datum/element/simple_rotation + element_flags = ELEMENT_BESPOKE + argument_hash_start_idx = 2 + /// Rotation flags for special behavior + var/rotation_flags + /// Optional proc to call()() after the thing is successfully rotated + var/post_rotation_proccall + +/** + * Adds the ability to rotate an object by Alt-click or using Right-click verbs. + * + * args: + * * rotation_flags (optional) Bitflags that determine behavior for rotation (defined at the top of this file) + * * post_rotation (optional) Callback proc that is used after the object is rotated (sound effects, balloon alerts, etc.) + **/ +/datum/element/simple_rotation/Attach(datum/target, rotation_flags = NONE, post_rotation_proccall) + . = ..() + if(!ismovable(target)) + return ELEMENT_INCOMPATIBLE + + var/atom/movable/source = target + source.flags_1 |= HAS_CONTEXTUAL_SCREENTIPS_1 + + src.rotation_flags = rotation_flags + src.post_rotation_proccall = post_rotation_proccall + + RegisterSignal(target, COMSIG_CLICK_ALT, PROC_REF(rotate_left)) + RegisterSignal(target, COMSIG_CLICK_ALT_SECONDARY, PROC_REF(rotate_right)) + RegisterSignal(target, COMSIG_ATOM_EXAMINE, PROC_REF(ExamineMessage)) + RegisterSignal(target, COMSIG_ATOM_REQUESTING_CONTEXT_FROM_ITEM, PROC_REF(on_requesting_context_from_item)) + +/datum/element/simple_rotation/Detach(datum/source, ...) + . = ..() + UnregisterSignal(source, list( + COMSIG_CLICK_ALT, + COMSIG_CLICK_ALT_SECONDARY, + COMSIG_ATOM_EXAMINE, + COMSIG_ATOM_REQUESTING_CONTEXT_FROM_ITEM, + )) + return ..() + +/datum/element/simple_rotation/proc/ExamineMessage(datum/source, mob/user, list/examine_list) + SIGNAL_HANDLER + if(rotation_flags & ROTATION_REQUIRE_WRENCH) + examine_list += span_notice("This requires a wrench to be rotated.") + +/datum/element/simple_rotation/proc/rotate_right(datum/source, mob/user) + SIGNAL_HANDLER + rotate(user, source, ROTATION_CLOCKWISE) + return CLICK_ACTION_SUCCESS + +/datum/element/simple_rotation/proc/rotate_left(datum/source, mob/user) + SIGNAL_HANDLER + rotate(user, source, ROTATION_COUNTERCLOCKWISE) + return CLICK_ACTION_SUCCESS + +/datum/element/simple_rotation/proc/rotate(mob/user, obj/object_to_rotate, degrees) + if(QDELETED(user)) + CRASH("[src] is being rotated [user ? "with a qdeleting" : "without a"] user") + if(!istype(user)) + CRASH("[src] is being rotated without a user of the wrong type: [user.type]") + if(!isnum(degrees)) + CRASH("[src] is being rotated without providing the amount of degrees needed") + + if(!can_be_rotated(user, object_to_rotate, degrees) || !can_user_rotate(user, object_to_rotate, degrees)) + return + + object_to_rotate.setDir(turn(object_to_rotate.dir, degrees)) + if(rotation_flags & ROTATION_REQUIRE_WRENCH) + playsound(object_to_rotate, 'sound/items/tools/ratchet.ogg', 50, TRUE) + + if(post_rotation_proccall) + call(object_to_rotate, post_rotation_proccall)(user, degrees) + +/datum/element/simple_rotation/proc/can_user_rotate(mob/user, obj/object_to_rotate, degrees) + if(isliving(user) && user.can_perform_action(object_to_rotate, NEED_DEXTERITY)) + return TRUE + if((rotation_flags & ROTATION_GHOSTS_ALLOWED) && isobserver(user) && CONFIG_GET(flag/ghost_interaction)) + return TRUE + return FALSE + +/datum/element/simple_rotation/proc/can_be_rotated(mob/user, obj/object_to_rotate, degrees, silent = FALSE) + if(!object_to_rotate.Adjacent(user)) + silent = TRUE + + if(rotation_flags & ROTATION_REQUIRE_WRENCH) + if(!isliving(user)) + return FALSE + var/obj/item/tool = user.get_active_held_item() + if(!tool || tool.tool_behaviour != TOOL_WRENCH) + if(!silent) + object_to_rotate.balloon_alert(user, "need a wrench!") + return FALSE + + if(!(rotation_flags & ROTATION_IGNORE_ANCHORED) && object_to_rotate.anchored) + if(istype(object_to_rotate, /obj/structure/window) && !silent) + object_to_rotate.balloon_alert(user, "need to unscrew!") + else if(!silent) + object_to_rotate.balloon_alert(user, "need to unwrench!") + return FALSE + + if(rotation_flags & ROTATION_NEEDS_ROOM) + var/target_dir = turn(object_to_rotate.dir, degrees) + var/obj/structure/window/window_to_rotate = object_to_rotate + var/fulltile = istype(window_to_rotate) ? window_to_rotate.fulltile : FALSE + if(!valid_build_direction(object_to_rotate.loc, target_dir, is_fulltile = fulltile)) + if(!silent) + object_to_rotate.balloon_alert(user, "can't rotate in that direction!") + return FALSE + + if(rotation_flags & ROTATION_NEEDS_UNBLOCKED) + var/turf/rotate_turf = get_turf(object_to_rotate) + if(rotate_turf.is_blocked_turf(source_atom = object_to_rotate)) + if(!silent) + object_to_rotate.balloon_alert(user, "rotation is blocked!") + return FALSE + + return TRUE + +// maybe we don't need the item context proc but instead the hand one? since we don't need to check held_item +/datum/element/simple_rotation/proc/on_requesting_context_from_item(atom/source, list/context, obj/item/held_item, mob/user) + SIGNAL_HANDLER + + var/rotation_screentip = FALSE + + if(can_be_rotated(user, source, ROTATION_CLOCKWISE, silent=TRUE)) + context[SCREENTIP_CONTEXT_ALT_LMB] = "Rotate left" + rotation_screentip = TRUE + if(can_be_rotated(user, source, ROTATION_COUNTERCLOCKWISE, silent=TRUE)) + context[SCREENTIP_CONTEXT_ALT_RMB] = "Rotate right" + rotation_screentip = TRUE + + if(rotation_screentip) + return CONTEXTUAL_SCREENTIP_SET + + return NONE diff --git a/code/datums/elements/spooky.dm b/code/datums/elements/spooky.dm index 8edd90dbc25b72..85daaaeda78da1 100644 --- a/code/datums/elements/spooky.dm +++ b/code/datums/elements/spooky.dm @@ -58,14 +58,14 @@ if(bone_amount) human.set_jitter_if_lower(12 SECONDS * bone_amount) human.set_stutter(6.5 SECONDS * bone_amount) - human.adjustStaminaLoss(3 * bone_amount * stam_dam_mult) + human.adjust_stamina_loss(3 * bone_amount * stam_dam_mult) if(iszombie(human)) - human.adjustStaminaLoss(25) + human.adjust_stamina_loss(25) human.Paralyze(15) //zombies can't resist the doot return bone_amount /datum/element/spooky/proc/spectral_change(mob/living/carbon/human/human, mob/living/user, obj/item/source) - if(human.getStaminaLoss() <= 95) + if(human.get_stamina_loss() <= 95) return if(single_use) diff --git a/code/datums/elements/surgery_aid.dm b/code/datums/elements/surgery_aid.dm new file mode 100644 index 00000000000000..ca351cc6a56c83 --- /dev/null +++ b/code/datums/elements/surgery_aid.dm @@ -0,0 +1,151 @@ +/// Item can be applied to mobs to prepare them for surgery (allowing people to operate on them) +/datum/element/surgery_aid + element_flags = ELEMENT_BESPOKE + argument_hash_start_idx = 2 + /// The name of the aid, for examine and messages, in plural form + var/aid_name + +/datum/element/surgery_aid/Attach(datum/target, aid_name = "things") + . = ..() + if(!isitem(target)) + return ELEMENT_INCOMPATIBLE + + src.aid_name = aid_name + RegisterSignal(target, COMSIG_ITEM_REQUESTING_CONTEXT_FOR_TARGET, PROC_REF(on_context)) + RegisterSignal(target, COMSIG_ITEM_INTERACTING_WITH_ATOM, PROC_REF(on_item_interaction)) + + var/obj/item/realtarget = target + realtarget.item_flags |= ITEM_HAS_CONTEXTUAL_SCREENTIPS + +/datum/element/surgery_aid/Detach(datum/target) + . = ..() + UnregisterSignal(target, list(COMSIG_ITEM_INTERACTING_WITH_ATOM, COMSIG_ITEM_REQUESTING_CONTEXT_FOR_TARGET)) + +/datum/element/surgery_aid/proc/on_context(obj/item/source, list/context, atom/target, mob/living/user) + SIGNAL_HANDLER + + if(!isliving(target)) + return NONE + + var/mob/living/target_mob = target + if(!target_mob.has_limbs) + context[SCREENTIP_CONTEXT_LMB] = HAS_TRAIT(source, TRAIT_READY_TO_OPERATE) ? "Remove [aid_name]" : "Prepare for surgery" + return CONTEXTUAL_SCREENTIP_SET + + var/obj/item/bodypart/precise_part = target_mob.get_bodypart(deprecise_zone(user.zone_selected)) || target_mob.get_bodypart(BODY_ZONE_CHEST) + context[SCREENTIP_CONTEXT_LMB] = HAS_TRAIT(precise_part, TRAIT_READY_TO_OPERATE) ? "Remove [aid_name]" : "Prepare [precise_part.plaintext_zone] for surgery" + return CONTEXTUAL_SCREENTIP_SET + +/datum/element/surgery_aid/proc/on_item_interaction(datum/source, mob/living/user, atom/target, ...) + SIGNAL_HANDLER + + if(!isliving(target)) + return NONE + + var/mob/living/target_mob = target + var/obj/item/bodypart/precise_part = target_mob.get_bodypart(deprecise_zone(user.zone_selected)) || target_mob.get_bodypart(BODY_ZONE_CHEST) + surgery_prep(target_mob, user, precise_part?.body_zone || BODY_ZONE_CHEST, aid_name) + return ITEM_INTERACT_SUCCESS + +/datum/element/surgery_aid/proc/surgery_prep(mob/living/target_mob, mob/living/surgeon, body_zone) + var/datum/status_effect/surgery_prepped/prep = target_mob.has_status_effect(__IMPLIED_TYPE__) + if(isnull(prep) || !(body_zone in prep.zones)) + target_mob.apply_status_effect(/datum/status_effect/surgery_prepped, body_zone, aid_name) + target_mob.balloon_alert(surgeon, "[parse_zone(body_zone)] surgery prepared") + return + prep.untrack_surgery(body_zone) + target_mob.balloon_alert(surgeon, "surgery cleared") + +/// Tracks which body zones have been prepped for surgery +/datum/status_effect/surgery_prepped + id = "surgery_prepped" + alert_type = null + status_type = STATUS_EFFECT_REFRESH + processing_speed = STATUS_EFFECT_NORMAL_PROCESS + tick_interval = 2 SECONDS + + /// Lazylist of zones being prepped, if empty we should not exist + var/list/zones + /// Lazylist of the names of all surgical aids used, for examine + var/list/surgical_aids + /// Counts movements while standing up - removes the effect if we move too much + var/movement_counter = 0 + +/datum/status_effect/surgery_prepped/on_creation(mob/living/new_owner, target_zone, aid_name = "things") + . = ..() + track_surgery(target_zone) + LAZYOR(surgical_aids, aid_name) + ADD_TRAIT(owner, TRAIT_READY_TO_OPERATE, TRAIT_STATUS_EFFECT(id)) // needs to happen after tracking starts + +/datum/status_effect/surgery_prepped/refresh(mob/living/new_owner, target_zone, aid_name = "things") + track_surgery(target_zone) + LAZYOR(surgical_aids, aid_name) + +/datum/status_effect/surgery_prepped/on_apply() + RegisterSignal(owner, COMSIG_MOVABLE_MOVED, PROC_REF(on_move)) + RegisterSignal(owner, COMSIG_CARBON_POST_ATTACH_LIMB, PROC_REF(on_attach_limb)) + RegisterSignal(owner, COMSIG_CARBON_POST_REMOVE_LIMB, PROC_REF(on_detach_limb)) + return TRUE + +/datum/status_effect/surgery_prepped/on_remove() + for(var/zone in zones) + untrack_surgery(zone) + REMOVE_TRAIT(owner, TRAIT_READY_TO_OPERATE, TRAIT_STATUS_EFFECT(id)) + UnregisterSignal(owner, list(COMSIG_MOVABLE_MOVED, COMSIG_CARBON_POST_ATTACH_LIMB, COMSIG_CARBON_POST_REMOVE_LIMB)) + +/datum/status_effect/surgery_prepped/get_examine_text() + var/list/zones_readable = list() + // give the body zones a consistent order, the same order as GLOB.all_body_zones + for(var/zone in GLOB.all_body_zones & zones) + zones_readable += parse_zone(zone) + + var/list/aid_readable = list() + for(var/aid in surgical_aids) + aid_readable += copytext_char(aid, -1) == "s" ? aid : "\a [aid]" + + // "They have surgial drapes and a bedsheet adorning their chest, arms, and legs." + return "[owner.p_They()] [owner.p_have()] [english_list(aid_readable)] adorning [owner.p_their()] [english_list(zones_readable)]." + +/datum/status_effect/surgery_prepped/proc/on_move(datum/source, ...) + SIGNAL_HANDLER + + if(owner.body_position == STANDING_UP) + movement_counter += 1 + if(movement_counter < 4) + return + // "The surgical drapes and bedsheets adorning John fall off!" + owner.visible_message(span_warning("The [english_list(surgical_aids)] adorning [owner] fall off!")) + qdel(src) + +/datum/status_effect/surgery_prepped/proc/on_attach_limb(datum/source, obj/item/bodypart/limb) + SIGNAL_HANDLER + + if(limb.body_zone in zones) + ADD_TRAIT(limb, TRAIT_READY_TO_OPERATE, TRAIT_STATUS_EFFECT(id)) + +/datum/status_effect/surgery_prepped/proc/on_detach_limb(datum/source, obj/item/bodypart/limb) + SIGNAL_HANDLER + + REMOVE_TRAIT(limb, TRAIT_READY_TO_OPERATE, TRAIT_STATUS_EFFECT(id)) + +/datum/status_effect/surgery_prepped/tick(seconds_between_ticks) + if(owner.body_position == LYING_DOWN && movement_counter > 0) + movement_counter -= 1 + +/datum/status_effect/surgery_prepped/proc/track_surgery(body_zone) + LAZYADD(zones, body_zone) + if(iscarbon(owner)) + var/obj/item/bodypart/precise_part = owner.get_bodypart(body_zone) + if(precise_part) + ADD_TRAIT(precise_part, TRAIT_READY_TO_OPERATE, TRAIT_STATUS_EFFECT(id)) + else if(body_zone != BODY_ZONE_CHEST) + stack_trace("Attempting to track surgery on a non-carbon mob with a non-chest body zone! This should not happen.") + +/datum/status_effect/surgery_prepped/proc/untrack_surgery(body_zone) + LAZYREMOVE(zones, body_zone) + if(iscarbon(owner)) + var/obj/item/bodypart/precise_part = owner.get_bodypart(body_zone) + if(precise_part) + REMOVE_TRAIT(precise_part, TRAIT_READY_TO_OPERATE, TRAIT_STATUS_EFFECT(id)) + if(!LAZYLEN(zones) && !QDELETED(src)) + qdel(src) // no more zones to track, remove the status effect diff --git a/code/datums/elements/swimming_tile.dm b/code/datums/elements/swimming_tile.dm index 738a8d315efbf5..3f825942aaa8b1 100644 --- a/code/datums/elements/swimming_tile.dm +++ b/code/datums/elements/swimming_tile.dm @@ -11,6 +11,12 @@ var/ticking_oxy_damage /// Probability to exhaust our swimmer var/exhaust_swimmer_prob + /// Tracked list of all mobs that are present in our turfs + var/list/mob/swimmers = list() + +/datum/element/swimming_tile/Destroy(force) + swimmers = null + return ..() /datum/element/swimming_tile/Attach(turf/target, stamina_entry_cost = 7, ticking_stamina_cost = 5, ticking_oxy_damage = 2, exhaust_swimmer_prob = 30) . = ..() @@ -39,41 +45,59 @@ /// When something enters the water set up to start drowning it /datum/element/swimming_tile/proc/enter_water(atom/source, mob/living/swimmer) SIGNAL_HANDLER - if (!istype(swimmer)) + + if(!istype(swimmer)) return - RegisterSignal(swimmer, SIGNAL_ADDTRAIT(TRAIT_IMMERSED), PROC_REF(dip_in)) + + if(QDELETED(swimmer)) + return + if(HAS_TRAIT(swimmer, TRAIT_IMMERSED)) dip_in(swimmer) + if(swimmer in swimmers) + return + + RegisterSignal(swimmer, SIGNAL_ADDTRAIT(TRAIT_IMMERSED), PROC_REF(dip_in)) + RegisterSignal(swimmer, COMSIG_QDELETING, PROC_REF(on_swimmer_del)) + swimmers |= swimmer + /// When something exits the water it probably shouldn't drowning /datum/element/swimming_tile/proc/out_of_water(atom/source, mob/living/landlubber) SIGNAL_HANDLER - UnregisterSignal(landlubber, list(SIGNAL_ADDTRAIT(TRAIT_IMMERSED))) + UnregisterSignal(landlubber, list(SIGNAL_ADDTRAIT(TRAIT_IMMERSED), COMSIG_QDELETING)) + swimmers -= landlubber + +/datum/element/swimming_tile/proc/on_swimmer_del(atom/source) + SIGNAL_HANDLER + out_of_water(null, source) /// When we've validated that someone is actually in the water start drowning the-I mean, start swimming! /datum/element/swimming_tile/proc/dip_in(mob/living/floater) SIGNAL_HANDLER - if ((!HAS_TRAIT(floater, TRAIT_SWIMMER) && (isnull(floater.buckled) || (!isvehicle(floater.buckled) && !ismob(floater.buckled))) && prob(exhaust_swimmer_prob))) - - //First, we determine our effective stamina entry cost baseline. This includes the value from the water, as well as any heavy clothing being worn. The strength trait halves this value. - var/effective_stamina_entry_cost = HAS_TRAIT(floater, TRAIT_STRENGTH) ? (stamina_entry_cost + clothing_weight(floater)) : ((stamina_entry_cost + clothing_weight(floater)) / 2) + if(HAS_TRAIT(floater, TRAIT_SWIMMER) || (isvehicle(floater.buckled) || ismob(floater.buckled)) || !prob(exhaust_swimmer_prob)) + // Apply the status anyway for when they stop riding + floater.apply_status_effect(/datum/status_effect/swimming, ticking_stamina_cost, ticking_oxy_damage) + return - //Being in high gravity doubles our effective stamina cost - var/gravity_modifier = floater.has_gravity() > STANDARD_GRAVITY ? 2 : 1 + //First, we determine our effective stamina entry cost baseline. This includes the value from the water, as well as any heavy clothing being worn. The strength trait halves this value. + var/effective_stamina_entry_cost = HAS_TRAIT(floater, TRAIT_STRENGTH) ? (stamina_entry_cost + clothing_weight(floater)) : ((stamina_entry_cost + clothing_weight(floater)) / 2) - //If our floater has a specialized spine, include that as a factor. - var/obj/item/organ/cyberimp/chest/spine/potential_spine = floater.get_organ_slot(ORGAN_SLOT_SPINE) - if(istype(potential_spine)) - effective_stamina_entry_cost *= potential_spine.athletics_boost_multiplier + //Being in high gravity doubles our effective stamina cost + var/gravity_modifier = floater.has_gravity() > STANDARD_GRAVITY ? 2 : 1 - //Finally, we get our athletics skill as a reduction to the stamina cost. This is a direct reduction. - var/athletics_skill = (floater.mind?.get_skill_level(/datum/skill/athletics) || 1) - 1 + //If our floater has a specialized spine, include that as a factor. + var/obj/item/organ/cyberimp/chest/spine/potential_spine = floater.get_organ_slot(ORGAN_SLOT_SPINE) + if(istype(potential_spine)) + effective_stamina_entry_cost *= potential_spine.athletics_boost_multiplier - floater.apply_damage(clamp((effective_stamina_entry_cost - athletics_skill) * gravity_modifier, 1, 100), STAMINA) - floater.mind?.adjust_experience(/datum/skill/athletics, (stamina_entry_cost * gravity_modifier) * 0.1) - floater.apply_status_effect(/datum/status_effect/exercised, 15 SECONDS) + //Finally, we get our athletics skill as a reduction to the stamina cost. This is a direct reduction. + var/athletics_skill = (floater.mind?.get_skill_level(/datum/skill/athletics) || 1) - 1 + floater.apply_damage(clamp((effective_stamina_entry_cost - athletics_skill) * gravity_modifier, 1, 100), STAMINA) + floater.mind?.adjust_experience(/datum/skill/athletics, (stamina_entry_cost * gravity_modifier) * 0.1) + floater.apply_status_effect(/datum/status_effect/exercised, 15 SECONDS) floater.apply_status_effect(/datum/status_effect/swimming, ticking_stamina_cost, ticking_oxy_damage) // Apply the status anyway for when they stop riding /// The weight of our swimmers clothing, including slowdown, impacts the amount of stamina damage dealt on dipping in. diff --git a/code/datums/components/table_smash.dm b/code/datums/elements/table_smash.dm similarity index 57% rename from code/datums/components/table_smash.dm rename to code/datums/elements/table_smash.dm index 017f0cff7b3c79..74bf2bc9d58fa2 100644 --- a/code/datums/components/table_smash.dm +++ b/code/datums/elements/table_smash.dm @@ -1,64 +1,67 @@ /// Component which allows mobs to be smashed onto this surface like a wrestling move -/datum/component/table_smash +/datum/element/table_smash + element_flags = ELEMENT_BESPOKE + argument_hash_start_idx = 2 /// If true, mobs will be placed gently on the table even if they're in an aggressive grab var/gentle_push - /// Callback invoked after a hostile table action - var/datum/callback/after_smash + /// Passed proc call path for what to do after smashing harmfully into our 'table'-like obj + var/after_smash_proccall -/datum/component/table_smash/Initialize(gentle_push = FALSE, after_smash = null) +/datum/element/table_smash/Attach(datum/target, gentle_push = FALSE, after_smash_proccall) . = ..() - if (!isobj(parent)) - return COMPONENT_INCOMPATIBLE + if (!isobj(target)) + return ELEMENT_INCOMPATIBLE src.gentle_push = gentle_push - src.after_smash = after_smash + src.after_smash_proccall = after_smash_proccall -/datum/component/table_smash/RegisterWithParent() - RegisterSignal(parent, COMSIG_ATOM_ATTACK_HAND, PROC_REF(on_interaction)) - RegisterSignal(parent, COMSIG_ATOM_ITEM_INTERACTION, PROC_REF(on_item_interaction)) + RegisterSignal(target, COMSIG_ATOM_ATTACK_HAND, PROC_REF(on_interaction)) + RegisterSignal(target, COMSIG_ATOM_ITEM_INTERACTION, PROC_REF(on_item_interaction)) var/static/list/loc_connections = list( - COMSIG_LIVING_DISARM_COLLIDE = PROC_REF(on_pushed_into), + COMSIG_LIVING_DISARM_COLLIDE = TYPE_PROC_REF(/obj/structure, on_disarm_shoved_into), ) - AddComponent(/datum/component/connect_loc_behalf, parent, loc_connections) + target.AddElement(/datum/element/connect_loc, loc_connections) -/datum/component/table_smash/UnregisterFromParent() - UnregisterSignal(parent, list(COMSIG_ATOM_ATTACK_HAND, COMSIG_ATOM_ITEM_INTERACTION)) +/datum/element/table_smash/Detach(datum/source, ...) + . = ..() + UnregisterSignal(source, list(COMSIG_ATOM_ATTACK_HAND, COMSIG_ATOM_ITEM_INTERACTION)) /// Called when someone clicks on our surface -/datum/component/table_smash/proc/on_interaction(obj/table, mob/user) +/datum/element/table_smash/proc/on_interaction(datum/source, mob/user) SIGNAL_HANDLER - if (!table.Adjacent(user) || !user.pulling) + var/obj/source_obj = source + if (!source_obj.Adjacent(user) || !user.pulling) return if (!isliving(user.pulling)) if (!(user.pulling.pass_flags & PASSTABLE)) return - user.Move_Pulled(table) + user.Move_Pulled(source_obj) - if (user.pulling.loc == table.loc) - user.visible_message(span_notice("[user] places [user.pulling] onto [table]."), - span_notice("You place [user.pulling] onto [table].")) + if (user.pulling.loc == source_obj.loc) + user.visible_message(span_notice("[user] places [user.pulling] onto [source_obj]."), + span_notice("You place [user.pulling] onto [source_obj].")) user.stop_pulling() return COMPONENT_CANCEL_ATTACK_CHAIN var/mob/living/pushed_mob = user.pulling if (pushed_mob.buckled) - if (pushed_mob.buckled == table) - //Already buckled to the table, you probably meant to unbuckle them + if (pushed_mob.buckled == source_obj) + //Already buckled to the object, you probably meant to unbuckle them return to_chat(user, span_warning("[pushed_mob] is buckled to [pushed_mob.buckled]!")) return COMPONENT_CANCEL_ATTACK_CHAIN - INVOKE_ASYNC(src, PROC_REF(perform_table_smash), table, user) + INVOKE_ASYNC(src, PROC_REF(perform_table_smash), source_obj, user) return COMPONENT_CANCEL_ATTACK_CHAIN /// We have a mob being pressed onto the table, but how strongly? -/datum/component/table_smash/proc/perform_table_smash(obj/table, mob/living/user) +/datum/element/table_smash/proc/perform_table_smash(obj/structure/table/table, mob/living/user) var/mob/living/pushed_mob = user.pulling if (user.combat_mode) switch(user.grab_state) @@ -67,23 +70,23 @@ return if (GRAB_AGGRESSIVE) if (gentle_push) - tableplace(user, pushed_mob) + tableplace(user, pushed_mob, table) else - tablepush(user, pushed_mob) + tablepush(user, pushed_mob, table) if (GRAB_NECK to GRAB_KILL) - tablelimbsmash(user, pushed_mob) + tablelimbsmash(user, pushed_mob, table) else pushed_mob.visible_message(span_notice("[user] begins to place [pushed_mob] onto [table]..."), \ span_userdanger("[user] begins to place [pushed_mob] onto [table]...")) if (do_after(user, 3.5 SECONDS, target = pushed_mob)) - tableplace(user, pushed_mob) + tableplace(user, pushed_mob, table) else return user.stop_pulling() /// Called when someone clicks on our surface with an item -/datum/component/table_smash/proc/on_item_interaction(obj/table, mob/living/user, obj/item/item, modifiers) +/datum/element/table_smash/proc/on_item_interaction(obj/structure/table/table, mob/living/user, obj/item/item, modifiers) SIGNAL_HANDLER if (!istype(item, /obj/item/riding_offhand)) return NONE @@ -97,7 +100,7 @@ return ITEM_INTERACT_BLOCKING /// Called when someone clicks on our surface using a fireman's carry -/datum/component/table_smash/proc/riding_offhand_act(mob/living/user, obj/item/riding_offhand/riding_item) +/datum/element/table_smash/proc/riding_offhand_act(mob/living/user, obj/item/riding_offhand/riding_item, obj/structure/table/table) var/mob/living/carried_mob = riding_item.rider if (user.combat_mode) user.unbuckle_mob(carried_mob) @@ -117,25 +120,24 @@ if (istype(potential_spine)) tableplace_delay *= potential_spine.athletics_boost_multiplier - carried_mob.visible_message(span_notice("[user] begins to[skills_space] place [carried_mob] onto [parent]..."), - span_userdanger("[user] begins to[skills_space] place [carried_mob] onto [parent]...")) + carried_mob.visible_message(span_notice("[user] begins to[skills_space] place [carried_mob] onto [table]..."), + span_userdanger("[user] begins to[skills_space] place [carried_mob] onto [table]...")) if (!do_after(user, tableplace_delay, target = carried_mob)) return ITEM_INTERACT_BLOCKING user.unbuckle_mob(carried_mob) - tableplace(user, carried_mob) + tableplace(user, carried_mob, table) return ITEM_INTERACT_SUCCESS /// Gently place the mob onto the table -/datum/component/table_smash/proc/tableplace(mob/living/user, mob/living/pushed_mob) - var/obj/table = parent +/datum/element/table_smash/proc/tableplace(mob/living/user, mob/living/pushed_mob, obj/structure/table/table) pushed_mob.forceMove(table.loc) pushed_mob.set_resting(TRUE, TRUE) - pushed_mob.visible_message(span_notice("[user] places [pushed_mob] onto [parent]."), \ - span_notice("[user] places [pushed_mob] onto [parent].")) - log_combat(user, pushed_mob, "places", null, "onto [parent]") + pushed_mob.visible_message(span_notice("[user] places [pushed_mob] onto [table]."), \ + span_notice("[user] places [pushed_mob] onto [table].")) + log_combat(user, pushed_mob, "placed", null, "onto [table]") /// Aggressively smash the mob onto the table -/datum/component/table_smash/proc/tablepush(mob/living/user, mob/living/pushed_mob) +/datum/element/table_smash/proc/tablepush(mob/living/user, mob/living/pushed_mob, obj/structure/table/table) if (HAS_TRAIT(user, TRAIT_PACIFISM)) to_chat(user, span_danger("Throwing [pushed_mob] onto the table might hurt them!")) return @@ -146,7 +148,6 @@ if (!obj.CanAllowThrough(pushed_mob)) return - var/obj/table = parent pushed_mob.Move(table.loc) passtable_off(pushed_mob, passtable_key) if (pushed_mob.loc != table.loc) //Something prevented the tabling @@ -156,16 +157,16 @@ pushed_mob.apply_damage(10, BRUTE) pushed_mob.apply_damage(40, STAMINA) playsound(pushed_mob, 'sound/effects/tableslam.ogg', 90, TRUE) - pushed_mob.visible_message(span_danger("[user] slams [pushed_mob] onto \the [parent]!"), \ - span_userdanger("[user] slams you onto \the [parent]!")) - log_combat(user, pushed_mob, "tabled", null, "onto [parent]") + pushed_mob.visible_message(span_danger("[user] slams [pushed_mob] onto \the [table]!"), \ + span_userdanger("[user] slams you onto \the [table]!")) + log_combat(user, pushed_mob, "tabled", null, "onto [table]") pushed_mob.add_mood_event("table", /datum/mood_event/table) - SEND_SIGNAL(user, COMSIG_LIVING_TABLE_SLAMMING, pushed_mob, parent) - after_smash?.Invoke(pushed_mob) + SEND_SIGNAL(user, COMSIG_LIVING_TABLE_SLAMMING, pushed_mob, table) + if(after_smash_proccall) + call(table, after_smash_proccall)(pushed_mob) /// Even more aggressively smash a single part of a mob onto the table -/datum/component/table_smash/proc/tablelimbsmash(mob/living/user, mob/living/pushed_mob) - var/obj/table = parent +/datum/element/table_smash/proc/tablelimbsmash(mob/living/user, mob/living/pushed_mob, obj/structure/table/table) pushed_mob.Knockdown(3 SECONDS) var/obj/item/bodypart/banged_limb = pushed_mob.get_bodypart(user.zone_selected) || pushed_mob.get_bodypart(BODY_ZONE_HEAD) var/extra_wound = 0 @@ -174,24 +175,29 @@ pushed_mob.apply_damage(30, BRUTE, banged_limb, wound_bonus = extra_wound) pushed_mob.apply_damage(60, STAMINA) playsound(pushed_mob, 'sound/effects/bang.ogg', 90, TRUE) - pushed_mob.visible_message(span_danger("[user] smashes [pushed_mob]'s [banged_limb.plaintext_zone] against \the [parent]!"), - span_userdanger("[user] smashes your [banged_limb.plaintext_zone] against \the [parent]")) - log_combat(user, pushed_mob, "head slammed", null, "against [parent]") + pushed_mob.visible_message(span_danger("[user] smashes [pushed_mob]'s [banged_limb.plaintext_zone] against \the [table]!"), + span_userdanger("[user] smashes your [banged_limb.plaintext_zone] against \the [table]")) + log_combat(user, pushed_mob, "head slammed", null, "against [table]") pushed_mob.add_mood_event("table", /datum/mood_event/table_limbsmash, banged_limb) table.take_damage(50) - SEND_SIGNAL(user, COMSIG_LIVING_TABLE_LIMB_SLAMMING, pushed_mob, parent) - after_smash?.Invoke(pushed_mob) + SEND_SIGNAL(user, COMSIG_LIVING_TABLE_LIMB_SLAMMING, pushed_mob, table) + if(after_smash_proccall) + call(table, after_smash_proccall)(pushed_mob) /// Called when someone is shoved into our tile -/datum/component/table_smash/proc/on_pushed_into(turf/source, mob/living/shover, mob/living/target, shove_flags, obj/item/weapon) +/obj/structure/proc/on_disarm_shoved_into(datum/source, mob/living/shover, mob/living/target, shove_flags, obj/item/weapon) SIGNAL_HANDLER if((shove_flags & SHOVE_KNOCKDOWN_BLOCKED) || !(shove_flags & SHOVE_BLOCKED)) return target.Knockdown(SHOVE_KNOCKDOWN_TABLE, daze_amount = 3 SECONDS) - target.visible_message(span_danger("[shover.name] shoves [target.name] onto \the [parent]!"), - span_userdanger("You're shoved onto \the [parent] by [shover.name]!"), span_hear("You hear aggressive shuffling followed by a loud thud!"), COMBAT_MESSAGE_RANGE, shover) - to_chat(shover, span_danger("You shove [target.name] onto \the [parent]!")) - target.throw_at(parent, 1, 1, null, FALSE) //1 speed throws with no spin are basically just forcemoves with a hard collision check - log_combat(shover, target, "shoved", "onto [parent] (table)[weapon ? " with [weapon]" : ""]") - after_smash?.Invoke(target) + target.visible_message(span_danger("[shover.name] shoves [target.name] onto \the [src]!"), + span_userdanger("You're shoved onto \the [src] by [shover.name]!"), span_hear("You hear aggressive shuffling followed by a loud thud!"), COMBAT_MESSAGE_RANGE, shover) + to_chat(shover, span_danger("You shove [target.name] onto \the [src]!")) + target.throw_at(src, 1, 1, null, FALSE) //1 speed throws with no spin are basically just forcemoves with a hard collision check + log_combat(shover, target, "shoved", "onto [src] (table)[weapon ? " with [weapon]" : ""]") + after_smash(target) return COMSIG_LIVING_SHOVE_HANDLED + +/// Called after someone is harmfully smashed onto us +/obj/structure/proc/after_smash(mob/living/smashed_onto) + return // This is mostly for our children diff --git a/code/datums/elements/tool_flash.dm b/code/datums/elements/tool_flash.dm index f17d60970bf589..68a02897f94156 100644 --- a/code/datums/elements/tool_flash.dm +++ b/code/datums/elements/tool_flash.dm @@ -33,5 +33,5 @@ /datum/element/tool_flash/proc/flash(datum/source, mob/living/user) SIGNAL_HANDLER - if(user && get_dist(get_turf(source), get_turf(user)) <= 1) + if(user && flash_strength > 0 && get_dist(get_turf(source), get_turf(user)) <= 1) user.flash_act(max(flash_strength,1)) diff --git a/code/datums/elements/watery_tile.dm b/code/datums/elements/watery_tile.dm index 296928f26afd1c..3c72170ecefea8 100644 --- a/code/datums/elements/watery_tile.dm +++ b/code/datums/elements/watery_tile.dm @@ -1,5 +1,11 @@ /datum/element/watery_tile element_flags = ELEMENT_DETACH_ON_HOST_DESTROY + /// List of atoms that are present in this element's turfs + var/list/atom/movable/wet_dogs = list() + +/datum/element/watery_tile/Destroy(force) + wet_dogs = null + return ..() /datum/element/watery_tile/Attach(turf/target) . = ..() @@ -22,11 +28,20 @@ /datum/element/watery_tile/proc/enter_water(atom/source, atom/movable/entered) SIGNAL_HANDLER + if(QDELETED(entered) || HAS_TRAIT(entered, TRAIT_WALLMOUNTED)) + return + + if(HAS_TRAIT(entered, TRAIT_IMMERSED)) + dip_in(entered) + + if(entered in wet_dogs) + return + RegisterSignal(entered, SIGNAL_ADDTRAIT(TRAIT_IMMERSED), PROC_REF(dip_in)) + RegisterSignal(entered, COMSIG_QDELETING, PROC_REF(on_content_del)) if(isliving(entered)) RegisterSignal(entered, SIGNAL_REMOVETRAIT(TRAIT_IMMERSED), PROC_REF(dip_out)) - if(HAS_TRAIT(entered, TRAIT_IMMERSED)) - dip_in(entered) + wet_dogs |= entered /datum/element/watery_tile/proc/dip_in(atom/movable/source) SIGNAL_HANDLER @@ -39,10 +54,15 @@ /datum/element/watery_tile/proc/out_of_water(atom/source, atom/movable/gone) SIGNAL_HANDLER - UnregisterSignal(gone, list(SIGNAL_ADDTRAIT(TRAIT_IMMERSED), SIGNAL_REMOVETRAIT(TRAIT_IMMERSED))) + on_content_del(gone) if(isliving(gone)) dip_out(gone) +/datum/element/watery_tile/proc/on_content_del(atom/movable/source) + SIGNAL_HANDLER + UnregisterSignal(source, list(SIGNAL_ADDTRAIT(TRAIT_IMMERSED), SIGNAL_REMOVETRAIT(TRAIT_IMMERSED), COMSIG_QDELETING)) + wet_dogs -= source + /datum/element/watery_tile/proc/dip_out(mob/living/source) SIGNAL_HANDLER source.remove_status_effect(/datum/status_effect/watery_tile_wetness) diff --git a/code/datums/embedding.dm b/code/datums/embedding.dm index ec55c7d98a2c2c..2dea988caaf0e2 100644 --- a/code/datums/embedding.dm +++ b/code/datums/embedding.dm @@ -420,7 +420,7 @@ if (user.zone_selected != owner_limb.body_zone || (tool.tool_behaviour != TOOL_HEMOSTAT && tool.tool_behaviour != TOOL_WIRECUTTER)) return - if (parent != owner_limb.embedded_objects[1]) // Don't pluck everything at the same time + if (parent != LAZYACCESS(owner_limb.embedded_objects, 1)) // Don't pluck everything at the same time return // Ensure that we can actually diff --git a/code/datums/emotes.dm b/code/datums/emotes.dm index df1eef765c5a1f..6ab40f2a761bb8 100644 --- a/code/datums/emotes.dm +++ b/code/datums/emotes.dm @@ -94,13 +94,19 @@ */ /datum/emote/proc/run_emote(mob/user, params, type_override, intentional = FALSE) var/msg = select_message_type(user, message, intentional) - if(params && message_param) - msg = select_param(user, params) + if(params) + if(message_param) + msg = select_param(user, params) + else + msg = params msg = replace_pronoun(user, msg) if(!msg) return + /// Use the type override if it exists + var/running_emote_type = type_override || emote_type + if(user.client) user.log_message(msg, LOG_EMOTE) @@ -116,14 +122,14 @@ playsound(source = user,soundin = tmp_sound,vol = 50, vary = FALSE, ignore_walls = sound_wall_ignore, frequency = frequency) - var/is_important = emote_type & EMOTE_IMPORTANT - var/is_visual = emote_type & EMOTE_VISIBLE - var/is_audible = emote_type & EMOTE_AUDIBLE + var/is_important = running_emote_type & EMOTE_IMPORTANT + var/is_visual = running_emote_type & EMOTE_VISIBLE + var/is_audible = running_emote_type & EMOTE_AUDIBLE var/additional_message_flags = get_message_flags(intentional) var/space = should_have_space_before_emote(html_decode(msg)[1]) ? " " : "" // DOPPLER EDIT ADDITION // Emote doesn't get printed to chat, runechat only - if(emote_type & EMOTE_RUNECHAT) + if(running_emote_type & EMOTE_RUNECHAT) for(var/mob/viewer as anything in viewers(user)) if(isnull(viewer.client)) continue diff --git a/code/datums/greyscale/config_types/greyscale_configs/greyscale_clothes.dm b/code/datums/greyscale/config_types/greyscale_configs/greyscale_clothes.dm index 83eb1fb6351b26..55edfe28dabecd 100644 --- a/code/datums/greyscale/config_types/greyscale_configs/greyscale_clothes.dm +++ b/code/datums/greyscale/config_types/greyscale_configs/greyscale_clothes.dm @@ -227,6 +227,15 @@ name = "Infinity Scarf (Worn)" icon_file = 'icons/mob/clothing/neck.dmi' +/datum/greyscale_config/robe_cape + name = "Robe Cape" + icon_file = 'icons/obj/clothing/neck.dmi' + json_config = 'code/datums/greyscale/json_configs/robe_cape.json' + +/datum/greyscale_config/robe_cape/worn + name = "Robe Cape" + icon_file = 'icons/mob/clothing/neck.dmi' + json_config = 'code/datums/greyscale/json_configs/robe_cape_worn.json' // // GLOVES // @@ -407,6 +416,7 @@ /datum/greyscale_config/slacks/worn name = "Slacks (Worn)" icon_file = 'icons/mob/clothing/under/shorts_pants_shirts.dmi' + json_config = 'code/datums/greyscale/json_configs/slacks_worn.json' /datum/greyscale_config/shorts name = "Shorts" @@ -425,6 +435,7 @@ /datum/greyscale_config/jeans/worn name = "Jeans (Worn)" icon_file = 'icons/mob/clothing/under/shorts_pants_shirts.dmi' + json_config = 'code/datums/greyscale/json_configs/jeans_worn.json' /datum/greyscale_config/jeanshorts name = "Jean Shorts" diff --git a/code/datums/greyscale/json_configs/jeans_worn.json b/code/datums/greyscale/json_configs/jeans_worn.json new file mode 100644 index 00000000000000..1e861168cb8339 --- /dev/null +++ b/code/datums/greyscale/json_configs/jeans_worn.json @@ -0,0 +1,43 @@ +{ + "jeans": [ + { + "type": "icon_state", + "icon_state": "buckle", + "blend_mode": "overlay", + "color_ids": [1] + }, + { + "type": "icon_state", + "icon_state": "belt", + "blend_mode": "overlay", + "color_ids": [2] + }, + { + "type": "icon_state", + "icon_state": "jeans", + "blend_mode": "overlay", + "color_ids": [3] + } + ], + "jeans_d": [ + { + "type": "icon_state", + "icon_state": "buckle", + "blend_mode": "overlay", + "color_ids": [1] + }, + { + "type": "icon_state", + "icon_state": "belt_d", + "blend_mode": "overlay", + "color_ids": [2] + }, + { + "type": "icon_state", + "icon_state": "jeans_d", + "blend_mode": "overlay", + "color_ids": [3] + } + ] +} + diff --git a/code/datums/greyscale/json_configs/robe_cape.json b/code/datums/greyscale/json_configs/robe_cape.json new file mode 100644 index 00000000000000..a5ab38d41960b1 --- /dev/null +++ b/code/datums/greyscale/json_configs/robe_cape.json @@ -0,0 +1,10 @@ +{ + "robe_cape": [ + { + "type": "icon_state", + "icon_state": "robe_cape", + "blend_mode": "overlay", + "color_ids": [1] + } + ] +} diff --git a/code/datums/greyscale/json_configs/robe_cape_worn.json b/code/datums/greyscale/json_configs/robe_cape_worn.json new file mode 100644 index 00000000000000..7dd8cd976cdae0 --- /dev/null +++ b/code/datums/greyscale/json_configs/robe_cape_worn.json @@ -0,0 +1,10 @@ +{ + "robe_cape": [ + { + "type": "icon_state", + "icon_state": "robe_cape", + "blend_mode": "overlay", + "color_ids": [1] + } + ] +} diff --git a/code/datums/greyscale/json_configs/slacks_worn.json b/code/datums/greyscale/json_configs/slacks_worn.json new file mode 100644 index 00000000000000..7a53a3d8f7c0c4 --- /dev/null +++ b/code/datums/greyscale/json_configs/slacks_worn.json @@ -0,0 +1,42 @@ +{ + "slacks": [ + { + "type": "icon_state", + "icon_state": "buckle", + "blend_mode": "overlay", + "color_ids": [1] + }, + { + "type": "icon_state", + "icon_state": "belt", + "blend_mode": "overlay", + "color_ids": [2] + }, + { + "type": "icon_state", + "icon_state": "slacks", + "blend_mode": "overlay", + "color_ids": [3] + } + ], + "slacks_d": [ + { + "type": "icon_state", + "icon_state": "buckle", + "blend_mode": "overlay", + "color_ids": [1] + }, + { + "type": "icon_state", + "icon_state": "belt_d", + "blend_mode": "overlay", + "color_ids": [2] + }, + { + "type": "icon_state", + "icon_state": "slacks_d", + "blend_mode": "overlay", + "color_ids": [3] + } + ] +} diff --git a/code/datums/greyscale/json_configs/ushanka.json b/code/datums/greyscale/json_configs/ushanka.json index 3099b13278b219..5c895a05c14567 100644 --- a/code/datums/greyscale/json_configs/ushanka.json +++ b/code/datums/greyscale/json_configs/ushanka.json @@ -6,6 +6,12 @@ "blend_mode": "overlay", "color_ids": [1] }, + { + "type": "icon_state", + "icon_state": "ushanka_fur_up", + "blend_mode": "overlay", + "color_ids": [1] + }, { "type": "icon_state", "icon_state": "ushanka_base_up", @@ -20,11 +26,18 @@ "blend_mode": "overlay", "color_ids": [1] }, + { + "type": "icon_state", + "icon_state": "ushanka_base_2", + "blend_mode": "overlay", + "color_ids": [1] + }, { "type": "icon_state", "icon_state": "ushanka_base", "blend_mode": "overlay", "color_ids": [2] } + ] } diff --git a/code/datums/helper_datums/teleport.dm b/code/datums/helper_datums/teleport.dm index 8dcaa2ecfaf1fb..d8fdb8f846b61c 100644 --- a/code/datums/helper_datums/teleport.dm +++ b/code/datums/helper_datums/teleport.dm @@ -125,26 +125,53 @@ effect.attach(location) effect.start() -// Safe location finder -/proc/find_safe_turf(zlevel, list/zlevels, extended_safety_checks = FALSE, dense_atoms = FALSE) - if(!zlevels) - if (zlevel) - zlevels = list(zlevel) - else - zlevels = SSmapping.levels_by_trait(ZTRAIT_STATION) - var/cycles = 1000 - for(var/cycle in 1 to cycles) - // DRUNK DIALLING WOOOOOOOOO +/** + * Attempts to find a "safe" floor turf within some given z-levels + * * zlevel_or_levels: The list of z-levels we are searching though. You can supply just a number and it will be turned into a list. + * * extended_safety_checks: Will do some additional checks to make sure the destination is safe, see [/proc/is_safe_turf]. + * * dense_atoms: Will additionally check to see if the turf has any dense obstructions, like machines or structures. + * + * Returns a safe floor turf, + * **BUT** there is a chance of it being null if an extremely large portion of a z-level is unsafe or blocked. + */ +/proc/find_safe_turf(zlevel_or_levels, extended_safety_checks = FALSE, dense_atoms = FALSE) as /turf/open/floor + SHOULD_BE_PURE(TRUE) + RETURN_TYPE(/turf/open/floor) + + var/list/zlevels + if(islist(zlevel_or_levels)) + zlevels = zlevel_or_levels + else if(zlevel_or_levels) + zlevels = list(zlevel_or_levels) + else + zlevels = SSmapping.levels_by_trait(ZTRAIT_STATION) + + for(var/cycle in 1 to 1000) var/x = rand(1, world.maxx) var/y = rand(1, world.maxy) var/z = pick(zlevels) var/random_location = locate(x,y,z) - - if(is_safe_turf(random_location, extended_safety_checks, dense_atoms, cycle < 300))//if the area is mostly NOTELEPORT (centcom) we gotta give up on this fantasy at some point. + var/keep_trying_no_teleport = (cycle < 300) //if the area is mostly NOTELEPORT (centcom) we gotta give up on this fantasy at some point. + if(is_safe_turf(random_location, extended_safety_checks, dense_atoms, keep_trying_no_teleport)) return random_location -/// Checks if a given turf is a "safe" location +/** + * Checks to see if a given turf is a "safe" location. Being safe requires the following to be true: + * * Must be a [floor][/turf/open/floor] + * * Must have air, and that air must have [breathable bounds][/proc/check_gases] for humans + * * Must have goldilocks temperature + * * Must have safe pressure + * + * Optionally: + * * extended_safety_checks: Will make additional checks for turfs that technically pass all previous requirements but still may not be safe + * * dense_atoms: Must be unobstructed (no blocking objects such as machines, structures or mobs) + * * no_teleport: Must not have [NOTELEPORT][/area/var/area_flag] + * + * Returns TRUE if all conditions pass, FALSE otherwise. + */ /proc/is_safe_turf(turf/random_location, extended_safety_checks = FALSE, dense_atoms = FALSE, no_teleport = FALSE) + SHOULD_BE_PURE(TRUE) + . = FALSE if(!isfloorturf(random_location)) return @@ -160,18 +187,18 @@ var/list/floor_gases = floor_gas_mixture.gases var/static/list/gases_to_check = list( - /datum/gas/oxygen = list(16, 100), + /datum/gas/oxygen = list(/obj/item/organ/lungs::safe_oxygen_min, 100), /datum/gas/nitrogen, - /datum/gas/carbon_dioxide = list(0, 10) + /datum/gas/carbon_dioxide = list(0, /obj/item/organ/lungs::safe_co2_max) ) if(!check_gases(floor_gases, gases_to_check)) return FALSE // Aim for goldilocks temperatures and pressure - if((floor_gas_mixture.temperature <= 270) || (floor_gas_mixture.temperature >= 360)) + if((floor_gas_mixture.temperature <= BODYTEMP_COLD_DAMAGE_LIMIT) || (floor_gas_mixture.temperature >= BODYTEMP_HEAT_DAMAGE_LIMIT)) return var/pressure = floor_gas_mixture.return_pressure() - if((pressure <= 20) || (pressure >= 550)) + if((pressure <= HAZARD_LOW_PRESSURE) || (pressure >= HAZARD_HIGH_PRESSURE)) return if(extended_safety_checks) diff --git a/code/datums/hud.dm b/code/datums/hud.dm index 8c7678347ee5cf..7741eeca095b92 100644 --- a/code/datums/hud.dm +++ b/code/datums/hud.dm @@ -7,7 +7,7 @@ GLOBAL_LIST_EMPTY(all_huds) GLOBAL_LIST_EMPTY(huds_by_category) //GLOBAL HUD LIST -GLOBAL_LIST_INIT(huds, list( +GLOBAL_ALIST_INIT(huds, alist( DATA_HUD_SECURITY_BASIC = new /datum/atom_hud/data/human/security/basic(), DATA_HUD_SECURITY_ADVANCED = new /datum/atom_hud/data/human/security/advanced(), DATA_HUD_MEDICAL_BASIC = new /datum/atom_hud/data/human/medical/basic(), @@ -57,7 +57,7 @@ GLOBAL_LIST_INIT(trait_blockers_to_hud, list( var/list/mob/hud_users_all_z_levels = list() ///these will be the indexes for the atom's hud_list - var/list/hud_icons = list() + var/list/hud_icons ///mobs associated with the next time this hud can be added to them var/list/next_time_allowed = list() @@ -75,6 +75,8 @@ GLOBAL_LIST_INIT(trait_blockers_to_hud, list( for(var/z_level in 1 to world.maxz) hud_atoms += list(list()) hud_users += list(list()) + if(LAZYLEN(hud_icons)) + hud_icons = string_list(hud_icons) RegisterSignal(SSdcs, COMSIG_GLOB_NEW_Z, PROC_REF(add_z_level_huds)) diff --git a/code/datums/id_trim/centcom.dm b/code/datums/id_trim/centcom.dm index 7432540f07f359..86d3ec5b9fc874 100644 --- a/code/datums/id_trim/centcom.dm +++ b/code/datums/id_trim/centcom.dm @@ -110,7 +110,7 @@ access = SSid_access.get_region_access_list(list(REGION_CENTCOM, REGION_ALL_STATION)) -/// Trim for Deathsquad officers. All Centcom and Station Access. +/// Trim for Deathsquad officers. All Centcom and Station Access. No centcom officer's access /datum/id_trim/centcom/deathsquad assignment = JOB_ERT_DEATHSQUAD trim_state = "trim_deathcommando" @@ -122,7 +122,7 @@ /datum/id_trim/centcom/deathsquad/New() . = ..() - access = SSid_access.get_region_access_list(list(REGION_CENTCOM, REGION_ALL_STATION)) + access = (SSid_access.get_region_access_list(list(REGION_CENTCOM)) - ACCESS_CENT_OFFICER) | (SSid_access.get_region_access_list(list(REGION_ALL_STATION))) /// Trim for generic ERT interns. No universal ID card changing access. /datum/id_trim/centcom/ert @@ -135,7 +135,7 @@ access = list(ACCESS_CENT_GENERAL) | (SSid_access.get_region_access_list(list(REGION_ALL_STATION)) - ACCESS_CHANGE_IDS) -/// Trim for ERT Commanders. All station and centcom access. +/// Trim for ERT Commanders. All station and centcom access. No centcom officer's access /datum/id_trim/centcom/ert/commander assignment = JOB_ERT_COMMANDER trim_state = "trim_ert_commander" @@ -144,7 +144,7 @@ /datum/id_trim/centcom/ert/commander/New() . = ..() - access = SSid_access.get_region_access_list(list(REGION_CENTCOM, REGION_ALL_STATION)) + access = (SSid_access.get_region_access_list(list(REGION_CENTCOM)) - ACCESS_CENT_OFFICER) | (SSid_access.get_region_access_list(list(REGION_ALL_STATION))) /// Trim for generic ERT seccies. No universal ID card changing access. /datum/id_trim/centcom/ert/security diff --git a/code/datums/id_trim/jobs.dm b/code/datums/id_trim/jobs.dm index 5f47ca75f93cf7..8acc47a66700ec 100644 --- a/code/datums/id_trim/jobs.dm +++ b/code/datums/id_trim/jobs.dm @@ -291,6 +291,7 @@ subdepartment_color = COLOR_CARGO_BROWN sechud_icon_state = SECHUD_CARGO_TECHNICIAN minimal_access = list( + ACCESS_BUDGET, ACCESS_CARGO, ACCESS_MAINT_TUNNELS, ACCESS_MECH_MINING, @@ -375,6 +376,7 @@ ACCESS_ATMOSPHERICS, ACCESS_AUX_BASE, ACCESS_BRIG_ENTRANCE, + ACCESS_BUDGET, ACCESS_CE, ACCESS_COMMAND, ACCESS_CONSTRUCTION, @@ -419,6 +421,7 @@ extra_wildcard_access = list() minimal_access = list( ACCESS_BRIG_ENTRANCE, + ACCESS_BUDGET, ACCESS_COMMAND, ACCESS_KEYCARD_AUTH, ACCESS_PLUMBING, @@ -639,6 +642,7 @@ ACCESS_AUX_BASE, ACCESS_BAR, ACCESS_BRIG_ENTRANCE, + ACCESS_BUDGET, ACCESS_CARGO, ACCESS_CHAPEL_OFFICE, ACCESS_CHANGE_IDS, @@ -697,6 +701,7 @@ ACCESS_BIT_DEN, ACCESS_BRIG, ACCESS_BRIG_ENTRANCE, + ACCESS_BUDGET, ACCESS_CARGO, ACCESS_COMMAND, ACCESS_CONSTRUCTION, @@ -958,6 +963,7 @@ minimal_access = list( ACCESS_AUX_BASE, ACCESS_BIT_DEN, + ACCESS_BUDGET, ACCESS_CARGO, ACCESS_MAINT_TUNNELS, ACCESS_MECH_MINING, @@ -1002,6 +1008,7 @@ ACCESS_AI_UPLOAD, ACCESS_AUX_BASE, ACCESS_BRIG_ENTRANCE, + ACCESS_BUDGET, ACCESS_COMMAND, ACCESS_CONSTRUCTION, ACCESS_EVA, @@ -1346,6 +1353,7 @@ ACCESS_MINERAL_STOREROOM, ACCESS_SECURITY, ACCESS_WEAPONS, + ACCESS_BUDGET, ) // See /datum/job/warden/get_access() extra_access = list( ACCESS_DETECTIVE, diff --git a/code/datums/id_trim/syndicate.dm b/code/datums/id_trim/syndicate.dm index 28a0429d9352fe..9f35fafee426af 100644 --- a/code/datums/id_trim/syndicate.dm +++ b/code/datums/id_trim/syndicate.dm @@ -105,6 +105,8 @@ /datum/id_trim/chameleon/operative/clown assignment = "Syndicate Entertainment Operative" trim_state = "trim_clown" + sechud_icon_state = SECHUD_CLOWNOPS + /// Trim for Chameleon ID cards. Many outfits, nuke ops and some corpses hold Chameleon ID cards. /datum/id_trim/chameleon/operative/clown_leader @@ -112,3 +114,4 @@ access = list(ACCESS_MAINT_TUNNELS, ACCESS_SYNDICATE, ACCESS_SYNDICATE_LEADER) big_pointer = TRUE pointer_color = COLOR_SYNDIE_RED + sechud_icon_state = SECHUD_CLOWNOPS diff --git a/code/datums/keybinding/_keybindings.dm b/code/datums/keybinding/_keybindings.dm index 2973e4403de069..e92eaf1d177647 100644 --- a/code/datums/keybinding/_keybindings.dm +++ b/code/datums/keybinding/_keybindings.dm @@ -16,7 +16,7 @@ if(LAZYLEN(hotkey_keys) && !LAZYLEN(classic_keys)) classic_keys = hotkey_keys.Copy() -/datum/keybinding/proc/down(client/user, turf/target) +/datum/keybinding/proc/down(client/user, turf/target, mousepos_x, mousepos_y) SHOULD_CALL_PARENT(TRUE) return SEND_SIGNAL(user.mob, keybind_signal, target) & COMSIG_KB_ACTIVATED diff --git a/code/datums/keybinding/admin.dm b/code/datums/keybinding/admin.dm index 587e26096334b8..0e703d7e148a9c 100644 --- a/code/datums/keybinding/admin.dm +++ b/code/datums/keybinding/admin.dm @@ -19,7 +19,7 @@ description = "Go ghost" keybind_signal = COMSIG_KB_ADMIN_AGHOST_DOWN -/datum/keybinding/admin/admin_ghost/down(client/user, turf/target) +/datum/keybinding/admin/admin_ghost/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -33,7 +33,7 @@ description = "Opens up the new player panel" keybind_signal = COMSIG_KB_ADMIN_PLAYERPANELNEW_DOWN -/datum/keybinding/admin/player_panel_new/down(client/user, turf/target) +/datum/keybinding/admin/player_panel_new/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -47,7 +47,7 @@ description = "Toggles buildmode" keybind_signal = COMSIG_KB_ADMIN_TOGGLEBUILDMODE_DOWN -/datum/keybinding/admin/toggle_buildmode_self/down(client/user, turf/target) +/datum/keybinding/admin/toggle_buildmode_self/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -61,7 +61,7 @@ description = "Enters stealth mode" keybind_signal = COMSIG_KB_ADMIN_STEALTHMODETOGGLE_DOWN -/datum/keybinding/admin/stealthmode/down(client/user, turf/target) +/datum/keybinding/admin/stealthmode/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -75,7 +75,7 @@ description = "Toggles ghost-like invisibility (Don't abuse this)" keybind_signal = COMSIG_KB_ADMIN_INVISIMINTOGGLE_DOWN -/datum/keybinding/admin/invisimin/down(client/user, turf/target) +/datum/keybinding/admin/invisimin/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -89,7 +89,7 @@ description = "Allows you to send a message to dead chat" keybind_signal = COMSIG_KB_ADMIN_DSAY_DOWN -/datum/keybinding/admin/deadsay/down(client/user, turf/target) +/datum/keybinding/admin/deadsay/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -103,7 +103,7 @@ description = "Shed your admin powers" keybind_signal = COMSIG_KB_ADMIN_DEADMIN_DOWN -/datum/keybinding/admin/deadmin/down(client/user, turf/target) +/datum/keybinding/admin/deadmin/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -117,7 +117,7 @@ description = "Regain your admin powers" keybind_signal = COMSIG_KB_ADMIN_READMIN_DOWN -/datum/keybinding/admin/readmin/down(client/user, turf/target) +/datum/keybinding/admin/readmin/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -131,7 +131,7 @@ description = "Open the View-Tags menu" keybind_signal = COMSIG_KB_ADMIN_VIEWTAGS_DOWN -/datum/keybinding/admin/view_tags/down(client/user, turf/target) +/datum/keybinding/admin/view_tags/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return diff --git a/code/datums/keybinding/artificial_intelligence.dm b/code/datums/keybinding/artificial_intelligence.dm index fbb7023ed9cf9a..8ca4fd3af7d58d 100644 --- a/code/datums/keybinding/artificial_intelligence.dm +++ b/code/datums/keybinding/artificial_intelligence.dm @@ -12,10 +12,10 @@ description = "Reconnects you to your most recently used AI shell" keybind_signal = COMSIG_KB_SILICON_RECONNECT_DOWN -/datum/keybinding/artificial_intelligence/reconnect/down(client/user, turf/target) +/datum/keybinding/artificial_intelligence/reconnect/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return var/mob/living/silicon/ai/our_ai = user.mob - our_ai.deploy_to_shell(our_ai.redeploy_action.last_used_shell) + our_ai.select_shell(our_ai.redeploy_action.last_used_shell) return TRUE diff --git a/code/datums/keybinding/client.dm b/code/datums/keybinding/client.dm index 85d10add309854..aa178cc1e0c3aa 100644 --- a/code/datums/keybinding/client.dm +++ b/code/datums/keybinding/client.dm @@ -10,7 +10,7 @@ description = "Ask an admin for help." keybind_signal = COMSIG_KB_CLIENT_GETHELP_DOWN -/datum/keybinding/client/admin_help/down(client/user, turf/target) +/datum/keybinding/client/admin_help/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -25,7 +25,7 @@ description = "Take a screenshot." keybind_signal = COMSIG_KB_CLIENT_SCREENSHOT_DOWN -/datum/keybinding/client/screenshot/down(client/user, turf/target) +/datum/keybinding/client/screenshot/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -39,7 +39,7 @@ description = "Makes the game window fullscreen." keybind_signal = COMSIG_KB_CLIENT_FULLSCREEN_DOWN -/datum/keybinding/client/toggle_fullscreen/down(client/user, turf/target) +/datum/keybinding/client/toggle_fullscreen/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -53,7 +53,7 @@ description = "Hide most HUD features" keybind_signal = COMSIG_KB_CLIENT_MINIMALHUD_DOWN -/datum/keybinding/client/minimal_hud/down(client/user, turf/target) +/datum/keybinding/client/minimal_hud/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -67,7 +67,7 @@ description = "Closes all UI windows you have open." keybind_signal = COMSIG_KB_CLIENT_CLOSEUI_DOWN -/datum/keybinding/client/close_every_ui/down(client/user, turf/target) +/datum/keybinding/client/close_every_ui/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return diff --git a/code/datums/keybinding/communication.dm b/code/datums/keybinding/communication.dm index 403f5bd5655647..bc77eee0f93e98 100644 --- a/code/datums/keybinding/communication.dm +++ b/code/datums/keybinding/communication.dm @@ -7,7 +7,7 @@ full_name = "IC Say" keybind_signal = COMSIG_KB_CLIENT_SAY_DOWN -/datum/keybinding/client/communication/say/down(client/user, turf/target) +/datum/keybinding/client/communication/say/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -21,7 +21,7 @@ full_name = "IC Radio (;)" keybind_signal = COMSIG_KB_CLIENT_RADIO_DOWN -/datum/keybinding/client/communication/radio/down(client/user, turf/target) +/datum/keybinding/client/communication/radio/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -35,7 +35,7 @@ full_name = "Out Of Character Say (OOC)" keybind_signal = COMSIG_KB_CLIENT_OOC_DOWN -/datum/keybinding/client/communication/ooc/down(client/user, turf/target) +/datum/keybinding/client/communication/ooc/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -49,7 +49,7 @@ full_name = "Custom Emote (/Me)" keybind_signal = COMSIG_KB_CLIENT_ME_DOWN -/datum/keybinding/client/communication/me/down(client/user, turf/target) +/datum/keybinding/client/communication/me/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return diff --git a/code/datums/keybinding/emote.dm b/code/datums/keybinding/emote.dm index 6ea7f89e5bce5a..71f9ba88135063 100644 --- a/code/datums/keybinding/emote.dm +++ b/code/datums/keybinding/emote.dm @@ -11,7 +11,7 @@ name = initial(faketype.key) full_name = capitalize(initial(faketype.key)) -/datum/keybinding/emote/down(client/user, turf/target) +/datum/keybinding/emote/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return diff --git a/code/datums/keybinding/human.dm b/code/datums/keybinding/human.dm index ab432c09e8d09a..b2cc0966e8dcaf 100644 --- a/code/datums/keybinding/human.dm +++ b/code/datums/keybinding/human.dm @@ -12,7 +12,7 @@ description = "Quickly puts an item in the best slot available" keybind_signal = COMSIG_KB_HUMAN_QUICKEQUIP_DOWN -/datum/keybinding/human/quick_equip/down(client/user, turf/target) +/datum/keybinding/human/quick_equip/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -31,7 +31,7 @@ var/slot_item_name = "belt" keybind_signal = COMSIG_KB_HUMAN_QUICKEQUIPBELT_DOWN -/datum/keybinding/human/quick_equip_belt/down(client/user, turf/target) +/datum/keybinding/human/quick_equip_belt/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return diff --git a/code/datums/keybinding/living.dm b/code/datums/keybinding/living.dm index 84a013c89abccd..1e3a682c97f73d 100644 --- a/code/datums/keybinding/living.dm +++ b/code/datums/keybinding/living.dm @@ -12,7 +12,7 @@ description = "Break free of your current state. Handcuffed? on fire? Resist!" keybind_signal = COMSIG_KB_LIVING_RESIST_DOWN -/datum/keybinding/living/resist/down(client/user, turf/target) +/datum/keybinding/living/resist/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -37,7 +37,7 @@ description = "Look up at the next z-level. Only works if directly below open space." keybind_signal = COMSIG_KB_LIVING_LOOKUP_DOWN -/datum/keybinding/living/look_up/down(client/user, turf/target) +/datum/keybinding/living/look_up/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -58,7 +58,7 @@ description = "Look down at the previous z-level. Only works if directly above open space." keybind_signal = COMSIG_KB_LIVING_LOOKDOWN_DOWN -/datum/keybinding/living/look_down/down(client/user, turf/target) +/datum/keybinding/living/look_down/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -79,7 +79,7 @@ description = "Lay down, or get up." keybind_signal = COMSIG_KB_LIVING_REST_DOWN -/datum/keybinding/living/rest/down(client/user, turf/target) +/datum/keybinding/living/rest/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -95,7 +95,7 @@ keybind_signal = COMSIG_KB_LIVING_TOGGLE_COMBAT_DOWN -/datum/keybinding/living/toggle_combat_mode/down(client/user, turf/target) +/datum/keybinding/living/toggle_combat_mode/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -109,7 +109,7 @@ description = "Enable combat mode." keybind_signal = COMSIG_KB_LIVING_ENABLE_COMBAT_DOWN -/datum/keybinding/living/enable_combat_mode/down(client/user, turf/target) +/datum/keybinding/living/enable_combat_mode/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -123,7 +123,7 @@ description = "Disable combat mode." keybind_signal = COMSIG_KB_LIVING_DISABLE_COMBAT_DOWN -/datum/keybinding/living/disable_combat_mode/down(client/user, turf/target) +/datum/keybinding/living/disable_combat_mode/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -137,7 +137,7 @@ description = "Held down to cycle to the other move intent, release to cycle back" keybind_signal = COMSIG_KB_LIVING_TOGGLEMOVEINTENT_DOWN -/datum/keybinding/living/toggle_move_intent/down(client/user, turf/target) +/datum/keybinding/living/toggle_move_intent/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -158,7 +158,7 @@ description = "Pressing this cycle to the opposite move intent, does not cycle back" keybind_signal = COMSIG_KB_LIVING_TOGGLEMOVEINTENTALT_DOWN -/datum/keybinding/living/toggle_move_intent_alternative/down(client/user, turf/target) +/datum/keybinding/living/toggle_move_intent_alternative/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -188,7 +188,7 @@ description = "Hold this to turn on throw mode, and release it to turn off throw mode" keybind_signal = COMSIG_KB_LIVING_HOLDTHROWMODE_DOWN -/datum/keybinding/living/hold_throw_mode/down(client/user, turf/target) +/datum/keybinding/living/hold_throw_mode/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -219,7 +219,7 @@ return FALSE return TRUE -/datum/keybinding/living/give/down(client/user, turf/target) +/datum/keybinding/living/give/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return diff --git a/code/datums/keybinding/mob.dm b/code/datums/keybinding/mob.dm index 081ea131f584b8..dc9b3756508490 100644 --- a/code/datums/keybinding/mob.dm +++ b/code/datums/keybinding/mob.dm @@ -9,7 +9,7 @@ description = "" keybind_signal = COMSIG_KB_MOB_STOPPULLING_DOWN -/datum/keybinding/mob/stop_pulling/down(client/user, turf/target) +/datum/keybinding/mob/stop_pulling/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -27,7 +27,7 @@ description = "" keybind_signal = COMSIG_KB_MOB_SWAPHANDS_DOWN -/datum/keybinding/mob/swap_hands/down(client/user, turf/target) +/datum/keybinding/mob/swap_hands/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -52,7 +52,7 @@ keybind_signal = COMSIG_KB_MOB_SELECTLEFTHAND_DOWN hand_index = LEFT_HANDS -/datum/keybinding/mob/select_hand/down(client/user, turf/target) +/datum/keybinding/mob/select_hand/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -72,7 +72,7 @@ description = "Uses whatever item you have inhand" keybind_signal = COMSIG_KB_MOB_ACTIVATEINHAND_DOWN -/datum/keybinding/mob/activate_inhand/down(client/user, turf/target) +/datum/keybinding/mob/activate_inhand/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -84,24 +84,49 @@ hotkey_keys = list("X") name = "drop_item" full_name = "Drop Item" - description = "" + description = "Drops the item in your active hand to the ground." keybind_signal = COMSIG_KB_MOB_DROPITEM_DOWN -/datum/keybinding/mob/drop_item/down(client/user, turf/target) +/datum/keybinding/mob/drop_item/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return if(iscyborg(user.mob)) //cyborgs can't drop items return FALSE - var/mob/M = user.mob - var/obj/item/I = M.get_active_held_item() - if(!I) + var/mob/user_mob = user.mob + var/obj/item/item_dropped = user_mob.get_active_held_item() + if(!item_dropped) to_chat(user, span_warning("You have nothing to drop in your hand!")) - else - user.mob.dropItemToGround(I) + return TRUE + user.mob.dropItemToGround(item_dropped) + return TRUE + +/datum/keybinding/mob/drop_item_specific + hotkey_keys = list("CtrlX") + name = "drop_item_specific" + full_name = "Drop Item (Specific)" + description = "Drops the item in your active where your mouse cursor is, if in range." + keybind_signal = COMSIG_KB_MOB_DROPITEM_DOWN + +/datum/keybinding/mob/drop_item_specific/down(client/user, turf/target, mousepos_x, mousepos_y) + . = ..() + if(.) + return + if(iscyborg(user.mob)) //cyborgs can't drop items + return FALSE + var/mob/user_mob = user.mob + var/obj/item/item_dropped = user_mob.get_active_held_item() + if(!item_dropped) + to_chat(user, span_warning("You have nothing to drop in your hand!")) + return TRUE + if(!user_mob.Adjacent(target) || target.is_blocked_turf(source_atom = item_dropped)) + return TRUE + var/x_value = (mousepos_x >= 0) ? mousepos_x - ICON_SIZE_X / 2 : mousepos_x + ICON_SIZE_X / 2 + var/y_value = (mousepos_y >= 0) ? mousepos_y - ICON_SIZE_Y / 2 : mousepos_y + ICON_SIZE_Y / 2 + user_mob.transfer_item_to_turf(item_dropped, target, x_value, y_value) return TRUE -/datum/keybinding/mob/target/down(client/user, turf/target) +/datum/keybinding/mob/target/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return . @@ -210,7 +235,7 @@ description = "Prevents you from moving" keybind_signal = COMSIG_KB_MOB_BLOCKMOVEMENT_DOWN -/datum/keybinding/mob/prevent_movement/down(client/user, turf/target) +/datum/keybinding/mob/prevent_movement/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return diff --git a/code/datums/keybinding/movement.dm b/code/datums/keybinding/movement.dm index bcdf3d18c7bf92..2f0be3ee4ae49e 100644 --- a/code/datums/keybinding/movement.dm +++ b/code/datums/keybinding/movement.dm @@ -37,7 +37,7 @@ description = "Moves your character up a z-level if possible" keybind_signal = COMSIG_KB_MOVEMENT_ZLEVEL_MOVEUP_DOWN -/datum/keybinding/movement/zlevel_upwards/down(client/user, turf/target) +/datum/keybinding/movement/zlevel_upwards/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -51,7 +51,7 @@ description = "Moves your character down a z-level if possible" keybind_signal = COMSIG_KB_MOVEMENT_ZLEVEL_MOVEDOWN_DOWN -/datum/keybinding/movement/zlevel_downwards/down(client/user, turf/target) +/datum/keybinding/movement/zlevel_downwards/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return diff --git a/code/datums/keybinding/robot.dm b/code/datums/keybinding/robot.dm index d7a89d57d928e4..b412a13585a62b 100644 --- a/code/datums/keybinding/robot.dm +++ b/code/datums/keybinding/robot.dm @@ -12,7 +12,7 @@ description = "Equips or unequips the first module" keybind_signal = COMSIG_KB_SILICON_TOGGLEMODULEONE_DOWN -/datum/keybinding/robot/moduleone/down(client/user, turf/target) +/datum/keybinding/robot/moduleone/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -27,7 +27,7 @@ description = "Equips or unequips the second module" keybind_signal = COMSIG_KB_SILICON_TOGGLEMODULETWO_DOWN -/datum/keybinding/robot/moduletwo/down(client/user, turf/target) +/datum/keybinding/robot/moduletwo/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -42,7 +42,7 @@ description = "Equips or unequips the third module" keybind_signal = COMSIG_KB_SILICON_TOGGLEMODULETHREE_DOWN -/datum/keybinding/robot/modulethree/down(client/user, turf/target) +/datum/keybinding/robot/modulethree/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -57,7 +57,7 @@ description = "Unequips the active module" keybind_signal = COMSIG_KB_SILICON_UNEQUIPMODULE_DOWN -/datum/keybinding/robot/unequip_module/down(client/user, turf/target) +/datum/keybinding/robot/unequip_module/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return @@ -73,7 +73,7 @@ description = "Returns you to your AI core" keybind_signal = COMSIG_KB_SILION_UNDEPLOY_DOWN -/datum/keybinding/robot/undeploy/down(client/user, turf/target) +/datum/keybinding/robot/undeploy/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return diff --git a/code/datums/looping_sounds/_looping_sound.dm b/code/datums/looping_sounds/_looping_sound.dm index d2f62f28174ded..7080033c63f379 100644 --- a/code/datums/looping_sounds/_looping_sound.dm +++ b/code/datums/looping_sounds/_looping_sound.dm @@ -82,7 +82,8 @@ set_parent(_parent) direct = _direct skip_starting_sounds = _skip_starting_sounds - src.sound_channel = sound_channel + if(sound_channel) + src.sound_channel = sound_channel if(start_immediately) start() diff --git a/code/datums/mapgen/CaveGenerator.dm b/code/datums/mapgen/CaveGenerator.dm index ec27a7d4b8fa34..3641edb4d93ca0 100644 --- a/code/datums/mapgen/CaveGenerator.dm +++ b/code/datums/mapgen/CaveGenerator.dm @@ -104,7 +104,7 @@ /datum/map_generator/cave_generator/generate_terrain(list/turfs, area/generate_in) . = ..() - if(!(generate_in.area_flags & CAVES_ALLOWED)) + if(!(generate_in.area_flags_mapping & CAVES_ALLOWED)) return if(length(possible_biomes)) @@ -138,7 +138,7 @@ * you're probably doing something wrong. */ /datum/map_generator/cave_generator/proc/generate_terrain_with_biomes(list/turfs, area/generate_in) - if(!(generate_in.area_flags & CAVES_ALLOWED)) + if(!(generate_in.area_flags_mapping & CAVES_ALLOWED)) return var/humidity_seed = rand(0, 50000) @@ -212,10 +212,10 @@ return populate_terrain_with_biomes(turfs, generate_in) // Area var pullouts to make accessing in the loop faster - var/flora_allowed = (generate_in.area_flags & FLORA_ALLOWED) && length(flora_spawn_list) - var/feature_allowed = (generate_in.area_flags & FLORA_ALLOWED) && length(feature_spawn_list) - var/mobs_allowed = (generate_in.area_flags & MOB_SPAWN_ALLOWED) && length(mob_spawn_list) - var/megas_allowed = (generate_in.area_flags & MEGAFAUNA_SPAWN_ALLOWED) && length(megafauna_spawn_list) + var/flora_allowed = (generate_in.area_flags_mapping & FLORA_ALLOWED) && length(flora_spawn_list) + var/feature_allowed = (generate_in.area_flags_mapping & FLORA_ALLOWED) && length(feature_spawn_list) + var/mobs_allowed = (generate_in.area_flags_mapping & MOB_SPAWN_ALLOWED) && length(mob_spawn_list) + var/megas_allowed = (generate_in.area_flags_mapping & MEGAFAUNA_SPAWN_ALLOWED) && length(megafauna_spawn_list) var/start_time = REALTIMEOFDAY @@ -310,9 +310,9 @@ */ /datum/map_generator/cave_generator/proc/populate_terrain_with_biomes(list/turfs, area/generate_in) // Area var pullouts to make accessing in the loop faster - var/flora_allowed = (generate_in.area_flags & FLORA_ALLOWED) - var/features_allowed = (generate_in.area_flags & FLORA_ALLOWED) - var/fauna_allowed = (generate_in.area_flags & MOB_SPAWN_ALLOWED) + var/flora_allowed = (generate_in.area_flags_mapping & FLORA_ALLOWED) + var/features_allowed = (generate_in.area_flags_mapping & FLORA_ALLOWED) + var/fauna_allowed = (generate_in.area_flags_mapping & MOB_SPAWN_ALLOWED) var/start_time = REALTIMEOFDAY diff --git a/code/datums/mapgen/biomes/_biome.dm b/code/datums/mapgen/biomes/_biome.dm index a0672059d93aee..bda1029f4318f3 100644 --- a/code/datums/mapgen/biomes/_biome.dm +++ b/code/datums/mapgen/biomes/_biome.dm @@ -136,7 +136,6 @@ if(!(flora_allowed && length(flora_types)) && !(features_allowed && length(feature_types)) && !(fauna_allowed && length(fauna_types))) return - for(var/turf/target_turf as anything in target_turfs) // We do the CHECK_TICK here because there's a bunch of continue calls // in this. diff --git a/code/datums/martial/boxing.dm b/code/datums/martial/boxing.dm index b2564093a333e5..72146c6d29bdfd 100644 --- a/code/datums/martial/boxing.dm +++ b/code/datums/martial/boxing.dm @@ -3,18 +3,27 @@ #define LEFT_LEFT_COMBO "HH" #define RIGHT_RIGHT_COMBO "DD" +#define STRAIGHT_PUNCH "straight_punch" +#define RIGHT_HOOK "right_hook" +#define LEFT_HOOK "left_hook" +#define UPPERCUT "uppercut" +#define LIGHT_JAB "light_jab" +#define DISCOMBOBULATE "discombobulate" +#define BLIND_JAB "blind_jab" +#define CRAVEN_BLOW "craven_blow" +#define NO_COMBO "" + /datum/martial_art/boxing name = "Boxing" id = MARTIALART_BOXING pacifist_style = TRUE + help_verb = /mob/living/proc/boxing_help /// Boolean on whether we are sportsmanlike in our tussling; TRUE means we have restrictions var/honorable_boxer = TRUE /// Default damage type for our boxing. var/default_damage_type = STAMINA /// List of traits applied to users of this martial art. var/list/boxing_traits = list(TRAIT_BOXING_READY) - /// Balloon alert cooldown for warning our boxer to alternate their blows to get more damage - COOLDOWN_DECLARE(warning_cooldown) /datum/martial_art/boxing/can_teach(mob/living/new_holder) return ishuman(new_holder) @@ -31,23 +40,39 @@ ///Unlike most instances of this proc, this is actually called in _proc/tussle() ///Returns a multiplier on our skill damage bonus. -/datum/martial_art/boxing/proc/check_streak(mob/living/attacker, mob/living/defender) - var/combo_multiplier = 1 +/datum/martial_art/boxing/proc/check_streak(mob/living/attacker, mob/living/defender, obj/item/bodypart/arm/active_arm) + if(check_behind(attacker, defender) && !honorable_boxer) + reset_streak() + return CRAVEN_BLOW + + if(HAS_TRAIT(attacker, TRAIT_DETECTIVES_TASTE) && defender.is_blind()) //In short: discombobulate + reset_streak() + return DISCOMBOBULATE + + if(findtext(streak, LEFT_LEFT_COMBO) && active_arm.body_zone == BODY_ZONE_R_ARM || findtext(streak, RIGHT_RIGHT_COMBO) && active_arm.body_zone == BODY_ZONE_L_ARM) + reset_streak() + if(attacker.is_blind()) + return BLIND_JAB + else + return LIGHT_JAB - if(findtext(streak, LEFT_LEFT_COMBO) || findtext(streak, RIGHT_RIGHT_COMBO)) + else if(findtext(streak, LEFT_LEFT_COMBO) && active_arm.body_zone == BODY_ZONE_L_ARM || findtext(streak, RIGHT_RIGHT_COMBO) && active_arm.body_zone == BODY_ZONE_R_ARM) reset_streak() - if(COOLDOWN_FINISHED(src, warning_cooldown)) - COOLDOWN_START(src, warning_cooldown, 2 SECONDS) - attacker.balloon_alert(attacker, "weak combo, alternate your hits!") - return combo_multiplier * 0.5 + return STRAIGHT_PUNCH if(findtext(streak, LEFT_RIGHT_COMBO) || findtext(streak, RIGHT_LEFT_COMBO)) reset_streak() - // If we have an extra effect from the combo, perform it here. By default, we have no extra effect. - perform_extra_effect(attacker, defender) - return combo_multiplier * 1.5 + if(active_arm.body_zone == BODY_ZONE_L_ARM) + if(findtext(streak, RIGHT_LEFT_COMBO)) + return LEFT_HOOK - return combo_multiplier + else if(active_arm.body_zone == BODY_ZONE_R_ARM) + if(findtext(streak, LEFT_RIGHT_COMBO)) + return RIGHT_HOOK + else + return UPPERCUT + + return NO_COMBO /// An extra effect on some moves and attacks. /datum/martial_art/boxing/proc/perform_extra_effect(mob/living/attacker, mob/living/defender) @@ -56,7 +81,7 @@ /datum/martial_art/boxing/disarm_act(mob/living/attacker, mob/living/defender) if(honor_check(defender)) add_to_streak("D", defender) - tussle(attacker, defender, "right hook", "right hooked") + tussle(attacker, defender) return MARTIAL_ATTACK_SUCCESS /datum/martial_art/boxing/grab_act(mob/living/attacker, mob/living/defender) @@ -68,14 +93,14 @@ /datum/martial_art/boxing/harm_act(mob/living/attacker, mob/living/defender) if(honor_check(defender)) add_to_streak("H", defender) - tussle(attacker, defender, "left hook", "left hooked") + tussle(attacker, defender) return MARTIAL_ATTACK_SUCCESS // Our only boxing move, which occurs on literally all attacks; the tussle. However, quite a lot morphs the results of this proc. Combos, unlike most martial arts attacks, are checked in this proc rather than our standard unarmed procs -/datum/martial_art/boxing/proc/tussle(mob/living/attacker, mob/living/defender, atk_verb = "blind jab", atk_verbed = "blind jabbed") +/datum/martial_art/boxing/proc/tussle(mob/living/attacker, mob/living/defender) if(honorable_boxer) //Being a good sport, you never hit someone on the ground or already knocked down. It shows you're the better person. - if(defender.body_position == LYING_DOWN && defender.getStaminaLoss() >= 100 || defender.IsUnconscious()) //If they're in stamcrit or unconscious, don't bloody punch them + if(defender.body_position == LYING_DOWN && defender.get_stamina_loss() >= 100 || defender.IsUnconscious()) //If they're in stamcrit or unconscious, don't bloody punch them attacker.balloon_alert(attacker, "unsportsmanlike behaviour!") return FALSE @@ -102,9 +127,30 @@ attacker.do_attack_animation(defender, ATTACK_EFFECT_PUNCH) + // Our potential wound bonus on a punch. Only applies if we're dishonorable. Otherwise, we can't wound. + var/possible_wound_bonus = honorable_boxer ? 0 : CANT_WOUND + // Determines damage dealt on a punch. Against a boxing defender, we apply our skill bonus. var/damage = rand(lower_force, upper_force) + // Attack verbs for our visible chat messages. + var/current_atk_verb = "punches" + var/current_atk_verbed = "punched" + + if(defender.check_block(attacker, damage, "[attacker]'s punch", UNARMED_ATTACK)) + return FALSE + + // Similar to a normal punch, should we have a value of 0 for our lower force, we simply miss outright. + if(!lower_force) + playsound(defender.loc, active_arm.unarmed_miss_sound, 25, TRUE, -1) + defender.visible_message(span_warning("[attacker]'s punch misses [defender]!"), \ + span_danger("You avoid [attacker]'s punch!"), span_hear("You hear a swoosh!"), COMBAT_MESSAGE_RANGE, attacker) + to_chat(attacker, span_warning("Your punch misses [defender]!")) + log_combat(attacker, defender, "attempted to hit", "punch (boxing) ") + return FALSE + + var/obj/item/bodypart/affecting = defender.get_bodypart(defender.get_random_valid_zone(attacker.zone_selected)) + if(honor_check(defender)) var/strength_bonus = HAS_TRAIT(attacker, TRAIT_STRENGTH) ? 2 : 0 //Investing into genetic strength improvements makes you a better boxer @@ -112,36 +158,77 @@ if(istype(potential_spine)) strength_bonus *= potential_spine.strength_bonus - damage += round(athletics_skill * check_streak(attacker, defender) + strength_bonus, 1) + var/streak_augmentation = check_streak(attacker, defender, active_arm) + + var/combo_multiplier = 0 + + switch(streak_augmentation) + if(STRAIGHT_PUNCH) + current_atk_verb = "straight punches" + current_atk_verbed = "straight punched" + combo_multiplier = 1 + + if(LIGHT_JAB) + current_atk_verb = "light jabs" + current_atk_verbed = "light jabbed" + combo_multiplier = 1 + + if(LEFT_HOOK) + current_atk_verb = "left hooks" + current_atk_verbed = "left hooked" + combo_multiplier = 1.5 + attacker.changeNext_move(CLICK_CD_MELEE * 1.5) + + if(RIGHT_HOOK) + current_atk_verb = "right hooks" + current_atk_verbed = "right hooked" + combo_multiplier = 1.5 + attacker.changeNext_move(CLICK_CD_MELEE * 1.5) + + if(UPPERCUT) + current_atk_verb = "uppercuts" + current_atk_verbed = "uppercutted" + base_unarmed_effectiveness *= 1.5 + combo_multiplier = 1 + attacker.changeNext_move(CLICK_CD_MELEE * 1.5) + + if(DISCOMBOBULATE) + current_atk_verb = "discombobulates" + current_atk_verbed = "discombobulated" + affecting = defender.get_bodypart(defender.get_random_valid_zone(BODY_ZONE_HEAD)) + defender.adjust_confusion_up_to(20 SECONDS, 50 SECONDS) + defender.adjust_dizzy_up_to(20 SECONDS, 50 SECONDS) + combo_multiplier = 1 + + if(BLIND_JAB) + current_atk_verb = "blind jabs" + current_atk_verbed = "blind jabbed" + combo_multiplier = 0.5 + attacker.changeNext_move(CLICK_CD_MELEE * 1.5) + + if(CRAVEN_BLOW) + current_atk_verb = "sucker punches" + current_atk_verbed = "sucker punch" + possible_wound_bonus = damage + combo_multiplier = 2 + possible_wound_bonus *= 1.5 + affecting = defender.get_bodypart(defender.get_random_valid_zone(BODY_ZONE_HEAD)) + defender.adjust_staggered_up_to(STAGGERED_SLOWDOWN_LENGTH, 10 SECONDS) //why yes, this could result in them being knocked out in one. + + damage += round((athletics_skill + strength_bonus) * combo_multiplier, 1) + + if(combo_multiplier >= 1) + perform_extra_effect(attacker, defender) + if(defender.stat <= HARD_CRIT) // Do not grant experience against dead targets grant_experience = TRUE - var/current_atk_verb = atk_verb - var/current_atk_verbed = atk_verbed - - if(is_detective_job(attacker.mind?.assigned_role)) //In short: discombobulate - current_atk_verb = "discombobulate" - current_atk_verbed = "discombulated" - - // Similar to a normal punch, should we have a value of 0 for our lower force, we simply miss outright. - if(!lower_force) - playsound(defender.loc, active_arm.unarmed_miss_sound, 25, TRUE, -1) - defender.visible_message(span_warning("[attacker]'s [current_atk_verb] misses [defender]!"), \ - span_danger("You avoid [attacker]'s [current_atk_verb]!"), span_hear("You hear a swoosh!"), COMBAT_MESSAGE_RANGE, attacker) - to_chat(attacker, span_warning("Your [current_atk_verb] misses [defender]!")) - log_combat(attacker, defender, "attempted to hit", current_atk_verb) - return FALSE - - if(defender.check_block(attacker, damage, "[attacker]'s [current_atk_verb]", UNARMED_ATTACK)) - return FALSE - - var/obj/item/bodypart/affecting = defender.get_bodypart(defender.get_random_valid_zone(attacker.zone_selected)) var/armor_block = defender.run_armor_check(affecting, MELEE, armour_penetration = base_unarmed_effectiveness) playsound(defender, attack_sound, 25, TRUE, -1) defender.visible_message( - span_danger("[attacker] [current_atk_verbed] [defender]!"), + span_danger("[attacker] [current_atk_verb] [defender]!"), span_userdanger("You're [current_atk_verbed] by [attacker]!"), span_hear("You hear a sickening sound of flesh hitting flesh!"), COMBAT_MESSAGE_RANGE, @@ -153,7 +240,7 @@ // Determines the total amount of experience earned per punch var/experience_earned = round(damage/4, 1) - defender.apply_damage(damage, damage_type, affecting, armor_block) + defender.apply_damage(damage, damage_type, affecting, armor_block, wound_bonus = possible_wound_bonus) log_combat(attacker, defender, "punched (boxing) ") @@ -211,6 +298,10 @@ to_chat(attacker, span_danger("You stagger [defender] with a haymaker!")) log_combat(attacker, defender, "staggered (boxing) ") + if(attacker.pulling == defender && attacker.grab_state >= GRAB_AGGRESSIVE) // dubious a normal boxer will be in a state where this happens, buuuut. + var/atom/throw_target = get_edge_target_turf(defender, attacker.dir) + defender.throw_at(throw_target, 2, 2, attacker) + /// Returns whether whoever is checked by this proc is complying with the rules of boxing. The boxer cannot block non-boxers, and cannot apply their scariest moves against non-boxers. /datum/martial_art/boxing/proc/honor_check(mob/living/possible_boxer) if(!honorable_boxer) @@ -286,6 +377,23 @@ return FALSE return ..() +/mob/living/proc/boxing_help() + set name = "Focus on your Form" + set desc = "You focus on how to make the most of your boxing form." + set category = "Boxing" + to_chat(usr, "You focus on your form, visualizing how best to throw a punch.") + + to_chat(usr, "What moves you perform depend on what mouse buttons you click, and whether the last button clicked matches which hand you have selected when you throw the last punch.") + + to_chat(usr, "[span_notice("Straight Punch")]: Left Left/Right Right with the matching hand. Regular damage.") + to_chat(usr, "[span_notice("Jab")]: Left Left/Right Right with the opposite hand. Regular damage. If you're blind, you'll make a blind jab instead.") + to_chat(usr, "[span_notice("Left/Right Hook")]: Left Right/Right Left with the matching hand. Does extra damage, but slows your next hit.") + to_chat(usr, "[span_notice("Uppercut")]: Left Right/Right Left with the opposite hand. Has a higher probability to knock out the target, but slows your next hit.") + + to_chat(usr, "While in Throw Mode, you can block incoming punches and return a bit of damage back to an attacker. Blocking attacks this way causes you to lose some stamina damage.") + + to_chat(usr, "Your boxing abilities are only able to be used on other boxers.") + // Boxing Variants! /// Evil Boxing; for sick, evil scoundrels. Has no honor, making it more lethal (therefore unable to be used by pacifists). @@ -295,9 +403,26 @@ name = "Evil Boxing" id = MARTIALART_EVIL_BOXING pacifist_style = FALSE + help_verb = /mob/living/proc/evil_boxing_help honorable_boxer = FALSE boxing_traits = list(TRAIT_BOXING_READY, TRAIT_STRENGTH, TRAIT_STIMMED) +/mob/living/proc/evil_boxing_help() + set name = "Focus on Brawling" + set desc = "You ponder how best to rearrange the faces of your enemies." + set category = "Evil Boxing" + to_chat(usr, "You contemplate on the violence ahead, visualizing how best to throw a punch.") + + to_chat(usr, "What moves you perform depend on what mouse buttons you click, and whether the last button clicked matches which hand you have selected when you throw the last punch.") + + to_chat(usr, "[span_notice("Straight Punch")]: Left Left/Right Right with the matching hand. Regular damage.") + to_chat(usr, "[span_notice("Jab")]: Left Left/Right Right with the opposite hand. Regular damage. If you're blind, you'll make a blind jab instead.") + to_chat(usr, "[span_notice("Left/Right Hook")]: Left Right/Right Left with the matching hand. Does extra damage, but slows your next hit.") + to_chat(usr, "[span_notice("Uppercut")]: Left Right/Right Left with the opposite hand. Has a higher probability to knock out the target, but slows your next hit.") + to_chat(usr, "[span_notice("Sucker Punch")]: Any combination done to a vulnerable target becomes a sucker punch. This could knock them out in one!.") + + to_chat(usr, "While in Throw Mode, you can block incoming punches and return a bit of damage back to an attacker. Blocking attacks this way causes you to lose some stamina damage.") + /// Hunter Boxing: for the uncaring, completely deranged one-spacer ecological disaster. /// The honor check accepts boxing ready targets, OR various biotypes as valid targets. Uses a special crit effect rather than the standard one (against monsters). /// I guess technically, this allows for lethal boxing. If you want. @@ -305,6 +430,7 @@ name = "Hunter Boxing" id = MARTIALART_HUNTER_BOXING pacifist_style = FALSE + help_verb = /mob/living/proc/hunter_boxing_help default_damage_type = BRUTE boxing_traits = list(TRAIT_BOXING_READY) /// The mobs we are looking for to pass the honor check @@ -313,6 +439,24 @@ var/list/first_word_strike = list("Extinction", "Brutalization", "Explosion", "Adventure", "Thunder", "Lightning", "Sonic", "Atomizing", "Whirlwind", "Tornado", "Shark", "Falcon") var/list/second_word_strike = list(" Punch", " Pawnch", "-punch", " Jab", " Hook", " Fist", " Uppercut", " Straight", " Strike", " Lunge") +/mob/living/proc/hunter_boxing_help() + set name = "Focus on the Hunt" + set desc = "You focus on how to most effectively punch the hell out of another endangered species." + set category = "Hunter Boxing" + to_chat(usr, "You focus on your Fists. You focus on Adventure. You focus on the Hunt.") + + to_chat(usr, "What moves you perform depend on what mouse buttons you click, and whether the last button clicked matches which hand you have selected when you throw the last punch.") + + to_chat(usr, "[span_notice("Straight Punch")]: Left Left/Right Right with the matching hand. Regular damage.") + to_chat(usr, "[span_notice("Jab")]: Left Left/Right Right with the opposite hand. Regular damage. If you're blind, you'll make a blind jab instead.") + to_chat(usr, "[span_notice("Left/Right Hook")]: Left Right/Right Left with the matching hand. Does extra damage, but slows your next hit.") + to_chat(usr, "[span_notice("Uppercut")]: Left Right/Right Left with the opposite hand. Has a higher probability to critically hit the target, but slows your next hit.") + + to_chat(usr, "While in Throw Mode, you can block incoming punches and return a bit of damage back to an attacker. Blocking attacks this way causes you to lose some stamina damage.") + to_chat(usr, "Stringing together effective combos restores some of your health and deals even more damage.") + + to_chat(usr, "Your hunter boxing abilities are only able to be used on the various flora, fauna and unnatural creatures that reside in this universe. Against normal humanoids, you are just a boxer.") + /datum/martial_art/boxing/hunter/honor_check(mob/living/possible_boxer) if(HAS_TRAIT(possible_boxer, TRAIT_BOXING_READY)) return TRUE @@ -374,3 +518,13 @@ #undef RIGHT_LEFT_COMBO #undef LEFT_LEFT_COMBO #undef RIGHT_RIGHT_COMBO + +#undef STRAIGHT_PUNCH +#undef RIGHT_HOOK +#undef LEFT_HOOK +#undef UPPERCUT +#undef LIGHT_JAB +#undef DISCOMBOBULATE +#undef BLIND_JAB +#undef CRAVEN_BLOW +#undef NO_COMBO diff --git a/code/datums/martial/cqc.dm b/code/datums/martial/cqc.dm index f2d65bf20ac102..4e3815a1e5dd8f 100644 --- a/code/datums/martial/cqc.dm +++ b/code/datums/martial/cqc.dm @@ -50,20 +50,30 @@ return NONE if(attack_type == PROJECTILE_ATTACK) return NONE - if(!prob(block_chance)) + + var/blocking_text = "block" + var/blocking_text_s = "blocks" + var/potential_block_chance = block_chance + + if(attack_type == OVERWHELMING_ATTACK) + blocking_text = "dodge" + blocking_text_s = "dodges" + potential_block_chance = clamp(round(potential_block_chance / (attack_type == OVERWHELMING_ATTACK ? 2 : 1), 1), 0, 100) + + if(!prob(potential_block_chance)) return NONE var/mob/living/attacker = GET_ASSAILANT(hitby) if(istype(attacker) && cqc_user.Adjacent(attacker)) cqc_user.visible_message( - span_danger("[cqc_user] blocks [attack_text] and twists [attacker]'s arm behind [attacker.p_their()] back!"), - span_userdanger("You block [attack_text]!"), + span_danger("[cqc_user] [blocking_text_s] [attack_text] and twists [attacker]'s arm behind [attacker.p_their()] back!"), + span_userdanger("You [blocking_text] [attack_text]!"), ) attacker.Stun(4 SECONDS) else cqc_user.visible_message( - span_danger("[cqc_user] blocks [attack_text]!"), - span_userdanger("You block [attack_text]!"), + span_danger("[cqc_user] [blocking_text_s] [attack_text]!"), + span_userdanger("You [blocking_text] [attack_text]!"), ) return SUCCESSFUL_BLOCK @@ -115,7 +125,7 @@ return FALSE attacker.do_attack_animation(defender) - if(defender.body_position == LYING_DOWN && !defender.IsUnconscious() && defender.getStaminaLoss() >= 100) + if(defender.body_position == LYING_DOWN && !defender.IsUnconscious() && defender.get_stamina_loss() >= 100) log_combat(attacker, defender, "knocked out (Head kick)(CQC)") defender.visible_message( span_danger("[attacker] kicks [defender]'s head, knocking [defender.p_them()] out!"), @@ -130,7 +140,7 @@ var/helmet_protection = defender.run_armor_check(BODY_ZONE_HEAD, MELEE) defender.apply_effect(20 SECONDS, EFFECT_KNOCKDOWN, helmet_protection) defender.apply_effect(10 SECONDS, EFFECT_UNCONSCIOUS, helmet_protection) - defender.adjustOrganLoss(ORGAN_SLOT_BRAIN, 15, 150) + defender.adjust_organ_loss(ORGAN_SLOT_BRAIN, 15, 150) else defender.visible_message( @@ -146,7 +156,7 @@ defender.throw_at(throw_target, 1, 14, attacker) defender.apply_damage(10, attacker.get_attack_type()) if(defender.body_position == LYING_DOWN && !defender.IsUnconscious()) - defender.adjustStaminaLoss(45) + defender.adjust_stamina_loss(45) log_combat(attacker, defender, "kicked (CQC)") return TRUE @@ -162,7 +172,7 @@ attacker, ) to_chat(attacker, span_danger("You punch [defender]'s neck!")) - defender.adjustStaminaLoss(60) + defender.adjust_stamina_loss(60) playsound(attacker, 'sound/items/weapons/cqchit1.ogg', 50, TRUE, -1) return TRUE @@ -181,7 +191,7 @@ attacker, ) to_chat(attacker, span_danger("You lock [defender] into a restraining position!")) - defender.adjustStaminaLoss(20) + defender.adjust_stamina_loss(20) defender.Stun(10 SECONDS) restraining_mob = WEAKREF(defender) addtimer(VARSET_CALLBACK(src, restraining_mob, null), 5 SECONDS, TIMER_UNIQUE) @@ -205,7 +215,7 @@ var/obj/item/held_item = defender.get_active_held_item() if(held_item && defender.temporarilyRemoveItemFromInventory(held_item)) attacker.put_in_hands(held_item) - defender.adjustStaminaLoss(50) + defender.adjust_stamina_loss(50) defender.apply_damage(25, attacker.get_attack_type()) return TRUE diff --git a/code/datums/martial/krav_maga.dm b/code/datums/martial/kaza_ruk.dm similarity index 52% rename from code/datums/martial/krav_maga.dm rename to code/datums/martial/kaza_ruk.dm index 1df05ac15ad8d2..1f7b0625dc0206 100644 --- a/code/datums/martial/krav_maga.dm +++ b/code/datums/martial/kaza_ruk.dm @@ -1,19 +1,29 @@ -/datum/martial_art/krav_maga - name = "Krav Maga" - id = MARTIALART_KRAVMAGA +/datum/martial_art/kaza_ruk + name = "Kaza Ruk" + id = MARTIALART_KAZA_RUK + grab_damage_modifier = 5 + grab_escape_chance_modifier = -10 VAR_PRIVATE/datum/action/neck_chop/neckchop - VAR_PRIVATE/datum/action/leg_sweep/legsweep + VAR_PRIVATE/datum/action/low_sweep/lowsweep VAR_PRIVATE/datum/action/lung_punch/lungpunch -/datum/martial_art/krav_maga/New() +/datum/martial_art/kaza_ruk/activate_style(mob/living/new_holder) + . = ..() + RegisterSignal(new_holder, COMSIG_HUMAN_PUNCHED, PROC_REF(blow_followup)) + +/datum/martial_art/kaza_ruk/deactivate_style(mob/living/old_holder) + . = ..() + UnregisterSignal(old_holder, COMSIG_HUMAN_PUNCHED) + +/datum/martial_art/kaza_ruk/New() . = ..() neckchop = new(src) - legsweep = new(src) + lowsweep = new(src) lungpunch = new(src) -/datum/martial_art/krav_maga/Destroy() +/datum/martial_art/kaza_ruk/Destroy() neckchop = null - legsweep = null + lowsweep = null lungpunch = null return ..() @@ -31,29 +41,33 @@ var/datum/martial_art/source = target if (source.streak == "neck_chop") owner.visible_message(span_danger("[owner] assumes a neutral stance."), "Your next attack is cleared.") + owner.balloon_alert(owner, "cleared") source.streak = "" else owner.visible_message(span_danger("[owner] assumes the Neck Chop stance!"), "Your next attack will be a Neck Chop.") + owner.balloon_alert(owner, "neck chop") source.streak = "neck_chop" -/datum/action/leg_sweep - name = "Leg Sweep" +/datum/action/low_sweep + name = "Low Sweep" desc = "Trips the victim, knocking them down for a brief moment." button_icon = 'icons/mob/actions/actions_items.dmi' button_icon_state = "legsweep" check_flags = AB_CHECK_INCAPACITATED|AB_CHECK_HANDS_BLOCKED|AB_CHECK_CONSCIOUS -/datum/action/leg_sweep/Trigger(mob/clicker, trigger_flags) +/datum/action/low_sweep/Trigger(mob/clicker, trigger_flags) . = ..() if(!.) return var/datum/martial_art/source = target - if (source.streak == "leg_sweep") + if (source.streak == "low_sweep") owner.visible_message(span_danger("[owner] assumes a neutral stance."), "Your next attack is cleared.") + owner.balloon_alert(owner, "cleared") source.streak = "" else - owner.visible_message(span_danger("[owner] assumes the Leg Sweep stance!"), "Your next attack will be a Leg Sweep.") - source.streak = "leg_sweep" + owner.visible_message(span_danger("[owner] assumes the Low Sweep stance!"), "Your next attack will be a Low Sweep.") + owner.balloon_alert(owner, "low sweep") + source.streak = "low_sweep" /datum/action/lung_punch//referred to internally as 'quick choke' name = "Lung Punch" @@ -69,35 +83,37 @@ var/datum/martial_art/source = target if (source.streak == "quick_choke") owner.visible_message(span_danger("[owner] assumes a neutral stance."), "Your next attack is cleared.") + owner.balloon_alert(owner, "cleared") source.streak = "" else owner.visible_message(span_danger("[owner] assumes the Lung Punch stance!"), "Your next attack will be a Lung Punch.") + owner.balloon_alert(owner, "lung punch") source.streak = "quick_choke"//internal name for lung punch -/datum/martial_art/krav_maga/activate_style(mob/living/new_holder) +/datum/martial_art/kaza_ruk/activate_style(mob/living/new_holder) . = ..() to_chat(new_holder, span_userdanger("You know the arts of [name]!")) to_chat(new_holder, span_danger("Place your cursor over a move at the top of the screen to see what it does.")) neckchop.Grant(new_holder) - legsweep.Grant(new_holder) + lowsweep.Grant(new_holder) lungpunch.Grant(new_holder) -/datum/martial_art/krav_maga/deactivate_style(mob/living/remove_from) +/datum/martial_art/kaza_ruk/deactivate_style(mob/living/remove_from) to_chat(remove_from, span_userdanger("You suddenly forget the arts of [name]...")) neckchop?.Remove(remove_from) - legsweep?.Remove(remove_from) + lowsweep?.Remove(remove_from) lungpunch?.Remove(remove_from) return ..() -/datum/martial_art/krav_maga/proc/check_streak(mob/living/attacker, mob/living/defender) +/datum/martial_art/kaza_ruk/proc/check_streak(mob/living/attacker, mob/living/defender) switch(streak) if("neck_chop") streak = "" neck_chop(attacker, defender) return TRUE - if("leg_sweep") + if("low_sweep") streak = "" - leg_sweep(attacker, defender) + low_sweep(attacker, defender) return TRUE if("quick_choke")//is actually lung punch streak = "" @@ -105,26 +121,40 @@ return TRUE return FALSE -/datum/martial_art/krav_maga/proc/leg_sweep(mob/living/attacker, mob/living/defender) +/datum/martial_art/kaza_ruk/proc/low_sweep(mob/living/attacker, mob/living/defender) if(defender.stat != CONSCIOUS || defender.IsParalyzed()) return MARTIAL_ATTACK_INVALID if(HAS_TRAIT(attacker, TRAIT_PACIFISM)) return MARTIAL_ATTACK_INVALID // Does 5 damage, so we can't let pacifists leg sweep. + + var/tail_sweeping = FALSE + var/sweeping_language = "leg" + if(ishuman(attacker)) + var/mob/living/carbon/possible_human = attacker + var/obj/item/organ/tail/lizard/possible_lizard_tail = possible_human.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL) + if(possible_lizard_tail) + tail_sweeping = TRUE + sweeping_language = "tail" + defender.visible_message( - span_warning("[attacker] leg sweeps [defender]!"), + span_warning("[attacker] [sweeping_language] sweeps [defender]!"), span_userdanger("Your legs are sweeped by [attacker]!"), span_hear("You hear a sickening sound of flesh hitting flesh!"), null, attacker, ) - to_chat(attacker, span_danger("You leg sweep [defender]!")) + to_chat(attacker, span_danger("You [sweeping_language] sweep [defender]!")) playsound(attacker, 'sound/effects/hit_kick.ogg', 50, TRUE, -1) + + if(tail_sweeping) + attacker.emote("spin") + defender.apply_damage(5, BRUTE, BODY_ZONE_CHEST) defender.Knockdown(6 SECONDS) log_combat(attacker, defender, "leg sweeped") return MARTIAL_ATTACK_SUCCESS -/datum/martial_art/krav_maga/proc/quick_choke(mob/living/attacker, mob/living/defender)//is actually lung punch +/datum/martial_art/kaza_ruk/proc/quick_choke(mob/living/attacker, mob/living/defender)//is actually lung punch attacker.do_attack_animation(defender) defender.visible_message( span_warning("[attacker] pounds [defender] on the chest!"), @@ -137,11 +167,11 @@ playsound(attacker, 'sound/effects/hit_punch.ogg', 50, TRUE, -1) if(defender.losebreath <= 10) defender.losebreath = clamp(defender.losebreath + 5, 0, 10) - defender.adjustOxyLoss(10) + defender.adjust_oxy_loss(10) log_combat(attacker, defender, "quickchoked") return MARTIAL_ATTACK_SUCCESS -/datum/martial_art/krav_maga/proc/neck_chop(mob/living/attacker, mob/living/defender) +/datum/martial_art/kaza_ruk/proc/neck_chop(mob/living/attacker, mob/living/defender) if(HAS_TRAIT(attacker, TRAIT_PACIFISM)) return MARTIAL_ATTACK_INVALID // Does 10 damage, so we can't let pacifists neck chop. attacker.do_attack_animation(defender) @@ -159,39 +189,16 @@ log_combat(attacker, defender, "neck chopped") return MARTIAL_ATTACK_SUCCESS -/datum/martial_art/krav_maga/harm_act(mob/living/attacker, mob/living/defender) - var/picked_hit_type = pick("punch", "kick") - var/bonus_damage = 0 - if(defender.body_position == LYING_DOWN) - bonus_damage += 5 - picked_hit_type = "stomp" - - if(defender.check_block(attacker, 10 + bonus_damage, "[attacker]'s [picked_hit_type]", UNARMED_ATTACK)) +/datum/martial_art/kaza_ruk/harm_act(mob/living/attacker, mob/living/defender) + if(defender.check_block(attacker, 10, attacker.name, UNARMED_ATTACK)) return MARTIAL_ATTACK_FAIL + if(check_streak(attacker, defender)) return MARTIAL_ATTACK_SUCCESS - log_combat(attacker, defender, "[picked_hit_type]ed") - var/obj/item/bodypart/affecting = defender.get_bodypart(defender.get_random_valid_zone(attacker.zone_selected)) - defender.apply_damage(10 + bonus_damage, attacker.get_attack_type(), affecting) - if(picked_hit_type == "kick" || picked_hit_type == "stomp") - attacker.do_attack_animation(defender, ATTACK_EFFECT_KICK) - playsound(defender, 'sound/effects/hit_kick.ogg', 50, TRUE, -1) - else - attacker.do_attack_animation(defender, ATTACK_EFFECT_PUNCH) - playsound(defender, 'sound/effects/hit_punch.ogg', 50, TRUE, -1) - defender.visible_message( - span_danger("[attacker] [picked_hit_type]s [defender]!"), - span_userdanger("You're [picked_hit_type]ed by [attacker]!"), - span_hear("You hear a sickening sound of flesh hitting flesh!"), - COMBAT_MESSAGE_RANGE, - attacker, - ) - to_chat(attacker, span_danger("You [picked_hit_type] [defender]!")) - log_combat(attacker, defender, "[picked_hit_type] with [name]") - return MARTIAL_ATTACK_SUCCESS + return MARTIAL_ATTACK_INVALID -/datum/martial_art/krav_maga/disarm_act(mob/living/attacker, mob/living/defender) +/datum/martial_art/kaza_ruk/disarm_act(mob/living/attacker, mob/living/defender) if(defender.check_block(attacker, 0, attacker.name, UNARMED_ATTACK)) return MARTIAL_ATTACK_FAIL if(check_streak(attacker, defender)) @@ -208,22 +215,94 @@ ) to_chat(attacker, span_danger("You disarm [defender]!")) playsound(defender, 'sound/items/weapons/thudswoosh.ogg', 50, TRUE, -1) - log_combat(attacker, defender, "disarmed (Krav Maga)", addition = "(disarmed of [stuff_in_hand])") + log_combat(attacker, defender, "disarmed (Kaza Ruk)", addition = "(disarmed of [stuff_in_hand])") return MARTIAL_ATTACK_INVALID // normal shove -//Krav Maga Gloves +/// First, determine if we're going to execute our followup attack + +/datum/martial_art/kaza_ruk/proc/blow_followup(mob/living/source, mob/living/target, damage, attack_type, obj/item/bodypart/affecting, final_armor_block, kicking, limb_sharpness) + SIGNAL_HANDLER + + if(!prob(50)) + return + + addtimer(CALLBACK(src, PROC_REF(execute_followup), source, target, damage, attack_type, affecting, final_armor_block, kicking, limb_sharpness), 0.25 SECONDS) -/obj/item/clothing/gloves/krav_maga - abstract_type = /obj/item/clothing/gloves/krav_maga +/// After our delay, do the followup. + +/datum/martial_art/kaza_ruk/proc/execute_followup(mob/living/source, mob/living/target, damage, attack_type, obj/item/bodypart/affecting, final_armor_block, kicking, limb_sharpness) + if(QDELETED(source) || QDELETED(target)) + return + + if(!source.Adjacent(target)) + return + + var/tail_usage = FALSE + var/kick_language = "an axe kick" + var/strike_language = "an elbow strike" + if(ishuman(source)) + var/mob/living/carbon/possible_human = source + var/obj/item/organ/tail/lizard/possible_lizard_tail = possible_human.get_organ_slot(ORGAN_SLOT_EXTERNAL_TAIL) + if(possible_lizard_tail) + tail_usage = TRUE + kick_language = "a helmsplitter tail strike" + strike_language = "a whiplash tail spin" + + source.visible_message( + span_warning("[source] follows up with [kicking ? kick_language : strike_language] against [target]!"), + span_notice("You deliver [kicking ? kick_language : strike_language] against [target]!"), + span_hear("You hear a sickening sound of flesh hitting flesh!"), + ) + if(tail_usage) + source.emote(kicking ? "flip" : "spin") + playsound(source, 'sound/effects/hit_punch.ogg', 50, TRUE, -1) + source.do_attack_animation(target, ATTACK_EFFECT_KICK) + target.apply_damage(round(damage/3,1), attack_type, affecting, final_armor_block, wound_bonus = damage) //Ostensibly, apply a third of our damage again // We're not being too fussy about limb bonuses for this + log_combat(source, target, "auto-followup strike (Kaza Ruk)") + +//Kaza Ruk Gloves + +/obj/item/clothing/gloves/kaza_ruk + abstract_type = /obj/item/clothing/gloves/kaza_ruk clothing_traits = list(TRAIT_FAST_CUFFING) -/obj/item/clothing/gloves/krav_maga/Initialize(mapload) +/obj/item/clothing/gloves/kaza_ruk/Initialize(mapload) . = ..() - AddComponent(/datum/component/martial_art_giver, /datum/martial_art/krav_maga) + AddComponent(/datum/component/martial_art_giver, /datum/martial_art/kaza_ruk) -/obj/item/clothing/gloves/krav_maga/sec//more obviously named, given to sec - name = "krav maga gloves" - desc = "These gloves can teach you to perform Krav Maga using nanochips." +/datum/atom_skin/kaza_ruk + abstract_type = /datum/atom_skin/kaza_ruk + reset_missing = FALSE + /// Color (/matrix) applied with the skin. If null, no color is applied. + var/reskin_color + +/datum/atom_skin/kaza_ruk/apply(atom/apply_to) + . = ..() + if(reskin_color) + apply_to.add_atom_colour(color_matrix_filter(reskin_color), FIXED_COLOUR_PRIORITY) + +/datum/atom_skin/kaza_ruk/clear_skin(atom/clear_from) + . = ..() + if(reskin_color) + clear_from.remove_atom_colour(FIXED_COLOUR_PRIORITY, reskin_color) + +/datum/atom_skin/kaza_ruk/get_preview_icon(atom/for_atom) + var/image/generated = ..() + if(reskin_color) + generated.add_filter("preview_filter", 1, color_matrix_filter(reskin_color)) + return generated + +/datum/atom_skin/kaza_ruk/red + preview_name = "Red" + +/datum/atom_skin/kaza_ruk/blue + preview_name = "Blue" + reskin_color = list(0.33, 0.33, 0.33, 0, 0, 0, 0, 0, 1) + +/obj/item/clothing/gloves/kaza_ruk/sec//more obviously named, given to sec + name = "kaza ruk gloves" + desc = "These gloves seem to guide you through a non-lizardperson friendly variant of the Tiziran martial art, Kaza Ruk. \ + You're not entirely sure how they do that. Probably nanites." icon_state = "fightgloves" greyscale_colors = "#c41e0d" cold_protection = HANDS @@ -232,9 +311,13 @@ max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT resistance_flags = NONE -/obj/item/clothing/gloves/krav_maga/combatglovesplus +/obj/item/clothing/gloves/kaza_ruk/sec/Initialize(mapload) + . = ..() + AddComponent(/datum/component/reskinable_item, /datum/atom_skin/kaza_ruk, infinite = TRUE) + +/obj/item/clothing/gloves/kaza_ruk/combatglovesplus name = "combat gloves plus" - desc = "These tactical gloves are fireproof and electrically insulated, and through the use of nanochip technology will teach you the martial art of krav maga." + desc = "These tactical gloves are fireproof and electrically insulated. These gloves seem to guide you through a non-lizardperson friendly variant of the Tiziran martial art, Kaza Ruk." icon_state = "black" greyscale_colors = "#2f2e31" siemens_coefficient = 0 @@ -244,9 +327,9 @@ heat_protection = HANDS max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT resistance_flags = NONE - armor_type = /datum/armor/krav_maga_combatglovesplus + armor_type = /datum/armor/kaza_ruk_combatglovesplus -/datum/armor/krav_maga_combatglovesplus +/datum/armor/kaza_ruk_combatglovesplus bio = 90 fire = 80 acid = 50 diff --git a/code/datums/martial/psychotic_brawl.dm b/code/datums/martial/psychotic_brawl.dm index 99c2b0e2224642..1578ff32152c0b 100644 --- a/code/datums/martial/psychotic_brawl.dm +++ b/code/datums/martial/psychotic_brawl.dm @@ -73,7 +73,7 @@ if(iscarbon(defender)) var/mob/living/carbon/carbon_defender = defender if(!istype(carbon_defender.head, /obj/item/clothing/head/helmet/) && !istype(carbon_defender.head, /obj/item/clothing/head/utility/hardhat)) - carbon_defender.adjustOrganLoss(ORGAN_SLOT_BRAIN, 5) + carbon_defender.adjust_organ_loss(ORGAN_SLOT_BRAIN, 5) attacker.Stun(rand(1 SECONDS, 4.5 SECONDS)) defender.Stun(rand(0.5 SECONDS, 3 SECONDS)) if(HAS_TRAIT(attacker, TRAIT_PACIFISM)) diff --git a/code/datums/martial/sleeping_carp.dm b/code/datums/martial/sleeping_carp.dm index b4021fd0b40202..b6f556e3aa83cc 100644 --- a/code/datums/martial/sleeping_carp.dm +++ b/code/datums/martial/sleeping_carp.dm @@ -1,66 +1,101 @@ -#define STRONG_PUNCH_COMBO "HH" +#define WRIST_WRENCH_COMBO "HG" #define LAUNCH_KICK_COMBO "HD" #define DROP_KICK_COMBO "DD" +#define KNEE_STOMACH_COMBO "GH" /datum/martial_art/the_sleeping_carp name = "The Sleeping Carp" id = MARTIALART_SLEEPINGCARP help_verb = /mob/living/proc/sleeping_carp_help display_combos = TRUE + grab_state_modifier = 1 /// List of traits applied to users of this martial art. - var/list/scarp_traits = list(TRAIT_NOGUNS, TRAIT_TOSS_GUN_HARD, TRAIT_HARDLY_WOUNDED, TRAIT_NODISMEMBER, TRAIT_HEAVY_SLEEPER) + var/list/scarp_traits = list(TRAIT_NOGUNS, TRAIT_TOSS_GUN_HARD, TRAIT_HARDLY_WOUNDED, TRAIT_NODISMEMBER, TRAIT_HEAVY_SLEEPER, TRAIT_PERFECT_ATTACKER) + /// List of objects exempt from reducing dodge probabilities + var/list/exempt_objects = list( + /obj/item/melee/baton/nunchaku, + /obj/item/staff/bostaff, + /obj/item/bambostaff, + /obj/item/cane, + /obj/item/nullrod/bostaff, + /obj/item/knife, + /obj/item/restraints/legcuffs/bola, + /obj/item/storage/toolbox, + /obj/item/spear, + /obj/item/claymore/shortsword, + /obj/item/nullrod/nullblade, + /obj/item/extendohand, + /obj/item/mop, + /obj/item/pushbroom, + /obj/item/melee/baseball_bat, + /obj/item/crowbar/hammer, + /obj/item/toy/plush/carpplushie, + ) /datum/martial_art/the_sleeping_carp/activate_style(mob/living/new_holder) . = ..() new_holder.add_traits(scarp_traits, SLEEPING_CARP_TRAIT) RegisterSignal(new_holder, COMSIG_ATOM_ATTACKBY, PROC_REF(on_attackby)) RegisterSignal(new_holder, COMSIG_ATOM_PRE_BULLET_ACT, PROC_REF(hit_by_projectile)) + RegisterSignal(new_holder, COMSIG_LIVING_CHECK_BLOCK, PROC_REF(check_dodge)) new_holder.faction |= FACTION_CARP //:D new_holder.grant_language(/datum/language/carptongue, ALL, type) /datum/martial_art/the_sleeping_carp/deactivate_style(mob/living/remove_from) remove_from.remove_traits(scarp_traits, SLEEPING_CARP_TRAIT) - UnregisterSignal(remove_from, list(COMSIG_ATOM_ATTACKBY, COMSIG_ATOM_PRE_BULLET_ACT)) + UnregisterSignal(remove_from, list(COMSIG_ATOM_ATTACKBY, COMSIG_ATOM_PRE_BULLET_ACT, COMSIG_LIVING_CHECK_BLOCK)) remove_from.faction -= FACTION_CARP //:( remove_from.remove_language(/datum/language/carptongue, ALL, type) return ..() /datum/martial_art/the_sleeping_carp/proc/check_streak(mob/living/attacker, mob/living/defender) - if(findtext(streak,STRONG_PUNCH_COMBO)) + if(findtext(streak,WRIST_WRENCH_COMBO)) reset_streak() - return strongPunch(attacker, defender) + return wrist_wrench(attacker, defender) if(findtext(streak,LAUNCH_KICK_COMBO)) reset_streak() - return launchKick(attacker, defender) + return launch_kick(attacker, defender) if(findtext(streak,DROP_KICK_COMBO)) reset_streak() - return dropKick(attacker, defender) + return drop_kick(attacker, defender) + + if(findtext(streak,KNEE_STOMACH_COMBO)) + reset_streak() + return knee_stomach(attacker, defender) return FALSE -///Gnashing Teeth: Harm Harm, consistent 20 force punch on every second harm punch -/datum/martial_art/the_sleeping_carp/proc/strongPunch(mob/living/attacker, mob/living/defender) - // this var is so that the strong punch is always aiming for the body part the user is targeting and not trying to apply to the chest before deviating - var/obj/item/bodypart/affecting = defender.get_bodypart(defender.get_random_valid_zone(attacker.zone_selected)) +/// Gnashing Teeth: Harm Grab, twists and possibly breaks the target's arm, disarming them. +/datum/martial_art/the_sleeping_carp/proc/wrist_wrench(mob/living/attacker, mob/living/defender) + // Determine if our defender is a carbon. If not, we don't wrist wrench + if(!iscarbon(defender)) + return FALSE + + // Determine if our target has a functioning active arm. If not, return. + var/obj/item/bodypart/affecting = defender.get_active_hand() + + if(!affecting) + return FALSE + attacker.do_attack_animation(defender, ATTACK_EFFECT_PUNCH) - var/atk_verb = pick("precisely kick", "brutally chop", "cleanly hit", "viciously slam") defender.visible_message( - span_danger("[attacker] [atk_verb]s [defender]!"), - span_userdanger("[attacker] [atk_verb]s you!"), - span_hear("You hear a sickening sound of flesh hitting flesh!"), + span_danger("[attacker] violently twists [defender]'s [affecting]!"), + span_userdanger("[attacker] violently twists your [affecting]!"), + span_hear("You hear a sickening sound of bone snapping!"), null, attacker, ) - to_chat(attacker, span_danger("You [atk_verb] [defender]!")) + to_chat(attacker, span_danger("You violently twist [defender]'s [affecting]!")) playsound(defender, 'sound/items/weapons/punch1.ogg', 25, TRUE, -1) - log_combat(attacker, defender, "strong punched (Sleeping Carp)") - defender.apply_damage(20, attacker.get_attack_type(), affecting) + log_combat(attacker, defender, "wrist wrenched (Sleeping Carp)") + defender.apply_damage(20, BRUTE, affecting, wound_bonus = 30) + defender.drop_all_held_items() return TRUE -///Crashing Wave Kick: Harm Disarm combo, throws people seven tiles backwards -/datum/martial_art/the_sleeping_carp/proc/launchKick(mob/living/attacker, mob/living/defender) +/// Crashing Wave Kick: Harm Disarm combo, throws people seven tiles backwards +/datum/martial_art/the_sleeping_carp/proc/launch_kick(mob/living/attacker, mob/living/defender) attacker.do_attack_animation(defender, ATTACK_EFFECT_KICK) defender.visible_message( span_warning("[attacker] kicks [defender] square in the chest, sending them flying!"), @@ -76,8 +111,8 @@ log_combat(attacker, defender, "launchkicked (Sleeping Carp)") return TRUE -///Keelhaul: Disarm Disarm combo, knocks people down and deals substantial stamina damage, and also discombobulates them. Knocks objects out of their hands if they're already on the ground. -/datum/martial_art/the_sleeping_carp/proc/dropKick(mob/living/attacker, mob/living/defender) +/// Keelhaul: Disarm Disarm combo, knocks people down and deals substantial stamina damage, and also discombobulates them. Knocks objects out of their hands if they're already on the ground. +/datum/martial_art/the_sleeping_carp/proc/drop_kick(mob/living/attacker, mob/living/defender) attacker.do_attack_animation(defender, ATTACK_EFFECT_KICK) playsound(attacker, 'sound/effects/hit_kick.ogg', 50, TRUE, -1) if(defender.body_position == STANDING_UP) @@ -94,6 +129,25 @@ log_combat(attacker, defender, "dropkicked (Sleeping Carp)") return TRUE +/// Kraken Wrack: Grab Harm combo, causes them to be silenced and briefly stunned, as well as doing a moderate amount of stamina damage. +/datum/martial_art/the_sleeping_carp/proc/knee_stomach(mob/living/attacker, mob/living/defender) + attacker.do_attack_animation(defender, ATTACK_EFFECT_KICK) + playsound(attacker, 'sound/effects/hit_kick.ogg', 50, TRUE, -1) + defender.visible_message( + span_warning("[attacker] violently slams [attacker.p_their()] knee into [defender]!"), + span_userdanger("You slam your knee straight into [defender]!"), + span_hear("You hear a sickening sound of flesh hitting flesh!"), + COMBAT_MESSAGE_RANGE, + attacker, + ) + defender.apply_damage(20, STAMINA) + defender.Paralyze(1 SECONDS) + defender.adjust_silence_up_to(5 SECONDS, 5 SECONDS) + if(defender.losebreath <= 10) + defender.losebreath = clamp(defender.losebreath + 5, 0, 10) + log_combat(attacker, defender, "kneed in the stomach (Sleeping Carp)") + return TRUE + /datum/martial_art/the_sleeping_carp/grab_act(mob/living/attacker, mob/living/defender) if(!can_deflect(attacker)) //allows for deniability return MARTIAL_ATTACK_INVALID @@ -108,7 +162,7 @@ var/grab_log_description = "grabbed" attacker.do_attack_animation(defender, ATTACK_EFFECT_PUNCH) playsound(defender, 'sound/items/weapons/punch1.ogg', 25, TRUE, -1) - if(defender.stat != DEAD && !defender.IsUnconscious() && defender.getStaminaLoss() >= 80) //We put our target to sleep. + if(defender.stat != DEAD && !defender.IsUnconscious() && defender.get_stamina_loss() >= 80) //We put our target to sleep. defender.visible_message( span_danger("[attacker] carefully pinch a nerve in [defender]'s neck, knocking them out cold!"), span_userdanger("[attacker] pinches something in your neck, and you fall unconscious!"), @@ -142,29 +196,14 @@ defender.investigate_log("has had [defender.p_their()] neck snapped by [attacker].", INVESTIGATE_DEATHS) return MARTIAL_ATTACK_SUCCESS - var/atk_verb = pick("kick", "chop", "hit", "slam") - var/final_damage = rand(10, 15) - if(defender.check_block(attacker, final_damage, "[attacker]'s [atk_verb]", UNARMED_ATTACK)) + if(defender.check_block(attacker, 10, attacker.name, UNARMED_ATTACK)) return MARTIAL_ATTACK_FAIL add_to_streak("H", defender) if(check_streak(attacker, defender)) return MARTIAL_ATTACK_SUCCESS - var/obj/item/bodypart/affecting = defender.get_bodypart(defender.get_random_valid_zone(attacker.zone_selected)) - attacker.do_attack_animation(defender, ATTACK_EFFECT_PUNCH) - defender.visible_message( - span_danger("[attacker] [atk_verb]s [defender]!"), - span_userdanger("[attacker] [atk_verb]s you!"), - span_hear("You hear a sickening sound of flesh hitting flesh!"), - null, - attacker, - ) - to_chat(attacker, span_danger("You [atk_verb] [defender]!")) - defender.apply_damage(final_damage, attacker.get_attack_type(), affecting, wound_bonus = CANT_WOUND) - playsound(defender, 'sound/items/weapons/punch1.ogg', 25, TRUE, -1) - log_combat(attacker, defender, "punched (Sleeping Carp)") - return MARTIAL_ATTACK_SUCCESS + return MARTIAL_ATTACK_INVALID // normal punch /datum/martial_art/the_sleeping_carp/disarm_act(mob/living/attacker, mob/living/defender) if(!can_deflect(attacker)) //allows for deniability @@ -198,9 +237,25 @@ /datum/martial_art/the_sleeping_carp/proc/hit_by_projectile(mob/living/carp_user, obj/projectile/hitting_projectile, def_zone) SIGNAL_HANDLER + var/determine_avoidance = 100 + var/additional_adjustments = 0 + + if(istype(hitting_projectile, /obj/projectile/bullet/c38/match/true)) // 75% chance to ignore evasion + additional_adjustments -= 75 + + determine_avoidance = clamp(determine_avoidance + carp_style_check(carp_user) + additional_adjustments, 0, 100) + + if(istype(hitting_projectile, /obj/projectile/bullet/harpoon)) // WHITE WHALE HOLY GRAIL + return NONE + if(!can_deflect(carp_user)) return NONE + if(!prob(determine_avoidance)) + return NONE + + + carp_user.visible_message( span_danger("[carp_user] effortlessly swats [hitting_projectile] aside! [carp_user.p_They()] can block bullets with [carp_user.p_their()] bare hands!"), span_userdanger("You deflect [hitting_projectile]!"), @@ -210,7 +265,7 @@ hitting_projectile.set_angle(rand(0, 360))//SHING return COMPONENT_BULLET_PIERCED -///Signal from getting attacked with an item, for a special interaction with touch spells +/// Signal from getting attacked with an item, for a special interaction with touch spells /datum/martial_art/the_sleeping_carp/proc/on_attackby(mob/living/carp_user, obj/item/attack_weapon, mob/attacker, list/modifiers) SIGNAL_HANDLER @@ -225,6 +280,98 @@ ) return COMPONENT_NO_AFTERATTACK +/// If our user has committed to being as martial arty as they can be, they may be able to avoid incoming attacks. +/datum/martial_art/the_sleeping_carp/proc/check_dodge(mob/living/carp_user, atom/movable/hitby, damage, attack_text, attack_type, ...) + SIGNAL_HANDLER + + var/determine_avoidance = clamp(round(carp_style_check(carp_user) / (attack_type == OVERWHELMING_ATTACK ? 2 : 1), 1), 0, 75) + + if(!can_deflect(carp_user)) + return + + if(attack_type == PROJECTILE_ATTACK || attack_type == THROWN_PROJECTILE_ATTACK) + return NONE + + if(!prob(determine_avoidance)) + return NONE + + carp_user.visible_message( + span_danger("[carp_user] cleanly avoids [attack_text] with incredible speed!"), + span_userdanger("You dodge [attack_text]"), + ) + playsound(carp_user.loc, 'sound/items/weapons/punchmiss.ogg', 25, TRUE, -1) + return SUCCESSFUL_BLOCK + +/* Determines how 'carp-y' or how 'martial arts-y' we are, granting us the ability to avoid attacks. +* At a baseline, we will always avoid projectile attacks, but we may not necessarily avoid other attacks. +* If we wear carp based clothing, or martial arts based clothing, we improve our style factor. +* If we are a carp mutant, we improve our style factor. +* If we literally are a carp, we just assume we're very carpy and return our max value. +* If we wear a lot of armor, we reduce our style factor. Some martial arts or carp items may result in a net netural bonus. +* If there is anything in our hands, we're also less likely to avoid attacks. +*/ +/datum/martial_art/the_sleeping_carp/proc/carp_style_check(mob/living/carp_user) + // An evaluation of how 'carp' we are. + var/style_factor_points = 0 + + if(istype(carp_user, /mob/living/basic/space_dragon) || istype(carp_user, /mob/living/basic/carp)) + return 100 + + if(!ishuman(carp_user)) // We're not concerned about nonhumans here, we can assume we've covered any relevant mobs by checking for carp. + return 0 + + var/mob/living/carbon/human/human_carp_user = carp_user + + var/obj/item/bodypart/potential_head = human_carp_user.get_bodypart(BODY_ZONE_HEAD) + var/obj/item/bodypart/potential_chest = human_carp_user.get_bodypart(BODY_ZONE_CHEST) + var/obj/item/clothing/is_it_the_shoes = human_carp_user.get_item_by_slot(ITEM_SLOT_FEET) + + // The presence of armor and heavy objects is a style malus + var/style_factor_malus = 0 + + // Lets look to see if any relevant headwear is armored or on theme + if(potential_head) + for(var/obj/item/clothing/possible_headbands in human_carp_user.get_clothing_on_part(potential_head)) + if(possible_headbands.clothing_flags & CARP_STYLE_FACTOR) + style_factor_points += 20 // Basically, you only need one chest level item to contribute + style_factor_malus += human_carp_user.run_armor_check(potential_head, MELEE) + + // Then let's look for any chest clothing that is either armored or on theme + if(potential_chest) + for(var/obj/item/clothing/possible_gi in human_carp_user.get_clothing_on_part(potential_chest)) + if(possible_gi.clothing_flags & CARP_STYLE_FACTOR) + style_factor_points += 20 // Only need one head level item to contribute + style_factor_malus += human_carp_user.run_armor_check(potential_chest, MELEE) + + // We also consider whether our footwear is appropriate + if(istype(is_it_the_shoes) && is_it_the_shoes.clothing_flags & CARP_STYLE_FACTOR) + style_factor_points += 20 + + // Achieved a carp state of mind. + if(human_carp_user.has_status_effect(/datum/status_effect/organ_set_bonus/carp)) + style_factor_points += 20 + + // We check for wielded objects. If they're not abstract items or exempt items, we add their weight as a penalty. And their block chance. + for(var/obj/item/possibly_a_held_object in human_carp_user.held_items) + if(possibly_a_held_object.item_flags & (ABSTRACT|HAND_ITEM) && !possibly_a_held_object.block_chance) + continue + + if(possibly_a_held_object in exempt_objects) + continue + + if(possibly_a_held_object.w_class <= WEIGHT_CLASS_SMALL && !possibly_a_held_object.block_chance) + continue + + style_factor_malus += possibly_a_held_object.block_chance + style_factor_malus += possibly_a_held_object.w_class * 10 * (HAS_TRAIT(possibly_a_held_object, TRAIT_WIELDED) ? 2 : 1) + + if(human_carp_user.body_position != STANDING_UP) // this ain't monkey style + style_factor_points -= 30 + + style_factor_points -= style_factor_malus + + return style_factor_points + /// Verb added to humans who learn the art of the sleeping carp. /mob/living/proc/sleeping_carp_help() set name = "Recall Teachings" @@ -232,16 +379,19 @@ set category = "Sleeping Carp" to_chat(usr, span_info("You retreat inward and recall the teachings of the Sleeping Carp...\n\ - [span_notice("Gnashing Teeth")]: Punch Punch. Deal additional damage every second (consecutive) punch! Very good chance to wound!\n\ + [span_notice("Gnashing Teeth")]: Punch Grab. Violently twists your opponent's arm, dislocating or even shattering bone and forcing them to drop their held items.\n\ [span_notice("Crashing Wave Kick")]: Punch Shove. Launch your opponent away from you with incredible force!\n\ [span_notice("Keelhaul")]: Shove Shove. Nonlethally kick an opponent to the floor, knocking them down, discombobulating them and dealing substantial stamina damage. If they're already prone, disarm them as well.\n\ - [span_notice("Grabs and Shoves")]: While in combat mode, your typical grab and shove do decent stamina damage. If you grab someone who has substantial amounts of stamina damage, you knock them out!\n\ + [span_notice("Kraken Wrack")]: Grab Punch. Deliver a knee jab into the opponent, dealing high stamina damage, as well as briefly stunning them, winding them and making it difficult for them to speak.\n\ + [span_notice("Grabs and Shoves")]: While in combat mode, your typical grab and shove do decent stamina damage, and your grabs harder to break. If you grab someone who has substantial amounts of stamina damage, you knock them out!\n\ While in combat mode (and not stunned, not a hulk, and not in a mech), you can reflect all projectiles that come your way, sending them back at the people who fired them! \n\ + However, your ability to avoid projectiles is negatively affected when your are burdened by armor, or whenever you are carrying normal-sized or heavier objects in your hands. \n\ + But if you commmit fully to the martial arts lifestyle by wearing martial arts or carp-related regalia, you will feel empowered enough to potentially avoid attacks even from melee weapons or other unarmed combatants. \n\ + Some melee weapons, such as bo starves, spears, short blades, knives, toolboxes, baseball bats and non-blocking small objects are safe to carry without affecting your ability to defend yourself. Exploit this for a tactical advantage. \n\ Also, you are more resilient against suffering wounds in combat, and your limbs cannot be dismembered. This grants you extra staying power during extended combat, especially against slashing and other bleeding weapons. \n\ You are not invincible, however- while you may not suffer debilitating wounds often, you must still watch your health and should have appropriate medical supplies for use during downtime. \n\ In addition, your training has imbued you with a loathing of guns, and you can no longer use them.")) - /obj/item/staff/bostaff name = "bo staff" desc = "A long, tall staff made of polished wood. Traditionally used in ancient old-Earth martial arts. Can be wielded to both kill and incapacitate." @@ -301,7 +451,7 @@ span_userdanger("[user] [pick(fluffmessages)]s you with [src]!"), span_hear("You hear a sickening sound of flesh hitting flesh!"), null, user) to_chat(user, span_danger("You [pick(fluffmessages)] [H] with [src]!")) playsound(get_turf(user), 'sound/effects/woodhit.ogg', 75, TRUE, -1) - H.adjustStaminaLoss(rand(13,20)) + H.adjust_stamina_loss(rand(13,20)) if(prob(10)) H.visible_message(span_warning("[H] collapses!"), \ span_userdanger("Your legs give out!")) @@ -313,7 +463,7 @@ span_userdanger("You're knocked unconscious by [user]!"), span_hear("You hear a sickening sound of flesh hitting flesh!"), null, user) to_chat(user, span_danger("You deliver a heavy hit to [H]'s head, knocking [H.p_them()] out cold!")) H.SetSleeping(60 SECONDS) - H.adjustOrganLoss(ORGAN_SLOT_BRAIN, 15, 150) + H.adjust_organ_loss(ORGAN_SLOT_BRAIN, 15, 150) else return ..() @@ -337,6 +487,7 @@ . = ..() AddComponent(/datum/component/martial_art_giver, /datum/martial_art/the_sleeping_carp) -#undef STRONG_PUNCH_COMBO +#undef WRIST_WRENCH_COMBO #undef LAUNCH_KICK_COMBO #undef DROP_KICK_COMBO +#undef KNEE_STOMACH_COMBO diff --git a/code/datums/martial/wrestling.dm b/code/datums/martial/wrestling.dm index 4ad643173ee89e..1a19e2884dff83 100644 --- a/code/datums/martial/wrestling.dm +++ b/code/datums/martial/wrestling.dm @@ -330,11 +330,11 @@ If you make a derivative work from this code, you must include this notification switch(rand(1,3)) if (2) - defender.adjustBruteLoss(rand(20,30)) + defender.adjust_brute_loss(rand(20,30)) if (3) EX_ACT(defender, EXPLODE_LIGHT) else - defender.adjustBruteLoss(rand(10,20)) + defender.adjust_brute_loss(rand(10,20)) else EX_ACT(defender, EXPLODE_LIGHT) @@ -368,7 +368,7 @@ If you make a derivative work from this code, you must include this notification defender.visible_message(span_danger("[attacker] headbutts [defender]!"), \ span_userdanger("You're headbutted by [attacker]!"), span_hear("You hear a sickening sound of flesh hitting flesh!"), COMBAT_MESSAGE_RANGE, attacker) to_chat(attacker, span_danger("You headbutt [defender]!")) - defender.adjustBruteLoss(rand(10,20)) + defender.adjust_brute_loss(rand(10,20)) playsound(attacker.loc, SFX_SWING_HIT, 50, TRUE) defender.Unconscious(2 SECONDS) log_combat(attacker, defender, "headbutted") @@ -384,7 +384,7 @@ If you make a derivative work from this code, you must include this notification span_userdanger("You're roundhouse-kicked by [attacker]!"), span_hear("You hear a sickening sound of flesh hitting flesh!"), COMBAT_MESSAGE_RANGE, attacker) to_chat(attacker, span_danger("You roundhouse-kick [defender]!")) playsound(attacker.loc, SFX_SWING_HIT, 50, TRUE) - defender.adjustBruteLoss(rand(10,20)) + defender.adjust_brute_loss(rand(10,20)) var/turf/T = get_edge_target_turf(attacker, get_dir(attacker, get_step_away(defender, attacker))) if (T && isturf(T)) @@ -428,7 +428,7 @@ If you make a derivative work from this code, you must include this notification if (falling == 1) attacker.visible_message(span_danger("...and dives head-first into the ground, ouch!"), \ span_userdanger("...and dive head-first into the ground, ouch!")) - attacker.adjustBruteLoss(rand(10,20)) + attacker.adjust_brute_loss(rand(10,20)) attacker.Paralyze(60) to_chat(attacker, span_warning("[defender] is too far away!")) return @@ -456,9 +456,9 @@ If you make a derivative work from this code, you must include this notification if (prob(33) || defender.stat) EX_ACT(defender, EXPLODE_LIGHT) else - defender.adjustBruteLoss(rand(20,30)) + defender.adjust_brute_loss(rand(20,30)) else - defender.adjustBruteLoss(rand(20,30)) + defender.adjust_brute_loss(rand(20,30)) defender.Paralyze(4 SECONDS) diff --git a/code/datums/components/material/material_container.dm b/code/datums/material/material_container.dm similarity index 89% rename from code/datums/components/material/material_container.dm rename to code/datums/material/material_container.dm index fca645e915838c..4990e5bf764904 100644 --- a/code/datums/components/material/material_container.dm +++ b/code/datums/material/material_container.dm @@ -12,7 +12,9 @@ //The full item was consumed #define MATERIAL_INSERT_ITEM_SUCCESS 1 -/datum/component/material_container +/datum/material_container + ///Parent to which this container is attached to + VAR_PRIVATE/atom/movable/parent /// The maximum amount of materials this material container can contain var/max_amount /// Map of material ref -> amount @@ -29,7 +31,8 @@ var/list/registered_signals /// Sets up the proper signals and fills the list of materials with the appropriate references. -/datum/component/material_container/Initialize( +/datum/material_container/New( + target, list/init_mats, max_amt = 0, _mat_container_flags = NONE, @@ -38,8 +41,7 @@ list/container_signals ) - if(!isatom(parent)) - return COMPONENT_INCOMPATIBLE + parent = target materials = list() max_amount = max(0, max_amt) @@ -67,52 +69,34 @@ for(var/signal in container_signals) parent.RegisterSignal(src, signal, container_signals[signal]) -/datum/component/material_container/Destroy(force) - materials = null - allowed_materials = null - return ..() - -/datum/component/material_container/RegisterWithParent() - . = ..() - - var/atom/atom_target = parent - //can we insert into this container if(!(mat_container_flags & MATCONTAINER_NO_INSERT)) //to insert stuff into the container - RegisterSignal(atom_target, COMSIG_ATOM_ITEM_INTERACTION, PROC_REF(on_item_insert)) - RegisterSignal(atom_target, COMSIG_ATOM_ITEM_INTERACTION_SECONDARY, PROC_REF(on_secondary_insert)) + RegisterSignal(parent, COMSIG_ATOM_ITEM_INTERACTION, PROC_REF(on_item_insert)) + RegisterSignal(parent, COMSIG_ATOM_ITEM_INTERACTION_SECONDARY, PROC_REF(on_secondary_insert)) //screen tips for inserting items - atom_target.flags_1 |= HAS_CONTEXTUAL_SCREENTIPS_1 - RegisterSignal(atom_target, COMSIG_ATOM_REQUESTING_CONTEXT_FROM_ITEM, PROC_REF(on_requesting_context_from_item)) + parent.flags_1 |= HAS_CONTEXTUAL_SCREENTIPS_1 + RegisterSignal(parent, COMSIG_ATOM_REQUESTING_CONTEXT_FROM_ITEM, PROC_REF(on_requesting_context_from_item)) //to see available materials if(mat_container_flags & MATCONTAINER_EXAMINE) - RegisterSignal(atom_target, COMSIG_ATOM_EXAMINE, PROC_REF(on_examine)) + RegisterSignal(parent, COMSIG_ATOM_EXAMINE, PROC_REF(on_examine)) //drop sheets when the object is deconstructed but not deleted RegisterSignal(parent, COMSIG_OBJ_DECONSTRUCT, PROC_REF(drop_sheets)) -/datum/component/material_container/UnregisterFromParent() - var/list/signals = list() - - if(!(mat_container_flags & MATCONTAINER_NO_INSERT)) - signals += COMSIG_ATOM_ITEM_INTERACTION - signals += COMSIG_ATOM_ITEM_INTERACTION_SECONDARY - signals += COMSIG_ATOM_REQUESTING_CONTEXT_FROM_ITEM - if(mat_container_flags & MATCONTAINER_EXAMINE) - signals += COMSIG_ATOM_EXAMINE - signals += COMSIG_OBJ_DECONSTRUCT - - UnregisterSignal(parent, signals) +/datum/material_container/Destroy(force) + materials = null + allowed_materials = null + return ..() -/datum/component/material_container/proc/drop_sheets() +/datum/material_container/proc/drop_sheets() SIGNAL_HANDLER retrieve_all() -/datum/component/material_container/proc/on_examine(datum/source, mob/user, list/examine_texts) +/datum/material_container/proc/on_examine(datum/source, mob/user, list/examine_texts) SIGNAL_HANDLER for(var/I in materials) @@ -121,7 +105,7 @@ if(amt) examine_texts += span_notice("It has [amt] sheets of [LOWER_TEXT(M.name)] stored.") -/datum/component/material_container/vv_edit_var(var_name, var_value) +/datum/material_container/vv_edit_var(var_name, var_value) var/old_flags = mat_container_flags . = ..() if(var_name == NAMEOF(src, mat_container_flags) && parent) @@ -162,7 +146,7 @@ * chance to process the item * - user_data: in the form rendered by ID_DATA(user), for material logging (and if this component is connected to a silo, also for permission checking) */ -/datum/component/material_container/proc/insert_item_materials(obj/item/source, multiplier = 1, atom/context = parent, alist/user_data) +/datum/material_container/proc/insert_item_materials(obj/item/source, multiplier = 1, atom/context = parent, alist/user_data) var/primary_mat var/max_mat_value = 0 var/material_amount = 0 @@ -194,7 +178,7 @@ * - amt: amount of said material to insert * - mat: the material type to insert */ -/datum/component/material_container/proc/insert_amount_mat(amt, datum/material/mat) +/datum/material_container/proc/insert_amount_mat(amt, datum/material/mat) if(amt <= 0) return 0 amt = OPTIMAL_COST(amt) @@ -228,7 +212,7 @@ * * - delete_item: should we delete the item after its materials are consumed. does not apply to stacks if they were split due to lack of space * * - user_data - in the form rendered by ID_DATA(user), for material logging (and if this component is connected to a silo, also for permission checking) */ -/datum/component/material_container/proc/insert_item(obj/item/weapon, multiplier = 1, atom/context = parent, delete_item = TRUE, alist/user_data) +/datum/material_container/proc/insert_item(obj/item/weapon, multiplier = 1, atom/context = parent, delete_item = TRUE, alist/user_data) if(QDELETED(weapon)) return MATERIAL_INSERT_ITEM_NO_MATS multiplier = CEILING(multiplier, 0.01) @@ -245,7 +229,7 @@ if(!space_left) return MATERIAL_INSERT_ITEM_NO_SPACE var/material_per_sheet = material_amount / item_stack.amount - var/sheets_to_insert = round(space_left / material_per_sheet) + var/sheets_to_insert = floor(space_left / material_per_sheet) if(!sheets_to_insert) return MATERIAL_INSERT_ITEM_NO_SPACE target = fast_split_stack(item_stack, sheets_to_insert) @@ -278,7 +262,7 @@ * * user - the mob inserting this item * * context - the atom performing the operation, this is the last argument sent in COMSIG_MATCONTAINER_ITEM_CONSUMED and is used mostly for silo logging */ -/datum/component/material_container/proc/user_insert(obj/item/held_item, mob/living/user, atom/context = parent) +/datum/material_container/proc/user_insert(obj/item/held_item, mob/living/user, atom/context = parent) set waitfor = FALSE . = 0 @@ -489,18 +473,18 @@ if(!QDELETED(deleting)) //deleting parents also delete their children so we check qdel(deleting) -/datum/component/material_container/proc/on_item_insert(datum/source, mob/living/user, obj/item/weapon) +/datum/material_container/proc/on_item_insert(datum/source, mob/living/user, obj/item/weapon) SIGNAL_HANDLER // Don't insert material items with left click if (isstack(weapon)) return attempt_insert(user, weapon) -/datum/component/material_container/proc/on_secondary_insert(datum/source, mob/living/user, obj/item/weapon) +/datum/material_container/proc/on_secondary_insert(datum/source, mob/living/user, obj/item/weapon) SIGNAL_HANDLER return attempt_insert(user, weapon) /// Proc that allows players to fill the parent with mats -/datum/component/material_container/proc/attempt_insert(mob/living/user, obj/item/weapon) +/datum/material_container/proc/attempt_insert(mob/living/user, obj/item/weapon) //Allows you to attack the machine with iron sheets for e.g. if(!(mat_container_flags & MATCONTAINER_ANY_INTENT) && user.combat_mode) return @@ -524,7 +508,7 @@ * Arguments: * * amt - can this container hold this much amount of materials */ -/datum/component/material_container/proc/has_space(amt = 0) +/datum/material_container/proc/has_space(amt = 0) return (total_amount() + amt) <= max_amount /** @@ -533,7 +517,7 @@ * Arguments: * - [mat][/atom/material]: The material we are checking for insertability. */ -/datum/component/material_container/proc/can_hold_material(datum/material/mat) +/datum/material_container/proc/can_hold_material(datum/material/mat) if(mat in allowed_materials) return TRUE if(istype(mat) && ((mat.id in allowed_materials) || (mat.type in allowed_materials))) @@ -556,7 +540,7 @@ * b) If it's text then its an category material & there is no way to deal with it so return 0 * c) If normal material proceeds as usual */ -/datum/component/material_container/proc/get_material_amount(datum/material/mat) +/datum/material_container/proc/get_material_amount(datum/material/mat) if(!istype(mat)) mat = GET_MATERIAL_REF(mat) return materials[mat] @@ -568,7 +552,7 @@ * Arguments: * - [I][obj/item]: the item whos materials must be retrieved */ -/datum/component/material_container/proc/get_item_material_amount(obj/item/item) +/datum/material_container/proc/get_item_material_amount(obj/item/item) if(!istype(item) || !item.custom_materials) return 0 var/material_amount = 0 @@ -583,7 +567,7 @@ //=========================================HIGH LEVEL========================================== /// returns the total amount of material in the container -/datum/component/material_container/proc/total_amount() +/datum/material_container/proc/total_amount() . = 0 for(var/i in materials) . += get_material_amount(i) @@ -595,7 +579,7 @@ * - [req_mat][datum/material]: the material to check for * - amount: how much material do we need */ -/datum/component/material_container/proc/has_enough_of_material(datum/material/req_mat, amount = 1) +/datum/material_container/proc/has_enough_of_material(datum/material/req_mat, amount = 1) return get_material_amount(req_mat) >= OPTIMAL_COST(amount) @@ -608,7 +592,7 @@ * - coefficient: scaling applied to 1 unit of material in the mats list * - multiplier: how many units(after scaling) do we require */ -/datum/component/material_container/proc/has_materials(list/mats, coefficient = 1, multiplier = 1) +/datum/material_container/proc/has_materials(list/mats, coefficient = 1, multiplier = 1) if(!length(mats)) return FALSE @@ -632,7 +616,7 @@ * - amt: amount of said material to use * - [mat][datum/material]: type of mat to use */ -/datum/component/material_container/proc/use_amount_mat(amt, datum/material/mat) +/datum/material_container/proc/use_amount_mat(amt, datum/material/mat) //round amount amt = OPTIMAL_COST(amt) @@ -658,7 +642,7 @@ * - coefficient: how much fraction of unit material in the mats list must be consumed. This is usually your machines efficiency * - multiplier: how many units of material in the mats list(after each unit is multiplied and rounded with coefficient) must be consumed, This is usually your print quantity */ -/datum/component/material_container/proc/use_materials(list/mats, coefficient = 1, multiplier = 1) +/datum/material_container/proc/use_materials(list/mats, coefficient = 1, multiplier = 1) if(!mats || !length(mats)) return FALSE @@ -682,7 +666,7 @@ * [atom][context]: context - the atom performing the operation, this is the last argument sent in COMSIG_MATCONTAINER_STACK_RETRIEVED and is used mostly for silo logging * user_data - in the form rendered by ID_DATA(user), for material logging (and if this component is connected to a silo, also for permission checking) */ -/datum/component/material_container/proc/retrieve_stack(stack_amt, datum/material/material, atom/target = null, atom/context = parent, alist/user_data) +/datum/material_container/proc/retrieve_stack(stack_amt, datum/material/material, atom/target = null, atom/context = parent, alist/user_data) //do we support sheets of this material if(!material.sheet_type) return 0 //Add greyscale sheet handling here later @@ -690,7 +674,7 @@ return 0 //requested amount greater than available amount or just an invalid value - stack_amt = min(round(materials[material] / SHEET_MATERIAL_AMOUNT), stack_amt) + stack_amt = min(floor(materials[material] / SHEET_MATERIAL_AMOUNT), stack_amt) if(stack_amt <= 0) return 0 //auto drop location @@ -736,7 +720,7 @@ * - target: drop location of the sheets * - context: the atom which is ejecting the sheets. Used mostly in silo logging */ -/datum/component/material_container/proc/retrieve_all(target = null, atom/context = parent) +/datum/material_container/proc/retrieve_all(target = null, atom/context = parent) var/result = 0 for(var/MAT in materials) result += retrieve_stack(amount2sheet(materials[MAT]), MAT, target, context, user_data = ID_DATA(null)) @@ -744,13 +728,13 @@ //============================================================================================ -/datum/component/material_container/ui_static_data(mob/user) +/datum/material_container/ui_static_data(mob/user) var/list/data = list() data["SHEET_MATERIAL_AMOUNT"] = SHEET_MATERIAL_AMOUNT return data /// List format is list(material_name = list(amount = ..., ref = ..., etc.)) -/datum/component/material_container/ui_data(mob/user) +/datum/material_container/ui_data(mob/user) var/list/data = list() for(var/datum/material/material as anything in materials) @@ -773,7 +757,7 @@ * * held_item - refers to the item that has materials accepted by the material container * * user - refers to user who will see the screentip when the proper context and tool are there */ -/datum/component/material_container/proc/on_requesting_context_from_item(datum/source, list/context, obj/item/held_item, mob/living/user) +/datum/material_container/proc/on_requesting_context_from_item(datum/source, list/context, obj/item/held_item, mob/living/user) SIGNAL_HANDLER if(isnull(held_item)) diff --git a/code/datums/components/material/remote_materials.dm b/code/datums/material/remote_materials.dm similarity index 84% rename from code/datums/components/material/remote_materials.dm rename to code/datums/material/remote_materials.dm index 1a930e48e70e7e..9f15f3d0cb54e1 100644 --- a/code/datums/components/material/remote_materials.dm +++ b/code/datums/material/remote_materials.dm @@ -5,16 +5,18 @@ fallback to a local material storage in case remote storage is unavailable, and handles linking back and forth. */ -/datum/component/remote_materials +/datum/remote_materials // Three possible states: // 1. silo exists, materials is parented to silo // 2. silo is null, materials is parented to parent // 3. silo is null, materials is null + ///Movable this connection is attached to + var/atom/movable/parent ///The silo machine this container is connected to var/obj/machinery/ore_silo/silo ///Material container. the value is either the silo or local - var/datum/component/material_container/mat_container + var/datum/material_container/mat_container ///Should we create a local storage if we can't connect to silo var/allow_standalone ///Local size of container when silo = null @@ -26,15 +28,15 @@ handles linking back and forth. ///Callback for round start silo connections. Have to cancel this if the parent gets destroyed before round start VAR_PRIVATE/datum/callback/connection -/datum/component/remote_materials/Initialize( +/datum/remote_materials/New( + parent, mapload, allow_standalone = TRUE, force_connect = FALSE, mat_container_flags = NONE, list/mat_container_signals = null, ) - if (!isatom(parent)) - return COMPONENT_INCOMPATIBLE + src.parent = parent src.allow_standalone = allow_standalone src.mat_container_flags = mat_container_flags @@ -60,7 +62,7 @@ handles linking back and forth. * connect_to_silo- if true connect to global silo. If not successfull then go to local storage * only if allow_standalone = TRUE, else you a null mat_container */ -/datum/component/remote_materials/proc/_PrepareStorage(connect_to_silo) +/datum/remote_materials/proc/_PrepareStorage(connect_to_silo) PRIVATE_PROC(TRUE) connection = null @@ -75,25 +77,24 @@ handles linking back and forth. if (!mat_container && allow_standalone) _MakeLocal() -/datum/component/remote_materials/Destroy() +/datum/remote_materials/Destroy() if(connection) LAZYREMOVE(SSticker.round_start_events, connection) connection = null if(silo) allow_standalone = FALSE disconnect() - if(mat_container) - mat_container = null + QDEL_NULL(mat_container) return ..() -/datum/component/remote_materials/proc/_MakeLocal() +/datum/remote_materials/proc/_MakeLocal() PRIVATE_PROC(TRUE) silo = null - mat_container = parent.AddComponent( \ - /datum/component/material_container, \ + mat_container = new ( \ + parent, \ SSmaterials.materials_by_category[MAT_CATEGORY_SILO], \ local_size, \ mat_container_flags, \ @@ -102,7 +103,7 @@ handles linking back and forth. ) /// Adds/Removes this connection from the silo -/datum/component/remote_materials/proc/toggle_holding() +/datum/remote_materials/proc/toggle_holding() if(isnull(silo)) return @@ -117,13 +118,13 @@ handles linking back and forth. * * * size - the new size for local storage. measured in SHEET_MATERIAL_SIZE units */ -/datum/component/remote_materials/proc/set_local_size(size) +/datum/remote_materials/proc/set_local_size(size) local_size = size if (!silo && mat_container) mat_container.max_amount = size ///Disconnects this component from the silo -/datum/component/remote_materials/proc/disconnect() +/datum/remote_materials/proc/disconnect() if(isnull(silo)) return @@ -133,7 +134,7 @@ handles linking back and forth. if (allow_standalone) _MakeLocal() -/datum/component/remote_materials/proc/OnMultitool(datum/source, mob/user, obj/item/multitool/M) +/datum/remote_materials/proc/OnMultitool(datum/source, mob/user, obj/item/multitool/M) SIGNAL_HANDLER . = NONE @@ -146,7 +147,7 @@ handles linking back and forth. return ITEM_INTERACT_BLOCKING var/obj/machinery/ore_silo/new_silo = M.buffer - var/datum/component/material_container/new_container = new_silo.GetComponent(/datum/component/material_container) + var/datum/material_container/new_container = new_silo.materials if (silo) silo.disconnect_receptacle(src, parent) else if (mat_container) @@ -166,18 +167,18 @@ handles linking back and forth. to_chat(user, span_notice("You connect [parent] to [silo] from the multitool's buffer.")) return ITEM_INTERACT_SUCCESS -/datum/component/remote_materials/proc/on_item_insert(datum/source, mob/living/user, obj/item/target) +/datum/remote_materials/proc/on_item_insert(datum/source, mob/living/user, obj/item/target) SIGNAL_HANDLER // Only insert stacks with left click if(isstack(target)) return attempt_insert(user, target) -/datum/component/remote_materials/proc/on_secondary_insert(datum/source, mob/living/user, obj/item/target) +/datum/remote_materials/proc/on_secondary_insert(datum/source, mob/living/user, obj/item/target) SIGNAL_HANDLER return attempt_insert(user, target) /// Insert mats into silo -/datum/component/remote_materials/proc/attempt_insert(mob/living/user, obj/item/target) +/datum/remote_materials/proc/attempt_insert(mob/living/user, obj/item/target) if(!(mat_container_flags & MATCONTAINER_ANY_INTENT) && user.combat_mode) return @@ -194,14 +195,14 @@ handles linking back and forth. * * Returns true if both are on the station or same z level */ -/datum/component/remote_materials/proc/check_z_level(obj/silo_to_check = silo) +/datum/remote_materials/proc/check_z_level(obj/silo_to_check = silo) if(isnull(silo_to_check)) return FALSE return is_valid_z_level(get_turf(silo_to_check), get_turf(parent)) /// returns TRUE if this connection put on hold by the silo -/datum/component/remote_materials/proc/on_hold() +/datum/remote_materials/proc/on_hold() return check_z_level() ? silo.holds[src] : FALSE /** @@ -214,7 +215,7 @@ handles linking back and forth. * * check_hold - should we check if the silo is on hold * * user_data - in the form rendered by ID_DATA(user); used as a reference for silo bans and access checks */ -/datum/component/remote_materials/proc/can_use_resource(check_hold = TRUE, alist/user_data) +/datum/remote_materials/proc/can_use_resource(check_hold = TRUE, alist/user_data) var/atom/movable/movable_parent = parent if (!istype(movable_parent)) return FALSE @@ -240,7 +241,7 @@ handles linking back and forth. * name- For logging only. the design you are trying to build e.g. matter bin, etc. * user_data - in the form rendered by ID_DATA(user), for material logging and (if this component is connected to a silo), permission checking */ -/datum/component/remote_materials/proc/use_materials(list/mats, coefficient = 1, multiplier = 1, action = "processed", name = "design", alist/user_data) +/datum/remote_materials/proc/use_materials(list/mats, coefficient = 1, multiplier = 1, action = "processed", name = "design", alist/user_data) if(!can_use_resource(user_data = user_data)) return 0 @@ -263,7 +264,7 @@ handles linking back and forth. * [drop_target][atom]- optional where to drop the sheets. null means it is dropped at this components parent location * user_data - in the form rendered by ID_DATA(user), for material logging and (if this component is connected to a silo), permission checking */ -/datum/component/remote_materials/proc/eject_sheets(datum/material/material_ref, eject_amount, atom/drop_target = null, alist/user_data) +/datum/remote_materials/proc/eject_sheets(datum/material/material_ref, eject_amount, atom/drop_target = null, alist/user_data) if(!can_use_resource(user_data = user_data)) return 0 @@ -281,7 +282,7 @@ handles linking back and forth. * * multiplier - the multiplier applied on the materials consumed * * user_data - an alist in the form rendered by ID_DATA(user), for logging who/where/when the item was inserted */ -/datum/component/remote_materials/proc/insert_item(obj/item/weapon, multiplier = 1, alist/user_data) +/datum/remote_materials/proc/insert_item(obj/item/weapon, multiplier = 1, alist/user_data) // Inserting materials automatically shouldn't be permission-restricted if(!islist(user_data)) user_data = ID_DATA(null) diff --git a/code/datums/materials/hauntium.dm b/code/datums/materials/hauntium.dm index 1fc0de30c84a33..e6611678932265 100644 --- a/code/datums/materials/hauntium.dm +++ b/code/datums/materials/hauntium.dm @@ -27,10 +27,10 @@ /datum/material/hauntium/on_main_applied(atom/source, mat_amount, multiplier) . = ..() - if(!isobj(source)) + if(!isitem(source)) return - var/obj/obj = source - obj.make_haunted(INNATE_TRAIT, "#f8f8ff") + var/obj/item/source_item = source + source_item.make_haunted(INNATE_TRAIT, "#f8f8ff") if(isbodypart(source)) var/obj/item/bodypart/bodypart = source if(!(bodypart::bodytype & BODYTYPE_GHOST)) @@ -42,10 +42,10 @@ /datum/material/hauntium/on_main_removed(atom/source, mat_amount, multiplier) . = ..() - if(!isobj(source)) + if(!isitem(source)) return - var/obj/obj = source - obj.remove_haunted(INNATE_TRAIT) + var/obj/item/source_item = source + source_item.remove_haunted(INNATE_TRAIT) if(isbodypart(source)) var/obj/item/bodypart/bodypart = source if(!(bodypart::bodytype & BODYTYPE_GHOST)) diff --git a/code/datums/memory/key_memories.dm b/code/datums/memory/key_memories.dm index 27030a02a1dfea..21a46a77b716dc 100644 --- a/code/datums/memory/key_memories.dm +++ b/code/datums/memory/key_memories.dm @@ -99,6 +99,30 @@ /datum/memory/key/quirk_allergy/get_starts() return list("[protagonist_name] sneezing after coming into contact with [allergy_string].") +/// Tracks what kind of item the quirk user's heirloom is +/datum/memory/key/quirk_heirloom + var/heirloom_name + +/datum/memory/key/quirk_heirloom/New( + datum/mind/memorizer_mind, + atom/protagonist, + atom/deuteragonist, + atom/antagonist, + heirloom_name, +) + src.heirloom_name = heirloom_name + return ..() + +/datum/memory/key/quirk_heirloom/get_names() + return list("[protagonist_name]'s heirloom [heirloom_name].") + +/datum/memory/key/quirk_heirloom/get_starts() + return list( + "[protagonist_name] being bequeathed the heirloom [heirloom_name] by a dear relative.", + "[protagonist_name] discovering the heirloom [heirloom_name] in some long-forgotten boxes.", + "[protagonist_name] stealing the heirloom [heirloom_name] from an undeserving family member.", + ) + /// Tracks what brand a smoker quirk user likes /datum/memory/key/quirk_smoker memory_flags = MEMORY_FLAG_NOLOCATION|MEMORY_FLAG_NOPERSISTENCE|MEMORY_SKIP_UNCONSCIOUS // Does not have nomood diff --git a/code/datums/mood.dm b/code/datums/mood.dm index 45590774c6b44f..1fc07130b1398f 100644 --- a/code/datums/mood.dm +++ b/code/datums/mood.dm @@ -152,11 +152,13 @@ * * Arguments: * * category - (text) category of the mood event - see /datum/mood_event for category explanation - * * type - (path) any /datum/mood_event + * * type - (path) any /datum/mood_event (besides /datum/mood_event/conditional) */ /datum/mood/proc/add_mood_event(category, new_type, ...) if (!ispath(new_type, /datum/mood_event)) CRASH("A non path ([new_type]), was used to add a mood event. This shouldn't be happening.") + if (ispath(new_type, /datum/mood_event/conditional)) + CRASH("A conditional mood event ([new_type]) was used in add_mood_event. Use add_conditional_mood_event instead.") if (!istext(category)) category = REF(category) @@ -166,6 +168,14 @@ qdel(new_event) return + add_mood_event_instance(new_event, params) + +/** + * Handles adding a mood event instance, including replacing or refreshing existing events + */ +/datum/mood/proc/add_mood_event_instance(datum/mood_event/new_event, list/params) + PRIVATE_PROC(TRUE) + var/category = new_event.category var/datum/mood_event/existing_event = mood_events[category] if(existing_event) var/continue_adding = FALSE @@ -195,6 +205,43 @@ /datum/personality/misanthropic = /datum/mood_event/misanthropic_happy ), range = 4) +/** + * Adds a conditional mood event to the mob + * + * Arguments: + * * category - (text) category of the mood event - see /datum/mood_event for category explanation + * * base_type - (path) any /datum/mood_event/conditional + */ +/datum/mood/proc/add_conditional_mood_event(category, datum/base_type, ...) + if (!ispath(base_type, /datum/mood_event/conditional)) + if (ispath(base_type, /datum/mood_event)) + CRASH("A non-conditional mood event ([base_type]) was used in add_conditional_mood_event. Use add_mood_event instead.") + CRASH("A non path ([base_type]), was used to add a mood event. This shouldn't be happening.") + if (!istext(category)) + category = REF(category) + + var/list/params = args.Copy(3) + var/list/datum/mood_event/conditional/all_valid_conditional_events = list() + for(var/event_subtype in valid_typesof(base_type)) + var/datum/mood_event/potential_event = new event_subtype(category) + if(!potential_event.can_effect_mob(arglist(list(src, mob_parent) + params))) + qdel(potential_event) + continue + + all_valid_conditional_events += potential_event + + if(!length(all_valid_conditional_events)) + return //no valid events to add + + var/datum/mood_event/conditional/highest_priority_event + for(var/datum/mood_event/conditional/checked_event as anything in all_valid_conditional_events) + if(!highest_priority_event || checked_event.priority > highest_priority_event.priority) + highest_priority_event = checked_event + + add_mood_event_instance(highest_priority_event, params) + all_valid_conditional_events -= highest_priority_event // you are the chosen one + QDEL_LIST(all_valid_conditional_events) // clean up the losers + /** * Removes a mood event from the mob * @@ -572,6 +619,10 @@ update_mood_icon() +/// Sets sanity to a specific amount, useful for callbacks +/datum/mood/proc/reset_sanity(amount) + set_sanity(amount, override = TRUE) + /// Adjusts sanity by a value /datum/mood/proc/adjust_sanity(amount, minimum = SANITY_INSANE, maximum = SANITY_GREAT, override = FALSE) set_sanity(sanity + amount, minimum, maximum, override) @@ -599,7 +650,6 @@ /** * Returns true if you already have a mood from a provided category. - * You may think to yourself, why am I trying to get a boolean from a component? Well, this system probably should not be a component. * * Arguments * * category - Mood category to validate against. diff --git a/code/datums/mood_events/_mood_event.dm b/code/datums/mood_events/_mood_event.dm index 5e7d1f5104461b..16575364867134 100644 --- a/code/datums/mood_events/_mood_event.dm +++ b/code/datums/mood_events/_mood_event.dm @@ -37,7 +37,9 @@ /** * Called when this datum is created, checks if the passed mob can experience this mood event * + * * home - the mood datum we are being added to * * who - the mob to check + * * ... - any other arguments that are passed to the mood event * * Return TRUE if the mob can experience this mood event * Return FALSE if the mob should be unaffected @@ -66,6 +68,10 @@ /** * Wrapper for the mood event being added to a mob + * + * * home - the mood datum we are being added to + * * who - the mob to add the mood event to + * * mood_args - any other arguments that are passed to the mood event */ /datum/mood_event/proc/on_add(datum/mood/home, mob/living/who, list/mood_args) SHOULD_NOT_OVERRIDE(TRUE) @@ -139,3 +145,25 @@ */ /datum/mood_event/proc/be_replaced(datum/mood/home, datum/mood_event/new_event, ...) return ALLOW_NEW_MOOD + +/// Subtype of mood event that iterates over all subtypes of itself to find a suitable one to apply +/datum/mood_event/conditional + abstract_type = /datum/mood_event/conditional + /// Priority of this condition over other conditions. Higher = more priority. + /// If two priorities are the same, the first one found is used, which would be the one defined first in code. + var/priority = 0 + +/datum/mood_event/conditional/can_effect_mob(datum/mood/home, mob/living/who, ...) + return ..() && condition_fulfilled(arglist(args.Copy(2))) + +/** + * Is the condition for this mood event fulfilled for the given mob? + * + * * who - the mob to check + * * ... - any other arguments that are passed to the mood event + */ +/datum/mood_event/conditional/proc/condition_fulfilled(mob/living/who, ...) + return FALSE + +/datum/mood_event/conditional/be_replaced(datum/mood/home, datum/mood_event/conditional/new_event, ...) + return initial(new_event.priority) > initial(priority) ? ALLOW_NEW_MOOD : BLOCK_NEW_MOOD diff --git a/code/datums/mood_events/death.dm b/code/datums/mood_events/death.dm new file mode 100644 index 00000000000000..80590062e9469d --- /dev/null +++ b/code/datums/mood_events/death.dm @@ -0,0 +1,181 @@ +/datum/mood_event/conditional/see_death + mood_change = -8 + timeout = 5 MINUTES + +/datum/mood_event/conditional/see_death/can_effect_mob(datum/mood/home, mob/living/who, mob/dead_mob, dusted, gibbed) + if(isnull(dead_mob)) + stack_trace("Death mood event being applied with null dead_mob") + return FALSE + + return ..() + +/datum/mood_event/conditional/see_death/condition_fulfilled(mob/living/who, mob/dead_mob, dusted, gibbed) + return TRUE + +/datum/mood_event/conditional/see_death/add_effects(mob/dead_mob, dusted, gibbed) + update_effect(dead_mob) + + if(HAS_TRAIT(dead_mob, TRAIT_SPAWNED_MOB)) + mood_change *= 0.25 + timeout *= 0.2 + + if(HAS_PERSONALITY(owner, /datum/personality/compassionate) && mood_change < 0) + mood_change *= 1.5 + timeout *= 1.5 + + if(gibbed || dusted) + mood_change *= 1.2 + timeout *= 1.5 + + if(!description) + if(gibbed) + description = "%DEAD_MOB% just exploded in front of me!!" + else if(dusted) + description = "%DEAD_MOB% was just vaporized in front of me!!" + else + description = "I just saw %DEAD_MOB% die. How horrible..." + + description = capitalize(replacetext(description, "%DEAD_MOB%", get_descriptor(dead_mob))) + +/// Blank proc which allows conditional effects to modify mood, timeout, or description before the main effect is applied +/datum/mood_event/conditional/see_death/proc/update_effect(mob/dead_mob) + return + +/// Checks if the dead mob is a pet +/datum/mood_event/conditional/see_death/proc/is_pet(mob/dead_mob) + return istype(dead_mob, /mob/living/basic/pet) || ismonkey(dead_mob) + +/datum/mood_event/conditional/see_death/be_refreshed(datum/mood/home, mob/dead_mob, dusted, gibbed) + if(can_stack_effect(dead_mob)) + mood_change *= 1.5 + return ..() + +/datum/mood_event/conditional/see_death/be_replaced(datum/mood/home, datum/mood_event/new_event, mob/dead_mob, dusted, gibbed) + . = ..() + // when blocking a new mood event (because it's lower priority), refresh ourselves instead + if(. == BLOCK_NEW_MOOD) + return be_refreshed(home, dead_mob, dusted, gibbed) + +/// Checks if our mood can get worse by seeing another death (or better if we're weird like that) +/datum/mood_event/conditional/see_death/proc/can_stack_effect(mob/dead_mob) + // if we're desensitized, don't stack unless it's a buff + if(HAS_MIND_TRAIT(owner, TRAIT_DESENSITIZED) && mood_change > 0) + return FALSE + // if we're seeing a spawned mob die, don't stack + if(HAS_TRAIT(dead_mob, TRAIT_SPAWNED_MOB)) + return FALSE + return TRUE + +/// Changes "I saw Joe x" to "I saw the engineer x" +/datum/mood_event/conditional/see_death/proc/get_descriptor(mob/dead_mob) + if(is_pet(dead_mob)) + return "[dead_mob]" + if(dead_mob.name != "Unknown" && dead_mob.mind?.assigned_role?.job_flags & JOB_CREW_MEMBER) + return "the [LOWER_TEXT(dead_mob.mind?.assigned_role.title)]" + return "someone" + +/// Highest priority: Clown naivety about death +/datum/mood_event/conditional/see_death/naive + priority = 100 + mood_change = 0 + +/datum/mood_event/conditional/see_death/naive/condition_fulfilled(mob/living/who, mob/dead_mob, dusted, gibbed) + return HAS_MIND_TRAIT(who, TRAIT_NAIVE) && !dusted && !gibbed + +/datum/mood_event/conditional/see_death/naive/update_effect(mob/dead_mob) + description = "Have a good nap, [get_descriptor(dead_mob)]." + +/// Cultists are super brainwashed so they get buffs instead +/datum/mood_event/conditional/see_death/cult + priority = 90 + description = "More souls for the Geometer!" + mood_change = parent_type::mood_change * -0.5 + +/datum/mood_event/conditional/see_death/cult/condition_fulfilled(mob/living/who, mob/dead_mob, dusted, gibbed) + if(!HAS_TRAIT(who, TRAIT_CULT_HALO)) + return FALSE + if(HAS_TRAIT(dead_mob, TRAIT_CULT_HALO)) + return FALSE + return TRUE + +/// Revs are also brainwashed but less so +/datum/mood_event/conditional/see_death/revolutionary + priority = 85 + mood_change = parent_type::mood_change * -0.5 + +/datum/mood_event/conditional/see_death/revolutionary/condition_fulfilled(mob/living/who, mob/dead_mob, dusted, gibbed) + return IS_REVOLUTIONARY(who) && (dead_mob.mind?.assigned_role.job_flags & JOB_HEAD_OF_STAFF) + +/datum/mood_event/conditional/see_death/revolutionary/update_effect(mob/dead_mob) + var/datum/job/possible_head_job = dead_mob.mind?.assigned_role + description = "[possible_head_job.title ? "The [LOWER_TEXT(possible_head_job.title)]" : "Another head of staff"] is dead! Long live the revolution!" + +/// Then gamers +/datum/mood_event/conditional/see_death/gamer + priority = 80 + description = "Another one bites the dust!" + mood_change = parent_type::mood_change * -0.5 + +/datum/mood_event/conditional/see_death/gamer/condition_fulfilled(mob/living/who, mob/dead_mob, dusted, gibbed) + return istype(who.mind?.assigned_role, /datum/job/bitrunning_glitch) || istype(who.mind?.assigned_role, /datum/job/bit_avatar) + +/// People who just don't gaf +/datum/mood_event/conditional/see_death/dontcare + priority = 40 + mood_change = 0 + timeout = parent_type::timeout * 0.5 + +/datum/mood_event/conditional/see_death/dontcare/condition_fulfilled(mob/living/who, mob/dead_mob, dusted, gibbed) + if(HAS_PERSONALITY(who, /datum/personality/callous)) + return TRUE + if(HAS_PERSONALITY(who, /datum/personality/animal_disliker) && is_pet(dead_mob)) + return TRUE + return FALSE + +/datum/mood_event/conditional/see_death/dontcare/update_effect(mob/dead_mob, dusted, gibbed) + if(gibbed) + description = "Oh, %DEAD_MOB% exploded. Now I have to get the mop." + else if(dusted) + description = "Oh, %DEAD_MOB% was vaporized. Now I have to get the dustpan." + else + description = "Oh, %DEAD_MOB% died. Shame, I guess." + +/// Pets take priority over normal death moodlets +/datum/mood_event/conditional/see_death/pet + priority = 30 + +/datum/mood_event/conditional/see_death/pet/condition_fulfilled(mob/living/who, mob/dead_mob, dusted, gibbed) + return is_pet(dead_mob) + +/datum/mood_event/conditional/see_death/pet/update_effect(mob/dead_mob, dusted, gibbed) + if(gibbed) + description = "%DEAD_MOB% just exploded!!" + else if(dusted) + description = "%DEAD_MOB% just vaporized!!" + else + description = "%DEAD_MOB% just died!!" + + // future todo : make the hop care about ian, cmo runtime, etc. + if(HAS_PERSONALITY(owner, /datum/personality/animal_friend)) + mood_change *= 1.5 + timeout *= 1.25 + else if(!HAS_PERSONALITY(owner, /datum/personality/compassionate)) + mood_change *= 0.25 + timeout *= 0.5 + +/// Desensitized brings up the rear +/datum/mood_event/conditional/see_death/desensitized + priority = 10 + mood_change = parent_type::mood_change * 0.5 + timeout = parent_type::timeout * 0.5 + +/datum/mood_event/conditional/see_death/desensitized/condition_fulfilled(mob/living/who, mob/dead_mob, dusted, gibbed) + return HAS_MIND_TRAIT(who, TRAIT_DESENSITIZED) + +/datum/mood_event/conditional/see_death/desensitized/update_effect(mob/dead_mob, dusted, gibbed) + if(gibbed) + description = "I saw %DEAD_MOB% explode." + else if(dusted) + description = "I saw %DEAD_MOB% get vaporized." + else + description = "I saw %DEAD_MOB% die." diff --git a/code/datums/mood_events/generic_negative_events.dm b/code/datums/mood_events/generic_negative_events.dm index 66a5dc8ce49437..8bce84f73b43f4 100644 --- a/code/datums/mood_events/generic_negative_events.dm +++ b/code/datums/mood_events/generic_negative_events.dm @@ -245,14 +245,6 @@ mood_change = -15 event_flags = MOOD_EVENT_PAIN -/datum/mood_event/sad_empath - description = "Someone seems upset..." - mood_change = -1 - timeout = 60 SECONDS - -/datum/mood_event/sad_empath/add_effects(mob/sadtarget) - description = "[sadtarget.name] seems upset..." - /datum/mood_event/sacrifice_bad description = "Those darn savages!" mood_change = -5 @@ -555,108 +547,6 @@ description = "Blowing smoke in my face, really?" mood_change = 0 -/datum/mood_event/see_death - description = "I just saw someone die. How horrible..." - mood_change = -8 - timeout = 5 MINUTES - /// Message variant for callous people - var/dont_care_message = "Oh, %DEAD_MOB% died. Shame, I guess." - /// Message variant for people who care about animals - var/pet_message = "%DEAD_MOB% just died!!" - /// Message variant for desensitized people (security, medical, cult with halo, etc) - var/desensitized_message = "I saw %DEAD_MOB% die." - /// Standard message variant - var/normal_message = "I just saw %DEAD_MOB% die. How horrible..." - /// Naive mobs are immune to the effect - var/naive_immune = TRUE - -/datum/mood_event/see_death/add_effects(mob/dead_mob) - if(isnull(dead_mob)) - return - if(HAS_TRAIT(owner, TRAIT_NAIVE) && naive_immune) - description = "Have a good nap, [dead_mob.name]." - mood_change = 0 - timeout *= 0.2 - return - if(HAS_TRAIT(dead_mob, TRAIT_SPAWNED_MOB)) - mood_change *= 0.25 - timeout *= 0.2 - if(HAS_TRAIT(owner, TRAIT_CULT_HALO) && !HAS_TRAIT(dead_mob, TRAIT_CULT_HALO)) - // When cultists get halos, they stop caring about death - mood_change *= -0.5 - description = "More souls for the Geometer!" - return - - var/ispet = istype(dead_mob, /mob/living/basic/pet) || ismonkey(dead_mob) - if(HAS_PERSONALITY(owner, /datum/personality/callous) || (ispet && HAS_PERSONALITY(owner, /datum/personality/animal_disliker))) - description = replacetext(dont_care_message, "%DEAD_MOB%", get_descriptor(dead_mob)) - mood_change = 0 - timeout *= 0.5 - return - // future todo : make the hop care about ian, cmo runtime, etc. - if(ispet) - description = replacetext(pet_message, "%DEAD_MOB%", capitalize(dead_mob.name)) // doesn't use a descriptor, so it says "Ian died" - if(HAS_PERSONALITY(owner, /datum/personality/animal_friend)) - mood_change *= 1.5 - timeout *= 1.25 - else if(!HAS_PERSONALITY(owner, /datum/personality/compassionate)) - mood_change *= 0.25 - timeout *= 0.5 - return - if(HAS_PERSONALITY(owner, /datum/personality/compassionate)) - mood_change *= 1.5 - timeout *= 1.5 - if(HAS_TRAIT(owner, TRAIT_DESENSITIZED)) - mood_change *= 0.5 - timeout *= 0.5 - description = replacetext(desensitized_message, "%DEAD_MOB%", get_descriptor(dead_mob)) - return - - description = replacetext(normal_message, "%DEAD_MOB%", get_descriptor(dead_mob)) - -/datum/mood_event/see_death/be_refreshed(datum/mood/home, mob/dead_mob, ...) - // Every time we get refreshed we get worse if not desensitized - if(!HAS_TRAIT(owner, TRAIT_DESENSITIZED) && !HAS_TRAIT(dead_mob, TRAIT_SPAWNED_MOB)) - mood_change *= 1.5 - return ..() - -/datum/mood_event/see_death/be_replaced(datum/mood/home, datum/mood_event/new_event, ...) - // Only be replaced if the incoming event's base mood is worse than our base mood - // (IE: replace normal death events with gib events, but not the other way around) - if(initial(new_event.mood_change) > initial(mood_change)) - new_event.mood_change = max(new_event.mood_change, mood_change * 1.5) - return ..() - // Otherwise if it's equivalent or worse, refresh it instead - return be_refreshed(home) - -/// Changes "I saw Joe x" to "I saw the engineer x" -/datum/mood_event/see_death/proc/get_descriptor(mob/dead_mob) - if(isnull(dead_mob)) - return "something" - if(dead_mob.name != "Unknown" && dead_mob.mind?.assigned_role?.job_flags & JOB_CREW_MEMBER) - return "the [LOWER_TEXT(dead_mob.mind?.assigned_role.title)]" - return "someone" - -/datum/mood_event/see_death/gibbed - description = "Someone just exploded in front of me!!" - mood_change = -12 - timeout = 10 MINUTES - dont_care_message = "Oh, %DEAD_MOB% exploded. Now I have to get the mop." - pet_message = "%DEAD_MOB% just exploded!!" - desensitized_message = "I saw %DEAD_MOB% explode." - normal_message = "%DEAD_MOB% just exploded in front of me!!" - naive_immune = FALSE - -/datum/mood_event/see_death/dusted - description = "Someone was just vaporized in front of me!! I don't feel so good..." - mood_change = -12 - timeout = 10 MINUTES - dont_care_message = "Oh, %DEAD_MOB% was vaporized. Now I have to get the dustpan." - pet_message = "%DEAD_MOB% just vaporized!!" - desensitized_message = "I saw %DEAD_MOB% get vaporized." - normal_message = "%DEAD_MOB% was just vaporized in front of me!!" - naive_immune = FALSE - /datum/mood_event/slots/loss description = "Aww dang it!" mood_change = -2 diff --git a/code/datums/mood_events/generic_positive_events.dm b/code/datums/mood_events/generic_positive_events.dm index 52924d86f7fad7..cb4aa022224b66 100644 --- a/code/datums/mood_events/generic_positive_events.dm +++ b/code/datums/mood_events/generic_positive_events.dm @@ -165,7 +165,7 @@ if(HAS_PERSONALITY(owner, /datum/personality/animal_disliker)) mood_change = -1 - description = "Ewww, [animal.name] is so dirty! I don't want to touch it!" + description = "Ewww, [animal] is so dirty! I don't want to touch it!" return var/dog_fan = HAS_PERSONALITY(owner, /datum/personality/dog_fan) @@ -174,19 +174,19 @@ var/iscat = istype(animal, /mob/living/basic/pet/cat) if((dog_fan && isdog) || (cat_fan && iscat) || HAS_PERSONALITY(owner, /datum/personality/animal_friend)) mood_change = 3 - description = "I love [animal.name] so much, [animal.p_theyre()] so adorable! I can't stop petting [animal.p_them()]!" + description = "I love [animal] so much, [animal.p_theyre()] so adorable! I can't stop petting [animal.p_them()]!" return if(dog_fan && iscat) mood_change = -1 - description = "I don't like [animal.name]! I prefer dogs!" + description = "I don't like [animal]! I prefer dogs!" return if(cat_fan && isdog) mood_change = -1 - description = "I don't like [animal.name]! I prefer cats!" + description = "I don't like [animal]! I prefer cats!" return mood_change = 1 - description = "[animal.name] is adorable!" + description = "[animal] is adorable!" // Change the moodlet if we get refreshed (we may have pet another type of animal) /datum/mood_event/pet_animal/be_refreshed(datum/mood/home, mob/animal) diff --git a/code/datums/mutations/_mutations.dm b/code/datums/mutations/_mutations.dm index 19164ea98a5982..9055c7b458e030 100644 --- a/code/datums/mutations/_mutations.dm +++ b/code/datums/mutations/_mutations.dm @@ -129,7 +129,7 @@ return FALSE owner = acquirer dna = acquirer.dna - dna.mutations += src + LAZYADD(dna.mutations, src) SEND_SIGNAL(src, COMSIG_MUTATION_GAINED, acquirer) if(text_gain_indication) to_chat(owner, text_gain_indication) @@ -149,11 +149,11 @@ /datum/mutation/proc/get_visual_indicator() return -/datum/mutation/proc/on_life(seconds_per_tick, times_fired) +/datum/mutation/proc/on_life(seconds_per_tick) return /datum/mutation/proc/on_losing(mob/living/carbon/human/owner) - if(!istype(owner) || !(owner.dna.mutations.Remove(src))) + if(!istype(owner) || !(owner.dna.mutations?.Remove(src))) return TRUE . = FALSE SEND_SIGNAL(src, COMSIG_MUTATION_LOST, owner) diff --git a/code/datums/mutations/body.dm b/code/datums/mutations/body.dm index a999cd6e9c26d6..db34ac80bfaa2f 100644 --- a/code/datums/mutations/body.dm +++ b/code/datums/mutations/body.dm @@ -10,7 +10,7 @@ synchronizer_coeff = 1 power_coeff = 1 -/datum/mutation/epilepsy/on_life(seconds_per_tick, times_fired) +/datum/mutation/epilepsy/on_life(seconds_per_tick) if(SPT_PROB(0.5 * GET_MUTATION_SYNCHRONIZER(src), seconds_per_tick)) trigger_seizure() @@ -89,7 +89,7 @@ synchronizer_coeff = 1 power_coeff = 1 -/datum/mutation/cough/on_life(seconds_per_tick, times_fired) +/datum/mutation/cough/on_life(seconds_per_tick) if(SPT_PROB(2.5 * GET_MUTATION_SYNCHRONIZER(src), seconds_per_tick) && owner.stat == CONSCIOUS) owner.drop_all_held_items() owner.emote("cough") @@ -106,7 +106,7 @@ text_gain_indication = span_danger("You feel screams echo through your mind...") text_lose_indication = span_notice("The screaming in your mind fades.") -/datum/mutation/paranoia/on_life(seconds_per_tick, times_fired) +/datum/mutation/paranoia/on_life(seconds_per_tick) if(SPT_PROB(2.5, seconds_per_tick) && owner.stat == CONSCIOUS) owner.emote("scream") if(prob(25)) @@ -214,7 +214,7 @@ text_gain_indication = span_danger("You twitch.") synchronizer_coeff = 1 -/datum/mutation/tourettes/on_life(seconds_per_tick, times_fired) +/datum/mutation/tourettes/on_life(seconds_per_tick) if(SPT_PROB(5 * GET_MUTATION_SYNCHRONIZER(src), seconds_per_tick) && owner.stat == CONSCIOUS && !owner.IsStun()) switch(rand(1, 3)) /* DOPPLER EDIT BEGIN - ORIGINAL: @@ -366,7 +366,7 @@ synchronizer_coeff = 1 power_coeff = 1 -/datum/mutation/fire/on_life(seconds_per_tick, times_fired) +/datum/mutation/fire/on_life(seconds_per_tick) if(SPT_PROB((0.05+(100-dna.stability)/19.5) * GET_MUTATION_SYNCHRONIZER(src), seconds_per_tick)) owner.adjust_fire_stacks(2 * GET_MUTATION_POWER(src)) owner.ignite_mob() @@ -395,7 +395,7 @@ power_coeff = 1 var/warpchance = 0 -/datum/mutation/badblink/on_life(seconds_per_tick, times_fired) +/datum/mutation/badblink/on_life(seconds_per_tick) if(SPT_PROB(warpchance, seconds_per_tick)) var/warpmessage = pick( span_warning("With a sickening 720-degree twist of [owner.p_their()] back, [owner] vanishes into thin air."), @@ -423,7 +423,7 @@ /// The cooldown for the warning message COOLDOWN_DECLARE(msgcooldown) -/datum/mutation/acidflesh/on_life(seconds_per_tick, times_fired) +/datum/mutation/acidflesh/on_life(seconds_per_tick) if(SPT_PROB(13, seconds_per_tick)) if(COOLDOWN_FINISHED(src, msgcooldown)) to_chat(owner, span_danger("Your acid flesh bubbles...")) @@ -705,14 +705,14 @@ else ADD_TRAIT(owner, TRAIT_SOFTSPOKEN, REF(src)) -/datum/mutation/inexorable/on_life(seconds_per_tick, times_fired) +/datum/mutation/inexorable/on_life(seconds_per_tick) if(owner.health > owner.crit_threshold || owner.stat != CONSCIOUS || HAS_TRAIT(owner, TRAIT_STASIS)) return // Gives you 30 seconds of being in soft crit... give or take if(HAS_TRAIT(owner, TRAIT_TOXIMMUNE) || HAS_TRAIT(owner, TRAIT_TOXINLOVER)) - owner.adjustBruteLoss(1 * seconds_per_tick * GET_MUTATION_SYNCHRONIZER(src), forced = TRUE) + owner.adjust_brute_loss(1 * seconds_per_tick * GET_MUTATION_SYNCHRONIZER(src), forced = TRUE) else - owner.adjustToxLoss(0.5 * seconds_per_tick * GET_MUTATION_SYNCHRONIZER(src), forced = TRUE) - owner.adjustBruteLoss(0.5 * seconds_per_tick * GET_MUTATION_SYNCHRONIZER(src), forced = TRUE) + owner.adjust_tox_loss(0.5 * seconds_per_tick * GET_MUTATION_SYNCHRONIZER(src), forced = TRUE) + owner.adjust_brute_loss(0.5 * seconds_per_tick * GET_MUTATION_SYNCHRONIZER(src), forced = TRUE) // Offsets suffocation but not entirely - owner.adjustOxyLoss(-0.5 * seconds_per_tick, forced = TRUE) + owner.adjust_oxy_loss(-0.5 * seconds_per_tick, forced = TRUE) diff --git a/code/datums/mutations/chameleon.dm b/code/datums/mutations/chameleon.dm index c3d74b6304dc38..0148dd56234918 100644 --- a/code/datums/mutations/chameleon.dm +++ b/code/datums/mutations/chameleon.dm @@ -22,11 +22,13 @@ RegisterSignal(owner, COMSIG_MOVABLE_MOVED, PROC_REF(on_move)) RegisterSignal(owner, COMSIG_LIVING_UNARMED_ATTACK, PROC_REF(on_attack_hand)) -/datum/mutation/chameleon/on_life(seconds_per_tick, times_fired) - /// NOVA EDIT BEGIN +/datum/mutation/chameleon/on_life(seconds_per_tick) + // DOPPLER EDIT - Toggleable chameleon skin if(HAS_TRAIT(owner, TRAIT_CHAMELEON_SKIN)) owner.alpha = max(owner.alpha - (12.5 * (GET_MUTATION_POWER(src)) * seconds_per_tick), 0) - /// NOVA EDIT END + // ORIGINAL: + //owner.alpha = max(owner.alpha - (12.5 * (GET_MUTATION_POWER(src)) * seconds_per_tick), 0) + // DOPPLER EDIT END //Upgraded mutation of the base variant, used for changelings. No instability and better power_coeff /datum/mutation/chameleon/changeling diff --git a/code/datums/mutations/hulk.dm b/code/datums/mutations/hulk.dm index 133713f3bdc0f2..25d521dbd109ff 100644 --- a/code/datums/mutations/hulk.dm +++ b/code/datums/mutations/hulk.dm @@ -34,11 +34,14 @@ if(!.) return for(var/obj/item/bodypart/part as anything in owner.bodyparts) - part.add_color_override(bodypart_color, LIMB_COLOR_HULK) + if (part.bodytype & BODYTYPE_ORGANIC) + part.add_color_override(bodypart_color, LIMB_COLOR_HULK) owner.update_body_parts() owner.add_mood_event("hulk", /datum/mood_event/hulk) RegisterSignal(owner, COMSIG_LIVING_EARLY_UNARMED_ATTACK, PROC_REF(on_attack_hand)) RegisterSignal(owner, COMSIG_MOB_CLICKON, PROC_REF(check_swing)) + RegisterSignal(owner, COMSIG_CARBON_ATTACH_LIMB, PROC_REF(texture_limb)) + RegisterSignal(owner, COMSIG_CARBON_REMOVE_LIMB, PROC_REF(untexture_limb)) owner.add_movespeed_mod_immunities("hulk", /datum/movespeed_modifier/damage_slowdown) /datum/mutation/hulk/proc/on_attack_hand(mob/living/carbon/human/source, atom/target, proximity, modifiers) @@ -62,7 +65,7 @@ /datum/mutation/hulk/proc/scream_attack(mob/living/carbon/human/source) source.say("WAAAAAAAAAAAAAAGH!", forced="hulk") -/datum/mutation/hulk/on_life(seconds_per_tick, times_fired) +/datum/mutation/hulk/on_life(seconds_per_tick) if(owner.health < owner.crit_threshold) on_losing(owner) to_chat(owner, span_danger("You suddenly feel very weak.")) @@ -79,6 +82,15 @@ UnregisterSignal(owner, COMSIG_MOB_CLICKON) owner.remove_movespeed_mod_immunities("hulk", /datum/movespeed_modifier/damage_slowdown) +/datum/mutation/hulk/proc/texture_limb(atom/source, obj/item/bodypart/limb) + SIGNAL_HANDLER + if (limb.bodytype & BODYTYPE_ORGANIC) + limb.add_color_override(bodypart_color, LIMB_COLOR_HULK) + +/datum/mutation/hulk/proc/untexture_limb(atom/source, obj/item/bodypart/limb) + SIGNAL_HANDLER + limb.remove_color_override(LIMB_COLOR_HULK) + /// How many steps it takes to throw the mob #define HULK_TAILTHROW_STEPS 28 @@ -184,7 +196,7 @@ if(!collateral_mob.density || collateral_mob == yeeted_person) continue - yeeted_person.adjustBruteLoss(step*0.5) + yeeted_person.adjust_brute_loss(step*0.5) playsound(collateral_mob,'sound/items/weapons/punch1.ogg',50,TRUE) log_combat(the_hulk, collateral_mob, "has smacked with tail swing victim") log_combat(the_hulk, yeeted_person, "has smacked this person into someone while tail swinging") // i have no idea how to better word this @@ -192,14 +204,14 @@ if(collateral_mob == the_hulk) // if the hulk moves wrong and crosses himself the_hulk.visible_message(span_warning("[the_hulk] smacks [the_hulk.p_them()]self with [yeeted_person]!"), span_userdanger("You end up smacking [yeeted_person] into yourself!"), ignored_mobs = yeeted_person) to_chat(yeeted_person, span_userdanger("[the_hulk] smacks you into [the_hulk.p_them()]self, turning you free!")) - the_hulk.adjustBruteLoss(step) + the_hulk.adjust_brute_loss(step) return yeeted_person.visible_message(span_warning("[the_hulk] swings [yeeted_person] directly into [collateral_mob], sending [collateral_mob.p_them()] flying!"), \ span_userdanger("You're smacked into [collateral_mob]!"), ignored_mobs = collateral_mob) to_chat(collateral_mob, span_userdanger("[the_hulk] swings [yeeted_person] directly into you, sending you flying!")) - collateral_mob.adjustBruteLoss(step*0.5) + collateral_mob.adjust_brute_loss(step*0.5) collateral_mob.throw_at(collat_throw_target, round(step * 0.25) + 1, round(step * 0.25) + 1) step -= 5 delay += 5 @@ -261,9 +273,10 @@ TRAIT_PUSHIMMUNE, TRAIT_STUNIMMUNE, TRAIT_ANALGESIA, + TRAIT_NO_OXYLOSS_PASSOUT, ) // fight till your last breath -/datum/mutation/hulk/superhuman/on_life(seconds_per_tick, times_fired) +/datum/mutation/hulk/superhuman/on_life(seconds_per_tick) return /datum/mutation/hulk/ork diff --git a/code/datums/mutations/sight.dm b/code/datums/mutations/sight.dm index 3bbf1a1f2e6b26..c618f1f0a3397c 100644 --- a/code/datums/mutations/sight.dm +++ b/code/datums/mutations/sight.dm @@ -107,7 +107,7 @@ if(iscarbon(cast_on)) var/mob/living/carbon/carbon_cast_on = cast_on - carbon_cast_on.adjustOrganLoss(ORGAN_SLOT_EYES, eye_damage) + carbon_cast_on.adjust_organ_loss(ORGAN_SLOT_EYES, eye_damage) ///X-ray Vision lets you see through walls. /datum/mutation/xray diff --git a/code/datums/mutations/speech.dm b/code/datums/mutations/speech.dm index 61ee5e52977b9f..99fa867fdc7997 100644 --- a/code/datums/mutations/speech.dm +++ b/code/datums/mutations/speech.dm @@ -10,7 +10,7 @@ quality = MINOR_NEGATIVE text_gain_indication = span_danger("You feel nervous.") -/datum/mutation/nervousness/on_life(seconds_per_tick, times_fired) +/datum/mutation/nervousness/on_life(seconds_per_tick) if(SPT_PROB(5, seconds_per_tick)) owner.set_stutter_if_lower(20 SECONDS) @@ -208,7 +208,7 @@ . = ..() AddComponent(/datum/component/speechmod, replacements = strings("elvis_replacement.json", "elvis")) -/datum/mutation/elvis/on_life(seconds_per_tick, times_fired) +/datum/mutation/elvis/on_life(seconds_per_tick) switch(pick(1,2)) if(1) if(SPT_PROB(7.5, seconds_per_tick)) diff --git a/code/datums/mutations/touch.dm b/code/datums/mutations/touch.dm index 152439644c8719..7d942f1d7da794 100644 --- a/code/datums/mutations/touch.dm +++ b/code/datums/mutations/touch.dm @@ -220,9 +220,9 @@ . = FALSE // Damage to heal - var/brute_to_heal = min(hurtguy.getBruteLoss(), 35 * heal_multiplier) + var/brute_to_heal = min(hurtguy.get_brute_loss(), 35 * heal_multiplier) // no double dipping - var/burn_to_heal = min(hurtguy.getFireLoss(), (35 - brute_to_heal) * heal_multiplier) + var/burn_to_heal = min(hurtguy.get_fire_loss(), (35 - brute_to_heal) * heal_multiplier) // Get at least organic limb to transfer the damage to var/list/mendicant_organic_limbs = list() @@ -241,11 +241,11 @@ mendicant_transfer_limb.receive_damage(brute_to_heal * pain_multiplier, burn_to_heal * pain_multiplier, forced = TRUE, wound_bonus = CANT_WOUND) if(brute_to_heal) - hurtguy.adjustBruteLoss(-brute_to_heal) + hurtguy.adjust_brute_loss(-brute_to_heal) . = TRUE if(burn_to_heal) - hurtguy.adjustFireLoss(-burn_to_heal) + hurtguy.adjust_fire_loss(-burn_to_heal) . = TRUE if(!.) @@ -306,49 +306,43 @@ iter_wound.remove_wound() iter_wound.apply_wound(mendicant_transfer_limb) - if(HAS_TRAIT(mendicant, TRAIT_NOBLOOD)) + if(!CAN_HAVE_BLOOD(mendicant) || !CAN_HAVE_BLOOD(hurtguy)) return . // 10% base var/max_blood_transfer = (BLOOD_VOLUME_NORMAL * 0.10) * heal_multiplier // Too little blood - if(hurtguy.blood_volume < BLOOD_VOLUME_NORMAL) - var/max_blood_to_hurtguy = min(mendicant.blood_volume, BLOOD_VOLUME_NORMAL - hurtguy.blood_volume) - var/blood_to_hurtguy = min(max_blood_transfer, max_blood_to_hurtguy) - if(!blood_to_hurtguy) - return . - + if(hurtguy.get_blood_volume() < BLOOD_VOLUME_NORMAL) // We ignore incompatibility here. - if(!mendicant.transfer_blood_to(hurtguy, blood_to_hurtguy, forced = TRUE, ignore_incompatibility = TRUE)) + var/blood_transferred = mendicant.transfer_blood_to(hurtguy, max_blood_transfer, ignore_low_blood = TRUE, ignore_incompatibility = TRUE) + + if(!blood_transferred) return to_chat(mendicant, span_notice("Your veins (and brain) feel a bit lighter.")) . = TRUE // Because we do our own spin on it! if(hurtguy.get_blood_compatibility(mendicant) == FALSE) - hurtguy.adjustToxLoss((blood_to_hurtguy * 0.1) * pain_multiplier) // 1 dmg per 10 blood + hurtguy.adjust_tox_loss((blood_transferred * 0.1) * pain_multiplier) // 1 dmg per 10 blood to_chat(hurtguy, span_notice("Your veins feel thicker, but they itch a bit.")) else to_chat(hurtguy, span_notice("Your veins feel thicker!")) return - if(hurtguy.blood_volume < BLOOD_VOLUME_MAXIMUM) + if(hurtguy.get_blood_volume() < BLOOD_VOLUME_EXCESS) return - // Too MUCH blood - var/max_blood_to_mendicant = BLOOD_VOLUME_EXCESS - hurtguy.blood_volume - var/blood_to_mendicant = min(max_blood_transfer, max_blood_to_mendicant) - // mender always gonna have blood - // We ignore incompatibility here. - if(!hurtguy.transfer_blood_to(mendicant, hurtguy.blood_volume - BLOOD_VOLUME_EXCESS, forced = TRUE, ignore_incompatibility = TRUE)) + var/blood_received = hurtguy.transfer_blood_to(mendicant, hurtguy.get_blood_volume() - BLOOD_VOLUME_EXCESS, ignore_incompatibility = TRUE) + + if(!blood_received) return to_chat(hurtguy, span_notice("Your veins don't feel quite so swollen anymore.")) . = TRUE // Because we do our own spin on it! if(mendicant.get_blood_compatibility(hurtguy) == FALSE) - mendicant.adjustToxLoss((blood_to_mendicant * 0.1) * pain_multiplier) // 1 dmg per 10 blood + mendicant.adjust_tox_loss((blood_received * 0.1) * pain_multiplier) // 1 dmg per 10 blood to_chat(mendicant, span_notice("Your veins swell and itch!")) else to_chat(mendicant, span_notice("Your veins swell!")) @@ -356,6 +350,8 @@ /datum/action/cooldown/spell/touch/lay_on_hands/proc/determine_if_this_hurts_instead(mob/living/carbon/mendicant, mob/living/hurtguy) + var/hurtguy_smiteable = SEND_SIGNAL(hurtguy, COMSIG_ON_LAY_ON_HANDS, mendicant) + if(hurtguy.mob_biotypes & MOB_UNDEAD && mendicant.mob_biotypes & MOB_UNDEAD) return FALSE //always return false if we're both undead //undead solidarity @@ -365,10 +361,9 @@ if(HAS_TRAIT(hurtguy, TRAIT_EVIL) && !HAS_TRAIT(mendicant, TRAIT_EVIL)) //Is the guy evil and we're not evil? If so, hurt. return TRUE - if(!(hurtguy.mob_biotypes & MOB_UNDEAD) && HAS_TRAIT(hurtguy, TRAIT_EMPATH) && HAS_TRAIT(mendicant, TRAIT_EVIL)) //Is the guy not undead, they're an empath and we're evil? If so, hurt. + if(hurtguy_smiteable) //Is some other property of the target (like the empath component) causing them to be smited? If so, hurt. return TRUE - - return FALSE + return (FALSE) ///If our target was undead or evil, we blast them with a firey beam rather than healing them. For, you know, 'holy' reasons. When did genes become so morally uptight? diff --git a/code/datums/mutations/void_magnet.dm b/code/datums/mutations/void_magnet.dm index a6c5c967a03d5e..122fab4e198f77 100644 --- a/code/datums/mutations/void_magnet.dm +++ b/code/datums/mutations/void_magnet.dm @@ -57,7 +57,7 @@ return ..() /// Signal proc for [COMSIG_LIVING_LIFE]. Has a chance of casting itself randomly. -/datum/action/cooldown/spell/void/cursed/proc/on_life(mob/living/source, seconds_per_tick, times_fired) +/datum/action/cooldown/spell/void/cursed/proc/on_life(mob/living/source, seconds_per_tick) SIGNAL_HANDLER if(!isliving(source) || HAS_TRAIT(source, TRAIT_STASIS) || source.stat == DEAD || HAS_TRAIT(source, TRAIT_NO_TRANSFORM)) diff --git a/code/datums/outfit.dm b/code/datums/outfit.dm index 20ae7f4928e6f4..8ac807126dc49b 100644 --- a/code/datums/outfit.dm +++ b/code/datums/outfit.dm @@ -236,7 +236,7 @@ var/obj/item/clothing/under/U = user.w_uniform if(U) U.attach_accessory(SSwardrobe.provide_type(accessory, user)) - else + else if(!visuals_only) WARNING("Unable to equip accessory [accessory] in outfit [name]. No uniform present!") if(l_hand) diff --git a/code/datums/pod_style.dm b/code/datums/pod_style.dm index 8888048980cda7..77fc2a4d1509ab 100644 --- a/code/datums/pod_style.dm +++ b/code/datums/pod_style.dm @@ -33,7 +33,7 @@ /datum/pod_style/centcom name = "\improper CentCom supply pod" ui_name = "Nanotrasen" - desc = "A Nanotrasen supply pod, this one has been marked with Central Command's designations. Teleports back to CentCom after delivery." + desc = "A Nanotrasen supply pod. This one has been marked with Central Command's designations. Teleports back to CentCom after delivery." decal_icon = "centcom" glow_color = "blue" id = "centcom" diff --git a/code/datums/proximity_monitor/fields/heretic_arena.dm b/code/datums/proximity_monitor/fields/heretic_arena.dm index 4c41be6cfe6bae..432a9dfbd7bbe5 100644 --- a/code/datums/proximity_monitor/fields/heretic_arena.dm +++ b/code/datums/proximity_monitor/fields/heretic_arena.dm @@ -162,8 +162,8 @@ GLOBAL_LIST_EMPTY(heretic_arenas) // The mansus celebrates your efforts if(IS_HERETIC(owner)) owner.heal_overall_damage(60, 60, 60) - owner.adjustToxLoss(-60, forced = TRUE) // Slime heretics everywhere... - owner.adjustOxyLoss(-60) + owner.adjust_tox_loss(-60, forced = TRUE) // Slime heretics everywhere... + owner.adjust_oxy_loss(-60) if(iscarbon(owner)) var/mob/living/carbon/carbon_owner = owner for(var/datum/wound/wound as anything in carbon_owner.all_wounds) diff --git a/code/datums/quirks/negative_quirks/allergic.dm b/code/datums/quirks/negative_quirks/allergic.dm index 73da46748a40e5..440e8f6bf0b757 100644 --- a/code/datums/quirks/negative_quirks/allergic.dm +++ b/code/datums/quirks/negative_quirks/allergic.dm @@ -37,6 +37,7 @@ allergy_string = allergy_chem_names.Join(", ") name = "Extreme [allergy_string] Allergies" medical_record_text = "Patient's immune system responds violently to [allergy_string]" + RegisterSignal(quirk_holder, COMSIG_MOB_REAGENT_TICK, PROC_REF(block_metab)) /datum/quirk/item_quirk/allergic/add_unique(client/client_source) var/mob/living/carbon/human/human_holder = quirk_holder @@ -44,9 +45,6 @@ give_item_to_holder(dogtag, list(LOCATION_BACKPACK, LOCATION_HANDS), flavour_text = "Make sure medical staff can see this...", notify_player = TRUE) -/datum/quirk/item_quirk/allergic/add() - RegisterSignal(quirk_holder, COMSIG_MOB_REAGENT_TICK, PROC_REF(block_metab)) - /datum/quirk/item_quirk/allergic/remove() UnregisterSignal(quirk_holder, COMSIG_MOB_REAGENT_TICK) @@ -54,7 +52,7 @@ quirk_holder.add_mob_memory(/datum/memory/key/quirk_allergy, allergy_string = allergy_string) to_chat(quirk_holder, span_boldnotice("You are allergic to [allergy_string], make sure not to consume any of these!")) -/datum/quirk/item_quirk/allergic/proc/block_metab(mob/living/carbon/source, datum/reagent/chem, seconds_per_tick, times_fired) +/datum/quirk/item_quirk/allergic/proc/block_metab(mob/living/carbon/source, datum/reagent/chem, seconds_per_tick) SIGNAL_HANDLER if(!is_type_in_list(chem, allergies)) @@ -67,5 +65,5 @@ source.reagents.add_reagent(/datum/reagent/toxin/histamine, 3 * seconds_per_tick) if(SPT_PROB(10, seconds_per_tick)) source.vomit(VOMIT_CATEGORY_DEFAULT) - source.adjustOrganLoss(pick(ORGAN_SLOT_BRAIN, ORGAN_SLOT_APPENDIX, ORGAN_SLOT_LUNGS, ORGAN_SLOT_HEART, ORGAN_SLOT_LIVER, ORGAN_SLOT_STOMACH), 10) + source.adjust_organ_loss(pick(ORGAN_SLOT_BRAIN, ORGAN_SLOT_APPENDIX, ORGAN_SLOT_LUNGS, ORGAN_SLOT_HEART, ORGAN_SLOT_LIVER, ORGAN_SLOT_STOMACH), 10) return NONE diff --git a/code/datums/quirks/negative_quirks/asthma.dm b/code/datums/quirks/negative_quirks/asthma.dm index 08ae561dc6d4da..1c4e53640f9373 100644 --- a/code/datums/quirks/negative_quirks/asthma.dm +++ b/code/datums/quirks/negative_quirks/asthma.dm @@ -1,6 +1,6 @@ /datum/quirk/item_quirk/asthma name = "Asthma" - desc = "You suffer from asthma, a inflammatory disorder that causes your airpipe to squeeze shut! Be careful around smoke!" + desc = "You suffer from asthma, an inflammatory disorder that causes your airpipe to squeeze shut! Be careful around smoke!" icon = FA_ICON_LUNGS_VIRUS value = -4 // trivialized by NOBREATH but still quite dangerous gain_text = span_danger("You have a harder time breathing.") @@ -81,7 +81,7 @@ current_attack?.cure() UnregisterSignal(quirk_holder, COMSIG_CARBON_EXPOSED_TO_SMOKE, COMSIG_CARBON_LOSE_ORGAN, COMSIG_ATOM_EXPOSE_REAGENTS, COMSIG_LIVING_POST_FULLY_HEAL, COMSIG_LIVING_LIFE) -/datum/quirk/item_quirk/asthma/proc/on_life(mob/living/source, seconds_per_tick, times_fired) +/datum/quirk/item_quirk/asthma/proc/on_life(mob/living/source, seconds_per_tick) SIGNAL_HANDLER if (quirk_holder.stat == DEAD) diff --git a/code/datums/quirks/negative_quirks/blood_deficiency.dm b/code/datums/quirks/negative_quirks/blood_deficiency.dm index bacdcff80ea529..21ba3434d7c266 100644 --- a/code/datums/quirks/negative_quirks/blood_deficiency.dm +++ b/code/datums/quirks/negative_quirks/blood_deficiency.dm @@ -31,15 +31,15 @@ return FALSE return ..() -/datum/quirk/blooddeficiency/proc/lose_blood(datum/source, seconds_per_tick, times_fired) +/datum/quirk/blooddeficiency/proc/lose_blood(datum/source, seconds_per_tick) SIGNAL_HANDLER var/mob/living/carbon/human/human_holder = quirk_holder - if(human_holder.stat == DEAD || human_holder.blood_volume <= min_blood) + + if(human_holder.stat == DEAD) return - if(!HAS_TRAIT(quirk_holder, TRAIT_NOBLOOD)) - human_holder.blood_volume = max(min_blood, human_holder.blood_volume - human_holder.dna.species.blood_deficiency_drain_rate * seconds_per_tick) + human_holder.adjust_blood_volume(-human_holder.dna.species.blood_deficiency_drain_rate * seconds_per_tick, minimum = min_blood) /// Try to update the mail goodies to match the quirk holder's blood type. If we fail for whatever reason then it will just default to the initial O- blood pack that we start with. /datum/quirk/blooddeficiency/proc/update_mail(mob/living/carbon/human/human_quirk_holder, datum/blood_type/new_blood_type, update_cached_blood_dna_info) diff --git a/code/datums/quirks/negative_quirks/brain_problems.dm b/code/datums/quirks/negative_quirks/brain_problems.dm index 4ecc9c0713a38a..d9257a33c6b46b 100644 --- a/code/datums/quirks/negative_quirks/brain_problems.dm +++ b/code/datums/quirks/negative_quirks/brain_problems.dm @@ -35,4 +35,4 @@ return ..() /datum/quirk/item_quirk/brainproblems/process(seconds_per_tick) - quirk_holder.adjustOrganLoss(ORGAN_SLOT_BRAIN, 0.2 * seconds_per_tick) + quirk_holder.adjust_organ_loss(ORGAN_SLOT_BRAIN, 0.2 * seconds_per_tick) diff --git a/code/datums/quirks/negative_quirks/family_heirloom.dm b/code/datums/quirks/negative_quirks/family_heirloom.dm index 8b3d826cb84f9f..98951368cab693 100644 --- a/code/datums/quirks/negative_quirks/family_heirloom.dm +++ b/code/datums/quirks/negative_quirks/family_heirloom.dm @@ -52,6 +52,7 @@ to_chat(quirk_holder, span_boldnotice("A wave of existential dread runs over you as you realize your precious family heirloom is missing. Perhaps the Gods will show mercy on your cursed soul?")) return family_heirloom.AddComponent(/datum/component/heirloom, quirk_holder.mind, family_name) + quirk_holder.add_mob_memory(/datum/memory/key/quirk_heirloom, protagonist = quirk_holder, heirloom_name = initial(family_heirloom.name)) return ..() diff --git a/code/datums/quirks/negative_quirks/indebted.dm b/code/datums/quirks/negative_quirks/indebted.dm index eac2cdf5192dd6..9d643654d31193 100644 --- a/code/datums/quirks/negative_quirks/indebted.dm +++ b/code/datums/quirks/negative_quirks/indebted.dm @@ -15,7 +15,7 @@ var/debt = PAYCHECK_CREW * rand(275, 325) account.account_debt += debt RegisterSignal(account, COMSIG_BANK_ACCOUNT_DEBT_PAID, PROC_REF(on_debt_paid)) - to_chat(client_source.mob, span_warning("You remember, you've a hefty, [debt] credits debt to pay...")) + to_chat(client_source.mob, span_warning("You remember, you've a hefty, [debt] [MONEY_NAME_SINGULAR] debt to pay...")) ///Once the debt is extinguished, award an achievement and a pin for actually taking care of it. /datum/quirk/indebted/proc/on_debt_paid(datum/bank_account/source) diff --git a/code/datums/quirks/negative_quirks/monophobia.dm b/code/datums/quirks/negative_quirks/monophobia.dm new file mode 100644 index 00000000000000..5c0d732826c3f7 --- /dev/null +++ b/code/datums/quirks/negative_quirks/monophobia.dm @@ -0,0 +1,16 @@ +/datum/quirk/monophobia + name = "Monophobia" + desc = "You have an extreme fear of loneliness, and have always tried to stick to large groups." + icon = FA_ICON_PEOPLE_GROUP + value = -3 + medical_record_text = "Patient has a severe fear of being left alone." + hardcore_value = 5 + mail_goodies = list(/obj/effect/spawner/random/entertainment/plushie) + +/datum/quirk/monophobia/add(client/client_source) + var/mob/living/carbon/human/human_holder = quirk_holder + human_holder.gain_trauma(new /datum/brain_trauma/severe/monophobia(), TRAUMA_RESILIENCE_ABSOLUTE) + +/datum/quirk/monophobia/remove() + var/mob/living/carbon/human/human_holder = quirk_holder + human_holder.cure_trauma_type(/datum/brain_trauma/severe/monophobia, TRAUMA_RESILIENCE_ABSOLUTE) diff --git a/code/datums/quirks/negative_quirks/prosthetic_organ.dm b/code/datums/quirks/negative_quirks/prosthetic_organ.dm index 7877e177b39fa3..dddba8a28e22a1 100644 --- a/code/datums/quirks/negative_quirks/prosthetic_organ.dm +++ b/code/datums/quirks/negative_quirks/prosthetic_organ.dm @@ -29,7 +29,7 @@ preferred_organ = GLOB.organ_choice[pick(GLOB.organ_choice)] var/list/possible_organ_slots = organ_slots.Copy() - if(HAS_TRAIT(human_holder, TRAIT_NOBLOOD)) + if(!CAN_HAVE_BLOOD(human_holder)) possible_organ_slots -= ORGAN_SLOT_HEART if(HAS_TRAIT(human_holder, TRAIT_NOBREATH)) possible_organ_slots -= ORGAN_SLOT_LUNGS diff --git a/code/datums/quirks/negative_quirks/quadruple_amputee.dm b/code/datums/quirks/negative_quirks/quadruple_amputee.dm index 716ec9ef2399e8..82bb0f8deb5e28 100644 --- a/code/datums/quirks/negative_quirks/quadruple_amputee.dm +++ b/code/datums/quirks/negative_quirks/quadruple_amputee.dm @@ -17,12 +17,12 @@ /datum/quirk/quadruple_amputee/post_add() to_chat(quirk_holder, span_bolddanger("All your limbs have been replaced with surplus prosthetics. They are fragile and will easily come apart under duress. \ - Additionally, you need to use a welding tool and cables to repair them, instead of bruise packs and ointment.")) + Additionally, you need to use a welding tool and cables to repair them, instead of sutures and regenerative mesh.")) /datum/quirk/quadruple_amputee/remove() if(QDELING(quirk_holder)) return - + var/mob/living/carbon/human/human_holder = quirk_holder human_holder.reset_to_original_bodypart(BODY_ZONE_L_ARM) human_holder.reset_to_original_bodypart(BODY_ZONE_R_ARM) diff --git a/code/datums/quirks/negative_quirks/tin_man.dm b/code/datums/quirks/negative_quirks/tin_man.dm index a75cbbedd766ff..054a5eecf06de6 100644 --- a/code/datums/quirks/negative_quirks/tin_man.dm +++ b/code/datums/quirks/negative_quirks/tin_man.dm @@ -17,7 +17,7 @@ ORGAN_SLOT_STOMACH = /obj/item/organ/stomach/cybernetic/surplus, ) var/list/possible_organ_slots = organ_slots.Copy() - if(HAS_TRAIT(human_holder, TRAIT_NOBLOOD)) + if(!CAN_HAVE_BLOOD(human_holder)) possible_organ_slots -= ORGAN_SLOT_HEART if(HAS_TRAIT(human_holder, TRAIT_NOBREATH)) possible_organ_slots -= ORGAN_SLOT_LUNGS diff --git a/code/datums/quirks/neutral_quirks/transhumanist.dm b/code/datums/quirks/neutral_quirks/transhumanist.dm index cbd85150e76731..82570e6cf21c7a 100644 --- a/code/datums/quirks/neutral_quirks/transhumanist.dm +++ b/code/datums/quirks/neutral_quirks/transhumanist.dm @@ -46,6 +46,31 @@ COMSIG_CARBON_GAIN_ORGAN, COMSIG_CARBON_LOSE_ORGAN, )) + if(isnull(old_part)) + quirk_holder.clear_mood_event(MOOD_CATEGORY_TRANSHUMANIST_BODYPART) + quirk_holder.clear_mood_event(MOOD_CATEGORY_TRANSHUMANIST_PEOPLE) + return + + if(QDELETED(quirk_holder)) // We don't ever want to be adding organs to qdeleting mobs + QDEL_NULL(old_part) + return + + var/mob/living/carbon/human/human_holder = quirk_holder + if(isbodypart(old_part)) + var/obj/item/bodypart/old_bodypart = old_part + human_holder.del_and_replace_bodypart(old_bodypart, special = TRUE) + old_bodypart = null + else if(isorgan(old_part)) + var/obj/item/organ/old_organ = old_part + old_part = human_holder.get_organ_slot(ORGAN_SLOT_TONGUE) + old_organ.Insert(quirk_holder, special = TRUE) + old_part.moveToNullspace() + STOP_PROCESSING(SSobj, old_part) + old_organ = null + old_part = null + + quirk_holder.clear_mood_event(MOOD_CATEGORY_TRANSHUMANIST_BODYPART) + quirk_holder.clear_mood_event(MOOD_CATEGORY_TRANSHUMANIST_PEOPLE) /datum/quirk/transhumanist/proc/get_bodypart_score(mob/living/carbon/target, limbs_only = FALSE) var/organic_bodytypes = 0 @@ -66,7 +91,7 @@ else if(organ.organ_flags & ORGAN_ORGANIC) organic_bodytypes += 0.02 - return list( + return alist( BODYPART_SCORE_ORGANIC = organic_bodytypes, BODYPART_SCORE_SILICON = silicon_bodytypes, BODYPART_SCORE_OTHER_BODYTYPES = other_bodytypes, @@ -76,7 +101,7 @@ /datum/quirk/transhumanist/proc/calculate_bodypart_score() SIGNAL_HANDLER - var/list/score = get_bodypart_score(quirk_holder) + var/alist/score = get_bodypart_score(quirk_holder) var/organic_bodytypes = score[BODYPART_SCORE_ORGANIC] var/silicon_bodytypes = score[BODYPART_SCORE_SILICON] var/other_bodytypes = score[BODYPART_SCORE_OTHER_BODYTYPES] @@ -142,29 +167,6 @@ else if (isorgan(old_part)) to_chat(quirk_holder, span_bolddanger("Your [slot_string] brings you one step closer to silicon perfection, but you feel you're not quite there yet.")) -/datum/quirk/transhumanist/remove() - if(isnull(old_part)) - quirk_holder.clear_mood_event(MOOD_CATEGORY_TRANSHUMANIST_BODYPART) - quirk_holder.clear_mood_event(MOOD_CATEGORY_TRANSHUMANIST_PEOPLE) - return - - var/mob/living/carbon/human/human_holder = quirk_holder - if(isbodypart(old_part)) - var/obj/item/bodypart/old_bodypart = old_part - human_holder.del_and_replace_bodypart(old_bodypart, special = TRUE) - old_bodypart = null - else if(isorgan(old_part)) - var/obj/item/organ/old_organ = old_part - old_part = human_holder.get_organ_slot(ORGAN_SLOT_TONGUE) - old_organ.Insert(quirk_holder, special = TRUE) - old_part.moveToNullspace() - STOP_PROCESSING(SSobj, old_part) - old_organ = null - old_part = null - - quirk_holder.clear_mood_event(MOOD_CATEGORY_TRANSHUMANIST_BODYPART) - quirk_holder.clear_mood_event(MOOD_CATEGORY_TRANSHUMANIST_PEOPLE) - /datum/quirk/transhumanist/process(seconds_per_tick) var/organics_nearby = 0 var/silicons_nearby = 0 @@ -177,7 +179,7 @@ continue if(iscarbon(target)) - var/list/score = get_bodypart_score(target, limbs_only = TRUE) + var/alist/score = get_bodypart_score(target, limbs_only = TRUE) // For an average human, they'll need 2 augmented limbs to not get counted as an organic nor a silicon. // If some monstrosity has 20-30 organic limbs, they'll likely need more. if(score[BODYPART_SCORE_OVERALL] < 1) diff --git a/code/datums/quirks/positive_quirks/drunk_healing.dm b/code/datums/quirks/positive_quirks/drunk_healing.dm index e1c4ba911255ef..a0b5f47cfe8db5 100644 --- a/code/datums/quirks/positive_quirks/drunk_healing.dm +++ b/code/datums/quirks/positive_quirks/drunk_healing.dm @@ -13,13 +13,13 @@ var/need_mob_update = FALSE switch(quirk_holder.get_drunk_amount()) if (6 to 40) - need_mob_update += quirk_holder.adjustBruteLoss(-0.1 * seconds_per_tick, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) - need_mob_update += quirk_holder.adjustFireLoss(-0.05 * seconds_per_tick, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) + need_mob_update += quirk_holder.adjust_brute_loss(-0.1 * seconds_per_tick, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) + need_mob_update += quirk_holder.adjust_fire_loss(-0.05 * seconds_per_tick, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) if (41 to 60) - need_mob_update += quirk_holder.adjustBruteLoss(-0.4 * seconds_per_tick, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) - need_mob_update += quirk_holder.adjustFireLoss(-0.2 * seconds_per_tick, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) + need_mob_update += quirk_holder.adjust_brute_loss(-0.4 * seconds_per_tick, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) + need_mob_update += quirk_holder.adjust_fire_loss(-0.2 * seconds_per_tick, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) if (61 to INFINITY) - need_mob_update += quirk_holder.adjustBruteLoss(-0.8 * seconds_per_tick, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) - need_mob_update += quirk_holder.adjustFireLoss(-0.4 * seconds_per_tick, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) + need_mob_update += quirk_holder.adjust_brute_loss(-0.8 * seconds_per_tick, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) + need_mob_update += quirk_holder.adjust_fire_loss(-0.4 * seconds_per_tick, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) if(need_mob_update) quirk_holder.updatehealth() diff --git a/code/datums/quirks/positive_quirks/empath.dm b/code/datums/quirks/positive_quirks/empath.dm index f80ce3b5ef186d..0cb5704ad4f225 100644 --- a/code/datums/quirks/positive_quirks/empath.dm +++ b/code/datums/quirks/positive_quirks/empath.dm @@ -3,8 +3,13 @@ desc = "Whether it's a sixth sense or careful study of body language, it only takes you a quick glance at someone to understand how they feel." icon = FA_ICON_SMILE_BEAM value = 8 - mob_trait = TRAIT_EMPATH gain_text = span_notice("You feel in tune with those around you.") lose_text = span_danger("You feel isolated from others.") medical_record_text = "Patient is highly perceptive of and sensitive to social cues, or may possibly have ESP. Further testing needed." mail_goodies = list(/obj/item/toy/foamfinger) + +/datum/quirk/empath/add(client/client_source) + quirk_holder.AddComponentFrom(REF(src), /datum/component/empathy) + +/datum/quirk/empath/remove(client/client_source) + quirk_holder.RemoveComponentSource(REF(src), /datum/component/empathy) diff --git a/code/datums/sprite_accessories.dm b/code/datums/sprite_accessories.dm index 61bd7d1e401561..03502886920e2c 100644 --- a/code/datums/sprite_accessories.dm +++ b/code/datums/sprite_accessories.dm @@ -2137,6 +2137,11 @@ GLOBAL_LIST_EMPTY(blended_hair_icons_cache) name = "Round" icon_state = "round" +/datum/sprite_accessory/ears/cat/cybernetic + name = "Cybernetic" + icon_state = "cyber" + locked = TRUE + /datum/sprite_accessory/ears/fox icon = 'icons/mob/human/fox_features.dmi' name = "Fox" diff --git a/code/datums/station_traits/job_traits.dm b/code/datums/station_traits/job_traits.dm index 65985312b6e45e..5590f5042d68db 100644 --- a/code/datums/station_traits/job_traits.dm +++ b/code/datums/station_traits/job_traits.dm @@ -201,7 +201,7 @@ /// Gives the AI SAT a fax machine if it doesn't have one. This is copy pasted from Bridge Assistant's coffee maker. /datum/station_trait/job/human_ai/proc/give_fax_machine(datum/source) SIGNAL_HANDLER - var/area/sat_area = GLOB.areas_by_type[/area/station/ai_monitored/turret_protected/ai] + var/area/sat_area = GLOB.areas_by_type[/area/station/ai/satellite/chamber] if(isnull(sat_area)) return var/list/fax_machines = SSmachines.get_machines_by_type_and_subtypes(/obj/machinery/fax) diff --git a/code/datums/station_traits/negative_traits.dm b/code/datums/station_traits/negative_traits.dm index 3a521b48e9321c..4f7474af994811 100644 --- a/code/datums/station_traits/negative_traits.dm +++ b/code/datums/station_traits/negative_traits.dm @@ -594,7 +594,7 @@ //Let people order more nebula shielding var/datum/supply_pack/pack = SSshuttle.supply_packs[/datum/supply_pack/engineering/rad_nebula_shielding_kit] - pack.special_enabled = TRUE + pack.order_flags |= ORDER_SPECIAL_ENABLED //Give robotics some radiation protection modules for modsuits var/datum/supply_pack/supply_pack_modsuits = new /datum/supply_pack/engineering/rad_protection_modules() diff --git a/code/datums/status_effects/_status_effect.dm b/code/datums/status_effects/_status_effect.dm index 2b44e8bbaf09c8..4a569858655bd1 100644 --- a/code/datums/status_effects/_status_effect.dm +++ b/code/datums/status_effects/_status_effect.dm @@ -3,19 +3,16 @@ /datum/status_effect /// The ID of the effect. ID is used in adding and removing effects to check for duplicates, among other things. var/id = "effect" - /// When set initially / in on_creation, this is how long the status effect lasts in deciseconds. - /// While processing, this becomes the world.time when the status effect will expire. - /// -1 = infinite duration. + /// This is how long the status effect lasts in deciseconds. + /// You can put STATUS_EFFECT_PERMANENT (or INFINITY) here for infinite duration. var/duration = STATUS_EFFECT_PERMANENT - /// When set initially / in on_creation, this is how long between [proc/tick] calls in deciseconds. - /// Note that this cannot be faster than the processing subsystem you choose to fire the effect on. (See: [var/processing_speed]) - /// While processing, this becomes the world.time when the next tick will occur. - /// -1 = will prevent ticks, and if duration is also unlimited (-1), stop processing wholesale. + /// This is how long between [proc/tick] calls in deciseconds. + /// This has to be a multiple of the [var/wait] of the subsystem this status effect is running on, which is based on [var/processing_speed]. + /// Putting STATUS_EFFECT_NO_TICK here will stop [proc/tick] calls, and if [var/duration] is STATUS_EFFECT_PERMANENT, it stops processing entirely. + /// Putting STATUS_EFFECT_AUTO_TICK here will make every subsystem tick call [proc/tick], making the tick interval depend entirely on [var/processing_speed] var/tick_interval = 1 SECONDS - ///If our tick intervals are set to be a dynamic value within a range, the lowerbound of said range - var/tick_interval_lowerbound - ///If our tick intervals are set to be a dynamic value within a range, the upperbound of said range - var/tick_interval_upperbound + /// The time until the next [proc/tick] call, gets set to [var/tick_interval] after every [proc/tick] call and decrements on every [proc/process] call. + var/time_until_next_tick /// The mob affected by the status effect. VAR_FINAL/mob/living/owner /// How many of the effect can be on one mob, and/or what happens when you try to add a duplicate. @@ -58,10 +55,9 @@ // we will optionally allow INFINITY, because i imagine it'll be convenient in some places, // but we'll still set it to -1 / STATUS_EFFECT_PERMANENT for proper unified handling duration = STATUS_EFFECT_PERMANENT - if(duration != STATUS_EFFECT_PERMANENT) - duration = world.time + duration + if(tick_interval != STATUS_EFFECT_NO_TICK) - tick_interval = world.time + tick_interval + time_until_next_tick = tick_interval if(alert_type) var/atom/movable/screen/alert/status_effect/new_alert = owner.throw_alert(id, alert_type) @@ -69,7 +65,7 @@ linked_alert = new_alert //so we can reference the alert, if we need to update_shown_duration() - if(duration > world.time || tick_interval > world.time) //don't process if we don't care + if(duration != STATUS_EFFECT_PERMANENT || tick_interval != STATUS_EFFECT_NO_TICK) //don't process if we don't care switch(processing_speed) if(STATUS_EFFECT_FAST_PROCESS) START_PROCESSING(SSfastprocess, src) @@ -108,7 +104,7 @@ if(!linked_alert || !show_duration) return - linked_alert.maptext = MAPTEXT_TINY_UNICODE("[round((duration - world.time)/10, 1)]s") + linked_alert.maptext = MAPTEXT_TINY_UNICODE("[round(duration / 10, 1)]s") // Status effect process. Handles adjusting its duration and ticks. // If you're adding processed effects, put them in [proc/tick] @@ -120,19 +116,23 @@ qdel(src) return + if (duration != STATUS_EFFECT_PERMANENT) + duration = max(0, duration - (seconds_per_tick SECONDS)) // doing it first means its more up to date for ticks to read + + if (tick_interval != STATUS_EFFECT_NO_TICK) + time_until_next_tick = max(0, time_until_next_tick - (seconds_per_tick SECONDS)) // same here + if(tick_interval == STATUS_EFFECT_AUTO_TICK) tick(seconds_per_tick) - else if(tick_interval != STATUS_EFFECT_NO_TICK && tick_interval < world.time) - var/tick_length = (tick_interval_upperbound && tick_interval_lowerbound) ? rand(tick_interval_lowerbound, tick_interval_upperbound) : initial(tick_interval) - tick(tick_length / (1 SECONDS)) - tick_interval = world.time + tick_length + else if(tick_interval != STATUS_EFFECT_NO_TICK && time_until_next_tick <= 0) + time_until_next_tick = tick_interval // same here as well + tick(tick_interval / 10) if(QDELING(src)) - // tick deleted us, no need to continue - return + return // tick deleted us, no need to continue if(duration != STATUS_EFFECT_PERMANENT) - if(duration < world.time) + if(duration <= 0) qdel(src) return update_shown_duration() @@ -185,10 +185,7 @@ /// Called when a status effect of status_type STATUS_EFFECT_REFRESH /// has its duration refreshed in apply_status_effect - is passed New() args /datum/status_effect/proc/refresh(effect, ...) - var/original_duration = initial(duration) - if(original_duration == STATUS_EFFECT_PERMANENT) - return - duration = world.time + original_duration + duration = initial(duration) /// Adds nextmove modifier multiplicatively to the owner while applied /datum/status_effect/proc/nextmove_modifier() @@ -208,13 +205,14 @@ if(!heal_flag_necessary || (heal_flags & heal_flag_necessary)) qdel(src) -/// Remove [seconds] of duration from the status effect, qdeling / ending if we eclipse the current world time. +/// Removes [seconds] of duration from the status effect. +/// Returns whether or not the status effect was qdeleted due to running out of duration. /datum/status_effect/proc/remove_duration(seconds) if(duration == STATUS_EFFECT_PERMANENT) // Infinite duration return FALSE - duration -= seconds - if(duration <= world.time) + duration -= (seconds SECONDS) + if(duration <= 0) qdel(src) return TRUE diff --git a/code/datums/status_effects/buffs.dm b/code/datums/status_effects/buffs.dm index 72c765bfe307d6..579ae9199270f1 100644 --- a/code/datums/status_effects/buffs.dm +++ b/code/datums/status_effects/buffs.dm @@ -66,10 +66,10 @@ return var/grace_heal = bloodlust * 0.02 var/need_mob_update = FALSE - need_mob_update += owner.adjustBruteLoss(-grace_heal * seconds_between_ticks, updating_health = FALSE, forced = TRUE) - need_mob_update += owner.adjustFireLoss(-grace_heal * seconds_between_ticks, updating_health = FALSE, forced = TRUE) - need_mob_update += owner.adjustToxLoss(-grace_heal * seconds_between_ticks, forced = TRUE) - need_mob_update += owner.adjustOxyLoss(-(grace_heal * 2) * seconds_between_ticks, updating_health = FALSE, forced = TRUE) + need_mob_update += owner.adjust_brute_loss(-grace_heal * seconds_between_ticks, updating_health = FALSE, forced = TRUE) + need_mob_update += owner.adjust_fire_loss(-grace_heal * seconds_between_ticks, updating_health = FALSE, forced = TRUE) + need_mob_update += owner.adjust_tox_loss(-grace_heal * seconds_between_ticks, forced = TRUE) + need_mob_update += owner.adjust_oxy_loss(-(grace_heal * 2) * seconds_between_ticks, updating_health = FALSE, forced = TRUE) if(need_mob_update) owner.updatehealth() @@ -160,9 +160,9 @@ return var/need_mob_update = FALSE - need_mob_update += owner.adjustBruteLoss(-4 * seconds_between_ticks, updating_health = FALSE) - need_mob_update += owner.adjustFireLoss(-2 * seconds_between_ticks, updating_health = FALSE) - need_mob_update += owner.adjustOxyLoss(-4 * seconds_between_ticks, updating_health = FALSE) + need_mob_update += owner.adjust_brute_loss(-4 * seconds_between_ticks, updating_health = FALSE) + need_mob_update += owner.adjust_fire_loss(-2 * seconds_between_ticks, updating_health = FALSE) + need_mob_update += owner.adjust_oxy_loss(-4 * seconds_between_ticks, updating_health = FALSE) if(need_mob_update) owner.updatehealth() @@ -239,7 +239,7 @@ var/skill_level_boost = (new_owner.mind?.get_skill_level(/datum/skill/athletics) - 1) * 2 SECONDS bonus_time = (bonus_time + food_boost + skill_level_boost) * modifier - var/exhaustion_limit = new_owner.mind?.get_skill_modifier(/datum/skill/athletics, SKILL_VALUE_MODIFIER) + world.time + var/exhaustion_limit = new_owner.mind?.get_skill_modifier(/datum/skill/athletics, SKILL_VALUE_MODIFIER) if(duration + bonus_time >= exhaustion_limit) duration = exhaustion_limit to_chat(new_owner, span_userdanger("Your muscles are exhausted! Might be a good idea to sleep...")) @@ -269,14 +269,15 @@ /atom/movable/screen/alert/status_effect/exercised name = "Exercise" desc = "You feel well exercised! Sleeping will improve your fitness." - icon_state = "exercised" + use_user_hud_icon = TRUE + overlay_state = "exercised" //Hippocratic Oath: Applied when the Rod of Asclepius is activated. /datum/status_effect/hippocratic_oath id = "Hippocratic Oath" status_type = STATUS_EFFECT_UNIQUE duration = STATUS_EFFECT_PERMANENT - tick_interval = 2.5 SECONDS + tick_interval = 2.6 SECONDS alert_type = null var/datum/component/aura_healing/aura_healing @@ -342,12 +343,12 @@ if(itemUser.health < itemUser.maxHealth) new /obj/effect/temp_visual/heal(get_turf(itemUser), "#375637") var/need_mob_update = FALSE - need_mob_update += itemUser.adjustBruteLoss(-0.6 * seconds_between_ticks, updating_health = FALSE, forced = TRUE) - need_mob_update += itemUser.adjustFireLoss(-0.6 * seconds_between_ticks, updating_health = FALSE, forced = TRUE) - need_mob_update += itemUser.adjustToxLoss(-0.6 * seconds_between_ticks, updating_health = FALSE, forced = TRUE) //Because Slime People are people too - need_mob_update += itemUser.adjustOxyLoss(-0.6 * seconds_between_ticks, updating_health = FALSE, forced = TRUE) - need_mob_update += itemUser.adjustStaminaLoss(-3 * seconds_between_ticks, updating_stamina = FALSE, forced = TRUE) - need_mob_update += itemUser.adjustOrganLoss(ORGAN_SLOT_BRAIN, -0.6 * seconds_between_ticks) + need_mob_update += itemUser.adjust_brute_loss(-0.6 * seconds_between_ticks, updating_health = FALSE, forced = TRUE) + need_mob_update += itemUser.adjust_fire_loss(-0.6 * seconds_between_ticks, updating_health = FALSE, forced = TRUE) + need_mob_update += itemUser.adjust_tox_loss(-0.6 * seconds_between_ticks, updating_health = FALSE, forced = TRUE) //Because Slime People are people too + need_mob_update += itemUser.adjust_oxy_loss(-0.6 * seconds_between_ticks, updating_health = FALSE, forced = TRUE) + need_mob_update += itemUser.adjust_stamina_loss(-3 * seconds_between_ticks, updating_stamina = FALSE, forced = TRUE) + need_mob_update += itemUser.adjust_organ_loss(ORGAN_SLOT_BRAIN, -0.6 * seconds_between_ticks) if(need_mob_update) itemUser.updatehealth() @@ -380,7 +381,9 @@ /atom/movable/screen/alert/status_effect/regenerative_core name = "Regenerative Core Tendrils" desc = "You can move faster than your broken body could normally handle!" - icon_state = "regenerative_core" + use_user_hud_icon = TRUE + overlay_icon = 'icons/obj/medical/organs/mining_organs.dmi' + overlay_state = "legion_core_stable" /datum/status_effect/regenerative_core id = "Regenerative Core" @@ -391,8 +394,8 @@ /datum/status_effect/regenerative_core/on_apply() owner.add_movespeed_mod_immunities(id, /datum/movespeed_modifier/damage_slowdown) - owner.adjustBruteLoss(-25) - owner.adjustFireLoss(-25) + owner.adjust_brute_loss(-25) + owner.adjust_fire_loss(-25) owner.fully_heal(HEAL_CC_STATUS) owner.bodytemperature = owner.get_body_temp_normal() if(ishuman(owner)) @@ -422,7 +425,8 @@ /atom/movable/screen/alert/status_effect/lightningorb name = "Lightning Orb" desc = "The speed surges through you!" - icon_state = "lightningorb" + use_user_hud_icon = TRUE + overlay_state = "lightningorb" /datum/status_effect/mayhem id = "Mayhem" @@ -528,7 +532,7 @@ var/mob/living/simple_animal/healthy_animal = owner healthy_animal.adjustHealth(-(health_increase * healing_modifier)) else - owner.adjustBruteLoss(-(health_increase * healing_modifier)) + owner.adjust_brute_loss(-(health_increase * healing_modifier)) /datum/status_effect/limited_buff/health_buff/maxed_out() . = ..() @@ -548,10 +552,10 @@ return var/need_mob_update = FALSE - need_mob_update += owner.adjustBruteLoss(-2 * seconds_between_ticks, updating_health = FALSE) - need_mob_update += owner.adjustFireLoss(-2 * seconds_between_ticks, updating_health = FALSE) - need_mob_update += owner.adjustOxyLoss(-4 * seconds_between_ticks, updating_health = FALSE) - need_mob_update += owner.adjustStaminaLoss(-4 * seconds_between_ticks, updating_stamina = FALSE) + need_mob_update += owner.adjust_brute_loss(-2 * seconds_between_ticks, updating_health = FALSE) + need_mob_update += owner.adjust_fire_loss(-2 * seconds_between_ticks, updating_health = FALSE) + need_mob_update += owner.adjust_oxy_loss(-4 * seconds_between_ticks, updating_health = FALSE) + need_mob_update += owner.adjust_stamina_loss(-4 * seconds_between_ticks, updating_stamina = FALSE) if(need_mob_update) owner.updatehealth() owner.adjust_bodytemperature(BODYTEMP_NORMAL, 0, BODYTEMP_NORMAL) //Won't save you from the void of space, but it will stop you from freezing or suffocating in low pressure @@ -560,7 +564,8 @@ /atom/movable/screen/alert/status_effect/nest_sustenance name = "Nest Vitalization" desc = "The resin seems to pulsate around you. It seems to be sustaining your vital functions. You feel ill..." - icon_state = "nest_life" + use_user_hud_icon = TRUE + overlay_state = "nest_life" /** * Granted to wizards upon satisfying the cheese sacrifice during grand rituals. @@ -570,12 +575,7 @@ id = "blessing_of_insanity" duration = STATUS_EFFECT_PERMANENT tick_interval = STATUS_EFFECT_NO_TICK - alert_type = /atom/movable/screen/alert/status_effect/blessing_of_insanity - -/atom/movable/screen/alert/status_effect/blessing_of_insanity - name = "Blessing of Insanity" - desc = "Your devotion to madness has improved your resilience to all damage and you gain the power to levitate!" - //no screen alert - the gravity already throws one + alert_type = null /datum/status_effect/blessing_of_insanity/on_apply() if(ishuman(owner)) @@ -644,7 +644,8 @@ /atom/movable/screen/alert/status_effect/radiation_immunity name = "Radiation shielding" desc = "You're immune to radiation, get settled quick!" - icon_state = "radiation_shield" + use_user_hud_icon = TRUE + overlay_state = "radiation_shield" /// Throw an alert we're in darkness!! Nightvision can make it hard to tell so this is useful /datum/status_effect/shadow @@ -675,4 +676,5 @@ /atom/movable/screen/alert/status_effect/shadow_regeneration name = "Shadow Regeneration" desc = "Bathed in soothing darkness, you will slowly heal yourself" - icon_state = "lightless" + use_user_hud_icon = TRUE + overlay_state = "lightless" diff --git a/code/datums/status_effects/buffs/bioware/cortex.dm b/code/datums/status_effects/buffs/bioware/cortex.dm index 6134b9d7f6b825..91c5fee9e9f7f2 100644 --- a/code/datums/status_effects/buffs/bioware/cortex.dm +++ b/code/datums/status_effects/buffs/bioware/cortex.dm @@ -2,19 +2,15 @@ /datum/status_effect/bioware/cortex id = "cortex" -// Folded brain - Grants a bonus chance to getting special traumas via lobotomy -/datum/status_effect/bioware/cortex/folded - -/datum/status_effect/bioware/cortex/folded/bioware_gained() - ADD_TRAIT(owner, TRAIT_SPECIAL_TRAUMA_BOOST, TRAIT_STATUS_EFFECT(id)) - -/datum/status_effect/bioware/cortex/folded/bioware_lost() - REMOVE_TRAIT(owner, TRAIT_SPECIAL_TRAUMA_BOOST, TRAIT_STATUS_EFFECT(id)) +// All cortex bioware removes the trauma boost as it is not granted via a status +/datum/status_effect/bioware/cortex/bioware_gained() + REMOVE_TRAIT(owner, TRAIT_SPECIAL_TRAUMA_BOOST, BIOWARE_TRAIT) // Imprinted brain - Cures basic traumas continuously /datum/status_effect/bioware/cortex/imprinted /datum/status_effect/bioware/cortex/imprinted/bioware_gained() + . = ..() var/mob/living/carbon/human/human_owner = owner human_owner.cure_all_traumas(resilience = TRAUMA_RESILIENCE_BASIC) RegisterSignal(human_owner, COMSIG_CARBON_GAIN_TRAUMA, PROC_REF(on_gain_trauma)) diff --git a/code/datums/status_effects/buffs/food/_food_effect.dm b/code/datums/status_effects/buffs/food/_food_effect.dm index fe63df29e3a8af..15e6d91492942c 100644 --- a/code/datums/status_effects/buffs/food/_food_effect.dm +++ b/code/datums/status_effects/buffs/food/_food_effect.dm @@ -14,10 +14,10 @@ if(isnum(timeout_mod)) duration *= timeout_mod if(istype(linked_alert, /atom/movable/screen/alert/status_effect/food)) - linked_alert.icon_state = "[linked_alert.base_icon_state]_[strength]" + linked_alert.overlay_state = "food_buff_[strength]" /atom/movable/screen/alert/status_effect/food name = "Hand-crafted meal" desc = "Eating it made me feel better." - icon_state = "food_buff_1" - base_icon_state = "food_buff" + use_user_hud_icon = TRUE + overlay_state = "food_buff_1" diff --git a/code/datums/status_effects/buffs/food/chilling.dm b/code/datums/status_effects/buffs/food/chilling.dm index 0827ac5a4afdae..d2fb089f11fba1 100644 --- a/code/datums/status_effects/buffs/food/chilling.dm +++ b/code/datums/status_effects/buffs/food/chilling.dm @@ -9,6 +9,7 @@ /atom/movable/screen/alert/status_effect/icecream_chilling name = "Cooling Off" - desc = "Nothing beats a cup of ice cream during hot, plasma-floody day..." - icon_state = "food_icecream" + desc = "Nothing beats a cup of ice cream during hot, plasma-flooded day..." + use_user_hud_icon = TRUE + overlay_state = "food_icecream" diff --git a/code/datums/status_effects/buffs/food/grant_trait.dm b/code/datums/status_effects/buffs/food/grant_trait.dm index 46d4b060739dcf..0b1e65dc848b4b 100644 --- a/code/datums/status_effects/buffs/food/grant_trait.dm +++ b/code/datums/status_effects/buffs/food/grant_trait.dm @@ -22,7 +22,8 @@ /atom/movable/screen/alert/status_effect/shockimmune name = "Grounded" desc = "That meal made me feel like a superconductor..." - icon_state = "shock_immune" + use_user_hud_icon = TRUE + overlay_state = "shock_immune" /datum/status_effect/food/trait/mute alert_type = /atom/movable/screen/alert/status_effect/mute @@ -31,7 +32,8 @@ /atom/movable/screen/alert/status_effect/mute name = "..." desc = "..." - icon_state = "mute" + use_user_hud_icon = TRUE + overlay_state = "mute" /datum/status_effect/food/trait/ashstorm_immune alert_type = /atom/movable/screen/alert/status_effect/ashstorm_immune @@ -40,7 +42,8 @@ /atom/movable/screen/alert/status_effect/ashstorm_immune name = "Ashstorm-proof" desc = "That meal makes me feel born on Lavaland." - icon_state = "ashstorm_immune" + use_user_hud_icon = TRUE + overlay_state = "ashstorm_immune" /datum/status_effect/food/trait/waddle alert_type = /atom/movable/screen/alert/status_effect/waddle @@ -53,4 +56,6 @@ /atom/movable/screen/alert/status_effect/waddle name = "Waddling" desc = "That meal makes me want to joke around." - icon_state = "waddle" + use_user_hud_icon = TRUE + overlay_icon = /obj/item/clothing/mask/gas/clown_hat::icon + overlay_state = /obj/item/clothing/mask/gas/clown_hat::icon_state diff --git a/code/datums/status_effects/buffs/food/speech.dm b/code/datums/status_effects/buffs/food/speech.dm index 9878f0ebf35b0f..95598c03bb938f 100644 --- a/code/datums/status_effects/buffs/food/speech.dm +++ b/code/datums/status_effects/buffs/food/speech.dm @@ -28,7 +28,8 @@ /atom/movable/screen/alert/status_effect/italian_speech name = "Linguini Embrace" desc = "You feel a sudden urge to gesticulate wildly." - icon_state = "food_italian" + use_user_hud_icon = TRUE + overlay_state = "food_italian" /datum/status_effect/food/speech/french alert_type = /atom/movable/screen/alert/status_effect/french_speech @@ -56,4 +57,5 @@ /atom/movable/screen/alert/status_effect/french_speech name = "Café Chic" desc = "Suddenly, everything seems worthy of a passionate debate." - icon_state = "food_french" + use_user_hud_icon = TRUE + overlay_state = "food_french" diff --git a/code/datums/status_effects/buffs/stop_drop_roll.dm b/code/datums/status_effects/buffs/stop_drop_roll.dm index e7ff393a1dd588..a7ca2109769a27 100644 --- a/code/datums/status_effects/buffs/stop_drop_roll.dm +++ b/code/datums/status_effects/buffs/stop_drop_roll.dm @@ -3,13 +3,14 @@ alert_type = null tick_interval = 0.8 SECONDS processing_speed = STATUS_EFFECT_PRIORITY + /// bar updates depending on how "on fire" you are + VAR_FINAL/datum/progressbar/bar /datum/status_effect/stop_drop_roll/on_apply() if(!iscarbon(owner)) return FALSE - var/actual_interval = initial(tick_interval) - if(!owner.Knockdown(actual_interval * 2, ignore_canstun = TRUE) || owner.body_position != LYING_DOWN) + if(!owner.Knockdown(tick_interval * 2, ignore_canstun = TRUE) || owner.body_position != LYING_DOWN) to_chat(owner, span_warning("You try to stop, drop, and roll - but you can't get on the ground!")) return FALSE @@ -17,6 +18,7 @@ RegisterSignal(owner, COMSIG_LIVING_SET_BODY_POSITION, PROC_REF(body_position_changed)) ADD_TRAIT(owner, TRAIT_HANDS_BLOCKED, TRAIT_STATUS_EFFECT(id)) // they're kinda busy! + bar = new(owner, MAX_FIRE_STACKS, owner, get_bar_progress()) start_rolling() for (var/obj/item/dropped in owner.loc) @@ -26,6 +28,12 @@ /datum/status_effect/stop_drop_roll/on_remove() UnregisterSignal(owner, list(COMSIG_MOVABLE_MOVED, COMSIG_LIVING_SET_BODY_POSITION)) REMOVE_TRAIT(owner, TRAIT_HANDS_BLOCKED, TRAIT_STATUS_EFFECT(id)) + bar.end_progress() + bar = null + +/// Get the current progress for the progress bar +/datum/status_effect/stop_drop_roll/proc/get_bar_progress() + return MAX_FIRE_STACKS - max(0, owner.fire_stacks) /datum/status_effect/stop_drop_roll/proc/start_rolling() owner.visible_message( @@ -40,12 +48,11 @@ qdel(src) return - var/actual_interval = initial(tick_interval) - if(!owner.Knockdown(actual_interval * 1.2, ignore_canstun = TRUE)) + if(!owner.Knockdown(tick_interval * 1.2, ignore_canstun = TRUE)) stop_rolling() return - owner.spin(spintime = actual_interval, speed = actual_interval / 4) + owner.spin(spintime = tick_interval, speed = tick_interval / 4) if(!reduce_firestacks(1)) return @@ -54,6 +61,7 @@ /// Return TRUE to stop the us from rolling. /datum/status_effect/stop_drop_roll/proc/reduce_firestacks(amt = 1) owner.adjust_fire_stacks(-1 * amt) + bar.update(get_bar_progress()) return owner.fire_stacks <= 0 /// Called when we just, stop rolling, due to movement or other reasons. Maybe still on fire, maybe not. @@ -87,6 +95,10 @@ src.hallucination_weakref = hallucination_weakref return ..() +/datum/status_effect/stop_drop_roll/hallucinating/get_bar_progress() + var/datum/hallucination/fire/hallucination = hallucination_weakref?.resolve() + return 20 - max(0, hallucination?.fake_firestacks) + /datum/status_effect/stop_drop_roll/hallucinating/start_rolling() owner.visible_message( span_danger("[owner] starts rolling around on the floor, flailing about!"), @@ -100,6 +112,7 @@ return TRUE hallucination.fake_firestacks += (-1 * amt) + bar.update(get_bar_progress()) if(hallucination.fake_firestacks <= 0) hallucination.clear_fire() return TRUE diff --git a/code/datums/status_effects/cuffed_item.dm b/code/datums/status_effects/cuffed_item.dm index 3bd034fb097947..c356f377f3d5ed 100644 --- a/code/datums/status_effects/cuffed_item.dm +++ b/code/datums/status_effects/cuffed_item.dm @@ -143,7 +143,6 @@ /atom/movable/screen/alert/status_effect/cuffed_item name = "Cuffed Item" desc = "You've an item firmly cuffed to your arm. You probably won't be accidentally dropping it somewhere anytime soon." - icon_state = "template" use_user_hud_icon = TRUE clickable_glow = TRUE click_master = FALSE diff --git a/code/datums/status_effects/debuffs/choke.dm b/code/datums/status_effects/debuffs/choke.dm index e8af4b1b94dc56..7f87fba7abda77 100644 --- a/code/datums/status_effects/debuffs/choke.dm +++ b/code/datums/status_effects/debuffs/choke.dm @@ -66,7 +66,7 @@ if(flaming) ash = new(owner, /particles/smoke/ash, PARTICLE_ATTACH_MOB) var/clear_in = rand(15 SECONDS, 25 SECONDS) - if(duration != -1) + if(duration != STATUS_EFFECT_PERMANENT) clear_in = min(duration, clear_in) addtimer(CALLBACK(src, PROC_REF(clear_flame)), clear_in) return TRUE @@ -163,7 +163,7 @@ /datum/status_effect/choke/proc/attempt_eat(mob/source, atom/eating) SIGNAL_HANDLER source.balloon_alert(source, "can't get it down!") - return COMSIG_CARBON_BLOCK_EAT + return BLOCK_EAT_ATTEMPT /datum/status_effect/choke/proc/helped(mob/source, mob/helping) SIGNAL_HANDLER @@ -264,7 +264,7 @@ // If we ain't starting, deal a tad bit of brute, as a treat // Note, we attempt to process 10 times a second, so over 7 seconds this'll deal 14 brute if(!before_work) - victim.adjustBruteLoss(0.2) + victim.adjust_brute_loss(0.2) return TRUE /datum/status_effect/choke/tick(seconds_between_ticks) diff --git a/code/datums/status_effects/debuffs/confusion.dm b/code/datums/status_effects/debuffs/confusion.dm index 881eb6a5c36c5e..d7e6f47af4a274 100644 --- a/code/datums/status_effects/debuffs/confusion.dm +++ b/code/datums/status_effects/debuffs/confusion.dm @@ -27,7 +27,7 @@ SIGNAL_HANDLER // How much time is left in the duration, in seconds. - var/time_left = (duration - world.time) / 10 + var/time_left = duration / 10 var/direction = move_args[MOVE_ARG_DIRECTION] var/new_dir diff --git a/code/datums/status_effects/debuffs/cursed.dm b/code/datums/status_effects/debuffs/cursed.dm index 083bd678635e71..da3a5371910cc1 100644 --- a/code/datums/status_effects/debuffs/cursed.dm +++ b/code/datums/status_effects/debuffs/cursed.dm @@ -2,7 +2,7 @@ /// Status effect that gives the target miscellanous debuffs while throwing a status alert and causing them to smoke from the damage they're incurring. /// Purposebuilt for cursed slot machines. -/datum/status_effect/grouped/cursed +/datum/status_effect/slot_machine_curse id = "cursed" alert_type = /atom/movable/screen/alert/status_effect/cursed remove_on_fullheal = TRUE @@ -20,7 +20,7 @@ /// The cached path of the particles we're using to smoke var/smoke_path = null -/datum/status_effect/grouped/cursed/on_apply() +/datum/status_effect/slot_machine_curse/on_apply() RegisterSignal(owner, COMSIG_MOB_STATCHANGE, PROC_REF(on_stat_changed)) RegisterSignal(owner, COMSIG_LIVING_DEATH, PROC_REF(on_death)) RegisterSignal(owner, COMSIG_CURSED_SLOT_MACHINE_USE, PROC_REF(check_curses)) @@ -28,7 +28,7 @@ RegisterSignal(SSdcs, COMSIG_GLOB_CURSED_SLOT_MACHINE_WON, PROC_REF(clear_curses)) return ..() -/datum/status_effect/grouped/cursed/Destroy() +/datum/status_effect/slot_machine_curse/Destroy() UnregisterSignal(SSdcs, COMSIG_GLOB_CURSED_SLOT_MACHINE_WON) branded_hand = null if (smoke_path) @@ -36,7 +36,7 @@ return ..() /// Checks the number of curses we have and returns information back to the slot machine. `max_curse_amount` is set by the slot machine itself. -/datum/status_effect/grouped/cursed/proc/check_curses(mob/user, max_curse_amount) +/datum/status_effect/slot_machine_curse/proc/check_curses(mob/user, max_curse_amount) SIGNAL_HANDLER if(curse_count >= max_curse_amount) return SLOT_MACHINE_USE_CANCEL @@ -46,7 +46,7 @@ return SLOT_MACHINE_USE_POSTPONE /// Handles the debuffs of this status effect and incrementing the number of curses we have. -/datum/status_effect/grouped/cursed/proc/update_curse_count() +/datum/status_effect/slot_machine_curse/proc/update_curse_count() SIGNAL_HANDLER curse_count++ @@ -55,7 +55,7 @@ addtimer(CALLBACK(src, PROC_REF(handle_after_effects), 1 SECONDS)) // give it a second to let the failure sink in before we exact our toll /// Makes a nice lorey message about the curse level we're at. I think it's nice -/datum/status_effect/grouped/cursed/proc/handle_after_effects() +/datum/status_effect/slot_machine_curse/proc/handle_after_effects() if(QDELETED(src)) return @@ -114,7 +114,7 @@ monologuing = FALSE /// Cleans ourselves up and removes our curses. Meant to be done in a "positive" way, when the curse is broken. Directly use qdel otherwise. -/datum/status_effect/grouped/cursed/proc/clear_curses() +/datum/status_effect/slot_machine_curse/proc/clear_curses() SIGNAL_HANDLER if(!isnull(branded_hand)) @@ -128,7 +128,7 @@ qdel(src) /// If our owner's stat changes, rapidly surge the damage chance. -/datum/status_effect/grouped/cursed/proc/on_stat_changed() +/datum/status_effect/slot_machine_curse/proc/on_stat_changed() SIGNAL_HANDLER if(owner.stat == CONSCIOUS || owner.stat == DEAD) // reset on these two states damage_chance = initial(damage_chance) @@ -138,13 +138,13 @@ damage_chance += 75 //ruh roh raggy /// If our owner dies without getting gibbed (as in of other causes), stop smoking because we've "expended all the life energy". -/datum/status_effect/grouped/cursed/proc/on_death(mob/living/source, gibbed) +/datum/status_effect/slot_machine_curse/proc/on_death(mob/living/source, gibbed) SIGNAL_HANDLER if(!gibbed && smoke_path) owner.remove_shared_particles(smoke_path) -/datum/status_effect/grouped/cursed/update_particles() +/datum/status_effect/slot_machine_curse/update_particles() var/particle_path = /particles/smoke/steam/mild switch(curse_count) if(2 to 3) @@ -160,7 +160,7 @@ owner.add_shared_particles(particle_path) smoke_path = particle_path -/datum/status_effect/grouped/cursed/tick(seconds_between_ticks) +/datum/status_effect/slot_machine_curse/tick(seconds_between_ticks) if(curse_count <= 1) return // you get one "freebie" (single damage) to nudge you into thinking this is a bad idea before the house begins to win. @@ -178,12 +178,13 @@ /atom/movable/screen/alert/status_effect/cursed name = "Cursed!" desc = "The brand on your hand reminds you of your greed, yet you seem to be okay otherwise." - icon_state = "cursed_by_slots" + use_user_hud_icon = TRUE + overlay_state = "cursed_by_slots" /atom/movable/screen/alert/status_effect/cursed/update_desc() . = ..() - var/datum/status_effect/grouped/cursed/linked_effect = attached_effect - var/curses = linked_effect.curse_count + var/datum/status_effect/slot_machine_curse/linked_effect = attached_effect + var/curses = linked_effect?.curse_count switch(curses) if(2) desc = "Your greed is catching up to you..." diff --git a/code/datums/status_effects/debuffs/debuffs.dm b/code/datums/status_effects/debuffs/debuffs.dm index cabcafb333f15b..182ef5d6b0eada 100644 --- a/code/datums/status_effects/debuffs/debuffs.dm +++ b/code/datums/status_effects/debuffs/debuffs.dm @@ -124,8 +124,8 @@ return ..() /datum/status_effect/incapacitating/unconscious/tick(seconds_between_ticks) - if(owner.getStaminaLoss()) - owner.adjustStaminaLoss(-0.3) //reduce stamina loss by 0.3 per tick, 6 per 2 seconds + if(owner.get_stamina_loss()) + owner.adjust_stamina_loss(-0.3) //reduce stamina loss by 0.3 per tick, 6 per 2 seconds //SLEEPING @@ -233,10 +233,10 @@ to_chat(carbon_owner, span_notice("You feel your fitness improving!")) if(health_ratio > 0.8) // only heals minor physical damage - need_mob_update += owner.adjustBruteLoss(-0.4 * sleep_quality * seconds_between_ticks, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) - need_mob_update += owner.adjustFireLoss(-0.4 * sleep_quality * seconds_between_ticks, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) - need_mob_update += owner.adjustToxLoss(-0.2 * sleep_quality * seconds_between_ticks, updating_health = FALSE, forced = TRUE, required_biotype = MOB_ORGANIC) - need_mob_update += owner.adjustStaminaLoss(min(-0.4 * sleep_quality * seconds_between_ticks, -0.4 * HEALING_SLEEP_DEFAULT * seconds_between_ticks), updating_stamina = FALSE) + need_mob_update += owner.adjust_brute_loss(-0.4 * sleep_quality * seconds_between_ticks, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) + need_mob_update += owner.adjust_fire_loss(-0.4 * sleep_quality * seconds_between_ticks, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) + need_mob_update += owner.adjust_tox_loss(-0.2 * sleep_quality * seconds_between_ticks, updating_health = FALSE, forced = TRUE, required_biotype = MOB_ORGANIC) + need_mob_update += owner.adjust_stamina_loss(min(-0.4 * sleep_quality * seconds_between_ticks, -0.4 * HEALING_SLEEP_DEFAULT * seconds_between_ticks), updating_stamina = FALSE) if(need_mob_update) owner.updatehealth() // Drunkenness gets reduced by 0.3% per tick (6% per 2 seconds) @@ -252,7 +252,8 @@ /atom/movable/screen/alert/status_effect/asleep name = "Asleep" desc = "You've fallen asleep. Wait a bit and you should wake up. Unless you don't, considering how helpless you are." - icon_state = "asleep" + use_user_hud_icon = TRUE + overlay_state = "asleep" //STASIS /datum/status_effect/grouped/stasis @@ -305,7 +306,8 @@ /atom/movable/screen/alert/status_effect/stasis name = "Stasis" desc = "Your biological functions have halted. You could live forever this way, but it's pretty boring." - icon_state = "stasis" + use_user_hud_icon = TRUE + overlay_state = "stasis" /datum/status_effect/his_wrath //does minor damage over time unless holding His Grace id = "his_wrath" @@ -330,9 +332,9 @@ qdel(src) return var/need_mob_update - need_mob_update = owner.adjustBruteLoss(0.04 * seconds_between_ticks, updating_health = FALSE) - need_mob_update += owner.adjustFireLoss(0.04 * seconds_between_ticks, updating_health = FALSE) - need_mob_update += owner.adjustToxLoss(0.08 * seconds_between_ticks, updating_health = FALSE, forced = TRUE) + need_mob_update = owner.adjust_brute_loss(0.04 * seconds_between_ticks, updating_health = FALSE) + need_mob_update += owner.adjust_fire_loss(0.04 * seconds_between_ticks, updating_health = FALSE) + need_mob_update += owner.adjust_tox_loss(0.08 * seconds_between_ticks, updating_health = FALSE, forced = TRUE) if(need_mob_update) owner.updatehealth() @@ -410,7 +412,7 @@ new /obj/effect/temp_visual/bleed(get_turf(owner)) /datum/status_effect/stacking/saw_bleed/threshold_cross_effect() - owner.adjustBruteLoss(bleed_damage) + owner.adjust_brute_loss(bleed_damage) new /obj/effect/temp_visual/bleed/explode(get_turf(owner)) for(var/splatter_dir in GLOB.alldirs) owner.create_splatter(splatter_dir) @@ -522,7 +524,7 @@ wasting_effect.alpha = 255 animate(wasting_effect, alpha = 0, time = 32) playsound(owner, 'sound/effects/curse/curse5.ogg', 20, TRUE, -1) - owner.adjustFireLoss(0.75) + owner.adjust_fire_loss(0.75) if(curse_flags & CURSE_GRASPING) if(effect_next_activation > world.time) @@ -566,7 +568,8 @@ /atom/movable/screen/alert/status_effect/trance name = "Trance" desc = "Everything feels so distant, and you can feel your thoughts forming loops inside your head..." - icon_state = "high" + use_user_hud_icon = TRUE + overlay_state = "high" /datum/status_effect/trance/tick(seconds_between_ticks) if(stun) @@ -692,7 +695,8 @@ /atom/movable/screen/alert/status_effect/convulsing name = "Shaky Hands" desc = "You've been zapped with something and your hands can't stop shaking! You can't seem to hold on to anything." - icon_state = "convulsing" + use_user_hud_icon = TRUE + overlay_state = "convulsing" /datum/status_effect/dna_melt id = "dna_melt" @@ -715,7 +719,8 @@ /atom/movable/screen/alert/status_effect/dna_melt name = "Genetic Breakdown" desc = "I don't feel so good. Your body can't handle the mutations! You have one minute to remove your mutations, or you will be met with a horrible fate." - icon_state = "dna_melt" + use_user_hud_icon = TRUE + overlay_state = "dna_melt" /datum/status_effect/go_away id = "go_away" @@ -763,7 +768,8 @@ /atom/movable/screen/alert/status_effect/go_away name = "TO THE STARS AND BEYOND!" desc = "I must go, my people need me!" - icon_state = "high" + use_user_hud_icon = TRUE + overlay_state = "high" /datum/status_effect/fake_virus id = "fake_virus" @@ -910,7 +916,8 @@ /atom/movable/screen/alert/status_effect/ants name = "Ants!" desc = span_warning("JESUS FUCKING CHRIST! CLICK TO GET THOSE THINGS OFF!") - icon_state = "antalert" + use_user_hud_icon = TRUE + overlay_state = "antalert" clickable_glow = TRUE /atom/movable/screen/alert/status_effect/ants/Click() @@ -990,7 +997,8 @@ /atom/movable/screen/alert/status_effect/discoordinated name = "Discoordinated" desc = "You can't seem to properly use anything..." - icon_state = "convulsing" + use_user_hud_icon = TRUE + overlay_state = "convulsing" /datum/status_effect/discoordinated/on_apply() ADD_TRAIT(owner, TRAIT_DISCOORDINATED_TOOL_USER, TRAIT_STATUS_EFFECT(id)) @@ -1028,7 +1036,8 @@ /atom/movable/screen/alert/status_effect/careful_driving name = "Careful Driving" desc = "That was close! You almost ran that one over!" - icon_state = "paralysis" + use_user_hud_icon = TRUE + overlay_state = "paralysis" /datum/movespeed_modifier/careful_driving multiplicative_slowdown = 3 @@ -1054,13 +1063,13 @@ /atom/movable/screen/alert/status_effect/midas_blight name = "Midas Blight" desc = "Your blood is being turned to gold, slowing your movements!" - icon_state = "midas_blight" + use_user_hud_icon = TRUE + overlay_state = "midas_blight" /datum/status_effect/midas_blight/tick(seconds_between_ticks) var/mob/living/carbon/human/victim = owner // We're transmuting blood, time to lose some. - if(victim.blood_volume > BLOOD_VOLUME_SURVIVE + 50 && !HAS_TRAIT(victim, TRAIT_NOBLOOD)) - victim.blood_volume -= 5 * seconds_between_ticks + victim.adjust_blood_volume(-5 * seconds_between_ticks, minimum = BLOOD_VOLUME_SURVIVE + 50) // This has been hell to try and balance so that you'll actually get anything out of it victim.reagents.add_reagent(/datum/reagent/gold/cursed, amount = seconds_between_ticks * goldscale, no_react = TRUE) var/current_gold_amount = victim.reagents.get_reagent_amount(/datum/reagent/gold, type_check = REAGENT_SUB_TYPE) @@ -1104,7 +1113,8 @@ /atom/movable/screen/alert/status_effect/designated_target name = "Designated Target" desc = "You've been lit up by some kind of bright energy! Wash it off to get rid of it, or you'll be a lot easier to hit!" - icon_state = "designated_target" + use_user_hud_icon = TRUE + overlay_state = "designated_target" /datum/status_effect/designated_target id = "designated_target" diff --git a/code/datums/status_effects/debuffs/decloning.dm b/code/datums/status_effects/debuffs/decloning.dm index 0f76f10f470d92..074fc8ec1fc983 100644 --- a/code/datums/status_effects/debuffs/decloning.dm +++ b/code/datums/status_effects/debuffs/decloning.dm @@ -77,7 +77,8 @@ /atom/movable/screen/alert/status_effect/decloning name = "Cellular Meltdown" desc = "Your body is deforming, and doesn't feel like it's going to hold up much longer. You are going to need treatment soon." - icon_state = "dna_melt" + use_user_hud_icon = TRUE + overlay_state = "dna_melt" /datum/movespeed_modifier/decloning multiplicative_slowdown = 0.7 diff --git a/code/datums/status_effects/debuffs/dizziness.dm b/code/datums/status_effects/debuffs/dizziness.dm index b47083aa5e37f6..547ba44df502c6 100644 --- a/code/datums/status_effects/debuffs/dizziness.dm +++ b/code/datums/status_effects/debuffs/dizziness.dm @@ -26,7 +26,7 @@ /datum/status_effect/dizziness/tick(seconds_between_ticks) // How much time is left, in seconds - var/amount = (duration - world.time) / 10 + var/amount = duration / 10 if(amount <= 0) return diff --git a/code/datums/status_effects/debuffs/dna_transformation.dm b/code/datums/status_effects/debuffs/dna_transformation.dm index 46e125a391e89a..bd2a079d6f8b2b 100644 --- a/code/datums/status_effects/debuffs/dna_transformation.dm +++ b/code/datums/status_effects/debuffs/dna_transformation.dm @@ -82,10 +82,10 @@ if(duration == STATUS_EFFECT_PERMANENT) return // Already paused - time_before_pause = duration - world.time + time_before_pause = duration duration = STATUS_EFFECT_PERMANENT // Resume if we're none of the above and also were paused else if(time_before_pause != -1) - duration = time_before_pause + world.time + duration = time_before_pause time_before_pause = -1 diff --git a/code/datums/status_effects/debuffs/drugginess.dm b/code/datums/status_effects/debuffs/drugginess.dm index 8730e0ccd6ecae..e0b7a4da57f393 100644 --- a/code/datums/status_effects/debuffs/drugginess.dm +++ b/code/datums/status_effects/debuffs/drugginess.dm @@ -36,4 +36,5 @@ /atom/movable/screen/alert/status_effect/high name = "High" desc = "Whoa man, you're tripping balls! Careful you don't get addicted... if you aren't already." - icon_state = "high" + use_user_hud_icon = TRUE + overlay_state = "high" diff --git a/code/datums/status_effects/debuffs/drunk.dm b/code/datums/status_effects/debuffs/drunk.dm index 1a76ca8a808cc4..a970ee6e6d33ad 100644 --- a/code/datums/status_effects/debuffs/drunk.dm +++ b/code/datums/status_effects/debuffs/drunk.dm @@ -18,8 +18,8 @@ alert_type = null /// The level of drunkness we are currently at. var/drunk_value = 0 - /// If TRUE, drunk_value will be capped at 51, preventing serious damage - var/iron_liver = FALSE + /// If TRUE, drunk_value will be capped at 51, preventing serious damage + var/iron_liver = FALSE /datum/status_effect/inebriated/on_creation(mob/living/new_owner, drunk_value = 0) . = ..() @@ -203,20 +203,20 @@ // Over 81, we will gain constant toxloss if(drunk_value >= 81) - owner.adjustToxLoss(1) + owner.adjust_tox_loss(1) if(owner.stat == CONSCIOUS && prob(5)) to_chat(owner, span_warning("Maybe you should lie down for a bit...")) // Over 91, we gain even more toxloss, brain damage, and have a chance of dropping into a long sleep if(drunk_value >= 91) - owner.adjustToxLoss(1) - owner.adjustOrganLoss(ORGAN_SLOT_BRAIN, 0.4) + owner.adjust_tox_loss(1) + owner.adjust_organ_loss(ORGAN_SLOT_BRAIN, 0.4) if(owner.stat == CONSCIOUS) attempt_to_blackout() // And finally, over 100 - let's be honest, you shouldn't be alive by now. if(drunk_value >= 101) - owner.adjustToxLoss(2) + owner.adjust_tox_loss(2) /datum/status_effect/inebriated/drunk/proc/attempt_to_blackout() var/mob/living/carbon/drunkard = owner @@ -238,7 +238,8 @@ name = "Drunk" desc = "All that alcohol you've been drinking is impairing your speech, \ motor skills, and mental cognition. Make sure to act like it." - icon_state = "drunk" + use_user_hud_icon = TRUE + overlay_state = "drunk" #undef BALLMER_PEAK_LOW_END #undef BALLMER_PEAK_HIGH_END diff --git a/code/datums/status_effects/debuffs/genetic_damage.dm b/code/datums/status_effects/debuffs/genetic_damage.dm index 9eb90b917b7ad2..c0ae16d4082e37 100644 --- a/code/datums/status_effects/debuffs/genetic_damage.dm +++ b/code/datums/status_effects/debuffs/genetic_damage.dm @@ -39,7 +39,7 @@ return if(total_damage >= minimum_before_tox_damage) - owner.adjustToxLoss(toxin_damage_per_second * seconds_between_ticks) + owner.adjust_tox_loss(toxin_damage_per_second * seconds_between_ticks) total_damage -= remove_per_second * seconds_between_ticks if(total_damage <= 0) diff --git a/code/datums/status_effects/debuffs/hallucination.dm b/code/datums/status_effects/debuffs/hallucination.dm index e5528a66382124..9c40203c1dd765 100644 --- a/code/datums/status_effects/debuffs/hallucination.dm +++ b/code/datums/status_effects/debuffs/hallucination.dm @@ -94,7 +94,7 @@ var/lower_cd = lower_tick_interval var/upper_cd = upper_tick_interval if(variable_tier) - var/seconds_left = (duration - world.time) / 10 + var/seconds_left = duration / 10 switch(seconds_left) if(0 to 20) max_hallucination_tier = HALLUCINATION_TIER_COMMON diff --git a/code/datums/status_effects/debuffs/heart_attack.dm b/code/datums/status_effects/debuffs/heart_attack.dm index 520443f15849b5..592162ea0f8971 100644 --- a/code/datums/status_effects/debuffs/heart_attack.dm +++ b/code/datums/status_effects/debuffs/heart_attack.dm @@ -47,12 +47,12 @@ if(time_until_stoppage > ATTACK_STAGE_THREE) if(SPT_PROB(5, seconds_between_ticks)) owner.playsound_local(owner, 'sound/effects/singlebeat.ogg', 25, FALSE, use_reverb = FALSE) - owner.adjustStaminaLoss(5) + owner.adjust_stamina_loss(5) if(time_until_stoppage <= ATTACK_STAGE_TWO && time_until_stoppage > ATTACK_STAGE_THREE) //This coughing gets replaced with worse coughing, no need to stack it. if(SPT_PROB(10, seconds_between_ticks)) owner.emote("cough") - owner.adjustStaminaLoss(10) + owner.adjust_stamina_loss(10) oxyloss_sum += 4 if(time_until_stoppage <= ATTACK_STAGE_THREE) //At this point, we start with chat messages and make it clear that something is very wrong. @@ -69,7 +69,7 @@ if(SPT_PROB(8, seconds_between_ticks)) to_chat(owner, span_danger("You feel very weak and dizzy...")) owner.adjust_confusion_up_to(6 SECONDS, 10 SECONDS) - owner.adjustStaminaLoss(20) + owner.adjust_stamina_loss(20) owner.emote("cough") oxyloss_sum += 8 @@ -79,7 +79,7 @@ to_chat(owner, span_userdanger("It feels like you're shutting down...")) owner.adjust_dizzy_up_to(4 SECONDS, 10 SECONDS) owner.adjust_eye_blur_up_to(4 SECONDS, 20 SECONDS) - owner.adjustStaminaLoss(20) + owner.adjust_stamina_loss(20) if(SPT_PROB(5, seconds_between_ticks)) owner.emote("cough") @@ -94,8 +94,8 @@ owner.Paralyze(1 SECONDS) oxyloss_sum += 3 - if(owner.getOxyLoss() < OXYLOSS_MAXIMUM) //A bad enough roll on the verge of passing out might still push you over into unconciousness for a few seconds...? - owner.adjustOxyLoss(oxyloss_sum) + if(owner.get_oxy_loss() < OXYLOSS_MAXIMUM) //A bad enough roll on the verge of passing out might still push you over into unconciousness for a few seconds...? + owner.adjust_oxy_loss(oxyloss_sum) if(time_until_stoppage <= 0) if(owner.stat == CONSCIOUS) diff --git a/code/datums/status_effects/debuffs/hooked.dm b/code/datums/status_effects/debuffs/hooked.dm index 41583e8b5f4d74..cc5aa30fadba92 100644 --- a/code/datums/status_effects/debuffs/hooked.dm +++ b/code/datums/status_effects/debuffs/hooked.dm @@ -22,7 +22,8 @@ /atom/movable/screen/alert/status_effect/hooked name = "Snagged By Hook" desc = "You're being caught like a fish by some asshat! Click to safely remove the hook or move away far enough to snap it off." - icon_state = "hooked" + use_user_hud_icon = TRUE + overlay_state = "hooked" clickable_glow = TRUE /atom/movable/screen/alert/status_effect/hooked/Click() @@ -58,4 +59,5 @@ /atom/movable/screen/alert/status_effect/hooked/jaws name = "Snagged By Jaws" desc = "You've been snagged by some sort of beartrap-slash-fishing-hook-gizmo! Click to safely remove the hook or move away far enough to snap it off." - icon_state = "hooked_jaws" + use_user_hud_icon = TRUE + overlay_state = "hooked_jaws" diff --git a/code/datums/status_effects/debuffs/jitteriness.dm b/code/datums/status_effects/debuffs/jitteriness.dm index ad9a7625133c88..50bb8b5e09f488 100644 --- a/code/datums/status_effects/debuffs/jitteriness.dm +++ b/code/datums/status_effects/debuffs/jitteriness.dm @@ -25,7 +25,7 @@ owner.update_offsets() /datum/status_effect/jitter/get_examine_text() - switch(duration - world.time) + switch(duration) if(5 MINUTES to INFINITY) return span_boldwarning("[owner.p_They()] [owner.p_are()] convulsing violently!") if(3 MINUTES to 5 MINUTES) @@ -47,7 +47,7 @@ if(owner.resting && remove_duration(4 * seconds_between_ticks)) return - var/time_left_in_seconds = (duration - world.time) / 10 + var/time_left_in_seconds = duration / 10 owner.do_jitter_animation(time_left_in_seconds) /// Helper proc that causes the mob to do a jittering animation by jitter_amount. diff --git a/code/datums/status_effects/debuffs/phobia.dm b/code/datums/status_effects/debuffs/phobia.dm deleted file mode 100644 index fdfbb73fee012c..00000000000000 --- a/code/datums/status_effects/debuffs/phobia.dm +++ /dev/null @@ -1,77 +0,0 @@ -/// Basically a cooldown which makes you emote when it starts, but allows it to be easily shared between multiple phobias -/datum/status_effect/minor_phobia_reaction - id = "phobia_minor" - duration = 12 SECONDS - alert_type = null - -/datum/status_effect/minor_phobia_reaction/on_apply() - . = ..() - owner.emote("scream") - owner.set_jitter_if_lower(6 SECONDS) - owner.add_mood_event("phobia_minor", /datum/mood_event/startled) - -/// Stacking severity of phobic reaction -/// The more stacks you are the more scared you are -/datum/status_effect/stacking/phobia_reaction - id = "phobia" - status_type = STATUS_EFFECT_REFRESH - stacks = 1 - max_stacks = 6 - tick_interval = 40 SECONDS - consumed_on_threshold = FALSE - -/datum/status_effect/stacking/phobia_reaction/on_creation(mob/living/new_owner, stacks_to_apply = 1, mood_event_type) - . = ..() - if (!.) - return FALSE - - if (mood_event_type) - owner.add_mood_event("phobia", mood_event_type) - return TRUE - -/datum/status_effect/stacking/phobia_reaction/refresh(effect, stacks_to_add) - . = ..() - add_stacks(stacks_to_add) - -/datum/status_effect/stacking/phobia_reaction/add_stacks(stacks_added) - . = ..() - if (stacks_added <= 0 || stacks <= 0) - return - - var/reaction = rand(1,4) - switch(reaction) - if(1) - to_chat(owner, span_warning("You are startled!")) - owner.emote("jump") - owner.Immobilize(0.1 SECONDS * stacks) - - if(2) - owner.painful_scream() // DOPPLER EDIT: check for painkilling before screaming - owner.say("AAAAH!!", forced = "phobia") - - if(stacks >= 5) - var/held_item = owner.get_active_held_item() - if (owner.dropItemToGround(held_item)) - owner.visible_message( - span_danger("[owner.name] drops \the [held_item]!"), - span_warning("You drop \the [held_item]!"), null, COMBAT_MESSAGE_RANGE) - - if(3) - to_chat(owner, span_warning("You lose your balance!")) - owner.adjust_staggered_up_to(2 SECONDS * stacks, 20 SECONDS) - owner.add_movespeed_modifier(/datum/movespeed_modifier/status_effect/spooked) - // We're relying on the fact that there's a 12 second application cooldown to not have to bother cancelling and replacing this timer - // So if you adjust the duration keep that in mind - addtimer(CALLBACK(src, PROC_REF(speed_up)), 1 SECONDS * stacks, TIMER_STOPPABLE | TIMER_DELETE_ME) - - if(4) - to_chat(owner, span_warning("You feel faint with fright!")) - owner.adjust_dizzy_up_to(2 SECONDS * stacks, 20 SECONDS) - owner.adjust_eye_blur_up_to(1.5 SECONDS * stacks, 6 SECONDS) - -/datum/status_effect/stacking/phobia_reaction/fadeout_effect() - to_chat(owner, span_notice("You calm down.")) - -/// Remove our active movespeed modifier -/datum/status_effect/stacking/phobia_reaction/proc/speed_up() - owner.remove_movespeed_modifier(/datum/movespeed_modifier/status_effect/spooked) diff --git a/code/datums/status_effects/debuffs/rust_corruption.dm b/code/datums/status_effects/debuffs/rust_corruption.dm index 168986beb926a9..6692ef111a0817 100644 --- a/code/datums/status_effects/debuffs/rust_corruption.dm +++ b/code/datums/status_effects/debuffs/rust_corruption.dm @@ -6,7 +6,7 @@ /datum/status_effect/rust_corruption/tick(seconds_between_ticks) if(issilicon(owner) || isbot(owner)) - owner.adjustBruteLoss(10 * seconds_between_ticks) + owner.adjust_brute_loss(10 * seconds_between_ticks) return owner.adjust_disgust(5 * seconds_between_ticks) owner.reagents?.remove_all(0.75 * seconds_between_ticks) diff --git a/code/datums/status_effects/debuffs/screen_blur.dm b/code/datums/status_effects/debuffs/screen_blur.dm index acdce13b5a08a4..ee893610c12c2a 100644 --- a/code/datums/status_effects/debuffs/screen_blur.dm +++ b/code/datums/status_effects/debuffs/screen_blur.dm @@ -49,7 +49,7 @@ game_plane_master_controller.remove_filter("eye_blur") return - var/time_left_in_seconds = (duration - world.time) / (1 SECONDS) + var/time_left_in_seconds = duration / 10 var/amount_of_blur = clamp(time_left_in_seconds * BLUR_DURATION_TO_INTENSITY, 0.6, 3) game_plane_master_controller.add_filter("eye_blur", 1, gauss_blur_filter(amount_of_blur)) diff --git a/code/datums/status_effects/debuffs/slime/slime_leech.dm b/code/datums/status_effects/debuffs/slime/slime_leech.dm index 00c907d8d95e6c..661b73a203af89 100644 --- a/code/datums/status_effects/debuffs/slime/slime_leech.dm +++ b/code/datums/status_effects/debuffs/slime/slime_leech.dm @@ -1,7 +1,8 @@ /atom/movable/screen/alert/status_effect/slime_leech name = "Covered in Slime" desc = "A slime is draining your very lifeforce! Remove it by hand, by hitting it, or by water." - icon_state = "slime_leech" + use_user_hud_icon = TRUE + overlay_state = "slime_leech" /datum/status_effect/slime_leech id = "slime_leech" @@ -59,18 +60,18 @@ var/totaldamage = 0 //total damage done to this unfortunate soul if(iscarbon(owner)) - totaldamage += owner.adjustBruteLoss(rand(2, 4) * 0.5 * seconds_between_ticks) - totaldamage += owner.adjustToxLoss(rand(1, 2) * 0.5 * seconds_between_ticks) + totaldamage += owner.adjust_brute_loss(rand(2, 4) * 0.5 * seconds_between_ticks) + totaldamage += owner.adjust_tox_loss(rand(1, 2) * 0.5 * seconds_between_ticks) if(isanimal_or_basicmob(owner)) var/need_mob_update - need_mob_update = totaldamage += owner.adjustBruteLoss(rand(2, 4) * 0.5 * seconds_between_ticks, updating_health = FALSE) - need_mob_update += totaldamage += owner.adjustToxLoss(rand(1, 2) * 0.5 * seconds_between_ticks, updating_health = FALSE) + need_mob_update = totaldamage += owner.adjust_brute_loss(rand(2, 4) * 0.5 * seconds_between_ticks, updating_health = FALSE) + need_mob_update += totaldamage += owner.adjust_tox_loss(rand(1, 2) * 0.5 * seconds_between_ticks, updating_health = FALSE) if(need_mob_update) owner.updatehealth() - if(totaldamage >= 0) // AdjustBruteLoss returns a negative value on successful damage adjustment + if(totaldamage >= 0) // adjust_brute_loss() returns a negative value on successful damage adjustment our_slime.balloon_alert(our_slime, "not food!") our_slime.stop_feeding() return @@ -94,4 +95,4 @@ our_slime.adjust_nutrition(-1 * 1.8 * totaldamage) //damage is already modified by seconds_between_ticks //Heal yourself. - our_slime.adjustBruteLoss(-1.5 * seconds_between_ticks) + our_slime.adjust_brute_loss(-1.5 * seconds_between_ticks) diff --git a/code/datums/status_effects/debuffs/slime/slimed.dm b/code/datums/status_effects/debuffs/slime/slimed.dm index 32fa90482233eb..b02d1dcc71fb17 100644 --- a/code/datums/status_effects/debuffs/slime/slimed.dm +++ b/code/datums/status_effects/debuffs/slime/slimed.dm @@ -6,7 +6,8 @@ /atom/movable/screen/alert/status_effect/slimed name = "Covered in Slime" desc = "You are covered in slime and it's eating away at you! Click to start cleaning it off, or find a faster way to wash it away!" - icon_state = "slimed" + use_user_hud_icon = TRUE + overlay_state = "slimed" clickable_glow = TRUE /atom/movable/screen/alert/status_effect/slimed/Click() diff --git a/code/datums/status_effects/debuffs/spacer.dm b/code/datums/status_effects/debuffs/spacer.dm index 5b5e18ab137c5e..e2e8b8be1d40df 100644 --- a/code/datums/status_effects/debuffs/spacer.dm +++ b/code/datums/status_effects/debuffs/spacer.dm @@ -41,7 +41,7 @@ if(seconds_in_nograv >= 3 MINUTES) // This has some interesting side effects with gravitum or similar negating effects that may be worth nothing - owner.adjustStaminaLoss(-1 * stamina_heal_per_tick) + owner.adjust_stamina_loss(-1 * stamina_heal_per_tick) owner.AdjustAllImmobility(-1 * stun_heal_per_tick) // For comparison: Ephedrine heals 4 stamina per tick / 2 per second // and Nicotine heals 5 seconds of stun per tick / 2.5 per second @@ -74,8 +74,8 @@ var/minutes_active = round(seconds_active / (1 MINUTES)) // Sit at a passive amount of stamina damage depending on how long it's been - if(!the_spacer.getStaminaLoss()) - the_spacer.adjustStaminaLoss(min(25, 5 * minutes_active)) + if(!the_spacer.get_stamina_loss()) + the_spacer.adjust_stamina_loss(min(25, 5 * minutes_active)) // Max disgust increases over time as well max_disgust = min(DISGUST_LEVEL_VERYGROSS + 5, initial(max_disgust) + 5 * minutes_active) // And your lungs can't really handle it good @@ -85,7 +85,8 @@ /atom/movable/screen/alert/status_effect/gravity_sickness name = "Gravity Sickness" desc = "The gravity of the planet around you is making you feel sick and tired." - icon_state = "paralysis" + use_user_hud_icon = TRUE + overlay_state = "paralysis" /datum/mood_event/spacer diff --git a/code/datums/status_effects/debuffs/staggered.dm b/code/datums/status_effects/debuffs/staggered.dm index 9919a156c3191b..4d640b6433132d 100644 --- a/code/datums/status_effects/debuffs/staggered.dm +++ b/code/datums/status_effects/debuffs/staggered.dm @@ -51,7 +51,7 @@ /datum/status_effect/dazed id = "dazed" status_type = STATUS_EFFECT_UNIQUE - tick_interval = 0.5 SECONDS + tick_interval = 0.6 SECONDS alert_type = null remove_on_fullheal = TRUE /// Our visual cue for the vulnerable state this status effect puts us in. @@ -121,9 +121,9 @@ /// Only applied by shoving someone to paralyze them /datum/status_effect/no_side_kick id = "no side kick" - duration = 3.5 SECONDS + duration = 3.6 SECONDS status_type = STATUS_EFFECT_UNIQUE - tick_interval = 0.5 SECONDS + tick_interval = 0.6 SECONDS alert_type = null remove_on_fullheal = TRUE diff --git a/code/datums/status_effects/debuffs/stamcrit.dm b/code/datums/status_effects/debuffs/stamcrit.dm index 5c8c2b46234520..fb5b5e30920361 100644 --- a/code/datums/status_effects/debuffs/stamcrit.dm +++ b/code/datums/status_effects/debuffs/stamcrit.dm @@ -16,9 +16,9 @@ // This should be in on apply but we need it to happen AFTER being added to the mob // (Because we need to wait until the status effect is in their status effect list, or we'll add two) - if(owner.getStaminaLoss() < 120) + if(owner.get_stamina_loss() < 120) // Puts you a little further into the initial stamcrit, makes stamcrit harder to outright counter with chems. - owner.adjustStaminaLoss(30, FALSE) + owner.adjust_stamina_loss(30, FALSE) // Same RegisterSignal(owner, COMSIG_LIVING_ADJUST_STAMINA_DAMAGE, PROC_REF(update_diminishing_return)) @@ -80,5 +80,5 @@ qdel(src) return - if(owner.maxHealth - owner.getStaminaLoss() > owner.crit_threshold) + if(owner.maxHealth - owner.get_stamina_loss() > owner.crit_threshold) qdel(src) diff --git a/code/datums/status_effects/debuffs/terrified.dm b/code/datums/status_effects/debuffs/terrified.dm index dcbe2f1f80eefc..b0c984622e8b61 100644 --- a/code/datums/status_effects/debuffs/terrified.dm +++ b/code/datums/status_effects/debuffs/terrified.dm @@ -26,7 +26,8 @@ /atom/movable/screen/alert/status_effect/terrified name = "Terrified!" desc = "You feel a supernatural darkness settle in around you, overwhelming you with panic! Get into the light!" - icon_state = "terrified" + use_user_hud_icon = TRUE + overlay_state = "terrified" #undef TERROR_INITIAL_AMOUNT #undef STACK_TERROR_AMOUNT diff --git a/code/datums/status_effects/debuffs/tower_of_babel.dm b/code/datums/status_effects/debuffs/tower_of_babel.dm index fb6f61a5536498..16bc92c251529d 100644 --- a/code/datums/status_effects/debuffs/tower_of_babel.dm +++ b/code/datums/status_effects/debuffs/tower_of_babel.dm @@ -56,4 +56,5 @@ /atom/movable/screen/alert/status_effect/tower_of_babel name = "Tower of babel" desc = "You seem to be babbling in a strange language..." - icon_state = "mind_control" + use_user_hud_icon = TRUE + overlay_state = "mind_control" diff --git a/code/datums/status_effects/debuffs/vision/blindness.dm b/code/datums/status_effects/debuffs/vision/blindness.dm index caf8e98a2b0734..35c643c34e2174 100644 --- a/code/datums/status_effects/debuffs/vision/blindness.dm +++ b/code/datums/status_effects/debuffs/vision/blindness.dm @@ -25,36 +25,41 @@ return FALSE RegisterSignals(owner, update_signals, PROC_REF(update_blindness)) - update_blindness() return ..() /datum/status_effect/grouped/blindness/source_added(source, ...) - update_blindness() + update_blindness(source) /datum/status_effect/grouped/blindness/source_removed(source, removing) if (!removing) - update_blindness() + update_blindness(source) -/datum/status_effect/grouped/blindness/proc/update_blindness() +/datum/status_effect/grouped/blindness/proc/update_blindness(changed_source) if (!CAN_BE_BLIND(owner)) // future proofing qdel(src) return if (!HAS_TRAIT(owner, TRAIT_SIGHT_BYPASS)) - make_blind() + make_blind(changed_source) return for (var/blocker in blocking_sources) if (owner.is_blind_from(blocker)) - make_blind() + make_blind(changed_source) return make_unblind() -/datum/status_effect/grouped/blindness/proc/make_blind() - owner.overlay_fullscreen(id, /atom/movable/screen/fullscreen/blind) +/datum/status_effect/grouped/blindness/proc/make_blind(changed_source) + // have some extra logic to determine what overlay to use + // by default we use the noflicker overlay + // but if our one and only source is from "temp blindness", use flicker overlay + var/overlay_to_use = /atom/movable/screen/fullscreen/blind/noflicker + if(changed_source == /datum/status_effect/temporary_blindness::id && length(sources) == 1) + overlay_to_use = /atom/movable/screen/fullscreen/blind + owner.overlay_fullscreen(id, overlay_to_use ) // You are blind - at most, able to make out shapes near you - owner.add_client_colour(/datum/client_colour/monochrome, REF(src)) + owner.add_client_colour(/datum/client_colour/blindness, REF(src)) /datum/status_effect/grouped/blindness/proc/make_unblind() owner.clear_fullscreen(id) @@ -68,7 +73,8 @@ /atom/movable/screen/alert/status_effect/blind name = "Blind" desc = "You can't see! This may be caused by a genetic defect, eye trauma, being unconscious, or something covering your eyes." - icon_state = "blind" + use_user_hud_icon = TRUE + overlay_state = "blind" /// This status effect handles applying a temporary blind to the mob. /datum/status_effect/temporary_blindness diff --git a/code/datums/status_effects/drug_effects.dm b/code/datums/status_effects/drug_effects.dm index 71739ade1812e4..b498e3d39810a9 100644 --- a/code/datums/status_effects/drug_effects.dm +++ b/code/datums/status_effects/drug_effects.dm @@ -10,7 +10,8 @@ /atom/movable/screen/alert/status_effect/woozy name = "Woozy" desc = "You feel a bit slower than usual, it seems doing things with your hands takes longer than it usually does." - icon_state = "woozy" + use_user_hud_icon = TRUE + overlay_state = "woozy" /datum/status_effect/high_blood_pressure id = "high_blood_pressure" @@ -36,7 +37,8 @@ /atom/movable/screen/alert/status_effect/high_blood_pressure name = "High blood pressure" desc = "Your blood pressure is real high right now ... You'd probably bleed like a stuck pig." - icon_state = "highbloodpressure" + use_user_hud_icon = TRUE + overlay_state = "highbloodpressure" /datum/status_effect/seizure id = "seizure" @@ -58,7 +60,8 @@ /atom/movable/screen/alert/status_effect/seizure name = "Seizure" desc = "FJOIWEHUWQEFGYUWDGHUIWHUIDWEHUIFDUWGYSXQHUIODSDBNJKVBNKDML <--- this is you right now" - icon_state = "paralysis" + use_user_hud_icon = TRUE + overlay_state = "paralysis" /datum/status_effect/stoned id = "stoned" diff --git a/code/datums/status_effects/grouped_effect.dm b/code/datums/status_effects/grouped_effect.dm index caddfe17fcab27..ceb76fd4f86f4b 100644 --- a/code/datums/status_effects/grouped_effect.dm +++ b/code/datums/status_effects/grouped_effect.dm @@ -11,6 +11,11 @@ //Get our supplied arguments, without new_owner var/list/new_source_args = args.Copy(2) + if(isnull(source)) + stack_trace("Grouped status effect applied without a source") + qdel(src) + return FALSE + var/datum/status_effect/grouped/existing = new_owner.has_status_effect(type) if(existing) existing.sources |= source diff --git a/code/datums/status_effects/neutral.dm b/code/datums/status_effects/neutral.dm index 94bb67855c664e..93e6f89219c635 100644 --- a/code/datums/status_effects/neutral.dm +++ b/code/datums/status_effects/neutral.dm @@ -67,7 +67,8 @@ /atom/movable/screen/alert/status_effect/in_love name = "In Love" desc = "You feel so wonderfully in love!" - icon_state = "in_love" + use_user_hud_icon = TRUE + overlay_state = "in_love" /datum/status_effect/in_love id = "in_love" @@ -151,10 +152,10 @@ spell.reset_spell_cooldown() var/need_mob_update = FALSE - need_mob_update += rewarded.adjustBruteLoss(-25, updating_health = FALSE) - need_mob_update += rewarded.adjustFireLoss(-25, updating_health = FALSE) - need_mob_update += rewarded.adjustToxLoss(-25, updating_health = FALSE) - need_mob_update += rewarded.adjustOxyLoss(-25, updating_health = FALSE) + need_mob_update += rewarded.adjust_brute_loss(-25, updating_health = FALSE) + need_mob_update += rewarded.adjust_fire_loss(-25, updating_health = FALSE) + need_mob_update += rewarded.adjust_tox_loss(-25, updating_health = FALSE) + need_mob_update += rewarded.adjust_oxy_loss(-25, updating_health = FALSE) if(need_mob_update) rewarded.updatehealth() @@ -169,7 +170,8 @@ /atom/movable/screen/alert/status_effect/heldup name = "Held Up" desc = "Making any sudden moves would probably be a bad idea!" - icon_state = "aimed" + use_user_hud_icon = TRUE + overlay_state = "aimed" /datum/status_effect/grouped/heldup/on_apply() owner.apply_status_effect(/datum/status_effect/grouped/surrender, REF(src)) @@ -190,7 +192,8 @@ /atom/movable/screen/alert/status_effect/holdup name = "Holding Up" desc = "You're currently pointing a gun at someone. Click to cancel." - icon_state = "aimed" + use_user_hud_icon = TRUE + overlay_state = "aimed" clickable_glow = TRUE /atom/movable/screen/alert/status_effect/holdup/Click(location, control, params) @@ -373,7 +376,8 @@ /atom/movable/screen/alert/status_effect/surrender name = "Surrender" desc = "Looks like you're in trouble now, bud. Click here to surrender. (Warning: You will be incapacitated.)" - icon_state = "surrender" + use_user_hud_icon = TRUE + overlay_state = "surrender" clickable_glow = TRUE /atom/movable/screen/alert/status_effect/surrender/Click(location, control, params) @@ -679,11 +683,11 @@ var/healed = 0 if(recovery) //very mild healing for those with the water adaptation trait (fish infusion) - healed += owner.adjustOxyLoss(recovery * (water_adaptation ? 1.5 : 1), updating_health = FALSE, required_biotype = MOB_ORGANIC) - healed += owner.adjustFireLoss(recovery, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) - healed += owner.adjustToxLoss(recovery, updating_health = FALSE, required_biotype = MOB_ORGANIC) - healed += owner.adjustBruteLoss(recovery, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) - healed += owner.adjustStaminaLoss(stam_recovery, updating_stamina = FALSE) + healed += owner.adjust_oxy_loss(recovery * (water_adaptation ? 1.5 : 1), updating_health = FALSE, required_biotype = MOB_ORGANIC) + healed += owner.adjust_fire_loss(recovery, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) + healed += owner.adjust_tox_loss(recovery, updating_health = FALSE, required_biotype = MOB_ORGANIC) + healed += owner.adjust_brute_loss(recovery, updating_health = FALSE, required_bodytype = BODYTYPE_ORGANIC) + healed += owner.adjust_stamina_loss(stam_recovery, updating_stamina = FALSE) if(healed) owner.updatehealth() else if(istype(shower_reagent, /datum/reagent/blood)) diff --git a/code/datums/status_effects/reagent_effect.dm b/code/datums/status_effects/reagent_effect.dm new file mode 100644 index 00000000000000..82475d90dd2b7a --- /dev/null +++ b/code/datums/status_effects/reagent_effect.dm @@ -0,0 +1,84 @@ +/// Status effect that is tied to the existence of a reagent in a mob's system +/datum/status_effect/reagent_effect + abstract_type = /datum/status_effect/reagent_effect + id = STATUS_EFFECT_ID_ABSTRACT + alert_type = null + tick_interval = STATUS_EFFECT_NO_TICK + /// We need this reagent type + var/reagent_typepath + /// Whether subtypes of the reagent are allowed to keep the effect active + var/subtypes_allowed + +/datum/status_effect/reagent_effect/on_creation(mob/living/new_owner, reagent_typepath, subtypes_allowed = TRUE) + if(isnull(src.reagent_typepath)) + if(isnull(reagent_typepath)) + stack_trace("Reagent effect [src] created without a reagent typepath!") + src.reagent_typepath = reagent_typepath + if(isnull(src.subtypes_allowed)) + src.subtypes_allowed = subtypes_allowed + return ..() + +/datum/status_effect/reagent_effect/on_apply() + if(isnull(owner.reagents) || isnull(reagent_typepath) || !can_effect()) + return FALSE + + RegisterSignal(owner.reagents, COMSIG_REAGENTS_HOLDER_UPDATED, PROC_REF(check_reagents)) + add_effect() + return TRUE + +/datum/status_effect/reagent_effect/on_remove() + remove_effect() + UnregisterSignal(owner.reagents, COMSIG_REAGENTS_HOLDER_UPDATED) + +/datum/status_effect/reagent_effect/proc/check_reagents(datum/reagents/updated_reagents) + SIGNAL_HANDLER + + if(owner.reagents?.has_reagent(reagent_typepath, check_subtypes = subtypes_allowed)) + return + qdel(src) + +/// Can we add this effect to the owner? +/datum/status_effect/reagent_effect/proc/can_effect() + return TRUE + +/// Add the side effect to the owner +/datum/status_effect/reagent_effect/proc/add_effect() + return + +/// Remove the side effect from the owner +/datum/status_effect/reagent_effect/proc/remove_effect() + return + +/datum/status_effect/reagent_effect/fakedeath + id = "reagent_fake_death" + +/datum/status_effect/reagent_effect/fakedeath/add_effect() + owner.fakedeath(type) + +/datum/status_effect/reagent_effect/fakedeath/remove_effect() + owner.cure_fakedeath(type) + +/datum/status_effect/reagent_effect/freeze + id = "reagent_freeze" + +/datum/status_effect/reagent_effect/freeze/can_effect() + return !HAS_TRAIT(owner, TRAIT_RESISTCOLD) + +/datum/status_effect/reagent_effect/freeze/add_effect() + owner.apply_status_effect(/datum/status_effect/frozenstasis/irresistable) + owner.apply_status_effect(/datum/status_effect/grouped/stasis, type) + RegisterSignal(owner, COMSIG_MOVABLE_MOVED, PROC_REF(escape_prison)) + +/datum/status_effect/reagent_effect/freeze/remove_effect() + owner.remove_status_effect(/datum/status_effect/frozenstasis/irresistable) + owner.remove_status_effect(/datum/status_effect/grouped/stasis, type) + UnregisterSignal(owner, COMSIG_MOVABLE_MOVED) + +/datum/status_effect/reagent_effect/freeze/proc/escape_prison(...) + SIGNAL_HANDLER + + if(isturf(owner.loc)) // we escaped ice prison + owner.reagents?.del_reagent(reagent_typepath) + if(!QDELETED(src)) + stack_trace("Despite nuking the reagent from the mob, [owner] still has [type]") + qdel(src) diff --git a/code/datums/status_effects/stacking_effect.dm b/code/datums/status_effects/stacking_effect.dm index 287419028b0772..327c614f8de751 100644 --- a/code/datums/status_effects/stacking_effect.dm +++ b/code/datums/status_effects/stacking_effect.dm @@ -123,7 +123,7 @@ on_threshold_drop() if(stacks_added > 0) - tick_interval += delay_before_decay // refreshes time until decay + time_until_next_tick += delay_before_decay // refreshes time until decay if (status_overlay) status_overlay.icon_state = "[overlay_state][stacks]" diff --git a/code/datums/status_effects/wound_effects.dm b/code/datums/status_effects/wound_effects.dm index 58d34c59621a0f..2d9a507870b7f9 100644 --- a/code/datums/status_effects/wound_effects.dm +++ b/code/datums/status_effects/wound_effects.dm @@ -3,7 +3,8 @@ /atom/movable/screen/alert/status_effect/determined name = "Determined" desc = "The serious wounds you've sustained have put your body into fight-or-flight mode! Now's the time to look for an exit!" - icon_state = "wounded" + use_user_hud_icon = TRUE + overlay_state = "wounded" /datum/status_effect/determined id = "determined" @@ -67,6 +68,7 @@ /atom/movable/screen/alert/status_effect/limp name = "Limping" desc = "One or more of your legs has been wounded, slowing down steps with that leg! Get it fixed, or at least in a sling of gauze!" + icon_state = "injury" /datum/status_effect/limp/proc/check_step(mob/whocares, OldLoc, Dir, forced) SIGNAL_HANDLER diff --git a/code/datums/stock_market_events.dm b/code/datums/stock_market_events.dm index b29e52ab0ee11f..1c96671c8985f6 100644 --- a/code/datums/stock_market_events.dm +++ b/code/datums/stock_market_events.dm @@ -8,7 +8,7 @@ "MODular Solutions", "SolGov", "Australicus Industrial Mining", - "Vey-Medical", + "Nanotrasen-DeForest Corporation", "Aussec Armory", "Dreamland Robotics" ) @@ -147,5 +147,3 @@ SSstock_market.materials_quantity[mat] = initial(mat.tradable_base_quantity) //Force the material to be available again. SSstock_market.materials_prices[mat] = initial(mat.value_per_unit) * SHEET_MATERIAL_AMOUNT //Force the price to be reset once the lockdown is over. create_news() - - diff --git a/code/datums/storage/storage.dm b/code/datums/storage/storage.dm index 354879e697c02f..7ddac3f832e0aa 100644 --- a/code/datums/storage/storage.dm +++ b/code/datums/storage/storage.dm @@ -21,12 +21,12 @@ VAR_FINAL/atom/real_location /// List of all the mobs currently viewing the contents of this storage. - VAR_PRIVATE/list/mob/is_using = list() + VAR_PRIVATE/list/mob/is_using ///The type of storage interface this datum uses. var/datum/storage_interface/storage_type = /datum/storage_interface /// Associated list that keeps track of all storage UI datums per person. - VAR_PRIVATE/list/datum/storage_interface/storage_interfaces = null + VAR_PRIVATE/list/datum/storage_interface/storage_interfaces /// Typecache of items that can be inserted into this storage. /// By default, all item types can be inserted (assuming other conditions are met). @@ -158,7 +158,7 @@ for(var/mob/person as anything in is_using) hide_contents(person) - is_using.Cut() + LAZYCLEARLIST(is_using) QDEL_LIST_ASSOC_VAL(storage_interfaces) parent = null @@ -492,11 +492,15 @@ GLOBAL_LIST_EMPTY(cached_storage_typecaches) SEND_SIGNAL(parent, COMSIG_ATOM_STORED_ITEM, to_insert, user, force) SEND_SIGNAL(src, COMSIG_STORAGE_STORED_ITEM, to_insert, user, force) - to_insert.forceMove(real_location) - item_insertion_feedback(user, to_insert, override) - parent.update_appearance() + if(ismob(to_insert.loc)) + var/mob/item_carrier = to_insert.loc + item_carrier.transferItemToLoc(to_insert, real_location, animated = FALSE) // This allows has_unequipped() to be properly called. + else + to_insert.forceMove(real_location) if(get(real_location, /mob) != user) to_insert.do_pickup_animation(real_location, user) + item_insertion_feedback(user, to_insert, override) + parent.update_appearance() return TRUE /// Since items inside storages ignore transparency for QOL reasons, we're tracking when things are dropped onto them instead of our UI elements @@ -741,8 +745,6 @@ GLOBAL_LIST_EMPTY(cached_storage_typecaches) return if(collection_mode == COLLECT_ONE) - if(thing.loc == user) - user.dropItemToGround(thing, silent = TRUE) //this is nessassary to update any inventory slot it is attached to attempt_insert(thing, user) return COMPONENT_CANCEL_ATTACK_CHAIN @@ -791,8 +793,9 @@ GLOBAL_LIST_EMPTY(cached_storage_typecaches) return NONE if(istype(over_object, /atom/movable/screen/inventory/hand)) - if(real_location.loc != user || !user.can_perform_action(parent, FORBID_TELEKINESIS_REACH | ALLOW_RESTING)) + if(parent.loc != user || !user.can_perform_action(parent, FORBID_TELEKINESIS_REACH | ALLOW_RESTING)) return NONE + if(isitem(parent)) var/obj/item/item_parent = parent if(!item_parent.can_mob_unequip(user)) @@ -803,15 +806,20 @@ GLOBAL_LIST_EMPTY(cached_storage_typecaches) parent.add_fingerprint(user) return COMPONENT_CANCEL_MOUSEDROP_ONTO - if(ismob(over_object)) - if(over_object != user || !user.can_perform_action(parent, FORBID_TELEKINESIS_REACH | ALLOW_RESTING)) + if(over_object == user) + if(!user.can_perform_action(parent, FORBID_TELEKINESIS_REACH | ALLOW_RESTING)) return NONE + if(isliving(parent) && user.pulling == parent) + var/mob/living/as_living = parent + if(as_living.can_be_held) + return + parent.add_fingerprint(user) INVOKE_ASYNC(src, PROC_REF(open_storage), user) return COMPONENT_CANCEL_MOUSEDROP_ONTO - if(istype(over_object, /atom/movable/screen)) + if(istype(over_object, /atom/movable/screen) || ismob(over_object)) return NONE if(!user.can_perform_action(over_object, FORBID_TELEKINESIS_REACH)) @@ -1076,7 +1084,7 @@ GLOBAL_LIST_EMPTY(cached_storage_typecaches) orient_storage() - is_using |= to_show + LAZYOR(is_using, to_show) to_show.hud_used.open_containers |= storage_interfaces[to_show].list_ui_elements() to_show.client.screen |= storage_interfaces[to_show].list_ui_elements() @@ -1095,14 +1103,15 @@ GLOBAL_LIST_EMPTY(cached_storage_typecaches) if(to_hide.active_storage == src) to_hide.active_storage = null - if(!length(is_using) && ismovable(real_location)) + if(!LAZYLEN(is_using) && ismovable(real_location)) var/atom/movable/movable_loc = real_location movable_loc.lose_active_storage(src) - if (!length(storage_interfaces) || isnull(storage_interfaces[to_hide])) + if (!LAZYLEN(storage_interfaces) || isnull(storage_interfaces[to_hide])) return TRUE - is_using -= to_hide + if(LAZYLEN(is_using)) + is_using -= to_hide if(to_hide.client) to_hide.client.screen -= storage_interfaces[to_hide].list_ui_elements() diff --git a/code/datums/storage/subtypes/belts.dm b/code/datums/storage/subtypes/belts.dm index 125d7dddc4fd12..17175703d15489 100644 --- a/code/datums/storage/subtypes/belts.dm +++ b/code/datums/storage/subtypes/belts.dm @@ -303,6 +303,16 @@ . = ..() set_holdable(/obj/item/melee/parsnip_sabre) +/datum/storage/gladius_belt + max_slots = 1 + do_rustle = FALSE + max_specific_storage = WEIGHT_CLASS_BULKY + click_alt_open = FALSE + +/datum/storage/gladius_belt/New(atom/parent, max_slots, max_specific_storage, max_total_storage, rustle_sound, remove_rustle_sound) + . = ..() + set_holdable(/obj/item/claymore/gladius) + ///Plant belt /datum/storage/plant_belt max_slots = 6 diff --git a/code/datums/storage/subtypes/boxes.dm b/code/datums/storage/subtypes/boxes.dm index a8acd98884b09a..2a50119749f19b 100644 --- a/code/datums/storage/subtypes/boxes.dm +++ b/code/datums/storage/subtypes/boxes.dm @@ -16,6 +16,13 @@ . = ..() set_holdable(/obj/item/food/donkpocket) +/datum/storage/box/donk_bullets/New(atom/parent, max_slots, max_specific_storage, max_total_storage, rustle_sound, remove_rustle_sound) + . = ..() + set_holdable(list( + /obj/item/food/donkpocket, + /obj/item/ammo_casing/shotgun, + )) + ///Coffee box /datum/storage/box/coffee max_slots = 5 diff --git a/code/datums/storage/subtypes/holsters.dm b/code/datums/storage/subtypes/holsters.dm index 2f4bd384423b6c..17dd564481b766 100644 --- a/code/datums/storage/subtypes/holsters.dm +++ b/code/datums/storage/subtypes/holsters.dm @@ -19,6 +19,7 @@ /obj/item/gun/energy/dueling, /obj/item/food/grown/banana, /obj/item/gun/energy/laser/thermal, + /obj/item/gun/energy/laser/pistol, /obj/item/gun/ballistic/rifle/boltaction, //fits if you make it an obrez /obj/item/gun/energy/laser/captain, /obj/item/gun/energy/e_gun/hos, @@ -37,6 +38,7 @@ /obj/item/gun/energy/laser/thermal, /obj/item/gun/energy/recharge/ebow, /obj/item/gun/energy/laser/captain, + /obj/item/gun/energy/laser/pistol, /obj/item/gun/energy/e_gun/hos, ) @@ -62,6 +64,7 @@ /obj/item/gun/energy/dueling, /obj/item/gun/energy/laser/thermal, /obj/item/gun/energy/laser/captain, + /obj/item/gun/energy/laser/pistol, /obj/item/gun/energy/e_gun/hos, /obj/item/gun/ballistic/rifle/boltaction, //fits if you make it an obrez // DOPPLER ADDITION START - New ammo types for the detective revolver @@ -93,6 +96,7 @@ /obj/item/gun/energy/disabler, /obj/item/gun/energy/dueling, /obj/item/gun/energy/laser/captain, + /obj/item/gun/energy/laser/pistol, /obj/item/gun/energy/e_gun/hos, ) diff --git a/code/datums/storage/subtypes/others/misc.dm b/code/datums/storage/subtypes/others/misc.dm index ead768ca93382e..1b1011b769dc2e 100644 --- a/code/datums/storage/subtypes/others/misc.dm +++ b/code/datums/storage/subtypes/others/misc.dm @@ -32,6 +32,7 @@ /obj/item/reagent_containers/medigel/sterilizine, /obj/item/retractor, /obj/item/scalpel, + /obj/item/shears, /obj/item/stack/medical/bone_gel, /obj/item/stack/sticky_tape/surgical, /obj/item/surgical_drapes, diff --git a/code/datums/weather/weather.dm b/code/datums/weather/weather.dm index 270d85f24d4b56..f0a87956c561fc 100644 --- a/code/datums/weather/weather.dm +++ b/code/datums/weather/weather.dm @@ -57,19 +57,19 @@ /// Types of area to affect var/area_type = /area/space /// Areas to be affected by the weather, calculated when the weather begins - var/list/impacted_areas = list() + VAR_FINAL/list/impacted_areas = list() /// A weighted list of areas impacted by weather, where weights reflect the total turf count in each area. - var/list/impacted_areas_weighted = list() + VAR_FINAL/list/impacted_areas_weighted = list() /// The total number of turfs impacted by weather across all z-levels and areas. - var/total_impacted_turfs = 0 + VAR_FINAL/total_impacted_turfs = 0 /// Areas affected by weather have their blend modes changed - var/list/impacted_areas_blend_modes = list() + VAR_FINAL/list/impacted_areas_blend_modes = list() /// Areas that are protected and excluded from the affected areas. var/list/protected_areas = list() /// The list of z-levels that this weather is actively affecting - var/impacted_z_levels + VAR_FINAL/impacted_z_levels /// A weighted list of z-levels impacted by weather, where weights reflect the total turf count on each level - var/list/impacted_z_levels_weighted = list() + VAR_FINAL/list/impacted_z_levels_weighted = list() /// Since it's above everything else, this is the layer used by default. var/overlay_layer = AREA_LAYER @@ -109,15 +109,15 @@ var/weather_flags = NONE /// List of current mobs being processed by weather - var/list/current_mobs = list() + VAR_FINAL/list/current_mobs = list() /// The weather turf counter to keep track of how many turfs we have processed so far - var/turf_iteration = 0 + VAR_FINAL/turf_iteration = 0 /// The weather thunder counter to keep track of how much thunder we have processed so far - var/thunder_iteration = 0 + VAR_FINAL/thunder_iteration = 0 /// Index of the current section our weather subsystem is processing from our subsystem_tasks - var/task_index = 1 + VAR_FINAL/task_index = 1 /// The list of allowed tasks our weather subsystem is allowed to process (determined by weather_flags) - var/list/subsystem_tasks = list() + VAR_FINAL/list/subsystem_tasks = list() /// The temperature of our weather that is applied to weather reagents and mobs using adjust_bodytemperature() var/weather_temperature = T20C @@ -137,11 +137,12 @@ ..() impacted_z_levels = z_levels - area_type = weather_data?["area"] || area_type - weather_flags = weather_data?["weather_flags"] || weather_flags - turf_thunder_chance = isnull(weather_data?["thunder_chance"]) ? turf_thunder_chance : weather_data?["thunder_chance"] + weather_flags = isnull(weather_data?[WEATHER_FORCED_FLAGS]) ? weather_flags : weather_data?[WEATHER_FORCED_FLAGS] + turf_thunder_chance = isnull(weather_data?[WEATHER_FORCED_THUNDER]) ? turf_thunder_chance : weather_data?[WEATHER_FORCED_THUNDER] + telegraph_duration = isnull(weather_data?[WEATHER_FORCED_TELEGRAPH]) ? telegraph_duration : weather_data?[WEATHER_FORCED_TELEGRAPH] + end_duration = isnull(weather_data?[WEATHER_FORCED_END]) ? end_duration : weather_data?[WEATHER_FORCED_END] - var/datum/reagent/custom_reagent = weather_data?["reagent"] + var/datum/reagent/custom_reagent = weather_data?[WEATHER_FORCED_REAGENT] var/reagent_id if(custom_reagent) reagent_id = custom_reagent @@ -165,7 +166,7 @@ if(weather_flags & (WEATHER_THUNDER)) subsystem_tasks += SSWEATHER_THUNDER - setup_weather_areas() + setup_weather_areas(weather_data?[WEATHER_FORCED_AREAS]) setup_weather_turfs() /datum/weather/Destroy() @@ -179,26 +180,94 @@ * Calculates duration and hit areas, and makes a callback for the actual weather to start * */ -/datum/weather/proc/telegraph() +/datum/weather/proc/telegraph(list/weather_data) if(stage == STARTUP_STAGE) return stage = STARTUP_STAGE SEND_GLOBAL_SIGNAL(COMSIG_WEATHER_TELEGRAPH(type), src) - - weather_duration = rand(weather_duration_lower, weather_duration_upper) + weather_duration = isnull(weather_data?[WEATHER_FORCED_DURATION]) ? rand(weather_duration_lower, weather_duration_upper) : weather_data?[WEATHER_FORCED_DURATION] SSweather.processing |= src update_areas() if(telegraph_duration) send_alert(telegraph_message, telegraph_sound, telegraph_sound_vol) - addtimer(CALLBACK(src, PROC_REF(start)), telegraph_duration) - -/datum/weather/proc/setup_weather_areas() - var/list/affectareas = list() - for(var/area/selected_area as anything in get_areas(area_type)) - affectareas += selected_area - for(var/area/protected_area as anything in protected_areas) - affectareas -= get_areas(protected_area) - for(var/area/affected_area as anything in affectareas) + addtimer(CALLBACK(src, PROC_REF(start)), telegraph_duration, TIMER_UNIQUE) + + // so /datum/element/weather_listener relies on z traits to determine when to set up sound managers + // thus if we force weather on a z level that doesn't match the target trait, we need to manually set up sound managers + if(target_trait) + manually_setup_sound_manager() + +/// Manually add a sound manager to all mobs +/datum/weather/proc/manually_setup_sound_manager() + var/list/filtered_zs = get_impacted_zs_without_trait() + var/list/playlist = get_playlist_ref() + // we only need to manually handle sound managers if there are zs without the trait being affected, fortunately + if(!length(filtered_zs) || isnull(playlist)) + return + + // add in dead mobs so we can get observers covered too + for(var/mob/living/affected as anything in GLOB.mob_living_list | GLOB.dead_mob_list) + if(isnull(affected.client)) + // this registers 400+ odd signals... maybe we should reconsider + RegisterSignal(affected, COMSIG_MOB_LOGIN, PROC_REF(handle_mob_log_in)) + continue + + manually_setup_sound_manager_on_mob(affected, playlist, filtered_zs) + + RegisterSignal(SSdcs, COMSIG_GLOB_MOB_CREATED, PROC_REF(handle_new_mob_sound_manager)) + +/// Returns a reference to the "sound playlist" for this weather type +/datum/weather/proc/get_playlist_ref() + return null + +/// Returns a list of z-levels impacted that do not have the target trait +/datum/weather/proc/get_impacted_zs_without_trait() + var/list/zs_without_trait = list() + for(var/z in impacted_z_levels) + if(!SSmapping.level_trait(z, target_trait)) + zs_without_trait += z + return zs_without_trait + +/datum/weather/proc/handle_new_mob_sound_manager(datum/source, mob/the_mob) + SIGNAL_HANDLER + + if(isnull(the_mob.client)) + RegisterSignal(the_mob, COMSIG_MOB_LOGIN, PROC_REF(handle_mob_log_in)) + return + + manually_setup_sound_manager_on_mob(the_mob) + +/datum/weather/proc/handle_mob_log_in(mob/source) + SIGNAL_HANDLER + + if(stage >= END_STAGE) + stack_trace("Attempted to add a sound manager to a mob after weather ended") + UnregisterSignal(source, COMSIG_MOB_LOGIN) + return + + manually_setup_sound_manager_on_mob(source) + +/datum/weather/proc/manually_setup_sound_manager_on_mob(mob/living/affected, list/playlist = get_playlist_ref(), list/filtered_zs = get_impacted_zs_without_trait()) + PRIVATE_PROC(TRUE) + + var/list/sound_change_signals = list( + COMSIG_WEATHER_TELEGRAPH(type), + COMSIG_WEATHER_START(type), + COMSIG_WEATHER_WINDDOWN(type), + ) + + var/datum/component/our_comp = affected.AddComponent( \ + /datum/component/area_sound_manager, \ + area_loop_pairs = playlist, \ + acceptable_zs = filtered_zs, \ + ) + our_comp.RegisterSignals(SSdcs, sound_change_signals, TYPE_PROC_REF(/datum/component/area_sound_manager, handle_change)) + our_comp.RegisterSignal(SSdcs, COMSIG_WEATHER_END(type), TYPE_PROC_REF(/datum/component/area_sound_manager, handle_removal)) + +/datum/weather/proc/setup_weather_areas(list/forced_areas) + for(var/area/affected_area as anything in (forced_areas || get_areas(area_type))) + if(is_type_in_list(affected_area, protected_areas)) + continue if(!(weather_flags & WEATHER_INDOORS) && !affected_area.outdoors) continue @@ -263,7 +332,7 @@ update_areas() send_alert(weather_message, weather_sound) if(!(weather_flags & (WEATHER_ENDLESS))) - addtimer(CALLBACK(src, PROC_REF(wind_down)), weather_duration) + addtimer(CALLBACK(src, PROC_REF(wind_down)), weather_duration, TIMER_UNIQUE) for(var/area/impacted_area as anything in impacted_areas) SEND_SIGNAL(impacted_area, COMSIG_WEATHER_BEGAN_IN_AREA(type), src) @@ -281,7 +350,7 @@ stage = WIND_DOWN_STAGE update_areas() send_alert(end_message, end_sound, end_sound_vol) - addtimer(CALLBACK(src, PROC_REF(end)), end_duration) + addtimer(CALLBACK(src, PROC_REF(end)), end_duration, TIMER_UNIQUE) /** * Fully ends the weather @@ -294,12 +363,17 @@ if(stage == END_STAGE) return SEND_GLOBAL_SIGNAL(COMSIG_WEATHER_END(type), src) + UnregisterSignal(SSdcs, COMSIG_GLOB_MOB_CREATED) stage = END_STAGE SSweather.processing -= src update_areas() for(var/area/impacted_area as anything in impacted_areas) SEND_SIGNAL(impacted_area, COMSIG_WEATHER_ENDED_IN_AREA(type), src) + if(target_trait) + for(var/mob/living/affected as anything in GLOB.mob_living_list | GLOB.dead_mob_list) + UnregisterSignal(affected, COMSIG_MOB_LOGIN) + // handles sending all alerts /datum/weather/proc/send_alert(alert_msg, alert_sfx, alert_sfx_vol = 100) for(var/z_level in impacted_z_levels) @@ -315,7 +389,24 @@ // the checks for if a mob should receive alerts, returns TRUE if can /datum/weather/proc/can_get_alert(mob/player) var/turf/mob_turf = get_turf(player) - return !isnull(mob_turf) + if(isnull(mob_turf)) + return FALSE + + if((weather_flags & WEATHER_STRICT_ALERT) && !can_see_weather(player)) + return FALSE + + return TRUE + +/// Checks if the player is in or can see an area affected by the weather +/datum/weather/proc/can_see_weather(mob/player) + if(HAS_MIND_TRAIT(player, TRAIT_DETECT_STORM)) + return TRUE + + for(var/area/nearby in view(player)) + if(nearby in impacted_areas) + return TRUE + + return FALSE /** * Returns TRUE if the living mob can be affected by the weather @@ -427,19 +518,16 @@ to_chat(hit_mob, span_userdanger("You've been struck by lightning!")) hit_mob.electrocute_act(50, "thunder", flags = SHOCK_TESLA|SHOCK_NOGLOVES) - for(var/obj/hit_thing in weather_turf) - if(QDELETED(hit_thing)) // stop, it's already dead + for(var/obj/item/stack/ore/hit_ore in weather_turf) + if(QDELETED(hit_ore)) continue - if(!hit_thing.uses_integrity) - continue - if(hit_thing.invisibility != INVISIBILITY_NONE) - continue - if(HAS_TRAIT(hit_thing, TRAIT_UNDERFLOOR)) - continue - hit_thing.take_damage(20, BURN, ENERGY, FALSE) + // ores that get struck by thunder are smelted + // a bolt of lightning can reach temperatures of 30,000 Kelvin which is 5x hotter than the sun + hit_ore.fire_act(30000) + playsound(weather_turf, 'sound/effects/magic/lightningbolt.ogg', 100, extrarange = 10, falloff_distance = 10) weather_turf.visible_message(span_danger("A thunderbolt strikes [weather_turf]!")) - explosion(weather_turf, light_impact_range = 1, flame_range = 1, silent = TRUE, adminlog = FALSE) + new /obj/effect/hotspot(weather_turf) /** * Updates the overlays on impacted areas diff --git a/code/datums/weather/weather_types/ash_storm.dm b/code/datums/weather/weather_types/ash_storm.dm index 2eb77ff33f0f0c..367977a90bca2c 100644 --- a/code/datums/weather/weather_types/ash_storm.dm +++ b/code/datums/weather/weather_types/ash_storm.dm @@ -28,6 +28,9 @@ var/list/weak_sounds = list() var/list/strong_sounds = list() +/datum/weather/ash_storm/get_playlist_ref() + return GLOB.ash_storm_sounds + /datum/weather/ash_storm/telegraph() for(var/area/impacted_area as anything in impacted_areas) if(impacted_area.outdoors) @@ -61,7 +64,7 @@ return TRUE /datum/weather/ash_storm/weather_act_mob(mob/living/victim) - victim.adjustFireLoss(4, required_bodytype = BODYTYPE_ORGANIC) + victim.adjust_fire_loss(4, required_bodytype = BODYTYPE_ORGANIC) return ..() /datum/weather/ash_storm/end() diff --git a/code/datums/weather/weather_types/floor_is_lava.dm b/code/datums/weather/weather_types/floor_is_lava.dm index 14130421e6e4da..2dcbbed0aa759f 100644 --- a/code/datums/weather/weather_types/floor_is_lava.dm +++ b/code/datums/weather/weather_types/floor_is_lava.dm @@ -44,5 +44,5 @@ return FALSE /datum/weather/floor_is_lava/weather_act_mob(mob/living/victim) - victim.adjustFireLoss(3) + victim.adjust_fire_loss(3) return ..() diff --git a/code/datums/weather/weather_types/radiation_storm.dm b/code/datums/weather/weather_types/radiation_storm.dm index f141af639e3592..64bb39d36e8f28 100644 --- a/code/datums/weather/weather_types/radiation_storm.dm +++ b/code/datums/weather/weather_types/radiation_storm.dm @@ -17,10 +17,29 @@ end_message = span_notice("The air seems to be cooling off again.") area_type = /area - protected_areas = list(/area/station/maintenance, /area/station/ai_monitored/turret_protected/ai_upload, /area/station/ai_monitored/turret_protected/ai_upload_foyer, - /area/station/ai_monitored/turret_protected/aisat/maint, /area/station/ai_monitored/command/storage/satellite, - /area/station/ai_monitored/turret_protected/ai, /area/station/commons/storage/emergency/starboard, /area/station/commons/storage/emergency/port, - /area/shuttle, /area/station/security/prison/safe, /area/station/security/prison/toilet, /area/mine/maintenance, /area/icemoon/underground, /area/ruin/comms_agent/maint, /area/ruin, /area/ruin/unpowered/primitive_genemod_den) /// DOPPLER SHIFT EDIT: adding ruins as protected areas, hearthkin explicitly protected + protected_areas = list( + // General areas + /area/station/maintenance, // This is where we tell people to go + /area/shuttle, // Would be quite rude + + // AI + /area/station/ai/satellite/maintenance, // Duh... + /area/station/ai/upload, + /area/station/ai/satellite/chamber, + + // Rad shelters + /area/station/commons/storage/emergency/starboard, + /area/station/commons/storage/emergency/port, + + // Prison + /area/station/security/prison/safe, + /area/station/security/prison/toilet, + + // Off-station + /area/mine/maintenance, + /area/ruin/comms_agent/maint, + /area/icemoon/underground, + ) target_trait = ZTRAIT_STATION immunity_type = TRAIT_RADSTORM_IMMUNE diff --git a/code/datums/weather/weather_types/rain_storm.dm b/code/datums/weather/weather_types/rain_storm.dm index 1a4da05eb2af8e..4516112824c4ea 100644 --- a/code/datums/weather/weather_types/rain_storm.dm +++ b/code/datums/weather/weather_types/rain_storm.dm @@ -27,10 +27,20 @@ weather_flags = (WEATHER_TURFS | WEATHER_MOBS | WEATHER_THUNDER | WEATHER_BAROMETER) whitelist_weather_reagents = list(/datum/reagent/water) +/datum/weather/rain_storm/get_playlist_ref() + return GLOB.rain_storm_sounds + /datum/weather/rain_storm/telegraph() GLOB.rain_storm_sounds.Cut() for(var/area/impacted_area as anything in impacted_areas) GLOB.rain_storm_sounds[impacted_area] = /datum/looping_sound/rain/start + + // change the message for if rain is triggered inside the station (no canopy of course) + for(var/z in impacted_z_levels) + if(is_station_level(z)) + telegraph_message = span_warning("Thunder rumbles from above. You hear droplets hitting the floor around you.") + break + return ..() /datum/weather/rain_storm/start() @@ -92,14 +102,7 @@ desc = "A magical thunderstorm rains down below, drenching anyone caught in it with mysterious rain." telegraph_message = span_danger("A magical rain cloud appears above. You hear droplets falling down.") - protected_areas = list( - /area/station/maintenance, /area/station/ai_monitored/turret_protected/ai_upload, - /area/station/ai_monitored/turret_protected/ai_upload_foyer, /area/station/ai_monitored/turret_protected/aisat/maint, - /area/station/ai_monitored/command/storage/satellite, /area/station/ai_monitored/turret_protected/ai, - /area/station/commons/storage/emergency/starboard, /area/station/commons/storage/emergency/port, - /area/shuttle, /area/station/security/prison/safe, /area/station/security/prison/toilet, /area/mine/maintenance, - /area/icemoon/underground, /area/ruin/comms_agent/maint - ) + protected_areas = /datum/weather/rad_storm::protected_areas // same time durations as floor_is_lava event telegraph_duration = 15 SECONDS diff --git a/code/datums/weather/weather_types/sand_storm.dm b/code/datums/weather/weather_types/sand_storm.dm index 89d71c09ae5470..fdac54739e3d23 100644 --- a/code/datums/weather/weather_types/sand_storm.dm +++ b/code/datums/weather/weather_types/sand_storm.dm @@ -24,6 +24,9 @@ weather_flags = (WEATHER_MOBS | WEATHER_BAROMETER) +/datum/weather/sand_storm/get_playlist_ref() + return GLOB.sand_storm_sounds + /datum/weather/sand_storm/telegraph() GLOB.sand_storm_sounds.Cut() for(var/area/impacted_area as anything in impacted_areas) @@ -43,7 +46,7 @@ return ..() /datum/weather/sand_storm/weather_act_mob(mob/living/victim) - victim.adjustBruteLoss(5, required_bodytype = BODYTYPE_ORGANIC) + victim.adjust_brute_loss(5, required_bodytype = BODYTYPE_ORGANIC) return ..() /datum/weather/sand_storm/harmless diff --git a/code/datums/weather/weather_types/snow_storm.dm b/code/datums/weather/weather_types/snow_storm.dm index 01a07df6133669..f4a3baaa1900fd 100644 --- a/code/datums/weather/weather_types/snow_storm.dm +++ b/code/datums/weather/weather_types/snow_storm.dm @@ -28,7 +28,10 @@ // snowstorms should be colder than default icebox atmos weather_temperature = ICEBOX_MIN_TEMPERATURE - 40 // snowstorms temperature ignores any clothing insulation - weather_flags = (WEATHER_MOBS | WEATHER_BAROMETER | WEATHER_TEMPERATURE_BYPASS_CLOTHING) + weather_flags = (WEATHER_MOBS | WEATHER_BAROMETER | WEATHER_TEMPERATURE_BYPASS_CLOTHING | WEATHER_STRICT_ALERT) + +/datum/weather/snow_storm/get_playlist_ref() + return GLOB.snowstorm_sounds /datum/weather/snow_storm/start() GLOB.snowstorm_sounds.Cut() // it's passed by ref @@ -40,29 +43,6 @@ GLOB.snowstorm_sounds.Cut() return ..() -// since snowstorm is on a station z level, add extra checks to not annoy everyone -/datum/weather/snow_storm/can_get_alert(mob/player) - if(!..()) - return FALSE - - if(!is_station_level(player.z)) - return TRUE // bypass checks - - if(isobserver(player)) - return TRUE - - if(HAS_MIND_TRAIT(player, TRAIT_DETECT_STORM)) - return TRUE - - if(istype(get_area(player), /area/mine)) - return TRUE - - for(var/area/snow_area in impacted_areas) - if(locate(snow_area) in view(player)) - return TRUE - - return FALSE - ///A storm that doesn't stop storming, and is a bit stronger /datum/weather/snow_storm/forever_storm telegraph_duration = 0 SECONDS diff --git a/code/datums/wires/_wires.dm b/code/datums/wires/_wires.dm index d255d9d0f26a2a..739b5e8adecd36 100644 --- a/code/datums/wires/_wires.dm +++ b/code/datums/wires/_wires.dm @@ -22,7 +22,7 @@ return FALSE /atom/proc/attempt_wire_interaction(mob/user) - if(!wires) + if(isnull(wires)) return WIRE_INTERACTION_FAIL if(!IsReachableBy(user)) return WIRE_INTERACTION_FAIL @@ -43,13 +43,13 @@ var/wire_behavior = WIRES_INPUT /// List of all wires. - var/list/wires = list() + var/list/wires /// List of cut wires. - var/list/cut_wires = list() // List of wires that have been cut. + var/list/cut_wires // List of wires that have been cut. /// Dictionary of colours to wire. - var/list/colors = list() + var/list/colors /// List of attached assemblies. - var/list/assemblies = list() + var/list/assemblies /// If every instance of these wires should be random. Prevents wires from showing up in station blueprints. var/randomize = FALSE @@ -103,10 +103,10 @@ holder = null //properly clear refs to avoid harddels & other problems for(var/color in assemblies) - var/obj/item/assembly/assembly = assemblies[color] + var/obj/item/assembly/assembly = LAZYACCESS(assemblies, color) assembly.holder = null assembly.connected = null - LAZYCLEARLIST(assemblies) + LAZYNULL(assemblies) return ..() /// Adds a number of wires which do absolutely nothing. @@ -115,7 +115,7 @@ var/dud = WIRE_DUD_PREFIX + "[--duds]" if(dud in wires) continue - wires += dud + LAZYADD(wires, dud) ///Called when holder is qdeleted for us to clean ourselves as not to leave any unlawful references. /datum/wires/proc/on_holder_qdel(atom/source, force) @@ -124,7 +124,7 @@ qdel(src) /datum/wires/proc/randomize() - if(length(wires) > length(default_possible_colors)) + if(LAZYLEN(wires) > length(default_possible_colors)) stack_trace("Wire type [type] has more wires than possible colors, consider adding more colors or removing wires.") var/list/possible_colors = default_possible_colors.Copy() @@ -132,10 +132,10 @@ for(var/wire in shuffle(wires)) if(!length(possible_colors)) possible_colors = default_possible_colors.Copy() - colors[pick_n_take(possible_colors)] = wire + LAZYSET(colors, pick_n_take(possible_colors), wire) /datum/wires/proc/shuffle_wires() - colors.Cut() + LAZYCLEARLIST(colors) randomize() /datum/wires/proc/repair() @@ -143,7 +143,7 @@ cut(wire) // I KNOW I KNOW OK /datum/wires/proc/get_wire(color) - return colors[color] + return LAZYACCESS(colors, color) /datum/wires/proc/get_color_of_wire(wire_type) for(var/color in colors) @@ -152,12 +152,12 @@ return color /datum/wires/proc/get_attached(color) - if(assemblies[color]) - return assemblies[color] + if(LAZYACCESS(assemblies, color)) + return LAZYACCESS(assemblies, color) return null /datum/wires/proc/is_attached(color) - if(assemblies[color]) + if(LAZYACCESS(assemblies, color)) return TRUE /datum/wires/proc/is_cut(wire) @@ -167,7 +167,7 @@ return is_cut(get_wire(color)) /datum/wires/proc/is_all_cut() - if(cut_wires.len == wires.len) + if(LAZYLEN(cut_wires) == LAZYLEN(wires)) return TRUE /datum/wires/proc/is_dud(wire) @@ -178,11 +178,11 @@ /datum/wires/proc/cut(wire, mob/living/source) if(is_cut(wire)) - cut_wires -= wire + LAZYREMOVE(cut_wires, wire) SEND_SIGNAL(src, COMSIG_MEND_WIRE(wire), wire) on_cut(wire, mend = TRUE, source = source) else - cut_wires += wire + LAZYADD(cut_wires, wire) SEND_SIGNAL(src, COMSIG_CUT_WIRE(wire), wire) on_cut(wire, mend = FALSE, source = source) @@ -190,7 +190,7 @@ cut(get_wire(color), source) /datum/wires/proc/cut_random(source) - cut(wires[rand(1, wires.len)], source) + cut(LAZYACCESS(wires, rand(1, LAZYLEN(wires))), source) /datum/wires/proc/cut_all(source) for(var/wire in wires) @@ -205,26 +205,26 @@ /datum/wires/proc/pulse_color(color, mob/living/user, force=FALSE) pulse(get_wire(color), user, force) -/datum/wires/proc/pulse_assembly(obj/item/assembly/S) - for(var/color in assemblies) - if(S == assemblies[color]) +/datum/wires/proc/pulse_assembly(obj/item/assembly/assembly) + for(var/color, our_assembly in assemblies) + if(assembly == our_assembly) pulse_color(color, force=TRUE) return TRUE -/datum/wires/proc/attach_assembly(color, obj/item/assembly/S) - if(S && istype(S) && S.assembly_behavior && !is_attached(color) && !(SEND_SIGNAL(S, COMSIG_ASSEMBLY_PRE_ATTACH, holder) & COMPONENT_CANCEL_ATTACH)) - assemblies[color] = S - S.forceMove(holder) - S.connected = src - S.on_attach() // Notify assembly that it is attached - return S +/datum/wires/proc/attach_assembly(color, obj/item/assembly/assembly) + if(assembly && istype(assembly) && assembly.assembly_behavior && !is_attached(color) && !(SEND_SIGNAL(assembly, COMSIG_ASSEMBLY_PRE_ATTACH, holder) & COMPONENT_CANCEL_ATTACH)) + LAZYSET(assemblies, color, assembly) + assembly.forceMove(holder) + assembly.connected = src + assembly.on_attach() // Notify assembly that it is attached + return assembly /datum/wires/proc/detach_assembly(color) - var/obj/item/assembly/S = get_attached(color) - if(S && istype(S)) - assemblies -= color - S.on_detach() // Notify the assembly. This should remove the reference to our holder - return S + var/obj/item/assembly/assembly = get_attached(color) + if(assembly && istype(assembly)) + LAZYREMOVE(assemblies, color) + assembly.on_detach() // Notify the assembly. This should remove the reference to our holder + return assembly /// Called from [/atom/proc/emp_act] /datum/wires/proc/emp_pulse() @@ -259,9 +259,9 @@ if(!interactable(user)) return FALSE ui_interact(user) - for(var/A in assemblies) - var/obj/item/I = assemblies[A] - if(istype(I) && I.on_found(user)) + for(var/color, assembly in assemblies) + var/obj/item/assembly_item = assembly + if(istype(assembly_item) && assembly_item.on_found(user)) break return TRUE diff --git a/code/datums/wires/airlock.dm b/code/datums/wires/airlock.dm index 8c09520cab0949..1c7000c916cf71 100644 --- a/code/datums/wires/airlock.dm +++ b/code/datums/wires/airlock.dm @@ -94,7 +94,7 @@ status += "The speed light is [A.normalspeed ? "on" : "off"]." status += "The emergency light is [A.emergency ? "on" : "off"]." - if(A.unres_sensor) + if(A.unres_latch) status += "The unrestricted exit display is [A.unres_sides ? "indicating that it is letting people pass from the [dir2text(REVERSE_DIR(A.unres_sides))]" : "faintly flickering"]." else status += "The unrestricted exit display is completely inactive." @@ -150,7 +150,7 @@ A.feedback = !A.feedback A.update_appearance() if(WIRE_UNRESTRICTED_EXIT) // Pulse to switch the direction around by 180 degrees (North goes to South, East goes to West, vice-versa) - if(!A.unres_sensor) //only works if the "sensor" is installed (a variable that we assign to the door either upon creation of a door with unrestricted directions or if an unrestricted helper is added to a door in mapping) + if(!A.unres_latch) //only works if the "latch" is installed (a variable that we assign to the door either upon creation of a door with unrestricted directions or if an unrestricted helper is added to a door in mapping) return A.unres_sides = REVERSE_DIR(A.unres_sides) A.update_appearance() @@ -217,7 +217,7 @@ if(isliving(usr)) A.shock(usr, 50) if(WIRE_UNRESTRICTED_EXIT) // If this wire is cut, the unrestricted helper goes away. If you mend it, it'll go "haywire" and pick a new direction at random. Might have to cut/mend a time or two to get the direction you want. - if(!A.unres_sensor) //only works if the "sensor" is installed (a variable that we assign to the door either upon creation of a door with unrestricted directions, or if an unrestricted helper is added to a door in mapping) + if(!A.unres_latch) //only works if the "latch" is installed (a variable that we assign to the door either upon creation of a door with unrestricted directions, or if an unrestricted helper is added to a door in mapping) return if(mend) A.unres_sides = pick(NORTH, SOUTH, EAST, WEST) diff --git a/code/datums/wires/mulebot.dm b/code/datums/wires/mulebot.dm index 31bfe164b5494b..c3b4efe3460e3d 100644 --- a/code/datums/wires/mulebot.dm +++ b/code/datums/wires/mulebot.dm @@ -30,7 +30,7 @@ if(is_cut(WIRE_MOTOR1) && is_cut(WIRE_MOTOR2)) ADD_TRAIT(mule, TRAIT_IMMOBILIZED, MOTOR_LACK_TRAIT) holder.audible_message(span_hear("The motors of [mule] go silent."), null, 1) - else + else if(HAS_TRAIT_FROM(mule, TRAIT_IMMOBILIZED, MOTOR_LACK_TRAIT)) REMOVE_TRAIT(mule, TRAIT_IMMOBILIZED, MOTOR_LACK_TRAIT) holder.audible_message(span_hear("The motors of [mule] whir to life!"), null, 1) diff --git a/code/datums/wounds/_wounds.dm b/code/datums/wounds/_wounds.dm index b1f5bdf191a036..8eda251d1aeab4 100644 --- a/code/datums/wounds/_wounds.dm +++ b/code/datums/wounds/_wounds.dm @@ -63,8 +63,6 @@ /// Specific items such as bandages or sutures that can try directly treating this wound var/list/treatable_by - /// Specific items such as bandages or sutures that can try directly treating this wound only if the user has the victim in an aggressive grab or higher - var/list/treatable_by_grabbed /// Any tools with any of the flags in this list will be usable to try directly treating this wound var/list/treatable_tools /// How long it will take to treat this wound with a standard effective tool, assuming it doesn't need surgery @@ -80,6 +78,8 @@ var/limp_chance /// How much we're contributing to this limb's bleed_rate var/blood_flow + /// Surgical states we're applying to our limb + var/surgery_states = NONE /// How much having this wound will add to all future check_wounding() rolls on this limb, to allow progression to worse injuries with repeated damage var/threshold_penalty @@ -93,8 +93,6 @@ /// What status effect we assign on application var/status_effect_type - /// If we're operating on this wound and it gets healed, we'll nix the surgery too - var/datum/surgery/attached_surgery /// if you're a lazy git and just throw them in cryo, the wound will go away after accumulating severity * [base_xadone_progress_to_qdel] power var/cryo_progress @@ -116,6 +114,14 @@ /// The actionspeed modifier we will use in case we are on the arms and have a interaction penalty. Qdelled on destroy. var/datum/actionspeed_modifier/wound_interaction_inefficiency/actionspeed_mod + /// List of states -> other states that override them and prevent them from being added by wounds + var/static/list/exclusive_surgery_states = list( + "[SURGERY_SKIN_CUT]" = SURGERY_SKIN_OPEN, + "[SURGERY_VESSELS_UNCLAMPED]" = SURGERY_VESSELS_CLAMPED, + "[SURGERY_BONE_SAWED]" = SURGERY_BONE_DRILLED, + "[SURGERY_BONE_DRILLED]" = SURGERY_BONE_SAWED, + ) + /datum/wound/New() . = ..() @@ -123,9 +129,8 @@ update_actionspeed_modifier() /datum/wound/Destroy() - QDEL_NULL(attached_surgery) if (limb) - remove_wound() + remove_wound(destroying = QDELING(limb)) QDEL_NULL(actionspeed_mod) @@ -269,6 +274,7 @@ UnregisterSignal(victim, COMSIG_QDELETING) UnregisterSignal(victim, COMSIG_MOB_SWAP_HANDS) UnregisterSignal(victim, COMSIG_CARBON_POST_REMOVE_LIMB) + UnregisterSignal(victim, COMSIG_ATOM_ITEM_INTERACTION) if (actionspeed_mod) victim.remove_actionspeed_modifier(actionspeed_mod) // no need to qdelete it, just remove it from our victim @@ -277,24 +283,39 @@ if(victim) RegisterSignal(victim, COMSIG_QDELETING, PROC_REF(null_victim)) RegisterSignals(victim, list(COMSIG_MOB_SWAP_HANDS, COMSIG_CARBON_POST_REMOVE_LIMB, COMSIG_CARBON_POST_ATTACH_LIMB), PROC_REF(add_or_remove_actionspeed_mod)) - + RegisterSignal(victim, COMSIG_ATOM_ITEM_INTERACTION, PROC_REF(interact_try_treating)) if (limb) start_limping_if_we_should() // the status effect already handles removing itself add_or_remove_actionspeed_mod() /// Proc called to change the variable `limb` and react to the event. -/datum/wound/proc/set_limb(obj/item/bodypart/new_value, replaced = FALSE) +/// * replaced - Is the wound being overriden by another (stronger) wound? +/// * destroying - Is this coming from a limb's Destroy() call? If so, cut down on updates we cause +/datum/wound/proc/set_limb(obj/item/bodypart/new_value, replaced = FALSE, destroying = FALSE) if(limb == new_value) return FALSE //Limb can either be a reference to something or `null`. Returning the number variable makes it clear no change was made. + . = limb + if(limb) // if we're nulling limb, we're basically detaching from it, so we should remove ourselves in that case - UnregisterSignal(limb, COMSIG_QDELETING) - UnregisterSignal(limb, list(COMSIG_BODYPART_GAUZED, COMSIG_BODYPART_UNGAUZED)) + UnregisterSignal(limb, list(COMSIG_QDELETING, COMSIG_BODYPART_GAUZED, COMSIG_BODYPART_UNGAUZED, COMSIG_BODYPART_UPDATING_SURGERY_STATE)) LAZYREMOVE(limb.wounds, src) - limb.update_wounds(replaced) + if (!destroying) + limb.update_wounds(replaced) if (disabling) limb.remove_traits(list(TRAIT_PARALYSIS, TRAIT_DISABLED_BY_WOUND), REF(src)) + if(surgery_states) + for (var/state in exclusive_surgery_states) + if (!(limb.surgery_state & exclusive_surgery_states[state])) + continue + var/actual_state = text2num(state) + if (actual_state & surgery_states) + surgery_states &= ~actual_state + + if (surgery_states) + limb.remove_surgical_state(surgery_states) + limb = new_value // POST-CHANGE @@ -302,15 +323,32 @@ if (limb) RegisterSignal(limb, COMSIG_QDELETING, PROC_REF(source_died)) RegisterSignals(limb, list(COMSIG_BODYPART_GAUZED, COMSIG_BODYPART_UNGAUZED), PROC_REF(gauze_state_changed)) + RegisterSignal(limb, COMSIG_BODYPART_UPDATING_SURGERY_STATE, PROC_REF(on_surgery_state_change)) if (disabling) limb.add_traits(list(TRAIT_PARALYSIS, TRAIT_DISABLED_BY_WOUND), REF(src)) + if(surgery_states) + for (var/state in exclusive_surgery_states) + if (!(limb.surgery_state & exclusive_surgery_states[state])) + continue + var/actual_state = text2num(state) + if (actual_state & surgery_states) + surgery_states &= ~actual_state + + if (surgery_states) + limb.add_surgical_state(surgery_states) + if (victim) start_limping_if_we_should() // the status effect already handles removing itself add_or_remove_actionspeed_mod() update_inefficiencies(replaced) +/// Used to remove states applied or removed by operations from ourselves as to not remove them if we heal mid-surgery +/datum/wound/proc/on_surgery_state_change(old_state, surgery_state, changed_states) + SIGNAL_HANDLER + surgery_states &= ~changed_states + /datum/wound/proc/add_or_remove_actionspeed_mod() update_actionspeed_modifier() if (actionspeed_mod) @@ -327,14 +365,17 @@ SIGNAL_HANDLER qdel(src) -/// Remove the wound from whatever it's afflicting, and cleans up whatever status effects it had or modifiers it had on interaction times. ignore_limb is used for detachments where we only want to forget the victim -/datum/wound/proc/remove_wound(ignore_limb, replaced = FALSE) +/// Remove the wound from whatever it's afflicting, and cleans up whatever status effects it had or modifiers it had on interaction times. +/// * ignore_limb - Used for detachments where we only want to forget the victim +/// * replaced - If the wound is being replaced by another type +/// * destroying - If we're being removed by a limb getting destroyed +/datum/wound/proc/remove_wound(ignore_limb, replaced = FALSE, destroying = FALSE) //TODO: have better way to tell if we're getting removed without replacement (full heal) scar stuff var/old_victim = victim var/old_limb = limb set_disabling(FALSE) - if(limb && can_scar && !already_scarred && !replaced) + if(limb && can_scar && !already_scarred && !replaced && !destroying) already_scarred = TRUE var/datum/scar/new_scar = new new_scar.generate(limb, src) @@ -344,12 +385,12 @@ null_victim() // we use the proc here because some behaviors may depend on changing victim to some new value if(limb && !ignore_limb) - set_limb(null, replaced) // since we're removing limb's ref to us, we should do the same + set_limb(null, replaced, destroying) // since we're removing limb's ref to us, we should do the same // if you want to keep the ref, do it externally, there's no reason for us to remember it if (ismob(old_victim)) var/mob/mob_victim = old_victim - SEND_SIGNAL(mob_victim, COMSIG_CARBON_POST_LOSE_WOUND, src, old_limb, ignore_limb, replaced) + SEND_SIGNAL(mob_victim, COMSIG_CARBON_POST_LOSE_WOUND, src, old_limb, ignore_limb, replaced, destroying) if(!replaced && !limb) mob_victim.update_health_hud() @@ -459,73 +500,82 @@ if(WOUND_SEVERITY_LOSS) victim.reagents.add_reagent(/datum/reagent/determination, WOUND_DETERMINATION_LOSS) +/datum/wound/proc/interact_try_treating(datum/source, mob/living/user, obj/item/tool, ...) + SIGNAL_HANDLER + + return try_treating(tool, user) + /** - * try_treating() is an intercept run from [/mob/living/carbon/proc/attackby] right after surgeries but before anything else. Return TRUE here if the item is something that is relevant to treatment to take over the interaction. + * Attempt to treat the wound with the given item/tool by the given user + * This proc leads into [/datum/wound/proc/treat] * - * This proc leads into [/datum/wound/proc/treat] and probably shouldn't be added onto in children types. You can specify what items or tools you want to be intercepted - * with var/list/treatable_by and var/treatable_tool, then if an item fulfills one of those requirements and our wound claims it first, it goes over to treat() and treat_self(). + * You can specify what items or tools you want to be intercepted + * with var/list/treatable_by and var/treatable_tool, + * then if an item fulfills one of those requirements and our wound claims it first, + * it goes over to treat() and treat_self(). * * Arguments: * * I: The item we're trying to use * * user: The mob trying to use it on us */ -/datum/wound/proc/try_treating(obj/item/I, mob/user) - // first we weed out if we're not dealing with our wound's bodypart, or if it might be an attack - if(!I || limb.body_zone != user.zone_selected) - return FALSE +/datum/wound/proc/try_treating(obj/item/tool, mob/living/user) + SHOULD_NOT_OVERRIDE(TRUE) - if(isliving(user)) - var/mob/living/tendee = user - if(I.force && tendee.combat_mode) - return FALSE + if(limb.body_zone != user.zone_selected) + return NONE - if(!item_can_treat(I, user)) - return FALSE + if(user.combat_mode && tool.force) + return NONE - // now that we've determined we have a valid attempt at treating, we can stomp on their dreams if we're already interacting with the patient or if their part is obscured + if(!item_can_treat(tool, user)) + return NONE + + // now that we've determined we have a valid attempt at treating, + // we can stomp on their dreams if we're already interacting with the patient or if their part is obscured if(DOING_INTERACTION_WITH_TARGET(user, victim)) to_chat(user, span_warning("You're already interacting with [victim]!")) - return TRUE + return ITEM_INTERACT_BLOCKING // next we check if the bodypart in actually accessible (not under thick clothing). We skip the species trait check since skellies // & such may need to use bone gel but may be wearing a space suit for..... whatever reason a skeleton would wear a space suit for if(ishuman(victim)) var/mob/living/carbon/human/victim_human = victim if(!victim_human.try_inject(user, injection_flags = INJECT_CHECK_IGNORE_SPECIES | INJECT_TRY_SHOW_ERROR_MESSAGE)) - return TRUE + return ITEM_INTERACT_BLOCKING - // lastly, treat them - return treat(I, user) // we allow treat to return a value so it can control if the item does its normal interaction or not + INVOKE_ASYNC(src, PROC_REF(treat), tool, user) + return ITEM_INTERACT_SUCCESS /// Returns TRUE if the item can be used to treat our wounds. Hooks into treat() - only things that return TRUE here may be used there. /datum/wound/proc/item_can_treat(obj/item/potential_treater, mob/user) // check if we have a valid treatable tool if(potential_treater.tool_behaviour in treatable_tools) return TRUE - if((TOOL_CAUTERY in treatable_tools) && potential_treater.get_temperature() && (user == victim)) // allow improvised cauterization on yourself without an aggro grab - return TRUE // failing that, see if we're aggro grabbing them and if we have an item that works for aggro grabs only - if(user.pulling == victim && user.grab_state >= GRAB_AGGRESSIVE && check_grab_treatments(potential_treater, user)) + if((user == victim || (user.pulling == victim && user.grab_state >= GRAB_AGGRESSIVE)) && check_grab_treatments(potential_treater, user)) return TRUE // failing THAT, we check if we have a generally allowed item - for(var/allowed_type in treatable_by) - if(istype(potential_treater, allowed_type)) - return TRUE + if(is_type_in_list(potential_treater, treatable_by)) + return TRUE + return FALSE -/// Return TRUE if we have an item that can only be used while aggro grabbed (unhanded aggro grab treatments go in [/datum/wound/proc/try_handling]). Treatment is still is handled in [/datum/wound/proc/treat] -/datum/wound/proc/check_grab_treatments(obj/item/I, mob/user) +/// Return TRUE if we have an item that can only be used while aggro grabbed +/// (unhanded aggro grab treatments go in [/datum/wound/proc/try_handling]). +/// Treatment is still is handled in [/datum/wound/proc/treat] +/datum/wound/proc/check_grab_treatments(obj/item/tool, mob/user) return FALSE -/// Like try_treating() but for unhanded interactions, used by joint dislocations for manual bodypart chiropractice for example. Ignores thick material checks since you can pop an arm into place through a thick suit unlike using sutures +/// Like try_treating() but for unhanded interactions, used by joint dislocations for manual bodypart chiropractice for example. +/// Ignores thick material checks since you can pop an arm into place through a thick suit unlike using sutures /datum/wound/proc/try_handling(mob/living/user) return FALSE /// Someone is using something that might be used for treating the wound on this limb -/datum/wound/proc/treat(obj/item/I, mob/user) +/datum/wound/proc/treat(obj/item/tool, mob/user) return /// If var/processing is TRUE, this is run on each life tick -/datum/wound/proc/handle_process(seconds_per_tick, times_fired) +/datum/wound/proc/handle_process(seconds_per_tick) return /// For use in do_after callback checks @@ -558,7 +608,7 @@ return /// Called when the patient is undergoing stasis, so that having fully treated a wound doesn't make you sit there helplessly until you think to unbuckle them -/datum/wound/proc/on_stasis(seconds_per_tick, times_fired) +/datum/wound/proc/on_stasis(seconds_per_tick) return /// Sets our blood flow diff --git a/code/datums/wounds/bones.dm b/code/datums/wounds/bones.dm index db7cff855aaa00..5fcc4a092f7b55 100644 --- a/code/datums/wounds/bones.dm +++ b/code/datums/wounds/bones.dm @@ -69,13 +69,13 @@ return ..() -/datum/wound/blunt/bone/remove_wound(ignore_limb, replaced) +/datum/wound/blunt/bone/remove_wound(ignore_limb, replaced, destroying) limp_slowdown = 0 limp_chance = 0 QDEL_NULL(active_trauma) return ..() -/datum/wound/blunt/bone/handle_process(seconds_per_tick, times_fired) +/datum/wound/blunt/bone/handle_process(seconds_per_tick) . = ..() if (!victim || HAS_TRAIT(victim, TRAIT_STASIS)) @@ -88,7 +88,7 @@ active_trauma = victim.gain_trauma_type(brain_trauma_group, TRAUMA_RESILIENCE_WOUND) next_trauma_cycle = world.time + (rand(100-WOUND_BONE_HEAD_TIME_VARIANCE, 100+WOUND_BONE_HEAD_TIME_VARIANCE) * 0.01 * trauma_cycle_cooldown) - var/is_bone_limb = ((limb.biological_state & BIO_BONE) && !(limb.biological_state & BIO_FLESH)) + var/is_bone_limb = ((limb.biological_state & BIO_BONE) && !(limb.biological_state & (BIO_FLESH|BIO_CHITIN))) if(!gelled || (!taped && !is_bone_limb)) return @@ -101,7 +101,7 @@ if(!is_bone_limb && SPT_PROB(severity * 1.5, seconds_per_tick)) victim.take_bodypart_damage(rand(1, severity * 2), wound_bonus=CANT_WOUND) - victim.adjustStaminaLoss(rand(2, severity * 2.5)) + victim.adjust_stamina_loss(rand(2, severity * 2.5)) if(prob(33)) to_chat(victim, span_danger("You feel a sharp pain in your body as your bones are reforming!")) @@ -169,7 +169,7 @@ if(!victim || wounding_dmg < WOUND_MINIMUM_DAMAGE || !victim.can_bleed()) return - if(limb.body_zone == BODY_ZONE_CHEST && victim.blood_volume && prob(internal_bleeding_chance + wounding_dmg)) + if(limb.body_zone == BODY_ZONE_CHEST && victim.get_blood_volume() && prob(internal_bleeding_chance + wounding_dmg)) var/blood_bled = rand(1, wounding_dmg * (severity == WOUND_SEVERITY_CRITICAL ? 2 : 1.5)) // 12 brute toolbox can cause up to 18/24 bleeding with a severe/critical chest wound switch(blood_bled) if(1 to 6) @@ -338,19 +338,19 @@ victim.apply_damage(10, BRUTE, limb, wound_bonus = CANT_WOUND) malpractice(user) -/datum/wound/blunt/bone/moderate/treat(obj/item/I, mob/user) +/datum/wound/blunt/bone/moderate/treat(obj/item/tool, mob/user) var/scanned = HAS_TRAIT(src, TRAIT_WOUND_SCANNED) var/self_penalty_mult = user == victim ? 1.5 : 1 var/scanned_mult = scanned ? 0.5 : 1 var/treatment_delay = base_treat_time * self_penalty_mult * scanned_mult if(victim == user) - victim.visible_message(span_danger("[user] begins [scanned ? "expertly" : ""] resetting [victim.p_their()] [limb.plaintext_zone] with [I]."), span_warning("You begin resetting your [limb.plaintext_zone] with [I][scanned ? ", keeping the holo-image's indications in mind" : ""]...")) + victim.visible_message(span_danger("[user] begins [scanned ? "expertly" : ""] resetting [victim.p_their()] [limb.plaintext_zone] with [tool]."), span_warning("You begin resetting your [limb.plaintext_zone] with [tool][scanned ? ", keeping the holo-image's indications in mind" : ""]...")) else - user.visible_message(span_danger("[user] begins [scanned ? "expertly" : ""] resetting [victim]'s [limb.plaintext_zone] with [I]."), span_notice("You begin resetting [victim]'s [limb.plaintext_zone] with [I][scanned ? ", keeping the holo-image's indications in mind" : ""]...")) + user.visible_message(span_danger("[user] begins [scanned ? "expertly" : ""] resetting [victim]'s [limb.plaintext_zone] with [tool]."), span_notice("You begin resetting [victim]'s [limb.plaintext_zone] with [tool][scanned ? ", keeping the holo-image's indications in mind" : ""]...")) if(!do_after(user, treatment_delay, target = victim, extra_checks=CALLBACK(src, PROC_REF(still_exists)))) - return TRUE + return if(victim == user) victim.apply_damage(15, BRUTE, limb, wound_bonus = CANT_WOUND) @@ -362,7 +362,6 @@ victim.painful_scream() // DOPPLER EDIT: check for painkilling before screaming qdel(src) - return TRUE /* Severe (Hairline Fracture) @@ -431,11 +430,15 @@ internal_bleeding_chance = 60 wound_flags = (ACCEPTS_GAUZE | MANGLES_INTERIOR) regen_ticks_needed = 240 // ticks every 2 seconds, 480 seconds, so roughly 8 minutes default + surgery_states = SURGERY_SKIN_CUT | SURGERY_BONE_SAWED // Bad enough to count as a busted skull/ribcage simple_desc = "Patient's bones have effectively shattered completely, causing total immobilization of the limb." simple_treat_text = "Bandaging the wound will slightly reduce its impact until surgically treated with bone gel and surgical tape." homemade_treat_text = "Although this is extremely difficult and slow to function, Bone gel and surgical tape may be applied directly to the wound, though this is nigh-impossible for most people to do so individually unless they've dosed themselves with one or more painkillers (Morphine and Miner's Salve have been known to help)" + /// Tracks if a surgeon has reset the bone (part one of the surgical treatment process) + VAR_FINAL/reset = FALSE + /datum/wound_pregen_data/bone/compound abstract = FALSE @@ -453,7 +456,7 @@ /// if someone is using bone gel on our wound /datum/wound/blunt/bone/proc/gel(obj/item/stack/medical/bone_gel/I, mob/user) // skellies get treated nicer with bone gel since their "reattach dismembered limbs by hand" ability sucks when it's still critically wounded - if((limb.biological_state & BIO_BONE) && !(limb.biological_state & BIO_FLESH)) + if((limb.biological_state & BIO_BONE) && !(limb.biological_state & (BIO_FLESH|BIO_CHITIN))) return skelly_gel(I, user) if(gelled) @@ -533,11 +536,15 @@ processes = TRUE return TRUE -/datum/wound/blunt/bone/treat(obj/item/I, mob/user) - if(istype(I, /obj/item/stack/medical/bone_gel)) - return gel(I, user) - else if(istype(I, /obj/item/stack/sticky_tape/surgical)) - return tape(I, user) +/datum/wound/blunt/bone/item_can_treat(obj/item/potential_treater, mob/user) + // assume that - if working on a ready-to-operate limb - the surgery wants to do the real surgery instead of bone regeneration + return ..() && !HAS_TRAIT(limb, TRAIT_READY_TO_OPERATE) + +/datum/wound/blunt/bone/treat(obj/item/tool, mob/user) + if(istype(tool, /obj/item/stack/medical/bone_gel)) + gel(tool, user) + if(istype(tool, /obj/item/stack/sticky_tape/surgical)) + tape(tool, user) /datum/wound/blunt/bone/get_scanner_description(mob/user) . = ..() @@ -545,7 +552,7 @@ . += "
" if(severity > WOUND_SEVERITY_MODERATE) - if((limb.biological_state & BIO_BONE) && !(limb.biological_state & BIO_FLESH)) + if((limb.biological_state & BIO_BONE) && !(limb.biological_state & (BIO_FLESH|BIO_CHITIN))) if(!gelled) . += "Recommended Treatment: Apply bone gel directly to injured limb. Creatures of pure bone don't seem to mind bone gel application nearly as much as fleshed individuals. Surgical tape will also be unnecessary.\n" else @@ -560,6 +567,6 @@ if(limb.body_zone == BODY_ZONE_HEAD) . += "Cranial Trauma Detected: Patient will suffer random bouts of [severity == WOUND_SEVERITY_SEVERE ? "mild" : "severe"] brain traumas until bone is repaired." - else if(limb.body_zone == BODY_ZONE_CHEST && victim.blood_volume) + else if(limb.body_zone == BODY_ZONE_CHEST && CAN_HAVE_BLOOD(victim)) . += "Ribcage Trauma Detected: Further trauma to chest is likely to worsen internal bleeding until bone is repaired." . += "
" diff --git a/code/datums/wounds/burns.dm b/code/datums/wounds/burns.dm index 334f820cc28706..7877f1b955c70a 100644 --- a/code/datums/wounds/burns.dm +++ b/code/datums/wounds/burns.dm @@ -18,33 +18,31 @@ default_scar_file = FLESH_SCAR_FILE - treatable_by = list(/obj/item/stack/medical/ointment, /obj/item/stack/medical/mesh) // sterilizer and alcohol will require reagent treatments, coming soon - // Flesh damage vars - /// How much damage to our flesh we currently have. Once both this and infestation reach 0, the wound is considered healed + /// How much damage to our flesh we currently have. Once both this and infection reach 0, the wound is considered healed var/flesh_damage = 5 /// Our current counter for how much flesh regeneration we have stacked from regenerative mesh/synthflesh/whatever, decrements each tick and lowers flesh_damage var/flesh_healing = 0 - // Infestation vars (only for severe and critical) + // Infection vars (only for severe and critical) /// How quickly infection breeds on this burn if we don't have disinfectant - var/infestation_rate = 0 + var/infection_rate = 0 /// Our current level of infection - var/infestation = 0 - /// Our current level of sanitization/anti-infection, from disinfectants/alcohol/UV lights. While positive, totally pauses and slowly reverses infestation effects each tick + var/infection = 0 + /// Our current level of sanitization/anti-infection, from disinfectants/alcohol/UV lights. While positive, totally pauses and slowly reverses infection effects each tick var/sanitization = 0 - /// Once we reach infestation beyond WOUND_INFESTATION_SEPSIS, we get this many warnings before the limb is completely paralyzed (you'd have to ignore a really bad burn for a really long time for this to happen) + /// Once we reach infection beyond WOUND_INFECTION_SEPTIC, we get this many warnings before the limb is completely paralyzed (you'd have to ignore a really bad burn for a really long time for this to happen) var/strikes_to_lose_limb = 3 -/datum/wound/burn/flesh/handle_process(seconds_per_tick, times_fired) +/datum/wound/burn/flesh/handle_process(seconds_per_tick) if (!victim || HAS_TRAIT(victim, TRAIT_STASIS)) return . = ..() if(strikes_to_lose_limb <= 0) // we've already hit sepsis, nothing more to do - victim.adjustToxLoss(0.25 * seconds_per_tick) + victim.adjust_tox_loss(0.25 * seconds_per_tick) if(SPT_PROB(0.5, seconds_per_tick)) victim.visible_message(span_danger("The infection on the remnants of [victim]'s [limb.plaintext_zone] shift and bubble nauseatingly!"), span_warning("You can feel the infection on the remnants of your [limb.plaintext_zone] coursing through your veins!"), vision_distance = COMBAT_MESSAGE_RANGE) return @@ -56,10 +54,10 @@ if(HAS_TRAIT(victim, TRAIT_VIRUS_RESISTANCE)) sanitization += 0.9 if(HAS_TRAIT(victim, TRAIT_IMMUNODEFICIENCY)) - infestation += 0.05 + infection += 0.05 sanitization = max(sanitization - 0.15, 0) - if(infestation_rate <= 0.15 && prob(50)) - infestation_rate += 0.001 + if(infection_rate <= 0.15 && prob(50)) + infection_rate += 0.001 if(limb.current_gauze) limb.seep_gauze(WOUND_BURN_SANITIZATION_RATE * seconds_per_tick) @@ -69,11 +67,11 @@ flesh_healing = max(flesh_healing - (0.5 * bandage_factor * seconds_per_tick), 0) // good bandages multiply the length of flesh healing // if we have little/no infection, the limb doesn't have much burn damage, and our nutrition is good, heal some flesh - if(infestation <= WOUND_INFECTION_MODERATE && (limb.burn_dam < 5) && (victim.nutrition >= NUTRITION_LEVEL_FED)) + if(infection <= WOUND_INFECTION_MODERATE && (limb.burn_dam < 5) && (victim.nutrition >= NUTRITION_LEVEL_FED)) flesh_healing += 0.2 // here's the check to see if we're cleared up - if((flesh_damage <= 0) && (infestation <= WOUND_INFECTION_MODERATE)) + if((flesh_damage <= 0) && (infection <= WOUND_INFECTION_MODERATE)) to_chat(victim, span_green("The burns on your [limb.plaintext_zone] have cleared up!")) qdel(src) return @@ -81,18 +79,18 @@ // sanitization is checked after the clearing check but before the actual ill-effects, because we freeze the effects of infection while we have sanitization if(sanitization > 0) var/bandage_factor = limb.current_gauze?.burn_cleanliness_bonus || 1 - infestation = max(infestation - (WOUND_BURN_SANITIZATION_RATE * seconds_per_tick), 0) + infection = max(infection - (WOUND_BURN_SANITIZATION_RATE * seconds_per_tick), 0) sanitization = max(sanitization - (WOUND_BURN_SANITIZATION_RATE * bandage_factor * seconds_per_tick), 0) return - infestation += infestation_rate * seconds_per_tick - switch(infestation) + infection += infection_rate * seconds_per_tick + switch(infection) if(0 to WOUND_INFECTION_MODERATE) return if(WOUND_INFECTION_MODERATE to WOUND_INFECTION_SEVERE) if(SPT_PROB(15, seconds_per_tick)) - victim.adjustToxLoss(0.2) + victim.adjust_tox_loss(0.2) if(prob(6)) to_chat(victim, span_warning("The blisters on your [limb.plaintext_zone] ooze a strange pus...")) @@ -108,7 +106,7 @@ return if(SPT_PROB(10, seconds_per_tick)) - victim.adjustToxLoss(0.5) + victim.adjust_tox_loss(0.5) if(WOUND_INFECTION_CRITICAL to WOUND_INFECTION_SEPTIC) if(!disabling) @@ -124,12 +122,12 @@ if(SPT_PROB(2.48, seconds_per_tick)) if(prob(20)) to_chat(victim, span_warning("You contemplate life without your [limb.plaintext_zone]...")) - victim.adjustToxLoss(0.75) + victim.adjust_tox_loss(0.75) else - victim.adjustToxLoss(1) + victim.adjust_tox_loss(1) if(WOUND_INFECTION_SEPTIC to INFINITY) - if(SPT_PROB(0.5 * infestation, seconds_per_tick)) + if(SPT_PROB(0.5 * infection, seconds_per_tick)) strikes_to_lose_limb-- switch(strikes_to_lose_limb) if(2 to INFINITY) @@ -167,7 +165,7 @@ condition += " underneath a dressing of [bandage_condition] [limb.current_gauze.name]." else - switch(infestation) + switch(infection) if(WOUND_INFECTION_MODERATE to WOUND_INFECTION_SEVERE) condition += ", [span_deadsay("with early signs of infection.")]" if(WOUND_INFECTION_SEVERE to WOUND_INFECTION_CRITICAL) @@ -184,7 +182,7 @@ /datum/wound/burn/flesh/severity_text(simple = FALSE) . = ..() . += " Burn / " - switch(infestation) + switch(infection) if(-INFINITY to WOUND_INFECTION_MODERATE) . += "No" if(WOUND_INFECTION_MODERATE to WOUND_INFECTION_SEVERE) @@ -206,10 +204,10 @@ . = ..() . += "
" - if(infestation <= sanitization && flesh_damage <= flesh_healing) + if(infection <= sanitization && flesh_damage <= flesh_healing) . += "No further treatment required: Burns will heal shortly." else - switch(infestation) + switch(infection) if(WOUND_INFECTION_MODERATE to WOUND_INFECTION_SEVERE) . += "Infection Level: Moderate\n" if(WOUND_INFECTION_SEVERE to WOUND_INFECTION_CRITICAL) @@ -218,7 +216,7 @@ . += "Infection Level: [span_deadsay("CRITICAL")]\n" if(WOUND_INFECTION_SEPTIC to INFINITY) . += "Infection Level: [span_deadsay("LOSS IMMINENT")]\n" - if(infestation > sanitization) + if(infection > sanitization) . += "\tSurgical debridement, antibiotics/sterilizers, or regenerative mesh will rid infection. Paramedic UV penlights are also effective.\n" if(flesh_damage > 0) @@ -231,7 +229,7 @@ /// Checks if the wound is in a state that ointment or flesh will help /datum/wound/burn/flesh/proc/can_be_ointmented_or_meshed() - if(infestation > 0 && sanitization < infestation) + if(infection > 0 && sanitization < infection) return TRUE if(flesh_damage > 0 && flesh_healing <= flesh_damage) return TRUE @@ -241,22 +239,21 @@ /datum/wound/burn/flesh/proc/uv(obj/item/flashlight/pen/paramedic/I, mob/user) if(!COOLDOWN_FINISHED(I, uv_cooldown)) to_chat(user, span_notice("[I] is still recharging!")) - return TRUE - if(infestation <= 0 || infestation < sanitization) + return + if(infection <= 0 || infection < sanitization) to_chat(user, span_notice("There's no infection to treat on [victim]'s [limb.plaintext_zone]!")) - return TRUE + return user.visible_message(span_notice("[user] flashes the burns on [victim]'s [limb] with [I]."), span_notice("You flash the burns on [user == victim ? "your" : "[victim]'s"] [limb.plaintext_zone] with [I]."), vision_distance=COMBAT_MESSAGE_RANGE) sanitization += I.uv_power COOLDOWN_START(I, uv_cooldown, I.uv_cooldown_length) - return TRUE -/datum/wound/burn/flesh/treat(obj/item/I, mob/user) - if(istype(I, /obj/item/flashlight/pen/paramedic)) - return uv(I, user) +/datum/wound/burn/flesh/treat(obj/item/tool, mob/user) + if(istype(tool, /obj/item/flashlight/pen/paramedic)) + uv(tool, user) // people complained about burns not healing on stasis beds, so in addition to checking if it's cured, they also get the special ability to very slowly heal on stasis beds if they have the healing effects stored -/datum/wound/burn/flesh/on_stasis(seconds_per_tick, times_fired) +/datum/wound/burn/flesh/on_stasis(seconds_per_tick) . = ..() if(strikes_to_lose_limb <= 0) // we've already hit sepsis, nothing more to do if(SPT_PROB(0.5, seconds_per_tick)) @@ -264,12 +261,12 @@ return if(flesh_healing > 0) flesh_damage = max(flesh_damage - (0.1 * seconds_per_tick), 0) - if((flesh_damage <= 0) && (infestation <= 1)) + if((flesh_damage <= 0) && (infection <= 1)) to_chat(victim, span_green("The burns on your [limb.plaintext_zone] have cleared up!")) qdel(src) return if(sanitization > 0) - infestation = max(infestation - (0.1 * WOUND_BURN_SANITIZATION_RATE * seconds_per_tick), 0) + infection = max(infection - (0.1 * WOUND_BURN_SANITIZATION_RATE * seconds_per_tick), 0) /datum/wound/burn/flesh/on_synthflesh(reac_volume) flesh_healing += reac_volume * 0.5 // 20u patch will heal 10 flesh standard @@ -325,8 +322,8 @@ damage_multiplier_penalty = 1.2 series_threshold_penalty = 40 status_effect_type = /datum/status_effect/wound/burn/flesh/severe - treatable_by = list(/obj/item/flashlight/pen/paramedic, /obj/item/stack/medical/ointment, /obj/item/stack/medical/mesh) - infestation_rate = 0.07 // appx 9 minutes to reach sepsis without any treatment + treatable_by = list(/obj/item/flashlight/pen/paramedic) + infection_rate = 0.07 // appx 9 minutes to reach sepsis without any treatment flesh_damage = 12.5 scar_keyword = "burnsevere" @@ -356,8 +353,8 @@ sound_effect = 'sound/effects/wounds/sizzle2.ogg' threshold_penalty = 25 status_effect_type = /datum/status_effect/wound/burn/flesh/critical - treatable_by = list(/obj/item/flashlight/pen/paramedic, /obj/item/stack/medical/ointment, /obj/item/stack/medical/mesh) - infestation_rate = 0.075 // appx 4.33 minutes to reach sepsis without any treatment + treatable_by = list(/obj/item/flashlight/pen/paramedic) + infection_rate = 0.075 // appx 4.33 minutes to reach sepsis without any treatment flesh_damage = 20 scar_keyword = "burncritical" diff --git a/code/datums/wounds/cranial_fissure.dm b/code/datums/wounds/cranial_fissure.dm index 19aff387734cd0..e26e3a97d9d6fc 100644 --- a/code/datums/wounds/cranial_fissure.dm +++ b/code/datums/wounds/cranial_fissure.dm @@ -39,6 +39,10 @@ severity = WOUND_SEVERITY_CRITICAL sound_effect = 'sound/effects/dismember.ogg' + surgery_states = SURGERY_SKIN_OPEN | SURGERY_BONE_SAWED // Literally a cracked open skull, no vessels as it... doesn't bleed? + + /// If TRUE we have been prepped for surgery (to repair) + VAR_FINAL/prepped = FALSE #define CRANIAL_FISSURE_FILTER_DISPLACEMENT "cranial_fissure_displacement" @@ -50,7 +54,7 @@ RegisterSignal(victim, COMSIG_MOB_SLIPPED, PROC_REF(on_owner_slipped)) -/datum/wound/cranial_fissure/remove_wound(ignore_limb, replaced) +/datum/wound/cranial_fissure/remove_wound(ignore_limb, replaced, destroying) REMOVE_TRAIT(limb, TRAIT_IMMUNE_TO_CRANIAL_FISSURE, type) if (!isnull(victim)) REMOVE_TRAIT(victim, TRAIT_HAS_CRANIAL_FISSURE, type) diff --git a/code/datums/wounds/loss.dm b/code/datums/wounds/loss.dm index 779c181474c461..ea6eefca691e03 100644 --- a/code/datums/wounds/loss.dm +++ b/code/datums/wounds/loss.dm @@ -49,7 +49,7 @@ set_limb(dismembered_part) second_wind() log_wound(victim, src) - if(dismembered_part.can_bleed() && wounding_type != WOUND_BURN && victim.blood_volume) + if(dismembered_part.can_bleed() && wounding_type != WOUND_BURN && victim.get_blood_volume()) victim.spray_blood(attack_direction, severity) dismembered_part.dismember(wounding_type == WOUND_BURN ? BURN : BRUTE, wounding_type = wounding_type) qdel(src) diff --git a/code/datums/wounds/pierce.dm b/code/datums/wounds/pierce.dm index 55fdf9ffbba9bf..87817682fb4b0b 100644 --- a/code/datums/wounds/pierce.dm +++ b/code/datums/wounds/pierce.dm @@ -24,7 +24,6 @@ name = "Piercing Wound" sound_effect = 'sound/items/weapons/slice.ogg' processes = TRUE - treatable_by = list(/obj/item/stack/medical/suture) treatable_tools = list(TOOL_CAUTERY) base_treat_time = 3 SECONDS wound_flags = (ACCEPTS_GAUZE | CAN_BE_GRASPED) @@ -42,16 +41,18 @@ var/internal_bleeding_chance /// If we let off blood when hit, the max blood lost is this * the incoming damage var/internal_bleeding_coefficient + /// If TRUE we are ready to be mended in surgery + VAR_FINAL/mend_state = FALSE /datum/wound/pierce/bleed/wound_injury(datum/wound/old_wound = null, attack_direction = null) set_blood_flow(initial_flow) - if(limb.can_bleed() && attack_direction && victim.blood_volume > BLOOD_VOLUME_OKAY) + if(limb.can_bleed() && attack_direction && victim.get_blood_volume() > BLOOD_VOLUME_OKAY) victim.spray_blood(attack_direction, severity) return ..() /datum/wound/pierce/bleed/receive_damage(wounding_type, wounding_dmg, wound_bonus) - if(victim.stat == DEAD || (wounding_dmg < 5) || !limb.can_bleed() || !victim.blood_volume || !prob(internal_bleeding_chance + wounding_dmg)) + if(victim.stat == DEAD || (wounding_dmg < 5) || !limb.can_bleed() || !victim.get_blood_volume() || !prob(internal_bleeding_chance + wounding_dmg)) return if(limb.current_gauze?.splint_factor) wounding_dmg *= (1 - limb.current_gauze.splint_factor) @@ -96,7 +97,7 @@ return BLOOD_FLOW_INCREASING return BLOOD_FLOW_STEADY -/datum/wound/pierce/bleed/handle_process(seconds_per_tick, times_fired) +/datum/wound/pierce/bleed/handle_process(seconds_per_tick) if (!victim || HAS_TRAIT(victim, TRAIT_STASIS)) return @@ -131,13 +132,14 @@ to_chat(victim, span_green("The holes on your [limb.plaintext_zone] have [!limb.can_bleed() ? "healed up" : "stopped bleeding"]!")) qdel(src) -/datum/wound/pierce/bleed/check_grab_treatments(obj/item/I, mob/user) - if(I.get_temperature()) // if we're using something hot but not a cautery, we need to be aggro grabbing them first, so we don't try treating someone we're eswording - return TRUE +/datum/wound/pierce/bleed/check_grab_treatments(obj/item/tool, mob/user) + // if we're using something hot but not a cautery, we need to be aggro grabbing them first, + // so we don't try treating someone we're eswording + return tool.get_temperature() -/datum/wound/pierce/bleed/treat(obj/item/I, mob/user) - if(I.tool_behaviour == TOOL_CAUTERY || I.get_temperature()) - return tool_cauterize(I, user) +/datum/wound/pierce/bleed/treat(obj/item/tool, mob/user) + if(tool.tool_behaviour == TOOL_CAUTERY || tool.get_temperature()) + tool_cauterize(tool, user) /datum/wound/pierce/bleed/on_xadone(power) . = ..() @@ -179,13 +181,12 @@ adjust_blood_flow(-blood_cauterized) if(blood_flow > 0) - return try_treating(I, user) - return TRUE + try_treating(I, user) /datum/wound_pregen_data/flesh_pierce abstract = TRUE - required_limb_biostate = (BIO_FLESH) + required_limb_biostate = BIO_FLESH required_wounding_type = WOUND_PIERCE wound_series = WOUND_SERIES_FLESH_PUNCTURE_BLEED @@ -204,8 +205,8 @@ occur_text = "spurts out a thin stream of blood" sound_effect = 'sound/effects/wounds/pierce1.ogg' severity = WOUND_SEVERITY_MODERATE - initial_flow = 1.5 - gauzed_clot_rate = 0.8 + initial_flow = 1.25 + gauzed_clot_rate = 0.75 clot_rate = 0.03 internal_bleeding_chance = 30 internal_bleeding_coefficient = 1.25 @@ -283,8 +284,8 @@ occur_text = "looses a violent spray of blood, revealing a pierced wound" sound_effect = 'sound/effects/wounds/pierce2.ogg' severity = WOUND_SEVERITY_SEVERE - initial_flow = 2.25 - gauzed_clot_rate = 0.6 + initial_flow = 2 + gauzed_clot_rate = 0.5 clot_rate = 0.02 internal_bleeding_chance = 60 internal_bleeding_coefficient = 1.5 @@ -340,7 +341,7 @@ RegisterSignal(limb, COMSIG_BODYPART_UPDATE_WOUND_OVERLAY, PROC_REF(wound_overlay)) limb.update_part_wound_overlay() -/datum/wound/pierce/bleed/severe/eye/remove_wound(ignore_limb, replaced) +/datum/wound/pierce/bleed/severe/eye/remove_wound(ignore_limb, replaced, destroying) if (!isnull(limb)) UnregisterSignal(limb, COMSIG_BODYPART_UPDATE_WOUND_OVERLAY) return ..() @@ -396,13 +397,14 @@ occur_text = "blasts apart, sending chunks of viscera flying in all directions" sound_effect = 'sound/effects/wounds/pierce3.ogg' severity = WOUND_SEVERITY_CRITICAL - initial_flow = 3 - gauzed_clot_rate = 0.4 + initial_flow = 2.5 + gauzed_clot_rate = 0.3 internal_bleeding_chance = 80 internal_bleeding_coefficient = 1.75 threshold_penalty = 15 status_effect_type = /datum/status_effect/wound/pierce/critical scar_keyword = "piercecritical" + surgery_states = SURGERY_SKIN_CUT | SURGERY_VESSELS_UNCLAMPED // Bad enough to count wound_flags = (ACCEPTS_GAUZE | MANGLES_EXTERIOR | CAN_BE_GRASPED) simple_treat_text = "Bandaging the wound is of utmost importance, as is seeking direct medical attention - Death will ensue if treatment is delayed whatsoever, with lack of oxygen killing the patient, thus Food, Iron, and saline solution is always recommended after treatment. This wound will not naturally seal itself." diff --git a/code/datums/wounds/slash.dm b/code/datums/wounds/slash.dm index 2ca36d2e5e5710..af172dab2ebed4 100644 --- a/code/datums/wounds/slash.dm +++ b/code/datums/wounds/slash.dm @@ -34,8 +34,6 @@ name = "Slashing (Cut) Flesh Wound" threshold_penalty = 5 processes = TRUE - treatable_by = list(/obj/item/stack/medical/suture) - treatable_by_grabbed = list(/obj/item/gun/energy/laser) treatable_tools = list(TOOL_CAUTERY) base_treat_time = 3 SECONDS wound_flags = (ACCEPTS_GAUZE|CAN_BE_GRASPED) @@ -68,7 +66,7 @@ old_wound.clear_highest_scar() else set_blood_flow(initial_flow) - if(limb.can_bleed() && attack_direction && victim.blood_volume > BLOOD_VOLUME_OKAY) + if(limb.can_bleed() && attack_direction && victim.get_blood_volume() > BLOOD_VOLUME_OKAY) victim.spray_blood(attack_direction, severity) if(!highest_scar) @@ -89,7 +87,7 @@ SIGNAL_HANDLER set_highest_scar(null) -/datum/wound/slash/flesh/remove_wound(ignore_limb, replaced) +/datum/wound/slash/flesh/remove_wound(ignore_limb, replaced, destroying) if(!replaced && highest_scar) already_scarred = TRUE highest_scar.lazy_attach(limb) @@ -145,7 +143,7 @@ if(clot_rate < 0) return BLOOD_FLOW_INCREASING -/datum/wound/slash/flesh/handle_process(seconds_per_tick, times_fired) +/datum/wound/slash/flesh/handle_process(seconds_per_tick) if (!victim || HAS_TRAIT(victim, TRAIT_STASIS)) return @@ -166,17 +164,18 @@ /* BEWARE, THE BELOW NONSENSE IS MADNESS. bones.dm looks more like what I have in mind and is sufficiently clean, don't pay attention to this messiness */ -/datum/wound/slash/flesh/check_grab_treatments(obj/item/I, mob/user) - if(istype(I, /obj/item/gun/energy/laser)) +/datum/wound/slash/flesh/check_grab_treatments(obj/item/tool, mob/user) + if(istype(tool, /obj/item/gun/energy/laser)) return TRUE - if(I.get_temperature()) // if we're using something hot but not a cautery, we need to be aggro grabbing them first, so we don't try treating someone we're eswording + if(tool.get_temperature()) // if we're using something hot but not a cautery, we need to be aggro grabbing them first, so we don't try treating someone we're eswording return TRUE + return FALSE -/datum/wound/slash/flesh/treat(obj/item/I, mob/user) - if(istype(I, /obj/item/gun/energy/laser)) - return las_cauterize(I, user) - else if(I.tool_behaviour == TOOL_CAUTERY || I.get_temperature()) - return tool_cauterize(I, user) +/datum/wound/slash/flesh/treat(obj/item/tool, mob/user) + if(istype(tool, /obj/item/gun/energy/laser)) + las_cauterize(tool, user) + else if(tool.tool_behaviour == TOOL_CAUTERY || tool.get_temperature()) + tool_cauterize(tool, user) /datum/wound/slash/flesh/try_handling(mob/living/user) if(user.pulling != victim || !HAS_TRAIT(user, TRAIT_WOUND_LICKER) || !victim.try_inject(user, injection_flags = INJECT_TRY_SHOW_ERROR_MESSAGE)) @@ -252,10 +251,9 @@ lasgun.chambered.loaded_projectile.damage *= self_penalty_mult if(!lasgun.process_fire(victim, victim, TRUE, null, limb.body_zone)) return - victim.painful_scream() // DOPPLER EDIT: check for painkilling before screaming - adjust_blood_flow(-1 * (damage / (5 * self_penalty_mult))) // 20 / 5 = 4 bloodflow removed, p good + victim.painful_scream() // DOPPLER EDIT - Painkiller checks for screamings - ORIGINAL: victim.emote("scream") victim.visible_message(span_warning("The cuts on [victim]'s [limb.plaintext_zone] scar over!")) - return TRUE + adjust_blood_flow(-1 * (damage / (5 * self_penalty_mult))) // 20 / 5 = 4 bloodflow removed, p good /// If someone is using either a cautery tool or something with heat to cauterize this cut /datum/wound/slash/flesh/proc/tool_cauterize(obj/item/I, mob/user) @@ -287,11 +285,10 @@ adjust_blood_flow(-blood_cauterized) if(blood_flow > minimum_flow) - return try_treating(I, user) + try_treating(I, user) + else if(demotes_to) to_chat(user, span_green("You successfully lower the severity of [user == victim_stored ? "your" : "[victim_stored]'s"] cuts.")) - return TRUE - return FALSE /datum/wound/slash/get_limb_examine_description() return span_warning("The flesh on this limb appears badly lacerated.") @@ -306,9 +303,9 @@ occur_text = "is cut open, slowly leaking blood" sound_effect = 'sound/effects/wounds/blood1.ogg' severity = WOUND_SEVERITY_MODERATE - initial_flow = 2 + initial_flow = 1.75 minimum_flow = 0.5 - clot_rate = 0.05 + clot_rate = 0.04 series_threshold_penalty = 10 status_effect_type = /datum/status_effect/wound/slash/flesh/moderate scar_keyword = "slashmoderate" @@ -338,13 +335,14 @@ occur_text = "is ripped open, veins spurting blood" sound_effect = 'sound/effects/wounds/blood2.ogg' severity = WOUND_SEVERITY_SEVERE - initial_flow = 3.25 - minimum_flow = 2.75 - clot_rate = 0.03 + initial_flow = 2.75 + minimum_flow = 2 + clot_rate = 0.02 series_threshold_penalty = 25 demotes_to = /datum/wound/slash/flesh/moderate status_effect_type = /datum/status_effect/wound/slash/flesh/severe scar_keyword = "slashsevere" + surgery_states = SURGERY_SKIN_CUT | SURGERY_VESSELS_UNCLAMPED simple_treat_text = "Bandaging the wound is essential, and will reduce blood loss. Afterwards, the wound can be sutured shut, preferably while the patient is resting and/or grasping their wound." homemade_treat_text = "Bed sheets can be ripped up to make makeshift gauze. Flour, table salt, or salt mixed with water can be applied directly to stem the flow, though unmixed salt will irritate the skin and worsen natural healing. Resting and grabbing your wound will also reduce bleeding." @@ -371,13 +369,14 @@ occur_text = "is torn open, spraying blood wildly" sound_effect = 'sound/effects/wounds/blood3.ogg' severity = WOUND_SEVERITY_CRITICAL - initial_flow = 4 - minimum_flow = 3.85 - clot_rate = -0.015 // critical cuts actively get worse instead of better + initial_flow = 3.75 + minimum_flow = 3.5 + clot_rate = -0.012 // critical cuts actively get worse instead of better threshold_penalty = 15 demotes_to = /datum/wound/slash/flesh/severe status_effect_type = /datum/status_effect/wound/slash/flesh/critical scar_keyword = "slashcritical" + surgery_states = SURGERY_SKIN_OPEN | SURGERY_VESSELS_UNCLAMPED wound_flags = (ACCEPTS_GAUZE | MANGLES_EXTERIOR | CAN_BE_GRASPED) simple_treat_text = "Bandaging the wound is of utmost importance, as is seeking direct medical attention - Death will ensue if treatment is delayed whatsoever, with lack of oxygen killing the patient, thus Food, Iron, and saline solution is always recommended after treatment. This wound will not naturally seal itself." homemade_treat_text = "Bed sheets can be ripped up to make makeshift gauze. Flour, salt, and saltwater topically applied will help. Dropping to the ground and grabbing your wound will reduce blood flow." diff --git a/code/game/area/ai_monitored.dm b/code/game/area/ai_monitored.dm deleted file mode 100644 index f6559d344c4a54..00000000000000 --- a/code/game/area/ai_monitored.dm +++ /dev/null @@ -1,31 +0,0 @@ -/area/station/ai_monitored - name = "\improper AI Monitored Area" - sound_environment = SOUND_ENVIRONMENT_ROOM - var/list/obj/machinery/camera/motioncameras - var/list/datum/weakref/motionTargets = list() - -/area/station/ai_monitored/Initialize(mapload) - . = ..() - if(!mapload) - return - for (var/obj/machinery/camera/ai_camera in src) - if(!ai_camera.isMotion()) - continue - LAZYADD(motioncameras, ai_camera) - ai_camera.set_area_motion(src) - -/area/station/ai_monitored/Entered(atom/movable/arrived, atom/old_loc, list/atom/old_locs) - . = ..() - if (!ismob(arrived) || !LAZYLEN(motioncameras)) - return - for(var/obj/machinery/camera/cam as anything in motioncameras) - cam.newTarget(arrived) - return - -/area/station/ai_monitored/Exited(atom/movable/gone, atom/old_loc, list/atom/old_locs) - . = ..() - if (!ismob(gone) || !LAZYLEN(motioncameras)) - return - for(var/obj/machinery/camera/cam as anything in motioncameras) - cam.lostTargetRef(WEAKREF(gone)) - return diff --git a/code/game/area/areas.dm b/code/game/area/areas.dm index cbe227905f3796..c9692021a01b38 100644 --- a/code/game/area/areas.dm +++ b/code/game/area/areas.dm @@ -24,7 +24,10 @@ /// This uses the same nested list format as turfs_by_zlevel var/list/list/turf/turfs_to_uncontain_by_zlevel = list() - var/area_flags = VALID_TERRITORY | BLOBS_ALLOWED | UNIQUE_AREA | CULT_PERMITTED + /// General flag for area properties + var/area_flags = VALID_TERRITORY | BLOBS_ALLOWED | CULT_PERMITTED + /// Flag for mapping related area properties (such as cavegen) + var/area_flags_mapping = UNIQUE_AREA ///Do we have an active fire alarm? var/fire = FALSE @@ -58,6 +61,8 @@ /// For space, the asteroid, lavaland, etc. Used with blueprints or with weather to determine if we are adding a new area (vs editing a station room) var/outdoors = FALSE + /// Whether or not this area unifies all of its motion sensors. + var/motion_monitored = FALSE /// Size of the area in open turfs, only calculated for indoors areas. var/areasize = 0 @@ -163,7 +168,7 @@ GLOBAL_LIST_EMPTY(teleportlocs) /area/New() // This interacts with the map loader, so it needs to be set immediately // rather than waiting for atoms to initialize. - if (area_flags & UNIQUE_AREA) + if (area_flags_mapping & UNIQUE_AREA) GLOB.areas_by_type[type] = src GLOB.areas += src energy_usage = new /list(AREA_USAGE_LEN) // Some atoms would like to use power in Initialize() @@ -210,6 +215,8 @@ GLOBAL_LIST_EMPTY(teleportlocs) /area/LateInitialize() power_change() // all machines set to current power level, also updates icon update_beauty() + if(motion_monitored) + AddComponent(/datum/component/monitored_area) /// Generate turfs, including cool cave wall gen /area/proc/RunTerrainGeneration() diff --git a/code/game/area/areas/ai_monitored.dm b/code/game/area/areas/ai_monitored.dm deleted file mode 100644 index 4e63479987e855..00000000000000 --- a/code/game/area/areas/ai_monitored.dm +++ /dev/null @@ -1,129 +0,0 @@ -// Specific AI monitored areas - -// Stub defined ai_monitored.dm -/area/station/ai_monitored - -/area/station/ai_monitored/turret_protected - -// AI -/area/station/ai_monitored - icon_state = "ai" - sound_environment = SOUND_AREA_STANDARD_STATION - -/area/station/ai_monitored/aisat/exterior - name = "\improper AI Satellite Exterior" - icon_state = "ai" - airlock_wires = /datum/wires/airlock/ai - -/area/station/ai_monitored/command/storage/satellite - name = "\improper AI Satellite Maint" - icon_state = "ai_storage" - ambience_index = AMBIENCE_DANGER - airlock_wires = /datum/wires/airlock/ai - -// Turret protected -/area/station/ai_monitored/turret_protected - ambientsounds = list('sound/ambience/engineering/ambitech.ogg', 'sound/ambience/engineering/ambitech2.ogg', 'sound/ambience/engineering/ambiatmos.ogg', 'sound/ambience/engineering/ambiatmos2.ogg') - ///Some sounds (like the space jam) are terrible when on loop. We use this variable to add it to other AI areas, but override it to keep it from the AI's core. - var/ai_will_not_hear_this = list('sound/ambience/misc/ambimalf.ogg') - airlock_wires = /datum/wires/airlock/ai - -/area/station/ai_monitored/turret_protected/Initialize(mapload) - . = ..() - if(ai_will_not_hear_this) - ambientsounds += ai_will_not_hear_this - -/area/station/ai_monitored/turret_protected/ai_upload - name = "\improper AI Upload Chamber" - icon_state = "ai_upload" - sound_environment = SOUND_AREA_SMALL_ENCLOSED - -/area/station/ai_monitored/turret_protected/ai_upload_foyer - name = "\improper AI Upload Access" - icon_state = "ai_upload_foyer" - sound_environment = SOUND_AREA_SMALL_ENCLOSED - -/area/station/ai_monitored/turret_protected/ai - name = "\improper AI Chamber" - icon_state = "ai_chamber" - ai_will_not_hear_this = null - -/area/station/ai_monitored/turret_protected/aisat - name = "\improper AI Satellite" - icon_state = "ai" - sound_environment = SOUND_ENVIRONMENT_ROOM - -/area/station/ai_monitored/turret_protected/aisat/atmos - name = "\improper AI Satellite Atmos" - icon_state = "ai" - -/area/station/ai_monitored/turret_protected/aisat/foyer - name = "\improper AI Satellite Foyer" - icon_state = "ai_foyer" - -/area/station/ai_monitored/turret_protected/aisat/service - name = "\improper AI Satellite Service" - icon_state = "ai" - -/area/station/ai_monitored/turret_protected/aisat/hallway - name = "\improper AI Satellite Hallway" - icon_state = "ai" - -/area/station/ai_monitored/turret_protected/aisat/teleporter - name ="\improper AI Satellite Teleporter" - icon_state = "ai" - -/area/station/ai_monitored/turret_protected/aisat/equipment - name ="\improper AI Satellite Equipment" - icon_state = "ai" - -/area/station/ai_monitored/turret_protected/aisat/maint - name = "\improper AI Satellite Maintenance" - icon_state = "ai_maint" - -/area/station/ai_monitored/turret_protected/aisat/uppernorth - name = "\improper AI Satellite Upper Fore" - icon_state = "ai" - -/area/station/ai_monitored/turret_protected/aisat/uppersouth - name = "\improper AI Satellite Upper Aft" - icon_state = "ai" - -/area/station/ai_monitored/turret_protected/aisat_interior - name = "\improper AI Satellite Antechamber" - icon_state = "ai_interior" - sound_environment = SOUND_AREA_LARGE_ENCLOSED - -/area/station/ai_monitored/turret_protected/ai_sat_ext_as - name = "\improper AI Sat Ext" - icon_state = "ai_sat_east" - -/area/station/ai_monitored/turret_protected/ai_sat_ext_ap - name = "\improper AI Sat Ext" - icon_state = "ai_sat_west" - -// Station specific ai monitored rooms, move here for consistency - -//Command - AI Monitored -/area/station/ai_monitored/command/storage/eva - name = "EVA Storage" - icon_state = "eva" - ambience_index = AMBIENCE_DANGER - -/area/station/ai_monitored/command/storage/eva/upper - name = "Upper EVA Storage" - -/area/station/ai_monitored/command/nuke_storage - name = "\improper Vault" - icon_state = "nuke_storage" - airlock_wires = /datum/wires/airlock/command - -//Security - AI Monitored -/area/station/ai_monitored/security/armory - name = "\improper Armory" - icon_state = "armory" - ambience_index = AMBIENCE_DANGER - airlock_wires = /datum/wires/airlock/security - -/area/station/ai_monitored/security/armory/upper - name = "Upper Armory" diff --git a/code/game/area/areas/away_content.dm b/code/game/area/areas/away_content.dm index 648ef4c8d31606..39d7ebce1dbe2a 100644 --- a/code/game/area/areas/away_content.dm +++ b/code/game/area/areas/away_content.dm @@ -11,7 +11,6 @@ Unused icons for new areas are "awaycontent1" ~ "awaycontent30" default_gravity = STANDARD_GRAVITY ambience_index = AMBIENCE_AWAY sound_environment = SOUND_ENVIRONMENT_ROOM - area_flags = UNIQUE_AREA /area/awaymission/museum name = "Nanotrasen Museum" @@ -33,11 +32,11 @@ Unused icons for new areas are "awaycontent1" ~ "awaycontent30" name = "Super Secret Room" static_lighting = FALSE base_lighting_alpha = 255 - area_flags = UNIQUE_AREA|NOTELEPORT + area_flags = NOTELEPORT default_gravity = STANDARD_GRAVITY /area/awaymission/secret - area_flags = UNIQUE_AREA|NOTELEPORT|HIDDEN_AREA + area_flags = NOTELEPORT|HIDDEN_AREA /area/awaymission/secret/unpowered always_unpowered = TRUE diff --git a/code/game/area/areas/centcom.dm b/code/game/area/areas/centcom.dm index 06a87345f9cf51..58d0439eed3377 100644 --- a/code/game/area/areas/centcom.dm +++ b/code/game/area/areas/centcom.dm @@ -8,7 +8,7 @@ static_lighting = TRUE requires_power = FALSE default_gravity = STANDARD_GRAVITY - area_flags = UNIQUE_AREA | NOTELEPORT + area_flags = NOTELEPORT flags_1 = NONE // This is just to define the category @@ -142,7 +142,6 @@ name = "Thunderdome Observation" icon_state = "thunder_observe" - // ENEMY // Wizard @@ -152,16 +151,15 @@ static_lighting = TRUE requires_power = FALSE default_gravity = STANDARD_GRAVITY - area_flags = UNIQUE_AREA | NOTELEPORT + area_flags = NOTELEPORT flags_1 = NONE - //Abductors /area/centcom/abductor_ship name = "Abductor Ship" icon_state = "abductor_ship" requires_power = FALSE - area_flags = UNIQUE_AREA | NOTELEPORT + area_flags = NOTELEPORT static_lighting = FALSE base_lighting_alpha = 255 default_gravity = STANDARD_GRAVITY @@ -173,7 +171,7 @@ icon_state = "syndie-ship" requires_power = FALSE default_gravity = STANDARD_GRAVITY - area_flags = UNIQUE_AREA | NOTELEPORT + area_flags = NOTELEPORT flags_1 = NONE ambience_index = AMBIENCE_DANGER @@ -218,12 +216,11 @@ name = "Mafia Minigame" icon_state = "mafia" static_lighting = FALSE - base_lighting_alpha = 255 requires_power = FALSE default_gravity = STANDARD_GRAVITY flags_1 = NONE - area_flags = BLOCK_SUICIDE | UNIQUE_AREA + area_flags = BLOCK_SUICIDE //CAPTURE THE FLAG /area/centcom/ctf @@ -234,7 +231,7 @@ base_lighting_alpha = 255 default_gravity = STANDARD_GRAVITY flags_1 = NONE - area_flags = UNIQUE_AREA | NOTELEPORT | NO_DEATH_MESSAGE | BLOCK_SUICIDE + area_flags = NOTELEPORT | NO_DEATH_MESSAGE | BLOCK_SUICIDE /area/centcom/ctf/control_room name = "Control Room A" @@ -278,7 +275,6 @@ icon_state = "asteroid" requires_power = FALSE default_gravity = STANDARD_GRAVITY - area_flags = UNIQUE_AREA ambience_index = AMBIENCE_MINING flags_1 = CAN_BE_DIRTY_1 sound_environment = SOUND_AREA_ASTEROID @@ -288,7 +284,7 @@ ambience_index = AMBIENCE_RUINS always_unpowered = FALSE requires_power = TRUE - area_flags = UNIQUE_AREA | BLOBS_ALLOWED + area_flags = BLOBS_ALLOWED /area/centcom/asteroid/nearstation/bomb_site name = "\improper Bomb Testing Asteroid" diff --git a/code/game/area/areas/mining.dm b/code/game/area/areas/mining.dm index 9f0bcfab8f6ddf..3d97da72c39a27 100644 --- a/code/game/area/areas/mining.dm +++ b/code/game/area/areas/mining.dm @@ -3,7 +3,8 @@ icon = 'icons/area/areas_station.dmi' icon_state = "mining" default_gravity = STANDARD_GRAVITY - area_flags = VALID_TERRITORY | UNIQUE_AREA | FLORA_ALLOWED | CULT_PERMITTED + area_flags = VALID_TERRITORY | CULT_PERMITTED + area_flags_mapping = UNIQUE_AREA | FLORA_ALLOWED ambient_buzz = 'sound/ambience/lavaland/magma.ogg' /area/mine/lobby @@ -132,7 +133,7 @@ icon_state = "mining" default_gravity = STANDARD_GRAVITY flags_1 = NONE - area_flags = VALID_TERRITORY | UNIQUE_AREA | FLORA_ALLOWED + area_flags = VALID_TERRITORY | FLORA_ALLOWED sound_environment = SOUND_AREA_LAVALAND ambient_buzz = 'sound/ambience/lavaland/magma.ogg' allow_shuttle_docking = TRUE @@ -146,7 +147,7 @@ power_light = FALSE requires_power = TRUE ambience_index = AMBIENCE_MINING - area_flags = VALID_TERRITORY | UNIQUE_AREA + area_flags = VALID_TERRITORY /area/lavaland/underground name = "Lavaland Caves" @@ -157,7 +158,6 @@ power_equip = FALSE power_light = FALSE ambience_index = AMBIENCE_MINING - area_flags = VALID_TERRITORY | UNIQUE_AREA | FLORA_ALLOWED /area/lavaland/surface/outdoors name = "Lavaland Wastes" @@ -165,12 +165,14 @@ /area/lavaland/surface/outdoors/unexplored //monsters and ruins spawn here icon_state = "unexplored" - area_flags = VALID_TERRITORY | UNIQUE_AREA | CAVES_ALLOWED | FLORA_ALLOWED | MOB_SPAWN_ALLOWED + area_flags = VALID_TERRITORY + area_flags_mapping = UNIQUE_AREA | CAVES_ALLOWED | FLORA_ALLOWED | MOB_SPAWN_ALLOWED map_generator = /datum/map_generator/cave_generator/lavaland /area/lavaland/surface/outdoors/unexplored/danger //megafauna will also spawn here icon_state = "danger" - area_flags = VALID_TERRITORY | UNIQUE_AREA | CAVES_ALLOWED | FLORA_ALLOWED | MOB_SPAWN_ALLOWED | MEGAFAUNA_SPAWN_ALLOWED + area_flags = VALID_TERRITORY + area_flags_mapping = parent_type::area_flags_mapping | MEGAFAUNA_SPAWN_ALLOWED /// Same thing as parent, but uses a different map generator for the icemoon ruin that needs it. /area/lavaland/surface/outdoors/unexplored/danger/no_ruins @@ -178,9 +180,7 @@ /area/lavaland/surface/outdoors/explored name = "Lavaland Labor Camp" - area_flags = VALID_TERRITORY | UNIQUE_AREA - - + area_flags = VALID_TERRITORY /**********************Ice Moon Areas**************************/ @@ -189,7 +189,7 @@ icon_state = "mining" default_gravity = STANDARD_GRAVITY flags_1 = NONE - area_flags = UNIQUE_AREA | FLORA_ALLOWED + area_flags_mapping = UNIQUE_AREA | FLORA_ALLOWED ambience_index = AMBIENCE_ICEMOON sound_environment = SOUND_AREA_ICEMOON ambient_buzz = 'sound/ambience/lavaland/magma.ogg' @@ -203,7 +203,6 @@ power_equip = FALSE power_light = FALSE requires_power = TRUE - area_flags = UNIQUE_AREA | FLORA_ALLOWED /area/icemoon/surface/outdoors // parent that defines if something is on the exterior of the station. name = "Icemoon Wastes" @@ -227,33 +226,33 @@ if(HAS_TRAIT(SSstation, STATION_TRAIT_FORESTED)) map_generator = /datum/map_generator/cave_generator/icemoon/surface/forested // flip this on, the generator has already disabled dangerous fauna - area_flags = MOB_SPAWN_ALLOWED | FLORA_ALLOWED + area_flags_mapping = MOB_SPAWN_ALLOWED | FLORA_ALLOWED /area/icemoon/surface/outdoors/always_forested icon_state = "forest" map_generator = /datum/map_generator/cave_generator/icemoon/surface/forested - area_flags = MOB_SPAWN_ALLOWED | FLORA_ALLOWED | CAVES_ALLOWED + area_flags_mapping = MOB_SPAWN_ALLOWED | FLORA_ALLOWED | CAVES_ALLOWED /area/icemoon/surface/outdoors/rocky icon_state = "rocky" map_generator = /datum/map_generator/cave_generator/icemoon/surface/rocky - area_flags = MOB_SPAWN_ALLOWED | FLORA_ALLOWED | CAVES_ALLOWED + area_flags_mapping = MOB_SPAWN_ALLOWED | FLORA_ALLOWED | CAVES_ALLOWED /area/icemoon/surface/outdoors/noteleport // for places like the cursed spring water - area_flags = UNIQUE_AREA | FLORA_ALLOWED | NOTELEPORT + area_flags_mapping = parent_type::area_flags_mapping | NOTELEPORT /area/icemoon/surface/outdoors/noruins // when you want random generation without the chance of getting ruins icon_state = "noruins" - area_flags = UNIQUE_AREA | FLORA_ALLOWED | MOB_SPAWN_ALLOWED | CAVES_ALLOWED - map_generator = /datum/map_generator/cave_generator/icemoon/surface/noruins + area_flags_mapping = parent_type::area_flags_mapping | MOB_SPAWN_ALLOWED | CAVES_ALLOWED + map_generator = /datum/map_generator/cave_generator/icemoon/surface/noruins /area/icemoon/surface/outdoors/labor_camp name = "Icemoon Labor Camp" - area_flags = UNIQUE_AREA + area_flags_mapping = /area::area_flags_mapping /area/icemoon/surface/outdoors/unexplored //monsters and ruins spawn here icon_state = "unexplored" - area_flags = UNIQUE_AREA | FLORA_ALLOWED | MOB_SPAWN_ALLOWED | CAVES_ALLOWED + area_flags_mapping = parent_type::area_flags_mapping | MOB_SPAWN_ALLOWED | CAVES_ALLOWED /area/icemoon/surface/outdoors/unexplored/rivers // rivers spawn here icon_state = "danger" @@ -263,10 +262,10 @@ . = ..() if(HAS_TRAIT(SSstation, STATION_TRAIT_FORESTED)) map_generator = /datum/map_generator/cave_generator/icemoon/surface/forested - area_flags |= MOB_SPAWN_ALLOWED //flip this on, the generator has already disabled dangerous fauna + area_flags_mapping |= MOB_SPAWN_ALLOWED //flip this on, the generator has already disabled dangerous fauna /area/icemoon/surface/outdoors/unexplored/rivers/no_monsters - area_flags = UNIQUE_AREA | FLORA_ALLOWED | CAVES_ALLOWED + area_flags_mapping = /area/icemoon/::area_flags_mapping | CAVES_ALLOWED /area/icemoon/underground name = "Icemoon Caves" @@ -276,16 +275,15 @@ power_environ = FALSE power_equip = FALSE power_light = FALSE - area_flags = UNIQUE_AREA | FLORA_ALLOWED /area/icemoon/underground/unexplored // mobs and megafauna and ruins spawn here name = "Icemoon Caves" icon_state = "unexplored" - area_flags = CAVES_ALLOWED | FLORA_ALLOWED | MOB_SPAWN_ALLOWED | MEGAFAUNA_SPAWN_ALLOWED + area_flags_mapping = CAVES_ALLOWED | FLORA_ALLOWED | MOB_SPAWN_ALLOWED | MEGAFAUNA_SPAWN_ALLOWED /area/icemoon/underground/unexplored/no_rivers icon_state = "norivers" - area_flags = CAVES_ALLOWED | FLORA_ALLOWED // same rules as "shoreline" turfs since we might need this to pull double-duty + area_flags_mapping = CAVES_ALLOWED | FLORA_ALLOWED // same rules as "shoreline" turfs since we might need this to pull double-duty map_generator = /datum/map_generator/cave_generator/icemoon /area/icemoon/underground/unexplored/rivers // rivers spawn here @@ -297,15 +295,15 @@ /area/icemoon/underground/unexplored/rivers/deep/shoreline //use this for when you don't want mobs to spawn in certain areas in the "deep" portions. Think adjacent to rivers or station structures. icon_state = "shore" - area_flags = UNIQUE_AREA | CAVES_ALLOWED | FLORA_ALLOWED + area_flags_mapping = /area/icemoon/::area_flags_mapping | CAVES_ALLOWED /area/icemoon/underground/explored // ruins can't spawn here name = "Icemoon Underground" - area_flags = UNIQUE_AREA + area_flags_mapping = /area::area_flags_mapping /area/icemoon/underground/explored/graveyard name = "Graveyard" - area_flags = UNIQUE_AREA + area_flags_mapping = /area::area_flags_mapping ambience_index = AMBIENCE_SPOOKY icon = 'icons/area/areas_station.dmi' icon_state = "graveyard" diff --git a/code/game/area/areas/misc.dm b/code/game/area/areas/misc.dm index de1cbff381bfc1..ac66943d5d1cd8 100644 --- a/code/game/area/areas/misc.dm +++ b/code/game/area/areas/misc.dm @@ -10,7 +10,7 @@ power_light = FALSE power_equip = FALSE power_environ = FALSE - area_flags = UNIQUE_AREA|NO_GRAVITY + area_flags = NO_GRAVITY outdoors = TRUE ambience_index = AMBIENCE_SPACE flags_1 = CAN_BE_DIRTY_1 diff --git a/code/game/area/areas/ruins/_ruins.dm b/code/game/area/areas/ruins/_ruins.dm index f2ecc7ac73e3eb..92fff19386da4d 100644 --- a/code/game/area/areas/ruins/_ruins.dm +++ b/code/game/area/areas/ruins/_ruins.dm @@ -5,7 +5,7 @@ icon = 'icons/area/areas_ruins.dmi' icon_state = "ruins" default_gravity = STANDARD_GRAVITY - area_flags = HIDDEN_AREA | UNIQUE_AREA + area_flags = HIDDEN_AREA ambience_index = AMBIENCE_RUINS flags_1 = CAN_BE_DIRTY_1 sound_environment = SOUND_ENVIRONMENT_STONEROOM diff --git a/code/game/area/areas/ruins/icemoon.dm b/code/game/area/areas/ruins/icemoon.dm index 7dff4bdba55182..80f8f6bb33ae7b 100644 --- a/code/game/area/areas/ruins/icemoon.dm +++ b/code/game/area/areas/ruins/icemoon.dm @@ -59,10 +59,10 @@ sound_environment = SOUND_AREA_SMALL_ENCLOSED ambience_index = AMBIENCE_DANGER area_flags = NOTELEPORT + area_flags_mapping = NONE mood_bonus = -10 mood_message = "What the fuck." - /area/ruin/planetengi name = "\improper Engineering Outpost" @@ -115,11 +115,13 @@ /area/ruin/outpost31/lab name = "\improper Outpost 31 Lab" area_flags = NOTELEPORT //megafauna arena + area_flags_mapping = NONE requires_power = FALSE /area/ruin/outpost31/lootroom name = "\improper Outpost 31 Secondary Storage" area_flags = NOTELEPORT //megafauna loot room + area_flags_mapping = NONE requires_power = FALSE /area/ruin/outpost31/recroom diff --git a/code/game/area/areas/ruins/lavaland.dm b/code/game/area/areas/ruins/lavaland.dm index 4e806bf1c1030e..cef9e3d308a36b 100644 --- a/code/game/area/areas/ruins/lavaland.dm +++ b/code/game/area/areas/ruins/lavaland.dm @@ -43,6 +43,7 @@ /area/ruin/unpowered/cultaltar name = "\improper Cult Altar" area_flags = CULT_PERMITTED + area_flags_mapping = NONE ambience_index = AMBIENCE_SPOOKY /area/ruin/thelizardsgas_lavaland diff --git a/code/game/area/areas/ruins/space.dm b/code/game/area/areas/ruins/space.dm index c2e32c86bee04b..24bd482633cee9 100644 --- a/code/game/area/areas/ruins/space.dm +++ b/code/game/area/areas/ruins/space.dm @@ -2,7 +2,8 @@ /area/ruin/space default_gravity = ZERO_GRAVITY - area_flags = UNIQUE_AREA + area_flags = NONE + area_flags_mapping = UNIQUE_AREA /area/ruin/space/unpowered always_unpowered = TRUE @@ -16,11 +17,10 @@ /area/ruin/space/has_grav/powered requires_power = FALSE - // Ruin solars define, /area/solars was moved to /area/station/solars, causing the solars specific areas to lose their properties /area/ruin/space/solars requires_power = FALSE - area_flags = UNIQUE_AREA + area_flags = NONE flags_1 = NONE ambience_index = AMBIENCE_ENGI airlock_wires = /datum/wires/airlock/engineering @@ -310,7 +310,7 @@ icon = 'icons/area/areas_ruins.dmi' // Solars inheriet areas_misc.dmi, not areas_ruin.dmi icon_state = "os_charlie_solars" requires_power = FALSE - area_flags = UNIQUE_AREA + area_flags = NONE sound_environment = SOUND_AREA_SPACE /area/ruin/space/ancientstation/charlie/storage @@ -534,7 +534,7 @@ /area/ruin/space/djstation/solars name = "\improper DJ Station Solars" icon_state = "DJ" - area_flags = UNIQUE_AREA + area_flags = NONE default_gravity = ZERO_GRAVITY /area/ruin/space/djstation/service @@ -582,7 +582,7 @@ /area/ruin/space/has_grav/hellfactoryoffice name = "\improper Hell Factory Office" - area_flags = VALID_TERRITORY | BLOBS_ALLOWED | UNIQUE_AREA | NOTELEPORT + area_flags = VALID_TERRITORY | BLOBS_ALLOWED | NOTELEPORT //Ruin of Spinward Smoothies @@ -600,7 +600,7 @@ /area/ruin/space/has_grav/powered/biooutpost name = "\improper Bioresearch Outpost" - area_flags = UNIQUE_AREA | NOTELEPORT + area_flags = NOTELEPORT /area/ruin/space/has_grav/powered/biooutpost/vault name = "\improper Bioresearch Outpost Secure Testing" diff --git a/code/game/area/areas/shuttles.dm b/code/game/area/areas/shuttles.dm index c37d53de151794..9a651fb5e3dcff 100644 --- a/code/game/area/areas/shuttles.dm +++ b/code/game/area/areas/shuttles.dm @@ -10,6 +10,7 @@ always_unpowered = FALSE // Loading the same shuttle map at a different time will produce distinct area instances. area_flags = NONE + area_flags_mapping = NONE icon = 'icons/area/areas_station.dmi' icon_state = "shuttle" flags_1 = CAN_BE_DIRTY_1 @@ -120,11 +121,9 @@ static_lighting = FALSE base_lighting_alpha = 255 - /area/shuttle/arrival name = "Arrival Shuttle" - area_flags = UNIQUE_AREA// SSjob refers to this area for latejoiners - + area_flags_mapping = UNIQUE_AREA // SSjob refers to this area for latejoiners /area/shuttle/arrival/on_joining_game(mob/living/boarder) if(SSshuttle.arrivals?.mode == SHUTTLE_CALL) @@ -133,22 +132,17 @@ boarder.playsound_local(get_turf(boarder), 'sound/announcer/ApproachingTG.ogg', 25) boarder.update_parallax_teleport() - /area/shuttle/pod_1 name = "Escape Pod One" - area_flags = NONE /area/shuttle/pod_2 name = "Escape Pod Two" - area_flags = NONE /area/shuttle/pod_3 name = "Escape Pod Three" - area_flags = NONE /area/shuttle/pod_4 name = "Escape Pod Four" - area_flags = NONE /area/shuttle/mining name = "Mining Shuttle" @@ -166,10 +160,9 @@ /area/shuttle/escape name = "Emergency Shuttle" - area_flags = BLOBS_ALLOWED + area_flags = CULT_PERMITTED area_limited_icon_smoothing = /area/shuttle/escape flags_1 = CAN_BE_DIRTY_1 - area_flags = CULT_PERMITTED /area/shuttle/escape/backup name = "Backup Emergency Shuttle" diff --git a/code/game/area/areas/station/ai.dm b/code/game/area/areas/station/ai.dm new file mode 100644 index 00000000000000..ff12a728f282a8 --- /dev/null +++ b/code/game/area/areas/station/ai.dm @@ -0,0 +1,93 @@ +/area/station/ai + icon_state = "ai" + sound_environment = SOUND_AREA_STANDARD_STATION + airlock_wires = /datum/wires/airlock/ai + motion_monitored = TRUE + + ambientsounds = list('sound/ambience/engineering/ambitech.ogg', 'sound/ambience/engineering/ambitech2.ogg', 'sound/ambience/engineering/ambiatmos.ogg', 'sound/ambience/engineering/ambiatmos2.ogg') + /// Disables ambientsounds if TRUE. Used for mundane AI locations like the exterior or storage room. + var/secure = TRUE + /// Some sounds (like the space jam) are terrible when on loop. + /// We use this variable to add it to other AI areas, but override it to keep it from the AI's core. + var/annoying_ambience = list('sound/ambience/misc/ambimalf.ogg') + +/area/station/ai/Initialize(mapload) + . = ..() + if(!secure) + ambientsounds = null + return + if(annoying_ambience) + ambientsounds += annoying_ambience + +/* --------- */ + +/area/station/ai/upload + name = "\improper AI Upload Area" + icon_state = "unknown" // this is supposed to be for sorting, but if you want to make an upload hallway you can change this + sound_environment = SOUND_AREA_SMALL_ENCLOSED + +/area/station/ai/upload/chamber + name = "\improper AI Upload Chamber" + icon_state = "ai_upload" + +/area/station/ai/upload/foyer + name = "\improper AI Upload Access" + icon_state = "ai_upload_foyer" + +/* SATELLITE */ + +/area/station/ai/satellite + name = "\improper AI Satellite" + sound_environment = SOUND_ENVIRONMENT_ROOM + +/area/station/ai/satellite/chamber + name = "\improper AI Chamber" + icon_state = "ai_chamber" + annoying_ambience = null + +/area/station/ai/satellite/exterior + name = "\improper AI Satellite Exterior" + secure = FALSE + +/area/station/ai/satellite/maintenance + name = "\improper AI Satellite Maintenance" + icon_state = "ai_maint" + +/area/station/ai/satellite/maintenance/storage + name = "\improper AI Satellite Storage" + icon_state = "ai_storage" + ambience_index = AMBIENCE_DANGER + +/* Interior */ + +/area/station/ai/satellite/interior + name = "\improper AI Satellite Antechamber" + icon_state = "ai_interior" + sound_environment = SOUND_AREA_LARGE_ENCLOSED + +/area/station/ai/satellite/foyer + name = "\improper AI Satellite Foyer" + icon_state = "ai_foyer" + +/area/station/ai/satellite/hallway + name = "\improper AI Satellite Hallway" + +/area/station/ai/satellite/uppernorth + name = "\improper AI Satellite Upper Fore" + +/area/station/ai/satellite/uppersouth + name = "\improper AI Satellite Upper Aft" + +/* Functions */ + +/area/station/ai/satellite/atmos + name = "\improper AI Satellite Atmospherics" + +/area/station/ai/satellite/service + name = "\improper AI Satellite Service" + +/area/station/ai/satellite/teleporter + name ="\improper AI Satellite Teleporter" + +/area/station/ai/satellite/equipment + name ="\improper AI Satellite Equipment" diff --git a/code/game/area/areas/station/command.dm b/code/game/area/areas/station/command.dm index ee4325d94aef82..30f126dc42cb2e 100644 --- a/code/game/area/areas/station/command.dm +++ b/code/game/area/areas/station/command.dm @@ -36,6 +36,22 @@ icon_state = "command" sound_environment = SOUND_AREA_SMALL_ENCLOSED +// Monitored areas + +/area/station/command/eva + name = "EVA Storage" + icon_state = "eva" + ambience_index = AMBIENCE_DANGER + motion_monitored = TRUE + +/area/station/command/eva/upper + name = "Upper EVA Storage" + +/area/station/command/vault + name = "\improper Vault" + icon_state = "nuke_storage" // someone should change this, not me though + motion_monitored = TRUE + /* * Command Head Areas */ diff --git a/code/game/area/areas/station/common.dm b/code/game/area/areas/station/common.dm index 2280215ab6ee46..1b6eba4dc25e31 100644 --- a/code/game/area/areas/station/common.dm +++ b/code/game/area/areas/station/common.dm @@ -2,7 +2,7 @@ name = "\improper Crew Facilities" icon_state = "commons" sound_environment = SOUND_AREA_STANDARD_STATION - area_flags = BLOBS_ALLOWED | UNIQUE_AREA | CULT_PERMITTED + area_flags = BLOBS_ALLOWED | CULT_PERMITTED /* * Dorm Areas diff --git a/code/game/area/areas/station/engineering.dm b/code/game/area/areas/station/engineering.dm index 71fe6024d88780..feb565ecd53463 100644 --- a/code/game/area/areas/station/engineering.dm +++ b/code/game/area/areas/station/engineering.dm @@ -26,7 +26,7 @@ /*outside atmos*/ /area/station/engineering/atmos/space_catwalk name = "\improper Atmospherics Space Catwalk" - area_flags = BLOBS_ALLOWED | UNIQUE_AREA | CULT_PERMITTED + area_flags = BLOBS_ALLOWED | CULT_PERMITTED sound_environment = SOUND_AREA_SPACE ambience_index = AMBIENCE_SPACE @@ -63,7 +63,7 @@ /area/station/engineering/atmospherics_engine name = "\improper Atmospherics Engine" icon_state = "atmos_engine" - area_flags = BLOBS_ALLOWED | UNIQUE_AREA | CULT_PERMITTED + area_flags = BLOBS_ALLOWED | CULT_PERMITTED /area/station/engineering/lobby name = "\improper Engineering Lobby" @@ -72,7 +72,7 @@ /area/station/engineering/supermatter name = "\improper Supermatter Engine" icon_state = "engine_sm" - area_flags = BLOBS_ALLOWED | UNIQUE_AREA | CULT_PERMITTED + area_flags = BLOBS_ALLOWED | CULT_PERMITTED sound_environment = SOUND_AREA_SMALL_ENCLOSED /area/station/engineering/supermatter/waste @@ -119,7 +119,7 @@ /area/station/engineering/storage/tcomms name = "Telecomms Storage" icon_state = "tcom_storage" - area_flags = BLOBS_ALLOWED | UNIQUE_AREA | CULT_PERMITTED + area_flags = BLOBS_ALLOWED | CULT_PERMITTED /* * Construction Areas diff --git a/code/game/area/areas/station/hallway.dm b/code/game/area/areas/station/hallway.dm index 9512f20c709c1e..12a5ba6816b40f 100644 --- a/code/game/area/areas/station/hallway.dm +++ b/code/game/area/areas/station/hallway.dm @@ -83,7 +83,7 @@ /area/station/hallway/secondary/entry name = "\improper Arrival Shuttle Hallway" icon_state = "entry" - area_flags = UNIQUE_AREA | EVENT_PROTECTED + area_flags = EVENT_PROTECTED /area/station/hallway/secondary/dock name = "\improper Secondary Station Dock Hallway" diff --git a/code/game/area/areas/station/maintenance.dm b/code/game/area/areas/station/maintenance.dm index 5e636719e7a092..a6fa76cd80e9ad 100644 --- a/code/game/area/areas/station/maintenance.dm +++ b/code/game/area/areas/station/maintenance.dm @@ -1,7 +1,7 @@ /area/station/maintenance name = "Generic Maintenance" ambience_index = AMBIENCE_MAINT - area_flags = BLOBS_ALLOWED | UNIQUE_AREA | CULT_PERMITTED | PERSISTENT_ENGRAVINGS + area_flags = BLOBS_ALLOWED | CULT_PERMITTED | PERSISTENT_ENGRAVINGS airlock_wires = /datum/wires/airlock/maint sound_environment = SOUND_AREA_TUNNEL_ENCLOSED forced_ambience = TRUE @@ -94,7 +94,7 @@ /area/station/maintenance/department/science/xenobiology name = "Xenobiology Maintenance" icon_state = "xenomaint" - area_flags = VALID_TERRITORY | BLOBS_ALLOWED | UNIQUE_AREA | XENOBIOLOGY_COMPATIBLE | CULT_PERMITTED + area_flags = VALID_TERRITORY | BLOBS_ALLOWED | XENOBIOLOGY_COMPATIBLE | CULT_PERMITTED /* * Generic Maintenance Tunnels @@ -165,6 +165,9 @@ name = "Central Starboard Maintenance" icon_state = "centralstarboardmaint" +/area/station/maintenance/starboard/central/upper + name = "Upper Central Starboard Maintenance" + /area/station/maintenance/starboard/greater name = "Greater Starboard Maintenance" icon_state = "greaterstarboardmaint" @@ -177,10 +180,16 @@ name = "Aft Starboard Maintenance" icon_state = "asmaint" +/area/station/maintenance/starboard/aft/upper + name = "Upper Aft Starboard Maintenance" + /area/station/maintenance/starboard/fore name = "Fore Starboard Maintenance" icon_state = "fsmaint" +/area/station/maintenance/starboard/fore/upper + name = "Upper Fore Starboard Maintenance" + /area/station/maintenance/port name = "Port Maintenance" icon_state = "portmaint" diff --git a/code/game/area/areas/station/misc.dm b/code/game/area/areas/station/misc.dm index be99950c7361e8..fde6b00bf5f2f0 100644 --- a/code/game/area/areas/station/misc.dm +++ b/code/game/area/areas/station/misc.dm @@ -30,6 +30,6 @@ power_light = FALSE requires_power = TRUE ambience_index = AMBIENCE_MINING - area_flags = UNIQUE_AREA + area_flags = NONE outdoors = TRUE allow_shuttle_docking = TRUE diff --git a/code/game/area/areas/station/science.dm b/code/game/area/areas/station/science.dm index 57623ee6183dea..b64e7efe75a452 100644 --- a/code/game/area/areas/station/science.dm +++ b/code/game/area/areas/station/science.dm @@ -114,23 +114,23 @@ /area/station/science/ordnance/burnchamber name = "\improper Ordnance Burn Chamber" icon_state = "ord_burn" - area_flags = BLOBS_ALLOWED | UNIQUE_AREA | CULT_PERMITTED + area_flags = BLOBS_ALLOWED | CULT_PERMITTED /area/station/science/ordnance/freezerchamber name = "\improper Ordnance Freezer Chamber" icon_state = "ord_freeze" - area_flags = BLOBS_ALLOWED | UNIQUE_AREA | CULT_PERMITTED + area_flags = BLOBS_ALLOWED | CULT_PERMITTED // Room for equipments and such /area/station/science/ordnance/testlab name = "\improper Ordnance Testing Lab" icon_state = "ord_test" - area_flags = BLOBS_ALLOWED | UNIQUE_AREA | CULT_PERMITTED + area_flags = BLOBS_ALLOWED | CULT_PERMITTED /area/station/science/ordnance/bomb name = "\improper Ordnance Bomb Site" icon_state = "ord_boom" - area_flags = BLOBS_ALLOWED | UNIQUE_AREA | CULT_PERMITTED | NO_GRAVITY + area_flags = BLOBS_ALLOWED | CULT_PERMITTED | NO_GRAVITY /area/station/science/ordnance/bomb/planet area_flags = /area/station/science/ordnance/bomb::area_flags & ~NO_GRAVITY diff --git a/code/game/area/areas/station/security.dm b/code/game/area/areas/station/security.dm index 1faf889684cc58..8c15638c7f02b0 100644 --- a/code/game/area/areas/station/security.dm +++ b/code/game/area/areas/station/security.dm @@ -79,6 +79,15 @@ icon_state = "evidence" sound_environment = SOUND_AREA_SMALL_ENCLOSED +/area/station/security/armory + name = "\improper Armory" + icon_state = "armory" + ambience_index = AMBIENCE_DANGER + motion_monitored = TRUE + +/area/station/security/armory/upper + name = "Upper Armory" + /area/station/security/detectives_office name = "\improper Detective's Office" icon_state = "detective" @@ -185,7 +194,7 @@ /area/station/security/prison name = "\improper Prison Wing" icon_state = "sec_prison" - area_flags = VALID_TERRITORY | BLOBS_ALLOWED | UNIQUE_AREA | CULT_PERMITTED | PERSISTENT_ENGRAVINGS + area_flags = VALID_TERRITORY | BLOBS_ALLOWED | CULT_PERMITTED | PERSISTENT_ENGRAVINGS //Rad proof /area/station/security/prison/toilet diff --git a/code/game/area/areas/station/service.dm b/code/game/area/areas/station/service.dm index 23fe166616d48a..35540656326452 100644 --- a/code/game/area/areas/station/service.dm +++ b/code/game/area/areas/station/service.dm @@ -77,7 +77,7 @@ mood_bonus = 5 mood_message = "I love being in the library!" mood_trait = TRAIT_INTROVERT - area_flags = CULT_PERMITTED | BLOBS_ALLOWED | UNIQUE_AREA + area_flags = CULT_PERMITTED | BLOBS_ALLOWED sound_environment = SOUND_AREA_LARGE_SOFTFLOOR /area/station/service/library/garden @@ -180,7 +180,7 @@ /area/station/service/janitor name = "\improper Custodial Closet" icon_state = "janitor" - area_flags = CULT_PERMITTED | BLOBS_ALLOWED | UNIQUE_AREA + area_flags = CULT_PERMITTED | BLOBS_ALLOWED sound_environment = SOUND_AREA_SMALL_ENCLOSED /area/station/service/barber diff --git a/code/game/area/areas/station/solars.dm b/code/game/area/areas/station/solars.dm index 8d3a81420e7d76..569a7f0a169e8b 100644 --- a/code/game/area/areas/station/solars.dm +++ b/code/game/area/areas/station/solars.dm @@ -5,7 +5,7 @@ /area/station/solars icon_state = "panels" requires_power = FALSE - area_flags = UNIQUE_AREA|NO_GRAVITY + area_flags = NO_GRAVITY flags_1 = NONE ambience_index = AMBIENCE_ENGI airlock_wires = /datum/wires/airlock/engineering @@ -44,7 +44,7 @@ /area/station/solars/starboard/fore/asteriod name = "\improper Starboard Bow Asteriod Solar Array" icon_state = "panelsFS" - area_flags = UNIQUE_AREA // solar areas directly on asteriod have gravity + area_flags = NONE // solar areas directly on asteriod have gravity /area/station/solars/port name = "\improper Port Solar Array" @@ -53,7 +53,7 @@ /area/station/solars/port/asteriod name = "\improper Port Asteriod Solar Array" icon_state = "panelsP" - area_flags = UNIQUE_AREA // solar areas directly on asteriod have gravity + area_flags = NONE // solar areas directly on asteriod have gravity /area/station/solars/port/aft name = "\improper Port Quarter Solar Array" diff --git a/code/game/atom/_atom.dm b/code/game/atom/_atom.dm index d0b550af4e9f49..e1167855f86029 100644 --- a/code/game/atom/_atom.dm +++ b/code/game/atom/_atom.dm @@ -346,8 +346,8 @@ /atom/proc/on_craft_completion(list/components, datum/crafting_recipe/current_recipe, atom/crafter) SHOULD_CALL_PARENT(TRUE) SEND_SIGNAL(src, COMSIG_ATOM_ON_CRAFT, components, current_recipe) - var/list/remaining_parts = current_recipe?.parts?.Copy() - var/list/parts_by_type = remaining_parts?.Copy() + var/list/remaining_parts = LAZYLISTDUPLICATE(current_recipe?.parts) + var/list/parts_by_type = LAZYLISTDUPLICATE(remaining_parts) for(var/parttype in parts_by_type) //necessary for our is_type_in_list() call with the zebra arg set to true parts_by_type[parttype] = parttype for(var/atom/movable/movable as anything in components) // machinery or structure objects in the list are guaranteed to be used up. We only check items. @@ -429,7 +429,7 @@ for(var/datum/reagent/current_reagent as anything in reagents) . |= current_reagent.expose_atom(src, reagents[current_reagent], methods) -/// Are you allowed to drop this atom +/// Are you allowed to drop stuff inside this atom /atom/proc/AllowDrop() return FALSE diff --git a/code/game/atom/alternate_appearance.dm b/code/game/atom/alternate_appearance.dm index 270f26e1809801..e642de36fe3502 100644 --- a/code/game/atom/alternate_appearance.dm +++ b/code/game/atom/alternate_appearance.dm @@ -110,6 +110,7 @@ GLOBAL_LIST_EMPTY(active_alternate_appearances) ) /datum/atom_hud/alternate_appearance/basic/New(key, image/I, options = AA_TARGET_SEE_APPEARANCE) + signals_registering = string_list(signals_registering) ..() transfer_overlays = options & AA_MATCH_TARGET_OVERLAYS image = I diff --git a/code/game/atom/atom_act.dm b/code/game/atom/atom_act.dm index 703a485405d19f..2a0475302b4a9a 100644 --- a/code/game/atom/atom_act.dm +++ b/code/game/atom/atom_act.dm @@ -253,7 +253,7 @@ * Default behaviour is to send [COMSIG_ATOM_RCD_ACT] and return FALSE */ /atom/proc/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - SEND_SIGNAL(src, COMSIG_ATOM_RCD_ACT, user, the_rcd, rcd_data["[RCD_DESIGN_MODE]"]) + SEND_SIGNAL(src, COMSIG_ATOM_RCD_ACT, user, the_rcd, rcd_data[RCD_DESIGN_MODE]) return FALSE ///Return the values you get when an RCD eats you? diff --git a/code/game/atom/atom_materials.dm b/code/game/atom/atom_materials.dm index a5ce12853ac334..a4200fd418f15f 100644 --- a/code/game/atom/atom_materials.dm +++ b/code/game/atom/atom_materials.dm @@ -29,16 +29,28 @@ /atom/proc/initialize_materials(list/materials, multiplier = 1) SHOULD_NOT_OVERRIDE(TRUE) if(multiplier != 1) - materials = materials.Copy() //avoid editing the list that was originally used as argument if it's ever going to be used again. + materials = materials.Copy() //avoid editing the original list since it may be cached somewhere (likely in the materials subsystem). for(var/current_material in materials) materials[current_material] *= multiplier + //Let's be sure that there are absolutely no materials in the list that aren't positive. + var/list/nonpos_mats + for(var/mat in materials) + if(materials[mat] <= 0) + LAZYADD(nonpos_mats, "[mat] = [materials[mat]]") + materials -= mat + if(length(nonpos_mats)) + stack_trace("materials with non-positive values found in [type]: [english_list(nonpos_mats, and_text = ", ")]") + if(!length(materials)) + return + sortTim(materials, GLOBAL_PROC_REF(cmp_numeric_dsc), associative = TRUE) apply_material_effects(materials) ///proc responsible for applying material effects when setting materials. /atom/proc/apply_material_effects(list/materials) SHOULD_CALL_PARENT(TRUE) + if(material_flags & MATERIAL_EFFECTS) var/list/material_effects = get_material_effects_list(materials) finalize_material_effects(material_effects) @@ -375,10 +387,7 @@ * Gets the most common material in the object. */ /atom/proc/get_master_material() - var/list/cached_materials = custom_materials - if(!length(cached_materials)) - return null - return GET_MATERIAL_REF(cached_materials[1]) //materials are sorted by amount, the first is always the main one + return length(custom_materials) ? GET_MATERIAL_REF(custom_materials[1]) : null //materials are sorted by amount, the first is always the main one /** * Gets the total amount of materials in this atom. @@ -387,6 +396,16 @@ return isnull(custom_materials) ? 0 : counterlist_sum(custom_materials) +///A simple proc that iterates through each material that the object is made of and spawns some stacks based on their amount and associated sheet/ore type. +/atom/proc/drop_costum_materials(multiplier = 1) + for(var/datum/material/material as anything in custom_materials) + var/stack_type = material.sheet_type || material.ore_type + if(!stack_type) + continue + var/amount_to_spawn = FLOOR(custom_materials[material] / SHEET_MATERIAL_AMOUNT * multiplier, 1) + if(amount_to_spawn > 0) + new stack_type(loc, amount_to_spawn) + /** * A bit of leeway when comparing the amount of material of two items. * This was made to test the material composition of items spawned via crafting/processable component and an items of the same type spawned @@ -401,6 +420,8 @@ /// Compares the materials of two items to see if they're roughly the same. Primarily used in crafting and processing unit tests. /atom/proc/compare_materials(atom/target) + if(custom_materials == target.custom_materials) // SSmaterials caches the combinations so we don't have to run more complex checks + return TRUE if(length(custom_materials) != length(target.custom_materials)) return FALSE for(var/mat in custom_materials) @@ -412,22 +433,65 @@ return FALSE return TRUE -#undef COMPARISION_ACCEPTABLE_MATERIAL_DEVIATION - /** - * Returns a string with the materials and their respective amounts in it (eg. [list(/datum/material/meat = 100, /datum/material/plastic = 10)] ) - * also used in several unit tests. + * Returns a string with the materials and their respective amounts written in a way that reflects how it's displayed in the code + * (eg. [list(/datum/material/meat = 100, /datum/material/plastic = 10)]). Also used in several unit tests. + * Not to be confused with get_material_english_list() + * Arguments: + * * as_sheets: returns the text in terms of sheets, e.g "[list(/datum/material/titanium = SHEET_MATERIAL_AMOUNT * 2)]" */ -/atom/proc/get_materials_english_list() - if(!custom_materials) - return "null" - var/text = "\[list(" +/atom/proc/transcribe_materials_list(list/mats_list, as_sheets = TRUE) + if(!mats_list) + if(!custom_materials) + return "null" + mats_list = custom_materials + var/text = "list(" var/index = 1 - var/mats_len = length(custom_materials) - for(var/datum/material/mat as anything in custom_materials) - text += "[mat.type] = [custom_materials[mat]]" + var/mats_len = length(mats_list) + for(var/datum/material/mat as anything in mats_list) + var/amount_string = "" + if(as_sheets) + var/amount = sheets_from_value(mats_list[mat]) + switch(amount) + if(0 to 0.49) + amount_string = "SMALL_MATERIAL_AMOUNT * " + num2text(amount * 10) + if(0.5) + amount_string = "HALF_SHEET_MATERIAL_AMOUNT" + if(1) + amount_string = "SHEET_MATERIAL_AMOUNT" + else + amount_string = "SHEET_MATERIAL_AMOUNT * " + num2text(amount) + else + amount_string = "[mats_list[mat]]" + text += "[mat.type] = " + amount_string if(index < mats_len) text += ", " index++ - text += ")\]" + text += ")" return text + +/// Convert a raw material amount into +/// "SHEET_MATERIAL_AMOUNT", or "* N", with rounding rules. +/proc/sheets_from_value(value, sheet_amount = SHEET_MATERIAL_AMOUNT) + if(!value) + return 0 + + // If value is small, do NOT try rounding to nearest 0 or 5. percentage error becomes huge. + var/final_value + + if(value < sheet_amount) + // Use exact amount for small-value materials (0.1, 0.25, 0.55, etc) + final_value = value + else + // Large values: round to nearest 0 or 5 + var/nearest5_value = round(value / 5) * 5 + var/max_error = value * COMPARISION_ACCEPTABLE_MATERIAL_DEVIATION // 3% + if(abs(nearest5_value - value) <= max_error) + final_value = nearest5_value + else + final_value = value + + var/final_sheet_multiplier = final_value / sheet_amount + return final_sheet_multiplier + +#undef COMPARISION_ACCEPTABLE_MATERIAL_DEVIATION diff --git a/code/game/atom/atom_vv.dm b/code/game/atom/atom_vv.dm index 92f8be528c64a7..176ee8e5248f7a 100644 --- a/code/game/atom/atom_vv.dm +++ b/code/game/atom/atom_vv.dm @@ -214,7 +214,7 @@ * At the atom level, if you edit a var named "color" it will add the atom colour with * admin level priority to the atom colours list * - * Also, if GLOB.Debug2 is FALSE, it sets the [ADMIN_SPAWNED_1] flag on [flags_1][/atom/var/flags_1], which signifies + * Also, if GLOB.debugging_enabled is FALSE, it sets the [ADMIN_SPAWNED_1] flag on [flags_1][/atom/var/flags_1], which signifies * the object has been admin edited */ /atom/vv_edit_var(var_name, var_value) @@ -287,7 +287,7 @@ datum_flags |= DF_VAR_EDITED return - if(!GLOB.Debug2) + if(!GLOB.debugging_enabled) flags_1 |= ADMIN_SPAWNED_1 . = ..() diff --git a/code/game/atom/atoms_initializing_EXPENSIVE.dm b/code/game/atom/atoms_initializing_EXPENSIVE.dm index 7b0965beabbe59..f39b987990d12c 100644 --- a/code/game/atom/atoms_initializing_EXPENSIVE.dm +++ b/code/game/atom/atoms_initializing_EXPENSIVE.dm @@ -122,6 +122,9 @@ SET_PLANE_IMPLICIT(src, plane) + if(LAZYLEN(hud_possible)) + hud_possible = string_assoc_list(hud_possible) + if(greyscale_config && greyscale_colors) //we'll check again at item/init for inhand/belt/worn configs. update_greyscale() diff --git a/code/game/atoms_movable.dm b/code/game/atoms_movable.dm index fd47581d90aa1a..8b367194042ce7 100644 --- a/code/game/atoms_movable.dm +++ b/code/game/atoms_movable.dm @@ -177,6 +177,8 @@ blocker.dir = dir blocker.appearance_flags = appearance_flags | EMISSIVE_APPEARANCE_FLAGS blocker.plane = GET_NEW_PLANE(EMISSIVE_PLANE, PLANE_TO_OFFSET(plane)) // Takes a light path through the normal macro for a microop + if (IS_TOPDOWN_PLANE(plane)) + blocker.layer = TOPDOWN_TO_EMISSIVE_LAYER(layer) // Ok so this is really cursed, but I want to set with this blocker cheaply while // Still allowing it to be removed from the overlays list later // So I'm gonna flatten it, then insert the flattened overlay into overlays AND the managed overlays list, directly @@ -580,7 +582,7 @@ if(pulling_mob.buckled && pulling_mob.buckled.buckle_prevents_pull) //if they're buckled to something that disallows pulling, prevent it stop_pulling() return FALSE - if(moving_atom == loc && pulling.density) + if(get_turf(moving_atom) == loc && pulling.density) return FALSE var/move_dir = get_dir(pulling.loc, moving_atom) if(!Process_Spacemove(move_dir)) @@ -1355,7 +1357,7 @@ //They are moving! Wouldn't it be cool if we calculated their momentum and added it to the throw? if(ismob(thrower)) var/mob/thrower_mob = thrower - if(thrower_mob.last_move && thrower_mob.client && thrower_mob.client.move_delay >= world.time + world.tick_lag*2) + if(thrower_mob.last_move && thrower_mob.client && thrower_mob.client.move_delay >= world.time) var/user_momentum = thrower_mob.cached_multiplicative_slowdown if (!user_momentum) //no movement_delay, this means they move once per byond tick, lets calculate from that instead. user_momentum = world.tick_lag diff --git a/code/game/data_huds.dm b/code/game/data_huds.dm index 672f079e966f58..68fc8da4b64385 100644 --- a/code/game/data_huds.dm +++ b/code/game/data_huds.dm @@ -8,12 +8,12 @@ /* DATA HUD DATUMS */ /atom/proc/add_to_all_human_data_huds() - for(var/datum/atom_hud/data/human/hud in GLOB.huds) - hud.add_atom_to_hud(src) + for(var/hud_key, hud_type in GLOB.huds) + astype(hud_type, /datum/atom_hud/data/human)?.add_atom_to_hud(src) /atom/proc/remove_from_all_data_huds() - for(var/datum/atom_hud/data/hud in GLOB.huds) - hud.remove_atom_from_hud(src) + for(var/hud_key, hud_type in GLOB.huds) + astype(hud_type, /datum/atom_hud/data)?.remove_atom_from_hud(src) /datum/atom_hud/data @@ -367,11 +367,11 @@ Diagnostic HUDs! //Borgie battery tracking! /mob/living/silicon/robot/proc/diag_hud_set_borgcell() - if(cell) + if(QDELETED(cell) || (cell.maxcharge == 0)) + set_hud_image_state(DIAG_BATT_HUD, "hudnobatt") + else var/chargelvl = (cell.charge/cell.maxcharge) set_hud_image_state(DIAG_BATT_HUD, "hudbatt[RoundDiagBar(chargelvl)]") - else - set_hud_image_state(DIAG_BATT_HUD, "hudnobatt") //borg-AI shell tracking /mob/living/silicon/robot/proc/diag_hud_set_aishell() //Shows if AI is controlling a cyborg via a BORIS module @@ -400,11 +400,11 @@ Diagnostic HUDs! set_hud_image_state(DIAG_MECH_HUD, "huddiag[RoundDiagBar(atom_integrity/max_integrity)]") /obj/vehicle/sealed/mecha/proc/diag_hud_set_mechcell() - if(cell) + if(QDELETED(cell) || (cell.maxcharge == 0)) + set_hud_image_state(DIAG_BATT_HUD, "hudnobatt") + else var/chargelvl = cell.charge/cell.maxcharge set_hud_image_state(DIAG_BATT_HUD, "hudbatt[RoundDiagBar(chargelvl)]") - else - set_hud_image_state(DIAG_BATT_HUD, "hudnobatt") /obj/vehicle/sealed/mecha/proc/diag_hud_set_mechstat() if(!internal_damage) @@ -471,11 +471,11 @@ Diagnostic HUDs! set_hud_image_state(DIAG_BOT_HUD, "") /mob/living/simple_animal/bot/mulebot/proc/diag_hud_set_mulebotcell() - if(cell) + if(QDELETED(cell) || (cell.maxcharge == 0)) + set_hud_image_state(DIAG_BATT_HUD, "hudnobatt") + else var/chargelvl = (cell.charge/cell.maxcharge) set_hud_image_state(DIAG_BATT_HUD, "hudbatt[RoundDiagBar(chargelvl)]") - else - set_hud_image_state(DIAG_STAT_HUD, "hudnobatt") /*~~~~~~~~~~~~ Airlocks! diff --git a/code/game/gamemodes/events.dm b/code/game/gamemodes/events.dm index a98b03d9c83177..171086b06b65a3 100644 --- a/code/game/gamemodes/events.dm +++ b/code/game/gamemodes/events.dm @@ -10,7 +10,7 @@ priority_announce("Abnormal activity detected in [station_name()]'s powernet. As a precautionary measure, the station's power will be shut off for an indeterminate duration.", "Critical Power Failure", ANNOUNCER_POWEROFF) var/list/all_smes = SSmachines.get_machines_by_type_and_subtypes(/obj/machinery/power/smes) for(var/obj/machinery/power/smes/smes as anything in all_smes) - if(istype(get_area(smes), /area/station/ai_monitored/turret_protected) || !is_station_level(smes.z)) + if(istype(get_area(smes), /area/station/ai) || !is_station_level(smes.z)) continue smes.charge = 0 smes.output_level = 0 diff --git a/code/game/gamemodes/objective_items.dm b/code/game/gamemodes/objective_items.dm index 5663243473bd0f..d79bd49890536e 100644 --- a/code/game/gamemodes/objective_items.dm +++ b/code/game/gamemodes/objective_items.dm @@ -401,15 +401,15 @@ GLOBAL_DATUM_INIT(steal_item_handler, /datum/objective_item_handler, new()) /datum/objective_item/steal/jetpack name = "the Captain's jetpack" - targetitem = /obj/item/tank/jetpack/oxygen/captain + targetitem = /obj/item/tank/jetpack/captain excludefromjob = list(JOB_CAPTAIN) item_owner = list(JOB_CAPTAIN) exists_on_map = TRUE difficulty = 3 steal_hint = "A special yellow jetpack found in the Suit Storage Unit in the Captain's Quarters." -/obj/item/tank/jetpack/oxygen/captain/add_stealing_item_objective() - return add_item_to_steal(src, /obj/item/tank/jetpack/oxygen/captain) +/obj/item/tank/jetpack/captain/add_stealing_item_objective() + return add_item_to_steal(src, /obj/item/tank/jetpack/captain) /datum/objective_item/steal/magboots name = "the chief engineer's advanced magnetic boots" @@ -916,6 +916,17 @@ GLOBAL_DATUM_INIT(steal_item_handler, /datum/objective_item_handler, new()) /obj/item/mod/control/pre_equipped/rescue/add_stealing_item_objective() return add_item_to_steal(src, /obj/item/mod/control/pre_equipped/rescue) +/datum/objective_item/steal/spy/cmo_defib + name = "Chief Medical Officer's Compact Defibrillator" + targetitem = /obj/item/defibrillator/compact/loaded/cmo + excludefromjob = list(JOB_CHIEF_MEDICAL_OFFICER) + exists_on_map = TRUE + difficulty = 2 + steal_hint = "The Compact Defibrillator, found on their person, or in their closet." + +/obj/item/defibrillator/compact/loaded/cmo/add_stealing_item_objective() + return add_item_to_steal(src, /obj/item/defibrillator/compact/loaded/cmo) + /datum/objective_item/steal/spy/hos_modsuit name = "the head of security's safeguard MOD control unit" targetitem = /obj/item/mod/control/pre_equipped/safeguard diff --git a/code/game/machinery/_machinery.dm b/code/game/machinery/_machinery.dm index 2023722ea352d6..c3fc2b6fbfa2a2 100644 --- a/code/game/machinery/_machinery.dm +++ b/code/game/machinery/_machinery.dm @@ -209,6 +209,8 @@ PROTECTED_PROC(TRUE) SHOULD_CALL_PARENT(TRUE) + find_and_mount_on_atom(late_init = TRUE) + power_change() if(use_power == NO_POWER_USE) return @@ -309,7 +311,11 @@ set waitfor = FALSE return PROCESS_KILL -/obj/machinery/proc/process_atmos()//If you dont use process why are you here +/** + * Process but for machines interacting with atmospherics. + * Like process, anything sensitive to changes in the wait time between process ticks should account for seconds_per_tick. +**/ +/obj/machinery/proc/process_atmos(seconds_per_tick)//If you dont touch atmos why are you here set waitfor = FALSE return PROCESS_KILL @@ -738,7 +744,7 @@ var/mob/user = ui.user add_fingerprint(user) update_last_used(user) - if(isAI(user) && !GLOB.cameranet.checkTurfVis(get_turf(src))) //We check if they're an AI specifically here, so borgs/adminghosts/human wand can still access off-camera stuff. + if(isAI(user) && !SScameras.is_visible_by_cameras(get_turf(src))) //We check if they're an AI specifically here, so borgs/adminghosts/human wand can still access off-camera stuff. to_chat(user, span_warning("You can no longer connect to this device!")) return FALSE return ..() diff --git a/code/game/machinery/ai_core/_core.dm b/code/game/machinery/ai_core/_core.dm new file mode 100644 index 00000000000000..512e193ac1215f --- /dev/null +++ b/code/game/machinery/ai_core/_core.dm @@ -0,0 +1,248 @@ +#define AI_CORE_BRAIN(X) X.braintype == "Android" ? "brain" : "MMI" + +/obj/structure/ai_core + name = "\improper AI core" + desc = "The framework for an artificial intelligence core." + icon = 'icons/mob/silicon/ai.dmi' + icon_state = "build_0" + base_icon_state = "build_" + density = TRUE + anchored = FALSE + max_integrity = 500 + custom_materials = list(/datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT * 4) + var/state = CORE_STATE_EMPTY + var/datum/ai_laws/laws + var/obj/item/circuitboard/aicore/circuit + var/obj/item/mmi/core_mmi + +/obj/structure/ai_core/Initialize(mapload, state = src.state, obj/item/mmi/core_mmi = null) + . = ..() + laws = new + laws.set_laws_config() + + if(core_mmi && state < CORE_STATE_CABLED) + stack_trace("supplied a core_mmi as constructor argument, but core state wouldn't have accepted it!") + state = CORE_STATE_FINISHED // just in case... + src.state = state + if(state >= CORE_STATE_CIRCUIT) + circuit = new(src) + if(state >= CORE_STATE_CABLED) + if(!core_mmi) + core_mmi = new /obj/item/mmi(src) + core_mmi.brain = new(core_mmi) + core_mmi.brain.organ_flags |= ORGAN_FROZEN + core_mmi.set_brainmob(new /mob/living/brain()) + core_mmi.brainmob.container = core_mmi + core_mmi.update_appearance() + core_mmi.forceMove(src) + src.core_mmi = core_mmi + set_anchored(TRUE) + + update_appearance(UPDATE_ICON_STATE) + +/obj/structure/ai_core/update_icon_state() + if(state != CORE_STATE_FINISHED) + icon_state = "[base_icon_state][state]" + if(state == CORE_STATE_CABLED && core_mmi) + icon_state += "b" + else + icon_state = "ai-empty" + return ..() + +/obj/structure/ai_core/Exited(atom/movable/gone, direction) + . = ..() + if(gone == circuit) + circuit = null + if((state != CORE_STATE_GLASSED) && (state != CORE_STATE_FINISHED)) + state = CORE_STATE_EMPTY + update_appearance() + if(gone == core_mmi) + core_mmi = null + update_appearance() + +/obj/structure/ai_core/atom_deconstruct(disassembled = TRUE) + if(state >= CORE_STATE_GLASSED) + new /obj/item/stack/sheet/rglass(drop_location(), 2) + if(state >= CORE_STATE_CABLED) + new /obj/item/stack/cable_coil(drop_location(), 5) + core_mmi?.forceMove(drop_location()) + circuit?.forceMove(drop_location()) + new /obj/item/stack/sheet/plasteel(drop_location(), 4) + +/obj/structure/ai_core/Destroy() + QDEL_NULL(circuit) + QDEL_NULL(core_mmi) + QDEL_NULL(laws) + return ..() + +/obj/structure/ai_core/examine(mob/user) + . = ..() + . += span_notice("It has some bolts that look [anchored ? "tightened" : "loosened"].") + + switch(state) + if(CORE_STATE_EMPTY) + . += span_notice("There is a slot for a circuit board, the frame can be melted down.") + if(CORE_STATE_CIRCUIT) + . += span_notice("The circuit board can be screwed into place or pried out.") + if(CORE_STATE_SCREWED) + . += span_notice("The frame can be wired, the circuit board can be unfastened.") + if(CORE_STATE_CABLED) + if(!core_mmi) + . += span_notice("There are wires which could be hooked up to an MMI or positronic brain, or cut.") + else + var/accept_laws = TRUE + if(core_mmi.laws.id != DEFAULT_AI_LAWID || !core_mmi.brainmob || !core_mmi.brainmob?.mind) + accept_laws = FALSE + . += span_notice("There is a slot for a reinforced glass panel, the [AI_CORE_BRAIN(core_mmi)] could be pried out.[accept_laws ? " A law module can be swiped across." : ""]") + if(CORE_STATE_GLASSED) + . += span_notice("The monitor [core_mmi?.brainmob?.mind && !suicide_check() ? "and neural interface " : ""]can be screwed in, the panel can be pried out.") + if(CORE_STATE_FINISHED) + . += span_notice("The monitor's connection can be cut[core_mmi?.brainmob?.mind && !suicide_check() ? " the neural interface can be screwed in." : "."]") + +/obj/structure/ai_core/item_interaction(mob/living/user, obj/item/tool, list/modifiers) + if(state < CORE_STATE_FINISHED) + return construction_item_interaction(user, tool, modifiers) + + return NONE + +/// Exists to be used for callbacks. +/obj/structure/ai_core/proc/check_state(state_to_check) + return (state == state_to_check) + +/obj/structure/ai_core/latejoin_inactive + name = "networked AI core" + desc = "This AI core is connected by bluespace transmitters to NTNet, allowing for an AI personality to be downloaded to it on the fly mid-shift." + anchored = TRUE + state = CORE_STATE_FINISHED + var/available = TRUE + var/safety_checks = TRUE + var/active = TRUE + +/obj/structure/ai_core/latejoin_inactive/Initialize(mapload, state, posibrain) + . = ..() + GLOB.latejoin_ai_cores += src + +/obj/structure/ai_core/latejoin_inactive/Destroy() + GLOB.latejoin_ai_cores -= src + return ..() + +/obj/structure/ai_core/latejoin_inactive/examine(mob/user) + . = ..() + . += "Its transmitter seems to be [active? "on" : "off"]." + . += span_notice("You could [active? "deactivate" : "activate"] it with a multitool.") + +/obj/structure/ai_core/latejoin_inactive/proc/is_available() //If people still manage to use this feature to spawn-kill AI latejoins ahelp them. + if(!available) + return FALSE + if(!safety_checks) + return TRUE + if(!active) + return FALSE + var/turf/T = get_turf(src) + var/area/A = get_area(src) + if(!(A.area_flags & BLOBS_ALLOWED)) + return FALSE + if(!A.power_equip) + return FALSE + if(!SSmapping.level_trait(T.z,ZTRAIT_STATION)) + return FALSE + if(!isfloorturf(T)) + return FALSE + return TRUE + +/obj/structure/ai_core/latejoin_inactive/multitool_act(mob/living/user, obj/item/tool) + if(user.combat_mode) + return NONE + + if(!tool.use_tool(src, user, 0 SECONDS, 0, 50)) + return ITEM_INTERACT_BLOCKING + + active = !active + balloon_alert(user, "[active ? "activated" : "deactivated"] transmitters") + return ITEM_INTERACT_SUCCESS + +/obj/structure/ai_core/proc/ai_structure_to_mob() + var/mob/living/brain/the_brainmob = core_mmi.brainmob + if(!the_brainmob.mind || suicide_check()) + return FALSE + the_brainmob.mind.remove_antags_for_borging() + if(!the_brainmob.mind.has_ever_been_ai) + SSblackbox.record_feedback("amount", "ais_created", 1) + var/mob/living/silicon/ai/ai_mob = null + + if(core_mmi.overrides_aicore_laws) + ai_mob = new /mob/living/silicon/ai(loc, core_mmi.laws, the_brainmob) + core_mmi.laws = null //MMI's law datum is being donated, so we need the MMI to let it go or the GC will eat it + else + ai_mob = new /mob/living/silicon/ai(loc, laws, the_brainmob) + laws = null //we're giving the new AI this datum, so let's not delete it when we qdel(src) 5 lines from now + + var/datum/antagonist/malf_ai/malf_datum = IS_MALF_AI(ai_mob) + if(malf_datum) + malf_datum.add_law_zero() + + if(!isnull(the_brainmob.client)) + ai_mob.set_gender(the_brainmob.client) + if(core_mmi.force_replace_ai_name) + ai_mob.fully_replace_character_name(ai_mob.name, core_mmi.replacement_ai_name()) + ai_mob.posibrain_inside = core_mmi.braintype == "Android" + deadchat_broadcast(" has been brought online at [get_area_name(ai_mob, format_text = TRUE)].", span_name("[ai_mob]"), follow_target = ai_mob, message_type = DEADCHAT_ANNOUNCEMENT) + qdel(src) + return ai_mob + +/// Quick proc to call to see if the brainmob inside of us has suicided. Returns TRUE if we have, FALSE in any other scenario. +/obj/structure/ai_core/proc/suicide_check() + if(isnull(core_mmi) || isnull(core_mmi.brainmob)) + return FALSE + return HAS_TRAIT(core_mmi.brainmob, TRAIT_SUICIDED) + +/* +This is a good place for AI-related object verbs so I'm sticking it here. +If adding stuff to this, don't forget that an AI need to cancel_camera() whenever it physically moves to a different location. +That prevents a few funky behaviors. +*/ +//The type of interaction, the player performing the operation, the AI itself, and the card object, if any. + + +/atom/proc/transfer_ai(interaction, mob/user, mob/living/silicon/ai/AI, obj/item/aicard/card) + SHOULD_CALL_PARENT(TRUE) + if(istype(card)) + if(card.flush) + to_chat(user, span_alert("ERROR: AI flush is in progress, cannot execute transfer protocol.")) + return FALSE + return TRUE + +/obj/structure/ai_core/transfer_ai(interaction, mob/user, mob/living/silicon/ai/AI, obj/item/aicard/card) + if(state != CORE_STATE_FINISHED || !..()) + return + if(core_mmi && core_mmi.brainmob) + if(core_mmi.brainmob.mind) + to_chat(user, span_warning("[src] already contains an active mind!")) + return + else if(suicide_check()) + to_chat(user, span_warning("[AI_CORE_BRAIN(core_mmi)] installed in [src] is completely useless!")) + return + //Transferring a carded AI to a core. + if(interaction == AI_TRANS_FROM_CARD) + AI.set_control_disabled(FALSE) + AI.radio_enabled = TRUE + AI.forceMove(loc) // to replace the terminal. + to_chat(AI, span_notice("You have been uploaded to a stationary terminal. Remote device connection restored.")) + to_chat(user, "[span_boldnotice("Transfer successful")]: [AI.name] ([rand(1000,9999)].exe) installed and executed successfully. Local copy has been removed.") + card.AI = null + AI.battery = circuit.battery + AI.posibrain_inside = isnull(core_mmi) || core_mmi.braintype == "Android" + qdel(src) + else //If for some reason you use an empty card on an empty AI terminal. + to_chat(user, span_alert("There is no AI loaded on this terminal.")) + +/obj/item/circuitboard/aicore + name = "AI core (AI Core Board)" //Well, duh, but best to be consistent + var/battery = 200 //backup battery for when the AI loses power. Copied to/from AI mobs when carding, and placed here to avoid recharge via deconning the core + +/obj/item/circuitboard/aicore/Initialize(mapload) + . = ..() + if(mapload && HAS_TRAIT(SSstation, STATION_TRAIT_HUMAN_AI)) + return INITIALIZE_HINT_QDEL + +#undef AI_CORE_BRAIN diff --git a/code/game/machinery/ai_core/core_construction.dm b/code/game/machinery/ai_core/core_construction.dm new file mode 100644 index 00000000000000..df1a36782daacc --- /dev/null +++ b/code/game/machinery/ai_core/core_construction.dm @@ -0,0 +1,253 @@ +#define AI_CORE_BRAIN(X) X.braintype == "Android" ? "brain" : "MMI" +#define UPDATE_STATE(new_state) state = new_state; update_appearance(UPDATE_ICON_STATE) +#define CHECK_STATE_CALLBACK(maintained_state) CALLBACK(src, PROC_REF(check_state), maintained_state) + +/obj/structure/ai_core/welder_act(mob/living/user, obj/item/tool) + if(state != CORE_STATE_EMPTY) + balloon_alert(user, "frame has to be empty!") + return ITEM_INTERACT_BLOCKING + + if(!tool.tool_start_check(user, 1)) + return ITEM_INTERACT_BLOCKING + + if(!tool.use_tool(src, user, 2 SECONDS, 1, 50, CHECK_STATE_CALLBACK(CORE_STATE_EMPTY))) + return ITEM_INTERACT_BLOCKING + + deconstruct(TRUE) + return ITEM_INTERACT_SUCCESS + +/obj/structure/ai_core/wrench_act(mob/living/user, obj/item/tool) + if(state >= CORE_STATE_FINISHED) + set_anchored(TRUE) //teehee + balloon_alert(user, "can't unanchor!") + return ITEM_INTERACT_BLOCKING + + default_unfasten_wrench(user, tool) + return ITEM_INTERACT_SUCCESS + +/obj/structure/ai_core/screwdriver_act(mob/living/user, obj/item/tool) + switch(state) + if(CORE_STATE_EMPTY) + balloon_alert(user, "nothing to screw in there!") + return ITEM_INTERACT_BLOCKING + if(CORE_STATE_CIRCUIT) + if(!tool.use_tool(src, user, 0 SECONDS, 0, 50, CHECK_STATE_CALLBACK(CORE_STATE_CIRCUIT))) + return ITEM_INTERACT_BLOCKING + balloon_alert(user, "board secured") + UPDATE_STATE(CORE_STATE_SCREWED) + return ITEM_INTERACT_SUCCESS + if(CORE_STATE_SCREWED) + if(!tool.use_tool(src, user, 0 SECONDS, 0, 50, CHECK_STATE_CALLBACK(CORE_STATE_SCREWED))) + return ITEM_INTERACT_BLOCKING + balloon_alert(user, "board unsecured") + UPDATE_STATE(CORE_STATE_CIRCUIT) + return ITEM_INTERACT_SUCCESS + if(CORE_STATE_CABLED) + balloon_alert(user, "can't reach the board!") + return ITEM_INTERACT_BLOCKING + if(CORE_STATE_GLASSED) + if(!anchored) + balloon_alert(user, "isn't anchored!") + return ITEM_INTERACT_BLOCKING + if(!tool.use_tool(src, user, 0 SECONDS, 0, 50, CHECK_STATE_CALLBACK(CORE_STATE_GLASSED))) + return ITEM_INTERACT_BLOCKING + if(suicide_check()) + balloon_alert(user, "processor is completely useless!") + return ITEM_INTERACT_BLOCKING + + var/atom/movable/alert_source = src + if(core_mmi.brainmob?.mind) + alert_source = ai_structure_to_mob() || alert_source + else + UPDATE_STATE(CORE_STATE_FINISHED) + alert_source.balloon_alert(user, "connected monitor[core_mmi?.brainmob?.mind ? " and neural network" : ""]") + return ITEM_INTERACT_SUCCESS + if(CORE_STATE_FINISHED) + if(!core_mmi?.brainmob?.mind || suicide_check()) + balloon_alert(user, "processor is inactive!") + return ITEM_INTERACT_BLOCKING + + if(!anchored) + balloon_alert(user, "anchor it first!") + return ITEM_INTERACT_BLOCKING + + balloon_alert(user, "connecting neural network...") + if(!tool.use_tool(src, user, 10 SECONDS, 0, 50, CHECK_STATE_CALLBACK(CORE_STATE_FINISHED))) + return ITEM_INTERACT_BLOCKING + + var/atom/movable/alert_source = ai_structure_to_mob() + if(!alert_source) + balloon_alert(user, "processor is inactive!") + return ITEM_INTERACT_BLOCKING + + alert_source.balloon_alert(user, "connected neural network") + return ITEM_INTERACT_SUCCESS + +/obj/structure/ai_core/crowbar_act(mob/living/user, obj/item/tool) + switch(state) + if(CORE_STATE_EMPTY) + balloon_alert(user, "nothing to pry out!") + return ITEM_INTERACT_BLOCKING + if(CORE_STATE_CIRCUIT) + if(!tool.use_tool(src, user, 0 SECONDS, 0, 50, CHECK_STATE_CALLBACK(CORE_STATE_CIRCUIT))) + return ITEM_INTERACT_BLOCKING + + circuit.forceMove(drop_location()) + UPDATE_STATE(CORE_STATE_EMPTY) + return ITEM_INTERACT_SUCCESS + if(CORE_STATE_SCREWED) + balloon_alert(user, "won't budge!") + return ITEM_INTERACT_BLOCKING + if(CORE_STATE_CABLED) + if(!core_mmi) + balloon_alert(user, "nothing to pry out!") + return ITEM_INTERACT_BLOCKING + if(!tool.use_tool(src, user, 0 SECONDS, 0, 50, CHECK_STATE_CALLBACK(CORE_STATE_CABLED)) || !core_mmi) + return ITEM_INTERACT_BLOCKING + + core_mmi.forceMove(drop_location()) + UPDATE_STATE(CORE_STATE_CABLED) + return ITEM_INTERACT_SUCCESS + if(CORE_STATE_GLASSED) + if(!tool.use_tool(src, user, 0 SECONDS, 0, 50, CHECK_STATE_CALLBACK(CORE_STATE_GLASSED))) + return ITEM_INTERACT_BLOCKING + + new /obj/item/stack/sheet/rglass(drop_location(), 2) + UPDATE_STATE(CORE_STATE_CABLED) + return ITEM_INTERACT_SUCCESS + if(CORE_STATE_FINISHED) + balloon_alert(user, "display is on!") + return ITEM_INTERACT_SUCCESS + +/obj/structure/ai_core/wirecutter_act(mob/living/user, obj/item/tool) + switch(state) + if(CORE_STATE_EMPTY to CORE_STATE_CIRCUIT) + balloon_alert(user, "nothing to cut!") + return ITEM_INTERACT_BLOCKING + if(CORE_STATE_CABLED) + if(core_mmi) + balloon_alert(user, "[AI_CORE_BRAIN(core_mmi)] in the way!") + return ITEM_INTERACT_BLOCKING + + if(!tool.use_tool(src, user, 0 SECONDS, 0, 50, CHECK_STATE_CALLBACK(CORE_STATE_CABLED)) || core_mmi) + return ITEM_INTERACT_BLOCKING + + new /obj/item/stack/cable_coil(drop_location(), 5) + UPDATE_STATE(CORE_STATE_SCREWED) + return ITEM_INTERACT_SUCCESS + if(CORE_STATE_GLASSED) + balloon_alert(user, "nothing left to cut!") + return ITEM_INTERACT_BLOCKING + if(CORE_STATE_FINISHED) + if(!tool.use_tool(src, user, 0 SECONDS, 0, 50, CHECK_STATE_CALLBACK(CORE_STATE_FINISHED))) + return ITEM_INTERACT_BLOCKING + + UPDATE_STATE(CORE_STATE_GLASSED) + return ITEM_INTERACT_SUCCESS + +/// Handles the interaction chain the same as item_interaction. Exists to isolate construction behaviour from other item behaviour. +/obj/structure/ai_core/proc/construction_item_interaction(mob/living/user, obj/item/tool, list/modifiers) + if(istype(tool, /obj/item/circuitboard/aicore)) + return install_board(user, tool) ? ITEM_INTERACT_SUCCESS : ITEM_INTERACT_BLOCKING + + if(istype(tool, /obj/item/stack/cable_coil)) + return add_cabling(user, tool) ? ITEM_INTERACT_SUCCESS : ITEM_INTERACT_BLOCKING + + if(istype(tool, /obj/item/mmi)) + return install_mmi(user, tool) ? ITEM_INTERACT_SUCCESS : ITEM_INTERACT_BLOCKING + if(istype(tool, /obj/item/ai_module)) + return update_laws(user, tool) ? ITEM_INTERACT_SUCCESS : ITEM_INTERACT_BLOCKING + if(istype(tool, /obj/item/stack/sheet/rglass)) + return install_glass(user, tool) ? ITEM_INTERACT_SUCCESS : ITEM_INTERACT_BLOCKING + + return NONE + +/obj/structure/ai_core/proc/install_board(mob/living/user, obj/item/circuitboard/aicore/circuit) + if(state != CORE_STATE_EMPTY) + return FALSE + if(!user.transferItemToLoc(circuit, src)) + return FALSE + + playsound(src, 'sound/items/deconstruct.ogg', 50, TRUE) + src.circuit = circuit + UPDATE_STATE(CORE_STATE_CIRCUIT) + return TRUE + +/obj/structure/ai_core/proc/add_cabling(mob/living/user, obj/item/stack/cable_coil/cable) + if(state != CORE_STATE_SCREWED) + return FALSE + + if(cable.get_amount() < 5) + balloon_alert(user, "not enough [cable::name]!") + return FALSE + + balloon_alert(user, "adding cable...") + if(!cable.use_tool(src, user, 2 SECONDS, 5, 50, CHECK_STATE_CALLBACK(CORE_STATE_SCREWED))) + return FALSE + + UPDATE_STATE(CORE_STATE_CABLED) + return TRUE + +/obj/structure/ai_core/proc/install_mmi(mob/living/user, obj/item/mmi/mmi) + if(state != CORE_STATE_CABLED) + return FALSE + + if(!mmi.brain_check(user)) + var/wants_install = (tgui_alert(user, "This [AI_CORE_BRAIN(mmi)] is inactive, would you like to make an inactive AI?", "Installing AI [AI_CORE_BRAIN(mmi)]", list("Yes", "No")) == "Yes") + if(!wants_install) + return FALSE + if(QDELETED(src) || QDELETED(user) || QDELETED(mmi) || !user.is_holding(mmi) || !Adjacent(user)) + return FALSE + if(mmi.brainmob && HAS_TRAIT(mmi.brainmob, TRAIT_SUICIDED)) + balloon_alert(user, "[AI_CORE_BRAIN(mmi)] is useless!") + return FALSE + else + var/mob/living/brain/mmi_brainmob = mmi.brainmob + if(!CONFIG_GET(flag/allow_ai) || (mmi_brainmob && is_banned_from(mmi_brainmob.ckey, JOB_AI))) + if(!QDELETED(src) && !QDELETED(user) && !QDELETED(mmi) && user.is_holding(mmi) && Adjacent(user)) + balloon_alert(user, "[mmi] won't fit!") + return FALSE + + if(state != CORE_STATE_CABLED) + return FALSE + if(!user.transferItemToLoc(mmi, src)) + return FALSE + + core_mmi = mmi + UPDATE_STATE(CORE_STATE_CABLED) + return TRUE + +/obj/structure/ai_core/proc/update_laws(mob/living/user, obj/item/ai_module/module) + if(!core_mmi) + balloon_alert(user, "no brain installed!") + return FALSE + if(!core_mmi.brainmob || !core_mmi.brainmob?.mind || suicide_check()) + balloon_alert(user, "[AI_CORE_BRAIN(core_mmi)] is inactive!") + return FALSE + if(core_mmi.laws.id != DEFAULT_AI_LAWID) + balloon_alert(user, "[AI_CORE_BRAIN(core_mmi)] already has set laws!") + return FALSE + + module.install(laws, user) + return TRUE + +/obj/structure/ai_core/proc/install_glass(mob/living/user, obj/item/stack/sheet/rglass/glass) + if(state != CORE_STATE_CABLED) + return FALSE + + if(!core_mmi) + balloon_alert(user, "needs a processor!") + return FALSE + if(glass.get_amount() < 2) + balloon_alert(user, "not enough [glass::name]!") + return FALSE + + if(!glass.use_tool(src, user, 2 SECONDS, 2, 50, CHECK_STATE_CALLBACK(CORE_STATE_CABLED)) || !core_mmi) + return FALSE + + UPDATE_STATE(CORE_STATE_GLASSED) + return TRUE + +#undef CHECK_STATE_CALLBACK +#undef UPDATE_STATE +#undef AI_CORE_BRAIN diff --git a/code/game/machinery/announcement_system.dm b/code/game/machinery/announcement_system.dm index e39e2e4fed6de3..a66cd3209a21f2 100644 --- a/code/game/machinery/announcement_system.dm +++ b/code/game/machinery/announcement_system.dm @@ -122,6 +122,13 @@ GLOBAL_LIST_EMPTY(announcement_systems) )) return list("config_entries" = configs) +/obj/machinery/announcement_system/ui_static_data(mob/user) + var/list/data = list() + + data["max_announcement_len"] = MAX_AAS_LENGTH + + return data + /obj/machinery/announcement_system/ui_act(action, list/params, datum/tgui/ui, datum/ui_state/state) . = ..() if(.) @@ -148,7 +155,7 @@ GLOBAL_LIST_EMPTY(announcement_systems) message_admins("[ADMIN_LOOKUPFLW(usr)] tried to set announcement line for nonexisting line in the [config.name] for AAS. Probably href injection. Received line: [html_encode(params["lineKey"])]") log_game("[key_name(usr)] tried to mess with AAS. For [config.name] he tried to edit nonexistend [params["lineKey"]]") return - var/new_message = trim(html_encode(params["newText"]), MAX_MESSAGE_LEN) + var/new_message = trim(html_encode(params["newText"]), MAX_AAS_LENGTH) if(new_message) config.announcement_lines_map[params["lineKey"]] = new_message usr.log_message("updated [params["lineKey"]] line in the [config.name] to: [new_message]", LOG_GAME) diff --git a/code/game/machinery/atmos_field_gen.dm b/code/game/machinery/atmos_field_gen.dm index 72a0c4a9d05f69..004728d3914367 100644 --- a/code/game/machinery/atmos_field_gen.dm +++ b/code/game/machinery/atmos_field_gen.dm @@ -39,7 +39,7 @@ /obj/machinery/atmos_shield_gen/Initialize(mapload) . = ..() register_context() - AddComponent(/datum/component/simple_rotation) + AddElement(/datum/element/simple_rotation) set_wires(new /datum/wires/atmosshieldgen(src)) SSmachines.processing_early += src if(on) diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index a35b5931fd3244..efe1e6c76cf64c 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -26,7 +26,7 @@ ///Designs imported from technology disks that we can print. var/list/imported_designs = list() ///The container to hold materials - var/datum/component/material_container/materials + var/datum/material_container/materials ///direction we output onto (if 0, on top of us) var/drop_direction = 0 //looping sound for printing items @@ -34,8 +34,8 @@ /obj/machinery/autolathe/Initialize(mapload) print_sound = new(src, FALSE) - materials = AddComponent( \ - /datum/component/material_container, \ + materials = new ( \ + src, \ SSmaterials.materials_by_category[MAT_CATEGORY_ITEM_MATERIAL], \ 0, \ MATCONTAINER_EXAMINE|MATCONTAINER_ACCEPT_ALLOYS, \ @@ -52,7 +52,7 @@ /obj/machinery/autolathe/Destroy() QDEL_NULL(print_sound) - materials = null + QDEL_NULL(materials) return ..() /obj/machinery/autolathe/examine(mob/user) diff --git a/code/game/machinery/bank_machine.dm b/code/game/machinery/bank_machine.dm index c6ff98ec371909..2c6f88fde4e98f 100644 --- a/code/game/machinery/bank_machine.dm +++ b/code/game/machinery/bank_machine.dm @@ -60,7 +60,7 @@ if(value) if(synced_bank_account) synced_bank_account.adjust_money(value) - say("Credits deposited! The [synced_bank_account.account_holder] is now [synced_bank_account.account_balance] cr.") + say("[MONEY_NAME_CAPITALIZED] deposited! The [synced_bank_account.account_holder] is now [synced_bank_account.account_balance] [MONEY_SYMBOL].") qdel(weapon) return return ..() @@ -112,13 +112,13 @@ switch(action) if("siphon") if(is_station_level(src.z) || is_centcom_level(src.z)) - say("Siphon of station credits has begun!") + say("Siphon of station [MONEY_NAME] has begun!") start_siphon(ui.user) else say("Error: Console not in reach of station, withdrawal cannot begin.") . = TRUE if("halt") - say("Station credit withdrawal halted.") + say("Station [MONEY_NAME_SINGULAR] withdrawal halted.") end_siphon() . = TRUE diff --git a/code/game/machinery/barsigns.dm b/code/game/machinery/barsigns.dm index 1d0f7d8fbc9565..409d0226bc0b99 100644 --- a/code/game/machinery/barsigns.dm +++ b/code/game/machinery/barsigns.dm @@ -31,7 +31,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/barsign, 32) change_area_name = mapload set_sign(new /datum/barsign/hiddensigns/signoff) if(mapload) - find_and_hang_on_wall() + find_and_mount_on_atom() /obj/machinery/barsign/proc/set_sign(datum/barsign/sign) if(!istype(sign)) @@ -501,6 +501,30 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/barsign, 32) desc = "LIVE MOTHS!" neon_color = COLOR_RED +/datum/barsign/coldones + name = "Cold Ones" + icon_state = "cold-ones" + desc = "That's what they call the yogurt effect." + neon_color = "" + +/datum/barsign/doctorsorders + name = "Doctor's Orders" + icon_state = "doctors-orders" + desc = "For over-the-counter painkillers." + neon_color = "" + +/datum/barsign/wrongturn + name = "Wrong Turn" + icon_state = "wrong-turn" + desc = "You don't feel lost. Nothing a few drinks cant fix, though." + neon_color = "" + +/datum/barsign/punpunspub + name = "Punpun's Pub" + icon_state = "pun-puns-pub" + desc = "After everything he's been through? I'd want to be near booze too." + neon_color = "" + // Hidden signs list below this point /datum/barsign/hiddensigns diff --git a/code/game/machinery/botlaunchpad.dm b/code/game/machinery/botlaunchpad.dm index e044bb1e296880..9cd9c647accff2 100644 --- a/code/game/machinery/botlaunchpad.dm +++ b/code/game/machinery/botlaunchpad.dm @@ -48,7 +48,7 @@ launched_bot = WEAKREF(possible_bot) podspawn(list( "target" = get_turf(src), - "path" = /obj/structure/closet/supplypod/botpod, + "path" = /obj/structure/closet/supplypod/transport/botpod, "style" = /datum/pod_style/seethrough, "reverse_dropoff_coords" = list(reverse_turf.x, reverse_turf.y, reverse_turf.z) )) @@ -66,15 +66,6 @@ var/mob/living/simple_animal/bot/simple_bot = our_bot simple_bot.call_bot(src, get_turf(src)) -/obj/structure/closet/supplypod/botpod - style = /datum/pod_style/seethrough - explosionSize = list(0,0,0,0) - reversing = TRUE +/obj/structure/closet/supplypod/transport/botpod reverse_option_list = list("Mobs"=TRUE,"Objects"=FALSE,"Anchored"=FALSE,"Underfloor"=FALSE,"Wallmounted"=FALSE,"Floors"=FALSE,"Walls"=FALSE,"Mecha"=FALSE) - delays = list(POD_TRANSIT = 0, POD_FALLING = 0, POD_OPENING = 0, POD_LEAVING = 0) - reverse_delays = list(POD_TRANSIT = 15, POD_FALLING = 10, POD_OPENING = 0, POD_LEAVING = 0) - custom_rev_delay = TRUE - effectQuiet = TRUE leavingSound = 'sound/vehicles/rocketlaunch.ogg' - close_sound = null - pod_flags = FIRST_SOUNDS diff --git a/code/game/machinery/buttons.dm b/code/game/machinery/buttons.dm index eb9661657fce44..c0a7ef8278c4bb 100644 --- a/code/game/machinery/buttons.dm +++ b/code/game/machinery/buttons.dm @@ -62,7 +62,7 @@ setup_device(mapload) if(mapload) - find_and_hang_on_wall() + find_and_mount_on_atom() register_context() /obj/machinery/button/Destroy() @@ -523,3 +523,11 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/button/door, 24) result_path = /obj/machinery/button custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT) pixel_shift = 24 + +/obj/item/wallframe/button/find_support_structure(atom/structure) + return istype(structure, /obj/structure/table) ? structure : ..() + +/obj/item/wallframe/button/interact_with_atom(atom/interacting_with, mob/living/user, list/modifiers) + if(istype(interacting_with, /obj/structure/table)) + return user.combat_mode ? ..() : NONE + return ..() diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm index abf45157cf4660..b88acdcbc014ad 100644 --- a/code/game/machinery/camera/camera.dm +++ b/code/game/machinery/camera/camera.dm @@ -1,3 +1,12 @@ +/// Active power use of a regular default camera +#define CAMERA_POWER_CONSUMPTION (BASE_MACHINE_ACTIVE_CONSUMPTION * 0.02) +/// Active power multiplier of the xray camera upgrade +#define XRAY_POWER_MOD (10) +/// Active power multiplier of the motion camera upgrade +#define MOTION_POWER_MOD (4) +/// Active power multiplier of the EMP camera upgrade +#define EMP_POWER_MOD (1.25) + /** * Camera assembly frame * Putting this on a wall will put a deconstructed camera machine on the wall. @@ -7,13 +16,13 @@ desc = "The basic construction for Nanotrasen-Always-Watching-You cameras." icon = 'icons/obj/machines/camera.dmi' icon_state = "cameracase" - custom_materials = list( - /datum/material/iron = SMALL_MATERIAL_AMOUNT * 4, - /datum/material/glass = SMALL_MATERIAL_AMOUNT * 2.5, - ) + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT) result_path = /obj/machinery/camera/autoname/deconstructed wall_external = TRUE +/obj/item/wallframe/camera/find_support_structure(atom/structure) + return istype(structure, /obj/structure/window) ? structure : ..() + /obj/machinery/camera name = "security camera" desc = "It's used to monitor rooms." @@ -21,7 +30,7 @@ icon_state = "camera" base_icon_state = "camera" use_power = ACTIVE_POWER_USE - active_power_usage = BASE_MACHINE_ACTIVE_CONSUMPTION * 0.02 + active_power_usage = CAMERA_POWER_CONSUMPTION layer = WALL_OBJ_LAYER resistance_flags = FIRE_PROOF damage_deflection = 12 @@ -85,7 +94,7 @@ var/list/datum/weakref/localMotionTargets = list() var/detectTime = 0 - var/area/station/ai_monitored/area_motion = null + var/datum/motion_group/area_motion = null var/alarm_delay = 30 // Don't forget, there's another 3 seconds in queueAlarm() MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/camera, 0) @@ -110,12 +119,12 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/camera/xray, 0) network -= network_name network += LOWER_TEXT(network_name) - GLOB.cameranet.cameras += src + SScameras.cameras += src myarea = get_room_area() if(camera_enabled) - GLOB.cameranet.addCamera(src) + SScameras.add_camera_to_chunk(src) LAZYADD(myarea.cameras, src) #ifdef MAP_TEST update_appearance() @@ -125,16 +134,18 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/camera/xray, 0) else //this is handled by toggle_camera, so no need to update it twice. update_appearance() #endif - alarm_manager = new(src) if(mapload) - find_and_hang_on_wall() + find_and_mount_on_atom(mark_for_late_init = TRUE) + +/obj/machinery/camera/get_turfs_to_mount_on() + return list(get_step(src, dir)) /obj/machinery/camera/Destroy(force) if(can_use()) toggle_cam(null, 0) //kick anyone viewing out and remove from the camera chunks - GLOB.cameranet.removeCamera(src) - GLOB.cameranet.cameras -= src + SScameras.remove_camera_from_chunk(src) + SScameras.cameras -= src cancelCameraAlarm() if(isarea(myarea)) LAZYREMOVE(myarea.cameras, src) @@ -178,8 +189,8 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/camera/xray, 0) SIGNAL_HANDLER proximity_monitor = null -/obj/machinery/camera/proc/set_area_motion(area/A) - area_motion = A +/obj/machinery/camera/proc/set_area_motion(datum/motion_group/group) + area_motion = group create_prox_monitor() /obj/machinery/camera/examine(mob/user) @@ -219,11 +230,12 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/camera/xray, 0) if(!prob(150 / severity)) return network = list() - GLOB.cameranet.removeCamera(src) + SScameras.remove_camera_from_chunk(src) set_machine_stat(machine_stat | EMPED) set_light(0) emped++ //Increase the number of consecutive EMP's update_appearance() + calculate_active_power() addtimer(CALLBACK(src, PROC_REF(post_emp_reset), emped, network), reset_time) for(var/mob/M as anything in GLOB.player_list) if (M.client?.eye == src) @@ -246,9 +258,10 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/camera/xray, 0) set_machine_stat(machine_stat & ~EMPED) update_appearance() if(can_use()) - GLOB.cameranet.addCamera(src) + SScameras.add_camera_to_chunk(src) emped = 0 //Resets the consecutive EMP count addtimer(CALLBACK(src, PROC_REF(cancelCameraAlarm)), 10 SECONDS) + calculate_active_power() /obj/machinery/camera/attack_ai(mob/living/silicon/ai/user) if (!istype(user)) @@ -259,7 +272,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/camera/xray, 0) /obj/machinery/camera/proc/setViewRange(num = 7) src.view_range = num - GLOB.cameranet.updateVisibility(src, 0) + SScameras.update_visibility(src) /obj/machinery/camera/proc/shock(mob/living/user) if(!istype(user)) @@ -336,7 +349,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/camera/xray, 0) /obj/machinery/camera/proc/toggle_cam(mob/user, displaymessage = TRUE) camera_enabled = !camera_enabled if(can_use()) - GLOB.cameranet.addCamera(src) + SScameras.add_camera_to_chunk(src) if (isturf(loc)) myarea = get_area(src) LAZYADD(myarea.cameras, src) @@ -344,12 +357,10 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/camera/xray, 0) myarea = null else set_light(0) - GLOB.cameranet.removeCamera(src) + SScameras.remove_camera_from_chunk(src) if (isarea(myarea)) LAZYREMOVE(myarea.cameras, src) // We are not guarenteed that the camera will be on a turf. account for that - var/turf/our_turf = get_turf(src) - GLOB.cameranet.updateChunk(our_turf.x, our_turf.y, our_turf.z) var/change_msg = "deactivates" if(camera_enabled) change_msg = "reactivates" @@ -365,6 +376,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/camera/xray, 0) playsound(src, 'sound/items/tools/wirecutter.ogg', 100, TRUE) update_appearance() //update Initialize() if you remove this. + calculate_active_power() // now disconnect anyone using the camera //Apparently, this will disconnect anyone even if the camera was re-activated. @@ -389,6 +401,8 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/camera/xray, 0) return FALSE return TRUE +/// Returns a list of turfs in this camera's view. +/// This includes turfs that are "obscured by darkness" from the camera's POV. /obj/machinery/camera/proc/can_see() var/list/see = null var/turf/pos = get_turf(src) @@ -397,26 +411,22 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/camera/xray, 0) var/check_higher = directly_above && istransparentturf(directly_above) && (pos != get_highest_turf(pos)) if(isXRay()) - see = range(view_range, pos) + see = RANGE_TURFS(view_range, pos) else - see = get_hear(view_range, pos) + see = get_hear_turfs(view_range, pos) + if(check_lower || check_higher) // Haha datum var access KILL ME - for(var/turf/seen in see) + for(var/turf/seen as anything in see) if(check_lower) - var/turf/visible = seen - while(visible && istransparentturf(visible)) - var/turf/below = GET_TURF_BELOW(visible) - for(var/turf/adjacent in range(1, below)) - see += adjacent - see += adjacent.contents - visible = below + var/turf/below = GET_TURF_BELOW(seen) + while(below && istransparentturf(below)) + see += RANGE_TURFS(1, below) + below = GET_TURF_BELOW(below) if(check_higher) var/turf/above = GET_TURF_ABOVE(seen) while(above && istransparentturf(above)) - for(var/turf/adjacent in range(1, above)) - see += adjacent - see += adjacent.contents + see += RANGE_TURFS(1, above) above = GET_TURF_ABOVE(above) return see @@ -449,3 +459,19 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/camera/xray, 0) ///Called when the camera stops being watched on a camera console. /obj/machinery/camera/proc/on_stop_watching() return + +/obj/machinery/camera/proc/calculate_active_power() + if(!can_use()) + active_power_usage = 0 + return + + var/xray_power_mod = (camera_upgrade_bitflags & CAMERA_UPGRADE_XRAY) && !malf_xray_firmware_present ? XRAY_POWER_MOD : 1 + var/motion_power_mod = (camera_upgrade_bitflags & CAMERA_UPGRADE_MOTION) ? MOTION_POWER_MOD : 1 + var/EMP_power_mod = (camera_upgrade_bitflags & CAMERA_UPGRADE_EMP_PROOF) && !malf_emp_firmware_present ? EMP_POWER_MOD : 1 + + active_power_usage = CAMERA_POWER_CONSUMPTION * xray_power_mod * motion_power_mod * EMP_power_mod + +#undef CAMERA_POWER_CONSUMPTION +#undef XRAY_POWER_MOD +#undef MOTION_POWER_MOD +#undef EMP_POWER_MOD diff --git a/code/game/machinery/camera/motion.dm b/code/game/machinery/camera/motion.dm index ba5e793d68cef5..a9923b8117ec45 100644 --- a/code/game/machinery/camera/motion.dm +++ b/code/game/machinery/camera/motion.dm @@ -1,7 +1,7 @@ /obj/machinery/camera/process() // motion camera event loop if(!isMotion()) - return PROCESS_KILL + return PROCESS_KILL // FIXME: This is never undone if the camera gets upgraded to a motion camera if(machine_stat & EMPED) return if (detectTime > 0) @@ -13,14 +13,14 @@ var/mob/target = targetref.resolve() if(QDELETED(target) || target.stat == DEAD || (!area_motion && !in_range(src, target))) //If not part of a monitored area and the camera is not in range or the target is dead - lostTargetRef(targetref) + lost_target(target) /obj/machinery/camera/proc/getTargetList() if(area_motion) - return area_motion.motionTargets + return area_motion.motion_targets return localMotionTargets -/obj/machinery/camera/proc/newTarget(mob/target) +/obj/machinery/camera/proc/new_target(mob/target) if(isAI(target)) return FALSE if (detectTime == 0) @@ -29,19 +29,17 @@ targets |= WEAKREF(target) return TRUE +/obj/machinery/camera/proc/lost_target(mob/target) + var/list/targets = getTargetList() + targets -= WEAKREF(target) + if (!length(targets)) + cancelAlarm() + /obj/machinery/camera/Destroy() localMotionTargets = null - if(area_motion) - LAZYREMOVE(area_motion.motioncameras, src) cancelAlarm() return ..() -/obj/machinery/camera/proc/lostTargetRef(datum/weakref/R) - var/list/targets = getTargetList() - targets -= R - if (targets.len == 0) - cancelAlarm() - /obj/machinery/camera/proc/cancelAlarm() if (detectTime == -1 && camera_enabled) alarm_manager.clear_alarm(ALARM_MOTION) @@ -61,7 +59,7 @@ // Motion cameras outside of an "ai monitored" area will use this to detect stuff. if (!area_motion) if(isliving(AM)) - newTarget(AM) + new_target(AM) /obj/machinery/camera/motion/thunderdome name = "entertainment camera" diff --git a/code/game/machinery/camera/presets.dm b/code/game/machinery/camera/presets.dm index 89af3fc1192411..45ec252b98dfd0 100644 --- a/code/game/machinery/camera/presets.dm +++ b/code/game/machinery/camera/presets.dm @@ -160,6 +160,7 @@ AddElement(/datum/element/empprotection, EMP_PROTECT_ALL) camera_upgrade_bitflags |= CAMERA_UPGRADE_EMP_PROOF + calculate_active_power() /obj/machinery/camera/proc/removeEmpProof(ignore_malf_upgrades) if(ignore_malf_upgrades) //don't downgrade it if malf software is forced onto it. @@ -167,6 +168,7 @@ RemoveElement(/datum/element/empprotection, EMP_PROTECT_ALL) RemoveElement(/datum/element/empprotection, EMP_PROTECT_ALL|EMP_NO_EXAMINE) camera_upgrade_bitflags &= ~CAMERA_UPGRADE_EMP_PROOF + calculate_active_power() /obj/machinery/camera/proc/isXRay(ignore_malf_upgrades) return (camera_upgrade_bitflags & CAMERA_UPGRADE_XRAY) && (!(ignore_malf_upgrades && malf_xray_firmware_active)) @@ -185,11 +187,14 @@ camera_upgrade_bitflags |= CAMERA_UPGRADE_XRAY update_appearance() + SScameras.update_visibility(src) + calculate_active_power() /obj/machinery/camera/proc/removeXRay(ignore_malf_upgrades) if(!ignore_malf_upgrades) //don't downgrade it if malf software is forced onto it. camera_upgrade_bitflags &= ~CAMERA_UPGRADE_XRAY update_appearance() + calculate_active_power() /obj/machinery/camera/proc/isMotion() return camera_upgrade_bitflags & CAMERA_UPGRADE_MOTION @@ -204,6 +209,7 @@ proximity_monitor = new(src) camera_upgrade_bitflags |= CAMERA_UPGRADE_MOTION create_prox_monitor() + calculate_active_power() /obj/machinery/camera/proc/removeMotion() if(name == "motion-sensitive security camera") @@ -211,3 +217,4 @@ camera_upgrade_bitflags &= ~CAMERA_UPGRADE_MOTION if(!area_motion) QDEL_NULL(proximity_monitor) + calculate_active_power() diff --git a/code/game/machinery/camera/silicon_camera.dm b/code/game/machinery/camera/silicon_camera.dm index 62f59171134683..d573c59f6320a6 100644 --- a/code/game/machinery/camera/silicon_camera.dm +++ b/code/game/machinery/camera/silicon_camera.dm @@ -33,6 +33,7 @@ ///The alert given to silicons being watched. /atom/movable/screen/alert/being_recorded - icon_state = "recording" name = "Recorded" desc = "Someone is currently watching your internal camera through a camera console." + use_user_hud_icon = TRUE + overlay_state = "recording" diff --git a/code/game/machinery/civilian_bounties.dm b/code/game/machinery/civilian_bounties.dm index b917bed6c7d4cd..9f2254a28ce778 100644 --- a/code/game/machinery/civilian_bounties.dm +++ b/code/game/machinery/civilian_bounties.dm @@ -336,9 +336,9 @@ /obj/item/bounty_cube/examine() . = ..() if(speed_bonus) - . += span_notice("[time2text(next_nag_time - world.time,"mm:ss", NO_TIMEZONE)] remains until [bounty_value * speed_bonus] credit speedy delivery bonus lost.") + . += span_notice("[time2text(next_nag_time - world.time,"mm:ss", NO_TIMEZONE)] remains until [bounty_value * speed_bonus] [MONEY_NAME_SINGULAR] speedy delivery bonus lost.") if(handler_tip && !bounty_handler_account) - . += span_notice("Scan this in the cargo shuttle with an export scanner to register your bank account for the [bounty_value * handler_tip] credit handling tip.") + . += span_notice("Scan this in the cargo shuttle with an export scanner to register your bank account for the [bounty_value * handler_tip] [MONEY_NAME_SINGULAR] handling tip.") /obj/item/bounty_cube/process(seconds_per_tick) //if our nag cooldown has finished and we aren't on Centcom or in transit, then nag @@ -372,7 +372,7 @@ bounty_holder = holder_id.registered_name bounty_holder_job = holder_id.assignment bounty_holder_account = holder_id.registered_account - name = "\improper [bounty_value] cr [name]" + name = "\improper [bounty_value] [MONEY_SYMBOL] [name]" desc += " The sales tag indicates it was [bounty_holder] ([bounty_holder_job])'s reward for completing the [bounty_name] bounty." AddComponent(/datum/component/pricetag, holder_id.registered_account, holder_cut, FALSE) AddComponent(/datum/component/gps, "[src]") diff --git a/code/game/machinery/computer/accounting.dm b/code/game/machinery/computer/accounting.dm index 75a890d382ac0d..878c450e8194e7 100644 --- a/code/game/machinery/computer/accounting.dm +++ b/code/game/machinery/computer/accounting.dm @@ -71,7 +71,7 @@ bank_account.payday_modifier = clamp(round(text2num(params["pay_mod"]), 0.05), MIN_PAY_MOD, MAX_PAY_MOD) var/new_check_total = bank_account.payday_modifier * bank_account.account_job.paycheck var/raise_or_cut = new_check_total > old_modifier * bank_account.account_job.paycheck ? "raised" : "cut" - bank_account.bank_card_talk("Paycheck [raise_or_cut] to [new_check_total]cr.") + bank_account.bank_card_talk("Paycheck [raise_or_cut] to [new_check_total][MONEY_SYMBOL].") SSeconomy.add_audit_entry(bank_account, new_check_total, "Paycheck [raise_or_cut]") return TRUE diff --git a/code/game/machinery/computer/aifixer.dm b/code/game/machinery/computer/aifixer.dm index 6c6b41da72c59c..dd76cd1efb71e7 100644 --- a/code/game/machinery/computer/aifixer.dm +++ b/code/game/machinery/computer/aifixer.dm @@ -68,9 +68,9 @@ say("Not enough energy. Restoration cancelled.") return FALSE var/need_mob_update = FALSE - need_mob_update += occupier.adjustOxyLoss(-5, updating_health = FALSE) - need_mob_update += occupier.adjustFireLoss(-5, updating_health = FALSE) - need_mob_update += occupier.adjustBruteLoss(-5, updating_health = FALSE) + need_mob_update += occupier.adjust_oxy_loss(-5, updating_health = FALSE) + need_mob_update += occupier.adjust_fire_loss(-5, updating_health = FALSE) + need_mob_update += occupier.adjust_brute_loss(-5, updating_health = FALSE) if(need_mob_update) occupier.updatehealth() if(occupier.health >= 0 && occupier.stat == DEAD) diff --git a/code/game/machinery/computer/apc_control.dm b/code/game/machinery/computer/apc_control.dm index 892113713617de..6c56f6e2aa608b 100644 --- a/code/game/machinery/computer/apc_control.dm +++ b/code/game/machinery/computer/apc_control.dm @@ -102,7 +102,7 @@ */ /obj/machinery/computer/apc_control/proc/check_apc(obj/machinery/power/apc/checked_apc) - return (is_on_station ? is_station_level(checked_apc.z) : checked_apc.z == z) && !checked_apc.malfhack && !checked_apc.aidisabled && !(checked_apc.obj_flags & EMAGGED) && !checked_apc.machine_stat && !istype(checked_apc.area, /area/station/ai_monitored) + return (is_on_station ? is_station_level(checked_apc.z) : checked_apc.z == z) && !checked_apc.malfhack && !checked_apc.aidisabled && !(checked_apc.obj_flags & EMAGGED) && !checked_apc.machine_stat && !istype(checked_apc.area, /area/station/ai) /obj/machinery/computer/apc_control/ui_interact(mob/user, datum/tgui/ui) . = ..() diff --git a/code/game/machinery/computer/atmos_computers/_air_sensor.dm b/code/game/machinery/computer/atmos_computers/_air_sensor.dm index ad870c9520b7fa..bb40f34fcf6c54 100644 --- a/code/game/machinery/computer/atmos_computers/_air_sensor.dm +++ b/code/game/machinery/computer/atmos_computers/_air_sensor.dm @@ -167,7 +167,7 @@ desc = "A device designed to detect gases and their concentration in an area." icon = 'icons/obj/wallmounts.dmi' icon_state = "gsensor0" - custom_materials = list(/datum/material/iron = SMALL_MATERIAL_AMOUNT, /datum/material/glass = SMALL_MATERIAL_AMOUNT) + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT + SMALL_MATERIAL_AMOUNT * 0.3, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.2) /obj/item/air_sensor/Initialize(mapload, inlet, outlet) . = ..() diff --git a/code/game/machinery/computer/buildandrepair.dm b/code/game/machinery/computer/buildandrepair.dm index 64a6495e3a16b2..d5f6b8210069d5 100644 --- a/code/game/machinery/computer/buildandrepair.dm +++ b/code/game/machinery/computer/buildandrepair.dm @@ -8,7 +8,7 @@ /obj/structure/frame/computer/Initialize(mapload) . = ..() - AddComponent(/datum/component/simple_rotation) + AddElement(/datum/element/simple_rotation) register_context() /obj/structure/frame/computer/atom_deconstruct(disassembled = TRUE) diff --git a/code/game/machinery/computer/camera.dm b/code/game/machinery/computer/camera.dm index 8725bda22f5ec8..f33cff0c7ea0d3 100644 --- a/code/game/machinery/computer/camera.dm +++ b/code/game/machinery/computer/camera.dm @@ -89,7 +89,7 @@ var/list/data = list() data["network"] = network data["mapRef"] = cam_screen.assigned_map - data["cameras"] = GLOB.cameranet.get_available_cameras_data(network) + data["cameras"] = SScameras.get_available_cameras_data(network) return data /obj/machinery/computer/security/ui_act(action, list/params, datum/tgui/ui, datum/ui_state/state) @@ -99,7 +99,7 @@ if(action == "switch_camera") active_camera?.on_stop_watching(src) - var/obj/machinery/camera/selected_camera = locate(params["camera"]) in GLOB.cameranet.cameras + var/obj/machinery/camera/selected_camera = locate(params["camera"]) in SScameras.cameras active_camera = selected_camera if(isnull(active_camera)) diff --git a/code/game/machinery/computer/camera_advanced.dm b/code/game/machinery/computer/camera_advanced.dm index bb034b1a32204d..42188e251a2631 100644 --- a/code/game/machinery/computer/camera_advanced.dm +++ b/code/game/machinery/computer/camera_advanced.dm @@ -55,9 +55,10 @@ actions += new move_down_action(src) if(add_usb_port) AddComponent(/datum/component/usb_port, \ - list( + typecacheof(list( /obj/item/circuit_component/advanced_camera, /obj/item/circuit_component/advanced_camera_intercept, + ), \ ), \ extra_registration_callback = PROC_REF(register_usb_port), \ extra_unregistration_callback = PROC_REF(unregister_usb_port) \ @@ -183,10 +184,10 @@ else camera_location = myturf else - if((!consider_zlock || (myturf.z in z_lock)) && GLOB.cameranet.checkTurfVis(myturf)) + if((!consider_zlock || (myturf.z in z_lock)) && SScameras.is_visible_by_cameras(myturf)) camera_location = myturf else - for(var/obj/machinery/camera/C as anything in GLOB.cameranet.cameras) + for(var/obj/machinery/camera/C as anything in SScameras.cameras) if(!C.can_use() || consider_zlock && !(C.z in z_lock)) continue var/list/network_overlap = networks & C.network @@ -229,7 +230,7 @@ var/mob/eye/camera/remote/remote_eye = owner.remote_control var/obj/machinery/computer/camera_advanced/origin = remote_eye.origin_ref.resolve() - var/list/cameras_by_tag = GLOB.cameranet.get_available_camera_by_tag_list(origin.networks, origin.z_lock) + var/list/cameras_by_tag = SScameras.get_available_camera_by_tag_list(origin.networks, origin.z_lock) playsound(origin, 'sound/machines/terminal/terminal_prompt.ogg', 25, FALSE) var/camera = tgui_input_list(usr, "Camera to view", "Cameras", cameras_by_tag) @@ -403,7 +404,7 @@ var/turf/eye_turf = get_turf(source) if(!eye_turf) return - if(!GLOB.cameranet.checkTurfVis(eye_turf)) + if(!SScameras.is_visible_by_cameras(eye_turf)) return eye_x.set_output(source.x) eye_y.set_output(source.y) @@ -490,7 +491,7 @@ var/turf/target_turf = get_turf(target) if(!target_turf) return - if(!GLOB.cameranet.checkTurfVis(target_turf)) + if(!SScameras.is_visible_by_cameras(target_turf)) return if(TIMER_COOLDOWN_RUNNING(parent.shell, COOLDOWN_CIRCUIT_TARGET_INTERCEPT)) return diff --git a/code/game/machinery/computer/communications.dm b/code/game/machinery/computer/communications.dm index ab687c53805a1d..b590505a239a11 100644 --- a/code/game/machinery/computer/communications.dm +++ b/code/game/machinery/computer/communications.dm @@ -282,7 +282,7 @@ bank_account.adjust_money(-shuttle.credit_cost) var/purchaser_name = (obj_flags & EMAGGED) ? scramble_message_replace_chars("AUTHENTICATION FAILURE: CVE-2018-17107", 60) : user.real_name - minor_announce("[purchaser_name] has purchased [shuttle.name] for [shuttle.credit_cost] credits.[shuttle.extra_desc ? " [shuttle.extra_desc]" : ""]" , "Shuttle Purchase") + minor_announce("[purchaser_name] has purchased [shuttle.name] for [shuttle.credit_cost] [MONEY_NAME].[shuttle.extra_desc ? " [shuttle.extra_desc]" : ""]" , "Shuttle Purchase") message_admins("[ADMIN_LOOKUPFLW(user)] purchased [shuttle.name].") log_shuttle("[key_name(user)] has purchased [shuttle.name].") @@ -292,7 +292,7 @@ // AIs cannot recall the shuttle if (!authenticated(user) || HAS_SILICON_ACCESS(user) || syndicate) return - SSshuttle.cancelEvac(user) + SSshuttle.cancel_evac(user) if ("requestNukeCodes") if (!authenticated_as_non_silicon_captain(user)) return @@ -575,7 +575,7 @@ if (SSshuttle.emergency.mode != SHUTTLE_IDLE && SSshuttle.emergency.mode != SHUTTLE_RECALL) data["shuttleCalled"] = TRUE - data["shuttleRecallable"] = SSshuttle.canRecall() || syndicate + data["shuttleRecallable"] = SSshuttle.can_recall(user) || syndicate if (SSshuttle.emergencyCallAmount) data["shuttleCalledPreviously"] = TRUE diff --git a/code/game/machinery/computer/crew.dm b/code/game/machinery/computer/crew.dm index 4c3a10bad72ca4..74265831b77b85 100644 --- a/code/game/machinery/computer/crew.dm +++ b/code/game/machinery/computer/crew.dm @@ -13,9 +13,7 @@ /obj/machinery/computer/crew/Initialize(mapload, obj/item/circuitboard/C) . = ..() - AddComponent(/datum/component/usb_port, list( - /obj/item/circuit_component/medical_console_data, - )) + AddComponent(/datum/component/usb_port, typecacheof(list(/obj/item/circuit_component/medical_console_data), only_root_path = TRUE)) /obj/item/circuit_component/medical_console_data display_name = "Crew Monitoring Data" @@ -277,16 +275,19 @@ GLOBAL_DATUM_INIT(crewmonitor, /datum/crewmonitor, new) continue // Current status - if (sensor_mode >= SENSOR_LIVING) + if (sensor_mode >= SENSOR_VITALS) entry["life_status"] = tracked_living_mob.stat + else if (sensor_mode == SENSOR_LIVING) + // binary sensors should only report alive or dead + entry["life_status"] = (tracked_living_mob.stat == DEAD) ? DEAD : CONSCIOUS // Damage if (sensor_mode >= SENSOR_VITALS) entry += list( - "oxydam" = round(tracked_living_mob.getOxyLoss(), 1), - "toxdam" = round(tracked_living_mob.getToxLoss(), 1), - "burndam" = round(tracked_living_mob.getFireLoss(), 1), - "brutedam" = round(tracked_living_mob.getBruteLoss(), 1), + "oxydam" = round(tracked_living_mob.get_oxy_loss(), 1), + "toxdam" = round(tracked_living_mob.get_tox_loss(), 1), + "burndam" = round(tracked_living_mob.get_fire_loss(), 1), + "brutedam" = round(tracked_living_mob.get_brute_loss(), 1), "health" = round(tracked_living_mob.health, 1), ) diff --git a/code/game/machinery/computer/launchpad_control.dm b/code/game/machinery/computer/launchpad_control.dm index 1502e5af50621f..dcbd6499ec7f9a 100644 --- a/code/game/machinery/computer/launchpad_control.dm +++ b/code/game/machinery/computer/launchpad_control.dm @@ -12,9 +12,7 @@ /obj/machinery/computer/launchpad/Initialize(mapload) launchpads = list() . = ..() - AddComponent(/datum/component/usb_port, list( - /obj/item/circuit_component/bluespace_launchpad/console, - )) + AddComponent(/datum/component/usb_port, typecacheof(list(/obj/item/circuit_component/bluespace_launchpad/console), only_root_path = TRUE)) /obj/item/circuit_component/bluespace_launchpad/console display_name = "Bluespace Launchpad Console" diff --git a/code/game/machinery/computer/operating_computer.dm b/code/game/machinery/computer/operating_computer.dm index 0c7498888a6d03..e31d028d95f1b6 100644 --- a/code/game/machinery/computer/operating_computer.dm +++ b/code/game/machinery/computer/operating_computer.dm @@ -9,12 +9,21 @@ circuit = /obj/item/circuitboard/computer/operating interaction_flags_machine = parent_type::interaction_flags_machine | INTERACT_MACHINE_REQUIRES_STANDING + light_color = LIGHT_COLOR_GREEN + + /// Linked operating table, if any var/obj/structure/table/optable/table + /// List if surgery typepaths available on this computer var/list/advanced_surgeries = list() + /// Techweb linked to this operating computer var/datum/techweb/linked_techweb - light_color = LIGHT_COLOR_BLUE - + /// Currently selected body zone for surgery + var/target_zone = BODY_ZONE_CHEST + /// Experiment handler component reference var/datum/component/experiment_handler/experiment_handler + /// Lazyassoclist of mob weakrefs to the zone they had selected when opening the UI + /// When closing the UI we try to revert their zone selector to that zone + var/list/datum/weakref/zone_on_open /obj/machinery/computer/operating/Initialize(mapload) . = ..() @@ -26,6 +35,14 @@ if(!CONFIG_GET(flag/no_default_techweb_link) && !linked_techweb) CONNECT_TO_RND_SERVER_ROUNDSTART(linked_techweb, src) + if(linked_techweb) + RegisterSignal(linked_techweb, COMSIG_TECHWEB_ADD_DESIGN, PROC_REF(on_techweb_research)) + RegisterSignal(linked_techweb, COMSIG_TECHWEB_REMOVE_DESIGN, PROC_REF(on_techweb_unresearch)) + RegisterSignal(linked_techweb, COMSIG_TECHWEB_EXPERIMENT_COMPLETED, PROC_REF(update_static_data_batched)) + + for(var/datum/design/surgery/design in linked_techweb.get_researched_design_datums()) + advanced_surgeries |= design.surgery + var/list/operating_signals = list( COMSIG_OPERATING_COMPUTER_AUTOPSY_COMPLETE = TYPE_PROC_REF(/datum/component/experiment_handler, try_run_autopsy_experiment), ) @@ -50,25 +67,30 @@ linked_techweb = tool.buffer return TRUE -/obj/machinery/computer/operating/attackby(obj/item/O, mob/user, list/modifiers, list/attack_modifiers) - if(istype(O, /obj/item/disk/surgery)) - user.visible_message(span_notice("[user] begins to load \the [O] in \the [src]..."), \ - span_notice("You begin to load a surgery protocol from \the [O]..."), \ - span_hear("You hear the chatter of a floppy drive.")) - var/obj/item/disk/surgery/D = O - if(do_after(user, 1 SECONDS, target = src)) - advanced_surgeries |= D.surgeries - return TRUE - return ..() +/obj/machinery/computer/operating/item_interaction(mob/living/user, obj/item/tool, list/modifiers) + if(istype(tool, /obj/item/disk/surgery)) + user.visible_message( + span_notice("[user] begins to load [tool] in [src]..."), + span_notice("You begin to load a surgery protocol from [tool]..."), + span_hear("You hear the chatter of a floppy drive."), + ) + var/obj/item/disk/surgery/disky = tool + if(!do_after(user, 1 SECONDS, src)) + return ITEM_INTERACT_BLOCKING + advanced_surgeries |= disky.surgeries + update_static_data_for_all_viewers() + playsound(src, 'sound/machines/compiler/compiler-stage2.ogg', 50, FALSE, SILENCED_SOUND_EXTRARANGE) + balloon_alert(user, "surgeries loaded") + return ITEM_INTERACT_SUCCESS -/obj/machinery/computer/operating/proc/sync_surgeries() - if(!linked_techweb) - return - for(var/i in linked_techweb.researched_designs) - var/datum/design/surgery/D = SSresearch.techweb_design_by_id(i) - if(!istype(D)) - continue - advanced_surgeries |= D.surgery + if((tool.item_flags & SURGICAL_TOOL) && !user.combat_mode) + ui_interact(user) + return ITEM_INTERACT_SUCCESS + + return NONE + +/obj/machinery/computer/operating/on_set_is_operational(old_value) + update_static_data_for_all_viewers() /obj/machinery/computer/operating/proc/find_table() for(var/direction in GLOB.alldirs) @@ -77,36 +99,74 @@ table.computer = src break -/obj/machinery/computer/operating/ui_state(mob/user) - return GLOB.standing_state +/obj/machinery/computer/operating/ui_status(mob/user, datum/ui_state/state) + . = ..() + if(isliving(user)) + . = min(., ui_check(user)) + +/// Checks for special ui state conditions +/obj/machinery/computer/operating/proc/ui_check(mob/living/user) + // lower states should be checked first + + // normally machines revert to "disabled" when non-operational, + // but here we outright close it so people can't gleam extra info + if(!is_operational) + return UI_CLOSE + // if you're knocked out, ie anesthetic... definitely a no-go + if(user.stat >= UNCONSCIOUS || HAS_TRAIT(user, TRAIT_KNOCKEDOUT)) + return UI_CLOSE + // the patient itself should be blocked from viewing the computer + if(user.body_position == LYING_DOWN) + return (user.loc == table?.loc) ? UI_CLOSE : UI_DISABLED + // we have a tight range check so people can't spy on surgeries from across the room + // likewise it'd be pretty lame if you could see what was going on while incapacitated + if(get_dist(user, src) > 2 || user.incapacitated) + return UI_DISABLED + + return UI_INTERACTIVE /obj/machinery/computer/operating/ui_interact(mob/user, datum/tgui/ui) . = ..() ui = SStgui.try_update_ui(user, src, ui) - if(!ui) - ui = new(user, src, "OperatingComputer", name) - ui.open() + if(ui) + return + + if(ishuman(user)) + // if you are the first human to open the ui, it changes to your active zone + if(!LAZYLEN(zone_on_open)) + target_zone = user.zone_selected + // then we record what you were looking at for when you close it + LAZYSET(zone_on_open, WEAKREF(user), user.zone_selected) + + ui = new(user, src, "OperatingComputer", name) + ui.open() + +/obj/machinery/computer/operating/ui_close(mob/user) + . = ..() + // reverts zone to whatever you had going into it, typically chest, so you don't have to mess around with it + var/zone_found = LAZYACCESS(zone_on_open, WEAKREF(user)) + if(!zone_found) + return + + var/atom/movable/screen/zone_sel/selector = user.hud_used?.zone_select + selector?.set_selected_zone(zone_found, user, FALSE) + LAZYREMOVE(zone_on_open, WEAKREF(user)) + if(!LAZYLEN(zone_on_open)) + zone_on_open = initial(zone_on_open) + +/obj/machinery/computer/operating/ui_assets(mob/user) + . = ..() + . += get_asset_datum(/datum/asset/simple/body_zones) /obj/machinery/computer/operating/ui_data(mob/user) var/list/data = list() - var/list/all_surgeries = list() - for(var/datum/surgery/surgeries as anything in advanced_surgeries) - var/list/surgery = list() - surgery["name"] = initial(surgeries.name) - surgery["desc"] = initial(surgeries.desc) - all_surgeries += list(surgery) - data["surgeries"] = all_surgeries - - //If there's no patient just hop to it yeah? - if(!table) - data["patient"] = null + + data["has_table"] = !!table + data["target_zone"] = target_zone + if(isnull(table?.patient)) return data - data["table"] = table data["patient"] = list() - data["procedures"] = list() - if(!table.patient) - return data var/mob/living/carbon/patient = table.patient switch(patient.stat) @@ -114,7 +174,7 @@ data["patient"]["stat"] = "Conscious" data["patient"]["statstate"] = "good" if(SOFT_CRIT) - data["patient"]["stat"] = "Conscious" + data["patient"]["stat"] = "Critical Condition" data["patient"]["statstate"] = "average" if(UNCONSCIOUS, HARD_CRIT) data["patient"]["stat"] = "Unconscious" @@ -126,34 +186,84 @@ data["patient"]["blood_type"] = patient.get_bloodtype()?.name || "UNKNOWN" data["patient"]["maxHealth"] = patient.maxHealth data["patient"]["minHealth"] = HEALTH_THRESHOLD_DEAD - data["patient"]["bruteLoss"] = patient.getBruteLoss() - data["patient"]["fireLoss"] = patient.getFireLoss() - data["patient"]["toxLoss"] = patient.getToxLoss() - data["patient"]["oxyLoss"] = patient.getOxyLoss() - if(patient.surgeries.len) - for(var/datum/surgery/procedure in patient.surgeries) - var/datum/surgery_step/surgery_step = GLOB.surgery_steps[procedure.steps[procedure.status]] - var/chems_needed = surgery_step.get_chem_list() - var/alternative_step - var/alt_chems_needed = "" - var/alt_chems_present = FALSE - if(surgery_step.repeatable) - var/datum/surgery_step/next_step = procedure.get_surgery_next_step() - if(next_step) - alternative_step = capitalize(next_step.name) - alt_chems_needed = next_step.get_chem_list() - alt_chems_present = next_step.chem_check(patient) - else - alternative_step = "Finish operation" - data["procedures"] += list(list( - "name" = capitalize("[patient.parse_zone_with_bodypart(procedure.location)] [procedure.name]"), - "next_step" = capitalize(surgery_step.name), - "chems_needed" = chems_needed, - "alternative_step" = alternative_step, - "alt_chems_needed" = alt_chems_needed, - "chems_present" = surgery_step.chem_check(patient), - "alt_chems_present" = alt_chems_present + data["patient"]["bruteLoss"] = patient.get_brute_loss() + data["patient"]["fireLoss"] = patient.get_fire_loss() + data["patient"]["toxLoss"] = patient.get_tox_loss() + data["patient"]["oxyLoss"] = patient.get_oxy_loss() + data["patient"]["blood_level"] = patient.blood_volume + data["patient"]["standard_blood_level"] = BLOOD_VOLUME_NORMAL + data["patient"]["surgery_state"] = patient.get_surgery_state_as_list(deprecise_zone(target_zone)) + return data + +/obj/machinery/computer/operating/ui_static_data(mob/user) + var/list/data = list() + + data["experiments"] = list() + data["techwebs"] = list() + data["surgeries"] = list() + if(!is_operational) + return data + + if(linked_techweb) + data["techwebs"] += list(list( + "web_id" = linked_techweb.id, + "web_org" = linked_techweb.organization, + "selected" = TRUE, + "ref" = REF(linked_techweb), + "all_servers" = linked_techweb.techweb_servers, + )) + + for(var/datum/experiment/experiment as anything in linked_techweb.available_experiments) + if(istype(experiment, /datum/experiment/autopsy)) + data["experiments"] += list(experiment.to_ui_data()) + + var/list/operations = GLOB.operations.get_instances_from(GLOB.operations.unlocked | advanced_surgeries) + var/any_recommended = FALSE + for(var/datum/surgery_operation/operation as anything in operations) + var/recommend = FALSE + if(table?.patient && operation.show_as_next_step(table.patient, target_zone)) + recommend = TRUE + any_recommended = TRUE + + data["surgeries"] += list(list( + "name" = operation.rnd_name || operation.name, + "desc" = operation.rnd_desc || operation.desc, + "tool_rec" = operation.get_recommended_tool() || "error", + "requirements" = operation.get_requirements(), + "show_as_next" = recommend, + "show_in_list" = TRUE, + "priority" = operation.operation_flags & OPERATION_PRIORITY_NEXT_STEP, + "mechanic" = operation.operation_flags & OPERATION_MECHANIC, + )) + + if(!any_recommended && table?.patient) + var/obj/item/part = table.patient.get_bodypart(deprecise_zone(target_zone)) + var/just_drapes = FALSE + if(table.patient.has_limbs) + if(isnull(part)) + data["surgeries"] += list(list( + "name" = "Prepare for [/datum/surgery_operation/prosthetic_replacement::name]", + "desc" = "Prepare the patient's chest for prosthetic limb attachment.", + "tool_rec" = "operate on chest", + "show_as_next" = TRUE, + "show_in_list" = FALSE, + )) + + else if(!HAS_TRAIT(part, TRAIT_READY_TO_OPERATE)) + just_drapes = TRUE + + else if(!HAS_TRAIT(table.patient, TRAIT_READY_TO_OPERATE)) + just_drapes = TRUE + + if(just_drapes) + data["surgeries"] += list(list( + "name" = "Prepare for surgery", + "desc" = "Begin surgery by applying surgical drapes to the patient.", + "tool_rec" = /obj/item/surgical_drapes::name, + "show_as_next" = TRUE, + "show_in_list" = FALSE, )) + return data /obj/machinery/computer/operating/ui_act(action, list/params, datum/tgui/ui, datum/ui_state/state) @@ -161,11 +271,39 @@ if(.) return switch(action) - if("sync") - sync_surgeries() if("open_experiments") experiment_handler.ui_interact(usr) + if("change_zone") + if(params["new_zone"] in (GLOB.all_body_zones + GLOB.all_precise_body_zones)) + target_zone = params["new_zone"] + var/atom/movable/screen/zone_sel/selector = ui.user.hud_used?.zone_select + selector?.set_selected_zone(params["new_zone"], ui.user, FALSE) + update_static_data_for_all_viewers() return TRUE +/obj/machinery/computer/operating/proc/on_techweb_research(datum/source, datum/design/surgery/design) + SIGNAL_HANDLER + + if(!istype(design)) + return + + advanced_surgeries |= design.surgery + update_static_data_batched() + +/obj/machinery/computer/operating/proc/on_techweb_unresearch(datum/source, datum/design/surgery/design) + SIGNAL_HANDLER + + if(!istype(design)) + return + + advanced_surgeries -= design.surgery + update_static_data_batched() + +/// Updates static data for all viewers after a miniscule delay (to batch multiple updates together) +/obj/machinery/computer/operating/proc/update_static_data_batched(...) + SIGNAL_HANDLER + + addtimer(CALLBACK(src, TYPE_PROC_REF(/datum, update_static_data_for_all_viewers)), 0.1 SECONDS, TIMER_UNIQUE) + #undef MENU_OPERATION #undef MENU_SURGERIES diff --git a/code/game/machinery/computer/orders/order_computer/mining_order.dm b/code/game/machinery/computer/orders/order_computer/mining_order.dm index 97e9e74b5ce17f..b7082507a8701f 100644 --- a/code/game/machinery/computer/orders/order_computer/mining_order.dm +++ b/code/game/machinery/computer/orders/order_computer/mining_order.dm @@ -1,4 +1,4 @@ -#define CREDIT_TYPE_MINING "mp" + /obj/machinery/computer/order_console/mining name = "mining equipment order console" @@ -15,7 +15,7 @@ and hopefully get delivered by them. 35% cheaper than express delivery."} express_tooltip = @{"Sends your purchases instantly."} - credit_type = CREDIT_TYPE_MINING + credit_type = MONEY_MINING_SYMBOL order_categories = list( CATEGORY_MINING, @@ -127,6 +127,5 @@ points += amount to_chat(user, span_notice("You transfer [amount] mining points from [attacking_id] to [src].")) -#undef CREDIT_TYPE_MINING #undef TO_POINT_CARD #undef TO_USER_ID diff --git a/code/game/machinery/computer/orders/order_computer/order_computer.dm b/code/game/machinery/computer/orders/order_computer/order_computer.dm index 02b26438d50964..d89dd05c43495d 100644 --- a/code/game/machinery/computer/orders/order_computer/order_computer.dm +++ b/code/game/machinery/computer/orders/order_computer/order_computer.dm @@ -1,6 +1,5 @@ ///List of all items that can be found in the different types of order consoles, to purchase. GLOBAL_LIST_EMPTY(order_console_products) -#define CREDIT_TYPE_CREDIT "credit" /obj/machinery/computer/order_console name = "Orders Console" @@ -25,7 +24,7 @@ GLOBAL_LIST_EMPTY(order_console_products) var/announcement_line ///The kind of cash does the console use. - var/credit_type = CREDIT_TYPE_CREDIT + var/credit_type = MONEY_SYMBOL ///Whether the console can only use express mode ONLY var/forced_express = FALSE ///Multiplied cost to use for cargo mode @@ -250,5 +249,3 @@ GLOBAL_LIST_EMPTY(order_console_products) announcement_lines_map["Error"] = "Unknown Error happened, while we tried to procceed an order, please report this to Nanotrasen." . = ..() - -#undef CREDIT_TYPE_CREDIT diff --git a/code/game/machinery/computer/orders/order_items/mining/order_mining.dm b/code/game/machinery/computer/orders/order_items/mining/order_mining.dm index 41c52d9b0a0e55..f9247d039ce729 100644 --- a/code/game/machinery/computer/orders/order_items/mining/order_mining.dm +++ b/code/game/machinery/computer/orders/order_items/mining/order_mining.dm @@ -38,10 +38,6 @@ purchase_path = /obj/item/clothing/gloves/fingerless/punch_mitts cost_per_order = 1000 -/datum/orderable_item/mining/crusher_retool_kit - purchase_path = /obj/item/crusher_trophy/retool_kit - cost_per_order = 150 - /datum/orderable_item/mining/resonator purchase_path = /obj/item/resonator cost_per_order = 710 diff --git a/code/game/machinery/computer/orders/order_items/mining/order_toys.dm b/code/game/machinery/computer/orders/order_items/mining/order_toys.dm index 65bbee24ead6e7..c253b8d51bacba 100644 --- a/code/game/machinery/computer/orders/order_items/mining/order_toys.dm +++ b/code/game/machinery/computer/orders/order_items/mining/order_toys.dm @@ -34,6 +34,6 @@ cost_per_order = 525 /datum/orderable_item/toys_drones/drone_sentience - purchase_path = /obj/item/slimepotion/slime/sentience/mining + purchase_path = /obj/item/slimepotion/sentience/mining cost_per_order = 850 diff --git a/code/game/machinery/computer/records/security.dm b/code/game/machinery/computer/records/security.dm index abf3f1b36643d8..4bfbf69629378b 100644 --- a/code/game/machinery/computer/records/security.dm +++ b/code/game/machinery/computer/records/security.dm @@ -35,10 +35,12 @@ /obj/machinery/computer/records/security/Initialize(mapload, obj/item/circuitboard/C) . = ..() - AddComponent(/datum/component/usb_port, list( - /obj/item/circuit_component/arrest_console_data, - /obj/item/circuit_component/arrest_console_arrest, - )) + AddComponent(/datum/component/usb_port, \ + typecacheof(list( + /obj/item/circuit_component/arrest_console_data, + /obj/item/circuit_component/arrest_console_arrest, + ), only_root_path = TRUE) \ + ) /obj/machinery/computer/records/security/emp_act(severity) . = ..() @@ -214,7 +216,7 @@ var/max = CONFIG_GET(number/maxfine) if(params["fine"] > max) - to_chat(usr, span_warning("The maximum fine is [max] credits.")) + to_chat(usr, span_warning("The maximum fine is [max] [MONEY_NAME].")) playsound(src, 'sound/machines/terminal/terminal_error.ogg', 75, TRUE) return FALSE @@ -236,7 +238,7 @@ var/datum/crime/citation/new_citation = new(name = input_name, details = input_details, author = usr, fine = params["fine"]) target.citations += new_citation - new_citation.alert_owner(user, src, target.name, "You have been issued a [params["fine"]]cr citation for [input_name]. Fines are payable at Security.") + new_citation.alert_owner(user, src, target.name, "You have been issued a [params["fine"]][MONEY_SYMBOL] citation for [input_name]. Fines are payable at Security.") investigate_log("New Citation: [input_name] Fine: [params["fine"]] | Added to [target.name] by [key_name(user)]", INVESTIGATE_RECORDS) SSblackbox.ReportCitation(REF(new_citation), user.ckey, user.real_name, target.name, input_name, input_details, params["fine"]) diff --git a/code/game/machinery/computer/teleporter.dm b/code/game/machinery/computer/teleporter.dm index 7e34dae7025727..b17589bb4baccc 100644 --- a/code/game/machinery/computer/teleporter.dm +++ b/code/game/machinery/computer/teleporter.dm @@ -24,9 +24,7 @@ id = "[rand(1000, 9999)]" link_power_station() - AddComponent(/datum/component/usb_port, list( - /obj/item/circuit_component/teleporter_control_console, - )) + AddComponent(/datum/component/usb_port, typecacheof(list(/obj/item/circuit_component/teleporter_control_console), only_root_path = TRUE)) /obj/machinery/computer/teleporter/Destroy() if (power_station) diff --git a/code/game/machinery/computer/telescreen.dm b/code/game/machinery/computer/telescreen.dm index 4e586fe81aed58..82e76a6bf14494 100644 --- a/code/game/machinery/computer/telescreen.dm +++ b/code/game/machinery/computer/telescreen.dm @@ -14,6 +14,11 @@ var/frame_type = /obj/item/wallframe/telescreen projectiles_pass_chance = 100 +/obj/machinery/computer/security/telescreen/Initialize(mapload) + . = ..() + if(mapload) + find_and_mount_on_atom() + /obj/item/wallframe/telescreen name = "telescreen frame" desc = "A wall-mountable telescreen frame. Apply to wall to use." @@ -70,8 +75,6 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/computer/security/telescreen/entertai /obj/machinery/computer/security/telescreen/entertainment/Initialize(mapload) . = ..() - if(mapload) - find_and_hang_on_wall() register_context() RegisterSignal(SSdcs, COMSIG_GLOB_NETWORK_BROADCAST_UPDATED, PROC_REF(on_network_broadcast_updated)) speakers = new(src) @@ -299,6 +302,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/computer/security/telescreen/ordnance /obj/item/wallframe/telescreen/engine name = "engine telescreen frame" result_path = /obj/machinery/computer/security/telescreen/engine + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 7) MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/computer/security/telescreen/engine, 32) @@ -311,6 +315,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/computer/security/telescreen/engine, /obj/item/wallframe/telescreen/turbine name = "turbine telescreen frame" result_path = /obj/machinery/computer/security/telescreen/turbine + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 7) MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/computer/security/telescreen/turbine, 32) @@ -347,6 +352,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/computer/security/telescreen/prison, /obj/item/wallframe/telescreen/auxbase name = "auxiliary base telescreen frame" result_path = /obj/machinery/computer/security/telescreen/auxbase + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 7) MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/computer/security/telescreen/auxbase, 32) @@ -552,3 +558,16 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/computer/security/telescreen/deep_sto say("The [tv_show_name] show has [is_show_active ? "begun" : "ended"]") var/announcement = is_show_active ? pick(tv_starters) : pick(tv_enders) set_network_broadcast_status(tv_network_id, is_show_active, announcement) + +/obj/machinery/computer/security/telescreen/monastery + name = "monastery monitor" + desc = "A telescreen that connects to the monastery's camera network." + network = list(CAMERANET_NETWORK_MONASTERY) + frame_type = /obj/item/wallframe/telescreen/monastery + +MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/computer/security/telescreen/monastery, 32) + +/obj/item/wallframe/telescreen/monastery + name = "monastery telescreen frame" + result_path = /obj/machinery/computer/security/telescreen/monastery + diff --git a/code/game/machinery/computer/warrant.dm b/code/game/machinery/computer/warrant.dm index 7e66c748917b3d..dd85df26060a52 100644 --- a/code/game/machinery/computer/warrant.dm +++ b/code/game/machinery/computer/warrant.dm @@ -105,13 +105,13 @@ return FALSE var/amount = params["amount"] - if(!amount || !isnum(amount) || amount > warrant.fine || !account.adjust_money(-amount, "Paid fine for [target.name]")) + if(!amount || !isnum(amount) || amount <= 0 || amount > warrant.fine || !account.adjust_money(-amount, "Paid fine for [target.name]")) to_chat(user, span_warning("ACCESS DENIED: Invalid amount.")) playsound(src, 'sound/machines/terminal/terminal_error.ogg', 100, TRUE) return FALSE - account.bank_card_talk("You have paid [amount]cr towards [target.name]'s fine of [warrant.fine]cr.") - log_econ("[amount]cr was transferred from [user]'s transaction to [target.name]'s [warrant.fine]cr fine") + account.bank_card_talk("You have paid [amount][MONEY_SYMBOL] towards [target.name]'s fine of [warrant.fine][MONEY_SYMBOL].") + log_econ("[amount][MONEY_SYMBOL] was transferred from [user]'s transaction to [target.name]'s [warrant.fine][MONEY_SYMBOL] fine") SSblackbox.record_feedback("amount", "credits_transferred", amount) warrant.pay_fine(amount) @@ -124,7 +124,7 @@ "A friendly face", "A helpful stranger", ) - warrant.alert_owner(user, src, target.name, "[pick(titles)] has paid [amount]cr towards your fine.") + warrant.alert_owner(user, src, target.name, "[pick(titles)] has paid [amount][MONEY_SYMBOL] towards your fine.") var/datum/bank_account/sec_account = SSeconomy.get_dep_account(ACCOUNT_SEC) sec_account.adjust_money(amount) @@ -166,7 +166,7 @@ bounty_text += "Issued to:
[usr]
" bounty_text += "Issued on:
[warrant.time]
" bounty_text += "Comments:
[!target.security_note ? "None." : target.security_note]

" - bounty_text += "
FINE: [warrant.fine] credits
" + bounty_text += "
FINE: [warrant.fine] [MONEY_NAME]
" printing = TRUE balloon_alert(user, "printing") @@ -174,7 +174,7 @@ var/obj/item/paper/bounty = new(null) bounty.name = "Bounty for [target.name]" - bounty.desc = "A [warrant.fine]cr bounty for [target.name]." + bounty.desc = "A [warrant.fine][MONEY_SYMBOL] bounty for [target.name]." bounty.add_raw_text(bounty_text) bounty.update_icon() diff --git a/code/game/machinery/constructable_frame.dm b/code/game/machinery/constructable_frame.dm index 880313d09fb119..5012c0eb1aa345 100644 --- a/code/game/machinery/constructable_frame.dm +++ b/code/game/machinery/constructable_frame.dm @@ -6,6 +6,7 @@ base_icon_state = "box_" density = TRUE max_integrity = 250 + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 5) /// What board do we accept var/board_type = /obj/item/circuitboard /// Reference to the circuit inside the frame diff --git a/code/game/machinery/dance_machine.dm b/code/game/machinery/dance_machine.dm index 29b2ea7cf980e5..dadc83331b40ae 100644 --- a/code/game/machinery/dance_machine.dm +++ b/code/game/machinery/dance_machine.dm @@ -337,7 +337,7 @@ glow.even_cycle = !glow.even_cycle if(prob(2)) // Unique effects for the dance floor that show up randomly to mix things up INVOKE_ASYNC(src, PROC_REF(hierofunk)) - sleep(music_player.selection.song_beat) + sleep(music_player.selection.song_beat_deciseconds || 1 SECONDS) if(QDELETED(src)) return diff --git a/code/game/machinery/defibrillator_mount.dm b/code/game/machinery/defibrillator_mount.dm index c2daea235455c1..d5ca3b4f766161 100644 --- a/code/game/machinery/defibrillator_mount.dm +++ b/code/game/machinery/defibrillator_mount.dm @@ -21,11 +21,14 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/defibrillator_mount, 28) +/obj/machinery/defibrillator_mount/Initialize(mapload) + . = ..() + if(mapload) + find_and_mount_on_atom() + /obj/machinery/defibrillator_mount/loaded/Initialize(mapload) //loaded subtype for mapping use . = ..() defib = new/obj/item/defibrillator/loaded(src) - if(mapload) - find_and_hang_on_wall() /obj/machinery/defibrillator_mount/Destroy() QDEL_NULL(defib) @@ -228,11 +231,15 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/defibrillator_mount, 28) icon_state = "mobile" anchored = FALSE density = TRUE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 5.15, /datum/material/silver = SHEET_MATERIAL_AMOUNT, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 1.5) /obj/machinery/defibrillator_mount/mobile/Initialize(mapload) . = ..() AddElement(/datum/element/noisy_movement) +/obj/machinery/defibrillator_mount/mobile/find_and_mount_on_atom(mark_for_late_init, late_init) + return //its mobile + /obj/machinery/defibrillator_mount/mobile/wrench_act_secondary(mob/living/user, obj/item/tool) if(user.combat_mode) return ..() diff --git a/code/game/machinery/deployable.dm b/code/game/machinery/deployable.dm index e88fc78f408349..2fea89c4605018 100644 --- a/code/game/machinery/deployable.dm +++ b/code/game/machinery/deployable.dm @@ -70,6 +70,7 @@ icon_state = "woodenbarricade" resistance_flags = FLAMMABLE bar_material = WOOD + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 5) /// When destroyed or deconstructed, how many planks of wood does our barricade drop? Also determines how many it takes to repair the barricade and by how much. var/drop_amount = 3 diff --git a/code/game/machinery/digital_clock.dm b/code/game/machinery/digital_clock.dm index dc6384b843f3e4..57c58083aae7c7 100644 --- a/code/game/machinery/digital_clock.dm +++ b/code/game/machinery/digital_clock.dm @@ -81,7 +81,7 @@ /obj/machinery/digital_clock/Initialize(mapload) . = ..() if(mapload) - find_and_hang_on_wall() + find_and_mount_on_atom() AddElement(/datum/element/beauty, 200) /obj/machinery/digital_clock/process(seconds_per_tick) diff --git a/code/game/machinery/dna_infuser/organ_sets/carp_organs.dm b/code/game/machinery/dna_infuser/organ_sets/carp_organs.dm index 88eea823ec662a..2e3e8ef19e7a5c 100644 --- a/code/game/machinery/dna_infuser/organ_sets/carp_organs.dm +++ b/code/game/machinery/dna_infuser/organ_sets/carp_organs.dm @@ -89,16 +89,16 @@ head.unarmed_attack_effect = initial(head.unarmed_attack_effect) head.unarmed_sharpness = initial(head.unarmed_sharpness) -// DOPPLER REMOVAL START: carp infusion changes (don't cough up random carp teeth) -/*/obj/item/organ/tongue/carp/on_life(seconds_per_tick, times_fired) +/* DOPPLER REMOVAL START: carp infusion changes (don't cough up random carp teeth) +/obj/item/organ/tongue/carp/on_life(seconds_per_tick) . = ..() if(owner.stat != CONSCIOUS || !prob(0.1)) return owner.emote("cough") var/turf/tooth_fairy = get_turf(owner) if(tooth_fairy) - new /obj/item/knife/carp(tooth_fairy)*/ -// DOPPLER REMOVAL END + new /obj/item/knife/carp(tooth_fairy) +*/ // DOPPLER REMOVAL END /obj/item/organ/tongue/carp/get_possible_languages() . = ..() @@ -121,6 +121,7 @@ greyscale_config = /datum/greyscale_config/mutant_organ greyscale_colors = CARP_COLORS can_smoothen_out = FALSE + shade_color = "blue" ///Timer counting down. When finished, the owner gets a bad moodlet. var/cooldown_timer diff --git a/code/game/machinery/dna_infuser/organ_sets/fish_organs.dm b/code/game/machinery/dna_infuser/organ_sets/fish_organs.dm index 304dd5cc1f8595..f3df9f87fcbf9b 100644 --- a/code/game/machinery/dna_infuser/organ_sets/fish_organs.dm +++ b/code/game/machinery/dna_infuser/organ_sets/fish_organs.dm @@ -134,7 +134,7 @@ if(!bonus_active || !HAS_TRAIT(owner, TRAIT_IS_WET)) return owner.adjust_bodytemperature(-2 * seconds_between_ticks, min_temp = owner.get_body_temp_normal()) - owner.adjustStaminaLoss(-1.5 * seconds_between_ticks) + owner.adjust_stamina_loss(-1.5 * seconds_between_ticks) /datum/status_effect/organ_set_bonus/fish/proc/update_wetness(datum/source) SIGNAL_HANDLER @@ -374,7 +374,7 @@ breathe_gas_volume(breath, /datum/gas/water_vapor, /datum/gas/carbon_dioxide) // Heal mob if not in crit. if(breather.health >= breather.crit_threshold && breather.oxyloss) - breather.adjustOxyLoss(-5) + breather.adjust_oxy_loss(-5) /// Called when there isn't enough water to breath /obj/item/organ/lungs/proc/on_low_water(mob/living/carbon/breather, datum/gas_mixture/breath, water_pp) // DOPPLER EDIT, old code: /obj/item/organ/lungs/fish/proc/on_low_water(mob/living/carbon/breather, datum/gas_mixture/breath, water_pp) @@ -467,6 +467,37 @@ icon = 'icons/obj/medical/organs/infuser_organs.dmi' icon_state = "inky_tongue" actions_types = list(/datum/action/cooldown/ink_spit) + /** + * This is probably the most complex tts filter that won't require external files to be added to the tts image. + * It works as follows: + * 1. Increase the pitch of the input audio. Pitch increase is lower for higher speaker pitch and vice-versa. + * 2. Apply a mid-heavy EQ curve. + * 3. Using an oscillating target frequency: + * - Apply a low pass filter with its cutoff at the target frequency + * - Boost frequencies very close to the target frequency + */ + voice_filter = "\ + rubberband=pitch='\ + ifnot(%BLIPS%,\ + 2-(%PITCH%+if(%FEMALE%,4))/16\ + ,1)'\ + :formant=preserved,\ + highpass=f=1000:t=s:w=24,\ + equalizer=f=1200:g=15,\ + equalizer=f=4350:g=-15,\ + highshelf=f=870:g=1,\ + afftfilt=\ + real='\ + st(0,(b+0.5)/nb*sr);\ + st(1,3000+1500*sin(9.3*2*PI*pts));\ + st(2,ld(0)/ld(1));\ + re*(1-ld(2)^2+2*gauss(log(ld(2)+1)))'\ + :imag='\ + st(0,(b+0.5)/nb*sr);\ + st(1,3000+1500*sin(9.3*2*PI*pts));\ + st(2,ld(0)/ld(1));\ + im*(1-ld(2)^2+2*gauss(log(ld(2)+1)))'\ + :win_size=1024" // Seafood instead of meat, because it's a fish organ foodtype_flags = RAW | SEAFOOD | GORE @@ -497,7 +528,6 @@ organ_traits = list(TRAIT_TETRODOTOXIN_HEALING, TRAIT_ALCOHOL_TOLERANCE) //drink like a fish :^) liver_resistance = parent_type::liver_resistance * 1.5 food_reagents = list(/datum/reagent/consumable/nutriment/organ_tissue = 5, /datum/reagent/iron = 5, /datum/reagent/toxin/tetrodotoxin = 5) - grind_results = list(/datum/reagent/consumable/nutriment/peptides = 5, /datum/reagent/toxin/tetrodotoxin = 5) // Seafood instead of meat, because it's a fish organ foodtype_flags = RAW | SEAFOOD | GORE @@ -508,6 +538,9 @@ . = ..() AddElement(/datum/element/organ_set_bonus, /datum/status_effect/organ_set_bonus/fish) +/obj/item/organ/liver/fish/grind_results() + return list(/datum/reagent/consumable/nutriment/peptides = 5, /datum/reagent/toxin/tetrodotoxin = 5) + #undef FISH_ORGAN_COLOR #undef FISH_SCLERA_COLOR #undef FISH_PUPIL_COLOR diff --git a/code/game/machinery/dna_infuser/organ_sets/fly_organs.dm b/code/game/machinery/dna_infuser/organ_sets/fly_organs.dm index 1d9c8bdc743e2b..1af4ad7f2ee305 100644 --- a/code/game/machinery/dna_infuser/organ_sets/fly_organs.dm +++ b/code/game/machinery/dna_infuser/organ_sets/fly_organs.dm @@ -20,7 +20,7 @@ // so we need to delay species change until we're fully inserted RegisterSignal(inserted_organ, COMSIG_ORGAN_BODYPART_INSERTED, PROC_REF(flyify)) -/datum/status_effect/organ_set_bonus/fly/proc/flyify(obj/item/organ/source, obj/item/bodypart/limb, movement_flags) +/datum/status_effect/organ_set_bonus/fly/proc/flyify(obj/item/organ/source, obj/item/bodypart/limb) SIGNAL_HANDLER var/mob/living/carbon/human/new_fly = owner // just in case? diff --git a/code/game/machinery/dna_infuser/organ_sets/goliath_organs.dm b/code/game/machinery/dna_infuser/organ_sets/goliath_organs.dm index 900f566f0576dd..6f2e35b3219812 100644 --- a/code/game/machinery/dna_infuser/organ_sets/goliath_organs.dm +++ b/code/game/machinery/dna_infuser/organ_sets/goliath_organs.dm @@ -63,6 +63,7 @@ greyscale_config = /datum/greyscale_config/mutant_organ greyscale_colors = GOLIATH_COLORS can_smoothen_out = FALSE + shade_color = "garnet" var/obj/item/goliath_infuser_hammer/hammer diff --git a/code/game/machinery/dna_infuser/organ_sets/rat_organs.dm b/code/game/machinery/dna_infuser/organ_sets/rat_organs.dm index 7d17f1bb477e52..3b1e1b9f3bb9b7 100644 --- a/code/game/machinery/dna_infuser/organ_sets/rat_organs.dm +++ b/code/game/machinery/dna_infuser/organ_sets/rat_organs.dm @@ -144,7 +144,7 @@ offerer.say("For you, it's on the mouse.") taker.add_mood_event("it_was_on_the_mouse", /datum/mood_event/it_was_on_the_mouse) -/obj/item/organ/tongue/rat/on_life(seconds_per_tick, times_fired) +/obj/item/organ/tongue/rat/on_life(seconds_per_tick) . = ..() if(prob(5)) owner.emote("squeaks") diff --git a/code/game/machinery/dna_scanner.dm b/code/game/machinery/dna_scanner.dm index ab14767479fede..1ad319486c8e52 100644 --- a/code/game/machinery/dna_scanner.dm +++ b/code/game/machinery/dna_scanner.dm @@ -159,6 +159,41 @@ SIGNAL_HANDLER set_linked_console(null) +// Disk skins +/datum/atom_skin/dna_disk + abstract_type = /datum/atom_skin/dna_disk + +/datum/atom_skin/dna_disk/red + preview_name = "Red" + new_icon_state = "datadisk0" + +/datum/atom_skin/dna_disk/dark_blue + preview_name = "Dark Blue" + new_icon_state = "datadisk1" + +/datum/atom_skin/dna_disk/yellow + preview_name = "Yellow" + new_icon_state = "datadisk2" + +/datum/atom_skin/dna_disk/black + preview_name = "Black" + new_icon_state = "datadisk3" + +/datum/atom_skin/dna_disk/green + preview_name = "Green" + new_icon_state = "datadisk4" + +/datum/atom_skin/dna_disk/purple + preview_name = "Purple" + new_icon_state = "datadisk5" + +/datum/atom_skin/dna_disk/grey + preview_name = "Grey" + new_icon_state = "datadisk6" + +/datum/atom_skin/dna_disk/light_blue + preview_name = "Light Blue" + new_icon_state = "datadisk7" //Just for transferring between genetics machines. /obj/item/disk/data @@ -168,20 +203,10 @@ var/list/mutations = list() var/max_mutations = 6 var/read_only = FALSE //Well,it's still a floppy disk - obj_flags = parent_type::obj_flags | INFINITE_RESKIN - unique_reskin = list( - "Red" = "datadisk0", - "Dark Blue" = "datadisk1", - "Yellow" = "datadisk2", - "Black" = "datadisk3", - "Green" = "datadisk4", - "Purple" = "datadisk5", - "Grey" = "datadisk6", - "Light Blue" = "datadisk7", - ) /obj/item/disk/data/Initialize(mapload) . = ..() + AddComponent(/datum/component/reskinable_item, /datum/atom_skin/dna_disk, infinite = TRUE) icon_state = "datadisk[rand(0,7)]" add_overlay("datadisk_gene") if(length(genetic_makeup_buffer)) diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 1dd119ffb3225c..d3fc1574cc67ca 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -179,8 +179,8 @@ damage_deflection = AIRLOCK_DAMAGE_DEFLECTION_R prepare_huds() - for(var/datum/atom_hud/data/diagnostic/diag_hud in GLOB.huds) - diag_hud.add_atom_to_hud(src) + var/datum/atom_hud/data/diagnostic/diag_hud = GLOB.huds[DATA_HUD_DIAGNOSTIC] + diag_hud.add_atom_to_hud(src) diag_hud_set_electrified() @@ -314,8 +314,8 @@ close_others.Cut() QDEL_NULL(note) QDEL_NULL(seal) - for(var/datum/atom_hud/data/diagnostic/diag_hud in GLOB.huds) - diag_hud.remove_atom_from_hud(src) + var/datum/atom_hud/data/diagnostic/diag_hud = GLOB.huds[DATA_HUD_DIAGNOSTIC] + diag_hud.remove_atom_from_hud(src) return ..() /obj/machinery/door/airlock/Exited(atom/movable/gone, direction) @@ -509,7 +509,10 @@ /obj/machinery/door/airlock/proc/is_secure() return (security_level > 0) -/// Checks if this door would be affected by any currently active RETA grants +/** + * Checks if this door would be affected by any currently active RETA grants + * If a grant is active, return the authorized department + */ /obj/machinery/door/airlock/proc/has_active_reta_access() if(!CONFIG_GET(flag/reta_enabled)) return FALSE @@ -527,11 +530,11 @@ for(var/required_access in req_access) if(required_access in origin_dept_access) - return TRUE + return LOWER_TEXT(target_dept) for(var/required_access in req_one_access) if(required_access in origin_dept_access) - return TRUE + return LOWER_TEXT(target_dept) return FALSE @@ -742,6 +745,10 @@ else . += "It looks very robust." + var/active_reta = has_active_reta_access() + if(active_reta) + . += span_nicegreen("Emergency Temporary Access is enabled for [EXAMINE_HINT(active_reta)] ID cards.") + if(issilicon(user) && !(machine_stat & BROKEN)) . += span_notice("Shift-click [src] to [ density ? "open" : "close"] it.") . += span_notice("Ctrl-click [src] to [ locked ? "raise" : "drop"] its bolts.") @@ -934,6 +941,9 @@ update_appearance() return ITEM_INTERACT_SUCCESS +/obj/machinery/door/airlock/screwdriver_act_secondary(mob/living/user, obj/item/tool) + return screwdriver_act(user, tool) + /obj/machinery/door/airlock/wirecutter_act(mob/living/user, obj/item/tool) if(panel_open && security_level == AIRLOCK_SECURITY_PLASTEEL) . = ITEM_INTERACT_SUCCESS // everything after this shouldn't result in attackby @@ -1349,10 +1359,9 @@ set_airlock_state(AIRLOCK_OPENING, animated = TRUE, force_type = forced) var/transparent_delay = animation_segment_delay(AIRLOCK_OPENING_TRANSPARENT) sleep(transparent_delay) - set_opacity(0) + set_opacity(FALSE) if(multi_tile) filler.set_opacity(FALSE) - update_freelook_sight() var/passable_delay = animation_segment_delay(AIRLOCK_OPENING_PASSABLE) - transparent_delay sleep(passable_delay) set_density(FALSE) @@ -1439,7 +1448,6 @@ set_opacity(TRUE) if(multi_tile) filler.set_opacity(TRUE) - update_freelook_sight() var/close_delay = animation_segment_delay(AIRLOCK_CLOSING_FINISHED) - unpassable_delay - opaque_delay sleep(close_delay) set_airlock_state(AIRLOCK_CLOSED, animated = FALSE) @@ -1523,10 +1531,10 @@ /obj/machinery/door/airlock/proc/finish_emag_act() if(QDELETED(src)) return FALSE - set_machine_stat(machine_stat & ~MAINT) operating = FALSE if(!open()) set_airlock_state(AIRLOCK_CLOSED) + set_machine_stat(machine_stat & ~MAINT) obj_flags |= EMAGGED feedback = FALSE locked = TRUE @@ -1677,7 +1685,7 @@ return FALSE /obj/machinery/door/airlock/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - switch(rcd_data["[RCD_DESIGN_MODE]"]) + switch(rcd_data[RCD_DESIGN_MODE]) if(RCD_DECONSTRUCT) qdel(src) return TRUE @@ -2433,6 +2441,7 @@ aiControlDisabled = AI_WIRE_DISABLED req_access = list(ACCESS_BLOODCULT) damage_deflection = 10 + custom_materials = list(/datum/material/runedmetal = SHEET_MATERIAL_AMOUNT) var/openingoverlaytype = /obj/effect/temp_visual/cult/door var/friendly = FALSE var/stealthy = FALSE diff --git a/code/game/machinery/doors/airlock_electronics.dm b/code/game/machinery/doors/airlock_electronics.dm index 2973579153a84c..5e25742d4dc5c6 100644 --- a/code/game/machinery/doors/airlock_electronics.dm +++ b/code/game/machinery/doors/airlock_electronics.dm @@ -6,7 +6,7 @@ /// If the airlock should require ALL or only ONE of the listed accesses var/one_access = 0 /// Checks to see if this airlock has an unrestricted helper (will set to TRUE if present). - var/unres_sensor = FALSE + var/unres_latch = FALSE /// Unrestricted sides, or sides of the airlock that will open regardless of access var/unres_sides = NONE ///what name are we passing to the finished airlock diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm index 9620550f621633..a211e8f93ed8a5 100644 --- a/code/game/machinery/doors/door.dm +++ b/code/game/machinery/doors/door.dm @@ -1,4 +1,8 @@ -#define DOOR_CLOSE_WAIT 60 ///Default wait until doors autoclose +///Default wait until doors autoclose +#define DOOR_CLOSE_WAIT 60 +/// Trait for checking if a mob is currently activating an unrestricted airlock open and thus has pressure pushes blocked +#define TRAIT_UNRESTRICTED_AIRLOCK_OPENING "trait_unrestricted_airlock_opening" + /obj/machinery/door name = "door" desc = "It opens and closes." @@ -56,10 +60,7 @@ var/real_explosion_block ///if TRUE, this door will always open on red alert var/red_alert_access = FALSE - /// Checks to see if this airlock has an unrestricted "sensor" within (will set to TRUE if present). - var/unres_sensor = FALSE - /// Unrestricted sides. A bitflag for which direction (if any) can open the door with no access - var/unres_sides = NONE + /// Whether or not the door can crush mobs. var/can_crush = TRUE /// Whether or not the door can be opened by hand (used for blast doors and shutters) @@ -73,6 +74,19 @@ /// What specific lift ID do we link with? var/transport_linked_id + /// Checks to see if this airlock has an unrestricted "latch" within (will set to TRUE if present). + var/unres_latch = FALSE + /// Unrestricted sides. A bitflag for which direction (if any) can open the door with no access + var/unres_sides = NONE + /// Delayed open for unrestricted users. If there is an unrestricted side, we want to know if the door opening should be delayed for a bit to add tension and what-not + var/delayed_unres_open = FALSE + /// Lower range for random time to open for unrestricted users + var/delayed_unres_time_lower = 2 SECONDS + /// Upper range for random time to open for unrestricted users + var/delayed_unres_time_upper = 3 SECONDS + /// Cooldown tracker to prevent message spam when resisting pressure while opening via unrestricted latch + COOLDOWN_DECLARE(pressure_push_cooldown) + /datum/armor/machinery_door melee = 30 bullet = 30 @@ -98,7 +112,6 @@ set_bounds() set_filler() update_overlays() - update_freelook_sight() air_update_turf(TRUE, TRUE) register_context() if(elevator_mode) @@ -163,7 +176,6 @@ layer = initial(layer) /obj/machinery/door/Destroy() - update_freelook_sight() if(elevator_mode) GLOB.elevator_doors -= src if(spark_system) @@ -336,16 +348,80 @@ if(density) run_animation(DOOR_DENY_ANIMATION) -/obj/machinery/door/allowed(mob/M) +/obj/machinery/door/allowed(mob/accessor) if(emergency) return TRUE - if(unrestricted_side(M)) + + . = ..() // let's see if this user has any funny way to access this before we try unrestricted stuff as that will have potential delays + + if(. == TRUE) return TRUE - return ..() -/obj/machinery/door/proc/unrestricted_side(mob/opener) //Allows for specific side of airlocks to be unrestrected (IE, can exit maint freely, but need access to enter) + if(unrestricted_side(accessor)) + if(!delayed_unres_open) + return TRUE + + return attempt_delayed_unres_open(accessor) + + return FALSE + + + +/// Allows for specific side of airlocks to be unrestricted (IE, can exit maint freely, but need access to enter) +/obj/machinery/door/proc/unrestricted_side(mob/opener) return get_dir(src, opener) & unres_sides +/// Initiates a do_after to open the door after a delay for unrestricted openers +/// Returns TRUE if we successfully finished the do_after, FALSE otherwise +/obj/machinery/door/proc/attempt_delayed_unres_open(mob/opener) + if(opener.do_after_count() > 0) // not allowed to do this if you're doing something else. just wait lad. + return FALSE + + var/do_after_time = rand(delayed_unres_time_lower, delayed_unres_time_upper) + ADD_TRAIT(opener, TRAIT_UNRESTRICTED_AIRLOCK_OPENING, REF(src)) + RegisterSignal(opener, COMSIG_ATOM_PRE_PRESSURE_PUSH, PROC_REF(stop_pressure_during_unres_open)) + addtimer(CALLBACK(src, PROC_REF(deregister_pressure_push_signal), opener), do_after_time + 0.5 SECONDS, TIMER_UNIQUE|TIMER_OVERRIDE) // extra half-second to be safe, else this is just a guarantee we remove the signal. + + SSblackbox.record_feedback("tally", "unrestricted_airlock_usage", 1, "open attempt ([type])") // statcollecting on how often people try to use this. + balloon_alert(opener, "activating unrestricted latch...") + + if(istype(get_area(src), /area/station/maintenance)) + playsound(get_turf(src), 'sound/machines/airlock/airlock_latch_hiss.ogg', 45, vary = TRUE, falloff_exponent = (SOUND_FALLOFF_EXPONENT * 2)) // sound travels further in maintenance muahaha + else + playsound(get_turf(src), 'sound/machines/airlock/airlock_latch_hiss.ogg', 30, vary = TRUE, extrarange = MEDIUM_RANGE_SOUND_EXTRARANGE, falloff_exponent = (SOUND_FALLOFF_EXPONENT * 1.5)) + + if(do_after(opener, do_after_time, target = src)) + SSblackbox.record_feedback("tally", "unrestricted_airlock_usage", 1, "open success ([type])") // no need to tally failures as we can assume it as long as we have this + the total + return TRUE + + deregister_pressure_push_signal(opener) // if you fail the do_after early then you lose your pressure immunity, womp. + return FALSE + +/// While activating the door, we are able to block pressure pushes since we're "grasping the override handle" or something similar to that. +/// This basically exists to prevent the door's delay from being SUPREMELY annoying when you're trying to escape pressure-based damage during the unrestricted latch do_after. +/obj/machinery/door/proc/stop_pressure_during_unres_open(mob/source) + SIGNAL_HANDLER + if(QDELETED(source)) + return + + if(!COOLDOWN_FINISHED(src, pressure_push_cooldown)) // avoid spam + return COMSIG_ATOM_BLOCKS_PRESSURE + + // have both since this is a newer mechanic and i want it to be a bit more obvious why for the time being + balloon_alert(source, "resisting pressure!") + to_chat(source, span_warning("You're holding onto the unrestricted latch, preventing pressure from pushing you away!")) + COOLDOWN_START(src, pressure_push_cooldown, 5 SECONDS) + return COMSIG_ATOM_BLOCKS_PRESSURE + +/// Exists to ensure that we always deregister the pressure push blocking signal. Can be called multiple times safely as we check the trait. +/obj/machinery/door/proc/deregister_pressure_push_signal(mob/opener) + if(!HAS_TRAIT_FROM(opener, TRAIT_UNRESTRICTED_AIRLOCK_OPENING, REF(src))) + return + + UnregisterSignal(opener, COMSIG_ATOM_PRE_PRESSURE_PUSH) + REMOVE_TRAIT(opener, TRAIT_UNRESTRICTED_AIRLOCK_OPENING, REF(src)) + + /obj/machinery/door/proc/try_to_weld(obj/item/weldingtool/W, mob/user) return @@ -376,6 +452,9 @@ try_to_crowbar(tool, user, forced_open) return ITEM_INTERACT_SUCCESS +/obj/machinery/door/try_to_crowbar_secondary(obj/item/acting_object, mob/user) + try_to_crowbar(null, user, FALSE) + /obj/machinery/door/attackby(obj/item/weapon, mob/living/user, list/modifiers, list/attack_modifiers) if(istype(weapon, /obj/item/access_key)) var/obj/item/access_key/key = weapon @@ -508,7 +587,7 @@ operating = TRUE use_energy(active_power_usage) run_animation(DOOR_OPENING_ANIMATION) - set_opacity(0) + set_opacity(FALSE) var/passable_delay = animation_segment_delay(DOOR_OPENING_PASSABLE) SLEEP_NOT_DEL(passable_delay) set_density(FALSE) @@ -517,10 +596,9 @@ SLEEP_NOT_DEL(open_delay) layer = initial(layer) update_appearance() - set_opacity(0) + set_opacity(FALSE) operating = FALSE air_update_turf(TRUE, FALSE) - update_freelook_sight() if(autoclose) autoclose_in(DOOR_CLOSE_WAIT) return TRUE @@ -556,10 +634,9 @@ SLEEP_NOT_DEL(close_delay) update_appearance() if(visible && !glass) - set_opacity(1) + set_opacity(TRUE) operating = FALSE air_update_turf(TRUE, TRUE) - update_freelook_sight() if(!can_crush) return TRUE @@ -618,10 +695,6 @@ /obj/machinery/door/proc/hasPower() return !(machine_stat & NOPOWER) -/obj/machinery/door/proc/update_freelook_sight() - if(!glass && GLOB.cameranet) - GLOB.cameranet.updateVisibility(src, 0) - /obj/machinery/door/block_superconductivity() // All non-glass airlocks block heat, this is intended. if(opacity || heat_proof) return 1 @@ -712,3 +785,4 @@ return ..(0) #undef DOOR_CLOSE_WAIT +#undef TRAIT_UNRESTRICTED_AIRLOCK_OPENING diff --git a/code/game/machinery/doors/firedoor.dm b/code/game/machinery/doors/firedoor.dm index c3b1c0dd2a09cd..b14a54f2977773 100644 --- a/code/game/machinery/doors/firedoor.dm +++ b/code/game/machinery/doors/firedoor.dm @@ -743,13 +743,17 @@ /obj/machinery/door/firedoor/border_only/Initialize(mapload) . = ..() + flags_1 &= ~PREVENT_CLICK_UNDER_1 adjust_lights_starting_offset() var/static/list/loc_connections = list( COMSIG_ATOM_EXIT = PROC_REF(on_exit), ) - AddElement(/datum/element/connect_loc, loc_connections) +/obj/machinery/door/firedoor/border_only/close() + . = ..() + flags_1 &= ~PREVENT_CLICK_UNDER_1 + /obj/machinery/door/firedoor/border_only/adjust_lights_starting_offset() light_xoffset = 0 light_yoffset = 0 @@ -815,6 +819,7 @@ base_icon_state = "frame" anchored = FALSE density = TRUE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 3) var/constructionStep = CONSTRUCTION_NO_CIRCUIT var/reinforced = 0 /// Is this a border_only firelock? Used in several checks during construction @@ -951,7 +956,7 @@ return FALSE /obj/structure/firelock_frame/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - switch(rcd_data["[RCD_DESIGN_MODE]"]) + switch(rcd_data[RCD_DESIGN_MODE]) if(RCD_UPGRADE_SIMPLE_CIRCUITS) user.balloon_alert(user, "circuit installed") constructionStep = CONSTRUCTION_PANEL_OPEN @@ -971,10 +976,11 @@ flags_1 = ON_BORDER_1 obj_flags = CAN_BE_HIT | IGNORE_DENSITY directional = TRUE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2) /obj/structure/firelock_frame/border_only/Initialize(mapload) . = ..() - AddComponent(/datum/component/simple_rotation, ROTATION_NEEDS_ROOM) + AddElement(/datum/element/simple_rotation, ROTATION_NEEDS_ROOM) var/static/list/loc_connections = list( COMSIG_ATOM_EXIT = PROC_REF(on_exit), diff --git a/code/game/machinery/doors/poddoor.dm b/code/game/machinery/doors/poddoor.dm index b3804ff010b6e0..cfd1f99ba9b634 100644 --- a/code/game/machinery/doors/poddoor.dm +++ b/code/game/machinery/doors/poddoor.dm @@ -14,6 +14,7 @@ resistance_flags = FIRE_PROOF damage_deflection = 70 can_open_with_hands = FALSE + custom_materials = list(/datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT * 15, /datum/material/iron = SMALL_MATERIAL_AMOUNT * 2, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 2) /// The recipe for this door var/datum/crafting_recipe/recipe_type = /datum/crafting_recipe/blast_doors /// The current deconstruction step diff --git a/code/game/machinery/doors/shutters.dm b/code/game/machinery/doors/shutters.dm index 52c12835c2797a..46370354003a2b 100644 --- a/code/game/machinery/doors/shutters.dm +++ b/code/game/machinery/doors/shutters.dm @@ -9,6 +9,7 @@ armor_type = /datum/armor/poddoor_shutters max_integrity = 100 recipe_type = /datum/crafting_recipe/shutters + custom_materials = list(/datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT * 5, /datum/material/iron = SMALL_MATERIAL_AMOUNT, /datum/material/glass = SMALL_MATERIAL_AMOUNT) animation_sound = 'sound/machines/shutter.ogg' show_nav_computer_icon = FALSE @@ -37,6 +38,7 @@ /obj/machinery/door/poddoor/shutters/preopen/deconstructed deconstruction = BLASTDOOR_NEEDS_WIRES + custom_materials = list(/datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT * 5) /obj/machinery/door/poddoor/shutters/indestructible name = "hardened shutters" diff --git a/code/game/machinery/doors/windowdoor.dm b/code/game/machinery/doors/windowdoor.dm index 8ede2092a4c8b3..65fbe58e7e764f 100644 --- a/code/game/machinery/doors/windowdoor.dm +++ b/code/game/machinery/doors/windowdoor.dm @@ -256,7 +256,6 @@ var/open_delay = animation_segment_delay(DOOR_OPENING_FINISHED) - passable_delay sleep(open_delay) air_update_turf(TRUE, FALSE) - update_freelook_sight() if(operating == 1) //emag again operating = FALSE @@ -299,7 +298,6 @@ sleep(unpassable_delay) set_density(TRUE) air_update_turf(TRUE, TRUE) - update_freelook_sight() var/close_delay = animation_segment_delay(DOOR_CLOSING_FINISHED) - unpassable_delay sleep(close_delay) @@ -486,7 +484,7 @@ return FALSE /obj/machinery/door/window/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - if(rcd_data["[RCD_DESIGN_MODE]"] == RCD_DECONSTRUCT) + if(rcd_data[RCD_DESIGN_MODE] == RCD_DECONSTRUCT) qdel(src) return TRUE return FALSE @@ -549,8 +547,8 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/door/window/brigdoor/security/holding operating = TRUE set_density(FALSE) + set_opacity(FALSE) air_update_turf(TRUE, FALSE) - update_freelook_sight() operating = FALSE update_appearance() @@ -564,8 +562,8 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/door/window/brigdoor/security/holding operating = TRUE set_density(TRUE) + set_opacity(TRUE) air_update_turf(TRUE, TRUE) - update_freelook_sight() operating = FALSE update_appearance() diff --git a/code/game/machinery/drone_dispenser.dm b/code/game/machinery/drone_dispenser.dm index f51ffc466b12f2..1bce7764543d98 100644 --- a/code/game/machinery/drone_dispenser.dm +++ b/code/game/machinery/drone_dispenser.dm @@ -66,12 +66,12 @@ /// Sound that the drone dispnser plays when it's broken. var/break_sound = 'sound/machines/warning-buzzer.ogg' /// Reference to the object's internal storage for materials. - var/datum/component/material_container/materials + var/datum/material_container/materials /obj/machinery/drone_dispenser/Initialize(mapload) . = ..() - materials = AddComponent( \ - /datum/component/material_container, \ + materials = new ( \ + src, \ list(/datum/material/iron, /datum/material/glass), \ SHEET_MATERIAL_AMOUNT * MAX_STACK_SIZE * 2, \ MATCONTAINER_EXAMINE, \ @@ -84,7 +84,7 @@ REGISTER_REQUIRED_MAP_ITEM(1, 1) /obj/machinery/drone_dispenser/Destroy() - materials = null + QDEL_NULL(materials) return ..() /obj/machinery/drone_dispenser/preloaded diff --git a/code/game/machinery/ecto_sniffer.dm b/code/game/machinery/ecto_sniffer.dm index 7f94df42b72ae5..6c7de7e5097674 100644 --- a/code/game/machinery/ecto_sniffer.dm +++ b/code/game/machinery/ecto_sniffer.dm @@ -61,15 +61,18 @@ tool.play_tool_sound(src, 15) set_anchored(!anchored) balloon_alert(user, "sniffer [anchored ? "anchored" : "unanchored"]") + return ITEM_INTERACT_SUCCESS + +/obj/machinery/ecto_sniffer/screwdriver_act(mob/living/user, obj/item/screwdrivertool) + if(default_deconstruction_screwdriver(user, "ecto_sniffer_open", "ecto_sniffer", screwdrivertool)) + return ITEM_INTERACT_SUCCESS + return ITEM_INTERACT_BLOCKING -/obj/machinery/ecto_sniffer/screwdriver_act(mob/living/user, obj/item/I) - . = ..() - if(!.) - return default_deconstruction_screwdriver(user, "ecto_sniffer_open", "ecto_sniffer", I) /obj/machinery/ecto_sniffer/crowbar_act(mob/living/user, obj/item/tool) - if(!default_deconstruction_crowbar(tool)) - return ..() + if(default_deconstruction_crowbar(tool)) + return ITEM_INTERACT_SUCCESS + return ITEM_INTERACT_BLOCKING /obj/machinery/ecto_sniffer/Destroy() ectoplasmic_residues = null diff --git a/code/game/machinery/experimental_cloner/experimental_cloner_fuckup.dm b/code/game/machinery/experimental_cloner/experimental_cloner_fuckup.dm index 96168a953ad2c3..cbd7fda5aba940 100644 --- a/code/game/machinery/experimental_cloner/experimental_cloner_fuckup.dm +++ b/code/game/machinery/experimental_cloner/experimental_cloner_fuckup.dm @@ -106,7 +106,7 @@ var/obj/item/bodypart/old_bodypart = victim.get_bodypart(target_zone) var/obj/item/bodypart/new_bodypart = new part_type() - new_bodypart.replace_limb(victim, TRUE) + new_bodypart.replace_limb(victim) qdel(old_bodypart) /// Contaminated sample diff --git a/code/game/machinery/firealarm.dm b/code/game/machinery/firealarm.dm index 4c452ea44f2210..74600bab384157 100644 --- a/code/game/machinery/firealarm.dm +++ b/code/game/machinery/firealarm.dm @@ -10,6 +10,13 @@ result_path = /obj/machinery/firealarm pixel_shift = 26 +/obj/item/wallframe/firealarm/try_build(atom/support, mob/user) + var/area/A = get_area(user) + if(A.always_unpowered) + balloon_alert(user, "cannot place in this area!") + return FALSE + return ..() + /obj/machinery/firealarm name = "fire alarm" desc = "Pull this in case of emergency. Thus, keep pulling it forever." @@ -65,9 +72,7 @@ soundloop = new(src, FALSE) set_wires(new /datum/wires/firealarm(src)) - AddComponent(/datum/component/usb_port, list( - /obj/item/circuit_component/firealarm, - )) + AddComponent(/datum/component/usb_port, typecacheof(list(/obj/item/circuit_component/firealarm), only_root_path = TRUE)) AddComponent( \ /datum/component/redirect_attack_hand_from_turf, \ @@ -79,7 +84,7 @@ register_context() if(mapload) - find_and_hang_on_wall() + find_and_mount_on_atom() update_appearance() /obj/machinery/firealarm/Destroy() @@ -506,7 +511,7 @@ return FALSE /obj/machinery/firealarm/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - switch(rcd_data["[RCD_DESIGN_MODE]"]) + switch(rcd_data[RCD_DESIGN_MODE]) if(RCD_WALLFRAME) balloon_alert_to_viewers("circuit installed") buildstage = FIRE_ALARM_BUILD_NO_WIRES diff --git a/code/game/machinery/flasher.dm b/code/game/machinery/flasher.dm index 91487035cc6175..f08fc0046820d8 100644 --- a/code/game/machinery/flasher.dm +++ b/code/game/machinery/flasher.dm @@ -28,7 +28,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/flasher, 26) . = ..() if(mapload) bulb = new(src) - find_and_hang_on_wall() + find_and_mount_on_atom() /obj/machinery/flasher/vv_edit_var(vname, vval) . = ..() @@ -170,6 +170,9 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/flasher, 26) . = ..() proximity_monitor = new(src, 0) +/obj/machinery/flasher/portable/find_and_mount_on_atom(mark_for_late_init, late_init) + return //its meant to be carried and mobile + /obj/machinery/flasher/portable/HasProximity(atom/movable/proximity_check_mob) if(!COOLDOWN_FINISHED(src, flash_cooldown)) return diff --git a/code/game/machinery/flatpacker.dm b/code/game/machinery/flatpacker.dm index 8765ec716bda9e..011ddf7f1b1a53 100644 --- a/code/game/machinery/flatpacker.dm +++ b/code/game/machinery/flatpacker.dm @@ -16,7 +16,7 @@ /// Coefficient applied to consumed materials. Lower values result in lower material consumption. var/creation_efficiency = 2 ///The container to hold materials - var/datum/component/material_container/materials + var/datum/material_container/materials /// The inserted board var/obj/item/circuitboard/machine/inserted_board /// List of components that need to be packed along with the circuitboard @@ -33,8 +33,8 @@ /obj/machinery/flatpacker/Initialize(mapload) register_context() - materials = AddComponent( \ - /datum/component/material_container, \ + materials = new ( \ + src, \ SSmaterials.materials_by_category[MAT_CATEGORY_SILO], \ 0, \ MATCONTAINER_EXAMINE, \ @@ -44,10 +44,10 @@ return ..() /obj/machinery/flatpacker/Destroy() - materials = null + QDEL_NULL(materials) QDEL_NULL(inserted_board) QDEL_LIST(flatpacked_components) - . = ..() + return ..() /obj/machinery/flatpacker/add_context(atom/source, list/context, obj/item/held_item, mob/user) . = NONE @@ -219,7 +219,7 @@ return costs /obj/machinery/flatpacker/base_item_interaction(mob/living/user, obj/item/attacking_item, list/modifiers) - if(attacking_item.flags_1 & HOLOGRAM_1 || attacking_item.item_flags & ABSTRACT) + if(attacking_item.flags_1 & HOLOGRAM_1) return ITEM_INTERACT_SKIP_TO_ATTACK if(istype(attacking_item, /obj/item/circuitboard/machine)) diff --git a/code/game/machinery/igniter.dm b/code/game/machinery/igniter.dm index e6d3b3b7ebcc69..285b19b6c4bb88 100644 --- a/code/game/machinery/igniter.dm +++ b/code/game/machinery/igniter.dm @@ -10,6 +10,7 @@ armor_type = /datum/armor/machinery_igniter resistance_flags = FIRE_PROOF processing_flags = NONE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 5 + HALF_SHEET_MATERIAL_AMOUNT, /datum/material/glass = SMALL_MATERIAL_AMOUNT / 2) var/id = null var/on = FALSE @@ -164,7 +165,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/sparker, 26) spark_system.attach(src) register_context() if(mapload) - find_and_hang_on_wall() + find_and_mount_on_atom() /obj/machinery/sparker/Destroy() QDEL_NULL(spark_system) diff --git a/code/game/machinery/iv_drip.dm b/code/game/machinery/iv_drip.dm index d606556985b3cd..8e400fc964a0ce 100644 --- a/code/game/machinery/iv_drip.dm +++ b/code/game/machinery/iv_drip.dm @@ -1,7 +1,3 @@ -///IV drip operation mode when it sucks blood from the object -#define IV_TAKING 0 -///IV drip operation mode when it injects reagents into the object -#define IV_INJECTING 1 ///What the transfer rate value is rounded to #define IV_TRANSFER_RATE_STEP 0.01 ///Minimum possible IV drip transfer rate in units per second @@ -24,6 +20,7 @@ mouse_drag_pointer = MOUSE_ACTIVE_POINTER use_power = NO_POWER_USE interaction_flags_mouse_drop = NEED_HANDS + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 1.1, /datum/material/plastic = SHEET_MATERIAL_AMOUNT, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.2) /// Information and effects about where the IV drip is attached to var/datum/iv_drip_attachment/attachment @@ -264,7 +261,7 @@ return // If the human is losing too much blood, beep. - if(attached_mob.blood_volume < BLOOD_VOLUME_SAFE && prob(5)) + if(attached_mob.get_blood_volume(apply_modifiers = TRUE) < BLOOD_VOLUME_SAFE && prob(5)) audible_message(span_hear("[src] beeps loudly.")) playsound(loc, 'sound/machines/beep/twobeep_high.ogg', 50, TRUE) var/atom/movable/target = use_internal_storage ? src : reagent_container @@ -273,10 +270,12 @@ /obj/machinery/iv_drip/attack_hand_secondary(mob/user, list/modifiers) . = ..() - if(. == SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN) - return - if(!ishuman(user)) + if(. == SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN || !ishuman(user)) return + if (quick_toggle(user)) + return SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN + +/obj/machinery/iv_drip/proc/quick_toggle(mob/user) if(attachment) visible_message(span_notice("[attachment.attached_to] is detached from [src].")) detach_iv() @@ -284,7 +283,7 @@ eject_beaker(user) else toggle_mode() - return SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN + return TRUE ///called when an IV is attached /obj/machinery/iv_drip/proc/attach_iv(atom/target, mob/user) @@ -456,10 +455,8 @@ /atom/movable/screen/alert/iv_connected name = "IV Connected" desc = "You have an IV connected to your arm. Remember to remove it or drag the IV stand with you before moving, or else it will rip out!" - icon_state = ALERT_IV_CONNECTED - -#undef IV_TAKING -#undef IV_INJECTING + use_user_hud_icon = TRUE + overlay_state = "iv_connected" #undef MIN_IV_TRANSFER_RATE #undef MAX_IV_TRANSFER_RATE diff --git a/code/game/machinery/launch_pad.dm b/code/game/machinery/launch_pad.dm index 471e43f94130b4..e45daf7a98e502 100644 --- a/code/game/machinery/launch_pad.dm +++ b/code/game/machinery/launch_pad.dm @@ -38,8 +38,8 @@ /obj/machinery/launchpad/Initialize(mapload) . = ..() prepare_huds() - for(var/datum/atom_hud/data/diagnostic/diag_hud in GLOB.huds) - diag_hud.add_atom_to_hud(src) + var/datum/atom_hud/data/diagnostic/diag_hud = GLOB.huds[DATA_HUD_DIAGNOSTIC] + diag_hud.add_atom_to_hud(src) update_hud() @@ -57,8 +57,8 @@ return ..() /obj/machinery/launchpad/Destroy() - for(var/datum/atom_hud/data/diagnostic/diag_hud in GLOB.huds) - diag_hud.remove_atom_from_hud(src) + var/datum/atom_hud/data/diagnostic/diag_hud = GLOB.huds[DATA_HUD_DIAGNOSTIC] + diag_hud.remove_atom_from_hud(src) return ..() /obj/machinery/launchpad/examine(mob/user) @@ -104,9 +104,7 @@ update_indicator() if(stationary) - AddComponent(/datum/component/usb_port, list( - /obj/item/circuit_component/bluespace_launchpad, - )) + AddComponent(/datum/component/usb_port, typecacheof(list(/obj/item/circuit_component/bluespace_launchpad), only_root_path = TRUE)) /// Whether this launchpad can send or receive. /obj/machinery/launchpad/proc/is_available() diff --git a/code/game/machinery/lightswitch.dm b/code/game/machinery/lightswitch.dm index 00c1ceef188e5b..58e5bdf209e3e3 100644 --- a/code/game/machinery/lightswitch.dm +++ b/code/game/machinery/lightswitch.dm @@ -23,9 +23,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/light_switch, 26) AddComponent(/datum/component/redirect_attack_hand_from_turf) - AddComponent(/datum/component/usb_port, list( - /obj/item/circuit_component/light_switch, - )) + AddComponent(/datum/component/usb_port, typecacheof(list(/obj/item/circuit_component/light_switch), only_root_path = TRUE)) if(istext(area)) area = text2path(area) if(ispath(area)) @@ -35,7 +33,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/light_switch, 26) if(autoname) name = "light switch ([area.name])" if(mapload) - find_and_hang_on_wall() + find_and_mount_on_atom() register_context() update_appearance() diff --git a/code/game/machinery/limbgrower.dm b/code/game/machinery/limbgrower.dm index f3d8e236c73c02..39564a41609cf8 100644 --- a/code/game/machinery/limbgrower.dm +++ b/code/game/machinery/limbgrower.dm @@ -33,7 +33,7 @@ stored_research = GLOB.autounlock_techwebs[/datum/techweb/autounlocking/limbgrower] . = ..() AddComponent(/datum/component/plumbing/simple_demand) - AddComponent(/datum/component/simple_rotation) + AddElement(/datum/element/simple_rotation) register_context() /obj/machinery/limbgrower/add_context(atom/source, list/context, obj/item/held_item, mob/user) diff --git a/code/game/machinery/medical_kiosk.dm b/code/game/machinery/medical_kiosk.dm index 65052a2e8338c4..3b8ef7cd22f720 100644 --- a/code/game/machinery/medical_kiosk.dm +++ b/code/game/machinery/medical_kiosk.dm @@ -225,10 +225,10 @@ var/patient_status = "Alive." var/max_health = patient.maxHealth var/total_health = patient.health - var/brute_loss = patient.getBruteLoss() - var/fire_loss = patient.getFireLoss() - var/tox_loss = patient.getToxLoss() - var/oxy_loss = patient.getOxyLoss() + var/brute_loss = patient.get_brute_loss() + var/fire_loss = patient.get_fire_loss() + var/tox_loss = patient.get_tox_loss() + var/oxy_loss = patient.get_oxy_loss() var/chaos_modifier = 0 var/sickness = "Patient does not show signs of disease." @@ -236,7 +236,7 @@ var/bleed_status = "Patient is not currently bleeding." var/blood_status = " Patient either has no blood, or does not require it to function." - var/blood_percent = round((patient.blood_volume / BLOOD_VOLUME_NORMAL) * 100) + var/blood_percent = round((patient.get_blood_volume(apply_modifiers = TRUE) / BLOOD_VOLUME_NORMAL) * 100) var/datum/blood_type/blood_type = patient.get_bloodtype() var/blood_name = "error" var/blood_warning = " " diff --git a/code/game/machinery/medipen_refiller.dm b/code/game/machinery/medipen_refiller.dm index 3f365ff3b1de7b..336554771f54fa 100644 --- a/code/game/machinery/medipen_refiller.dm +++ b/code/game/machinery/medipen_refiller.dm @@ -24,7 +24,7 @@ /obj/machinery/medipen_refiller/Initialize(mapload) . = ..() AddComponent(/datum/component/plumbing/simple_demand) - AddComponent(/datum/component/simple_rotation) + AddElement(/datum/element/simple_rotation) register_context() /obj/machinery/medipen_refiller/add_context(atom/source, list/context, obj/item/held_item, mob/user) diff --git a/code/game/machinery/navbeacon.dm b/code/game/machinery/navbeacon.dm index a3f1859fe26e5b..a1e6726b129acb 100644 --- a/code/game/machinery/navbeacon.dm +++ b/code/game/machinery/navbeacon.dm @@ -25,7 +25,7 @@ /// codes as set on map: "tag1;tag2" or "tag1=value;tag2=value" var/codes_txt = "" - req_one_access = list(ACCESS_ENGINEERING, ACCESS_ROBOTICS) + req_one_access = list(ACCESS_CARGO, ACCESS_ENGINEERING, ACCESS_ROBOTICS) /datum/armor/machinery_navbeacon melee = 70 diff --git a/code/game/machinery/newscaster/newscaster_machine.dm b/code/game/machinery/newscaster/newscaster_machine.dm index b950e2c9136362..42fb331f099aac 100644 --- a/code/game/machinery/newscaster/newscaster_machine.dm +++ b/code/game/machinery/newscaster/newscaster_machine.dm @@ -78,7 +78,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/newscaster, 30) GLOB.allbountyboards += src update_appearance() if(mapload) - find_and_hang_on_wall() + find_and_mount_on_atom() /obj/machinery/newscaster/Destroy() GLOB.allCasters -= src @@ -879,7 +879,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/newscaster, 30) playsound(src, 'sound/machines/buzz/buzz-sigh.ogg', 30, TRUE) return TRUE payment_target.transfer_money(current_user, active_request.value, "Bounty Request") - say("Paid out [active_request.value] credits.") + say("Paid out [active_request.value] [MONEY_NAME].") GLOB.request_list.Remove(active_request) qdel(active_request) diff --git a/code/game/machinery/pipe/construction.dm b/code/game/machinery/pipe/construction.dm index 7f1f8de2c5bf50..172fbe8daa1061 100644 --- a/code/game/machinery/pipe/construction.dm +++ b/code/game/machinery/pipe/construction.dm @@ -19,6 +19,7 @@ Buildable meters icon_state_preview = "manifold4w" inhand_icon_state = "buildpipe" w_class = WEIGHT_CLASS_NORMAL + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT) ///Piping layer that we are going to be on var/piping_layer = PIPING_LAYER_DEFAULT ///Type of pipe-object made, selected from the RPD @@ -42,65 +43,100 @@ Buildable meters /obj/item/pipe/directional RPD_type = PIPE_UNARY + /obj/item/pipe/directional/he_junction icon_state_preview = "junction" pipe_type = /obj/machinery/atmospherics/pipe/heat_exchanging/junction + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2) + /obj/item/pipe/directional/vent name = "air vent fitting" icon_state_preview = "uvent" pipe_type = /obj/machinery/atmospherics/components/unary/vent_pump + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 6 + SMALL_MATERIAL_AMOUNT / 2, /datum/material/glass = SMALL_MATERIAL_AMOUNT / 2) + /obj/item/pipe/directional/scrubber name = "air scrubber fitting" icon_state_preview = "scrubber" pipe_type = /obj/machinery/atmospherics/components/unary/vent_scrubber + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 6 + SMALL_MATERIAL_AMOUNT / 2, /datum/material/glass = SMALL_MATERIAL_AMOUNT / 2) + /obj/item/pipe/directional/connector icon_state_preview = "connector" pipe_type = /obj/machinery/atmospherics/components/unary/portables_connector + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2) + /obj/item/pipe/directional/passive_vent icon_state_preview = "pvent" pipe_type = /obj/machinery/atmospherics/components/unary/passive_vent + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2) + /obj/item/pipe/directional/injector icon_state_preview = "injector" pipe_type = /obj/machinery/atmospherics/components/unary/outlet_injector + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2, /datum/material/glass = SMALL_MATERIAL_AMOUNT / 2) + /obj/item/pipe/directional/he_exchanger icon_state_preview = "heunary" pipe_type = /obj/machinery/atmospherics/components/unary/heat_exchanger + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT, /datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT) + /obj/item/pipe/directional/airlock_pump icon_state_preview = "airlock_pump" pipe_type = /obj/machinery/atmospherics/components/unary/airlock_pump + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 6, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.7) + /obj/item/pipe/binary RPD_type = PIPE_STRAIGHT + /obj/item/pipe/binary/layer_adapter icon_state_preview = "manifoldlayer" pipe_type = /obj/machinery/atmospherics/pipe/layer_manifold + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2) + /obj/item/pipe/binary/color_adapter icon_state_preview = "adapter_center" pipe_type = /obj/machinery/atmospherics/pipe/color_adapter + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2) + /obj/item/pipe/binary/pressure_pump icon_state_preview = "pump" pipe_type = /obj/machinery/atmospherics/components/binary/pump + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 6, /datum/material/glass = SMALL_MATERIAL_AMOUNT / 2) + /obj/item/pipe/binary/manual_valve icon_state_preview = "mvalve" pipe_type = /obj/machinery/atmospherics/components/binary/valve + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2) + /obj/item/pipe/binary/bendable RPD_type = PIPE_BENDABLE + /obj/item/pipe/trinary RPD_type = PIPE_TRINARY + /obj/item/pipe/trinary/flippable RPD_type = PIPE_TRIN_M var/flipped = FALSE + /obj/item/pipe/trinary/flippable/filter name = "gas filter fitting" icon_state_preview = "filter" pipe_type = /obj/machinery/atmospherics/components/trinary/filter + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 6, /datum/material/glass = SMALL_MATERIAL_AMOUNT / 2) + /obj/item/pipe/trinary/flippable/mixer icon_state_preview = "mixer" pipe_type = /obj/machinery/atmospherics/components/trinary/mixer + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 6, /datum/material/glass = SMALL_MATERIAL_AMOUNT / 2) + /obj/item/pipe/quaternary RPD_type = PIPE_ONEDIR + /obj/item/pipe/quaternary/pipe icon_state_preview = "manifold4w" pipe_type = /obj/machinery/atmospherics/pipe/smart + /obj/item/pipe/quaternary/pipe/crafted /obj/item/pipe/quaternary/pipe/crafted/Initialize(mapload, _pipe_type, _dir, obj/machinery/atmospherics/make_from, device_color, device_init_dir = SOUTH) @@ -114,6 +150,7 @@ Buildable meters /obj/item/pipe/quaternary/he_pipe icon_state_preview = "he_manifold4w" pipe_type = /obj/machinery/atmospherics/pipe/heat_exchanging/manifold4w + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2) /obj/item/pipe/Initialize(mapload, _pipe_type, _dir, obj/machinery/atmospherics/make_from, device_color, device_init_dir = SOUTH) if(make_from) @@ -129,7 +166,7 @@ Buildable meters pixel_y += rand(-5, 5) //Flipping handled manually due to custom handling for trinary pipes - AddComponent(/datum/component/simple_rotation, ROTATION_NO_FLIPPING) + AddElement(/datum/element/simple_rotation, ROTATION_NO_FLIPPING) // Only 'normal' pipes if(type != /obj/item/pipe/quaternary) @@ -393,7 +430,7 @@ Buildable meters if(prob(20)) C.spew_organ() sleep(0.5 SECONDS) - C.blood_volume = 0 + C.set_blood_volume(0) return(OXYLOSS|BRUTELOSS) /obj/item/pipe/examine(mob/user) diff --git a/code/game/machinery/porta_turret/portable_turret.dm b/code/game/machinery/porta_turret/portable_turret.dm index d971bf30f6fce5..e7a9826b1832cc 100644 --- a/code/game/machinery/porta_turret/portable_turret.dm +++ b/code/game/machinery/porta_turret/portable_turret.dm @@ -84,7 +84,7 @@ DEFINE_BITFIELD(turret_flags, list( /// World.time the turret last fired var/last_fired = 0 /// Ticks until next shot (1.5 ?) - var/shot_delay = 15 + var/shot_delay = 1.5 SECONDS /// Turret flags about who is turret allowed to shoot var/turret_flags = TURRET_FLAG_SHOOT_CRIMINALS | TURRET_FLAG_SHOOT_ANOMALOUS /// Determines if the turret is on @@ -830,7 +830,7 @@ DEFINE_BITFIELD(turret_flags, list( /obj/machinery/porta_turret/syndicate/shuttle scan_range = 9 - shot_delay = 3 + shot_delay = 3 DECISECONDS stun_projectile = /obj/projectile/bullet/p50/penetrator/shuttle lethal_projectile = /obj/projectile/bullet/p50/penetrator/shuttle lethal_projectile_sound = 'sound/items/weapons/gun/smg/shot.ogg' @@ -928,213 +928,6 @@ DEFINE_BITFIELD(turret_flags, list( stun_projectile = /obj/projectile/kinetic/miner stun_projectile_sound = 'sound/items/weapons/kinetic_accel.ogg' -//////////////////////// -//Turret Control Panel// -//////////////////////// - -/obj/machinery/turretid - name = "turret control panel" - desc = "Used to control a room's automated defenses." - icon = 'icons/obj/machines/turret_control.dmi' - icon_state = "control_standby" - base_icon_state = "control" - density = FALSE - req_access = list(ACCESS_AI_UPLOAD) - resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF - interaction_flags_click = ALLOW_SILICON_REACH - /// Variable dictating if linked turrets are active and will shoot targets - var/enabled = TRUE - /// Variable dictating if linked turrets will shoot lethal projectiles - var/lethal = FALSE - /// Variable dictating if the panel is locked, preventing changes to turret settings - var/locked = TRUE - /// An area in which linked turrets are located, it can be an area name, path or nothing - var/control_area = null - /// AI is unable to use this machine if set to TRUE - var/ailock = FALSE - /// Variable dictating if linked turrets will shoot cyborgs - var/shoot_cyborgs = FALSE - /// List of weakrefs to all turrets - var/list/turrets = list() - -/obj/machinery/turretid/Initialize(mapload) - . = ..() - if(!mapload) - locked = FALSE - else - find_and_hang_on_wall() - power_change() //Checks power and initial settings - -/obj/machinery/turretid/Destroy() - turrets.Cut() - return ..() - -/obj/machinery/turretid/Initialize(mapload) //map-placed turrets autolink turrets - . = ..() - if(!mapload) - return - - // The actual area that control_area refers to - var/area/control_area_instance - - if(control_area) - control_area_instance = get_area_instance_from_text(control_area) - if(!control_area_instance) - log_mapping("Bad control_area path for [src] at [AREACOORD(src)]: [control_area]") - if(!control_area_instance) - control_area_instance = get_area(src) - - for(var/obj/machinery/porta_turret/T in control_area_instance) - turrets |= WEAKREF(T) - -/obj/machinery/turretid/examine(mob/user) - . += ..() - if(issilicon(user) && !(machine_stat & BROKEN)) - . += {"[span_notice("Ctrl-click [src] to [ enabled ? "disable" : "enable"] turrets.")] - [span_notice("Alt-click [src] to set turrets to [ lethal ? "stun" : "kill"].")]"} - -/obj/machinery/turretid/multitool_act(mob/living/user, obj/item/multitool/multi_tool) - . = NONE - if(machine_stat & BROKEN) - return - - if(multi_tool.buffer && istype(multi_tool.buffer, /obj/machinery/porta_turret)) - turrets |= WEAKREF(multi_tool.buffer) - to_chat(user, span_notice("You link \the [multi_tool.buffer] with \the [src].")) - return ITEM_INTERACT_SUCCESS - -/obj/machinery/turretid/attackby(obj/item/attacking_item, mob/user, list/modifiers, list/attack_modifiers) - if(machine_stat & BROKEN) - return - - if (issilicon(user)) - return attack_hand(user) - - var/id = attacking_item.GetID() - - if(isnull(id)) - return - - if (check_access(id)) - if(obj_flags & EMAGGED) - to_chat(user, span_warning("The turret control is unresponsive!")) - return - - locked = !locked - to_chat(user, span_notice("You [ locked ? "lock" : "unlock"] the panel.")) - else - to_chat(user, span_alert("Access denied.")) - -/obj/machinery/turretid/emag_act(mob/user, obj/item/card/emag/emag_card) - if(obj_flags & EMAGGED) - return FALSE - balloon_alert(user, "access analysis module shorted") - obj_flags |= EMAGGED - locked = FALSE - return TRUE - -/obj/machinery/turretid/attack_ai(mob/user) - if(!ailock || isAdminGhostAI(user)) - return attack_hand(user) - else - to_chat(user, span_warning("There seems to be a firewall preventing you from accessing this device!")) - -/obj/machinery/turretid/ui_interact(mob/user, datum/tgui/ui) - ui = SStgui.try_update_ui(user, src, ui) - if(!ui) - ui = new(user, src, "TurretControl", name) - ui.open() - -/obj/machinery/turretid/ui_data(mob/user) - var/list/data = list() - data["locked"] = locked - data["siliconUser"] = HAS_SILICON_ACCESS(user) - data["enabled"] = enabled - data["lethal"] = lethal - data["shootCyborgs"] = shoot_cyborgs - return data - -/obj/machinery/turretid/ui_act(action, list/params, datum/tgui/ui, datum/ui_state/state) - . = ..() - if(.) - return - - var/mob/user = ui.user - - switch(action) - if("lock") - if(!HAS_SILICON_ACCESS(user)) - return - if((obj_flags & EMAGGED) || (machine_stat & BROKEN)) - to_chat(user, span_warning("The turret control is unresponsive!")) - return - locked = !locked - return TRUE - if("power") - toggle_on(user) - return TRUE - if("mode") - toggle_lethal(user) - return TRUE - if("shoot_silicons") - shoot_silicons(user) - return TRUE - -/obj/machinery/turretid/proc/toggle_lethal(mob/user) - lethal = !lethal - if (user) - var/enabled_or_disabled = lethal ? "disabled" : "enabled" - balloon_alert(user, "safeties [enabled_or_disabled]") - add_hiddenprint(user) - log_combat(user, src, "[enabled_or_disabled] lethals on") - updateTurrets() - -/obj/machinery/turretid/proc/toggle_on(mob/user) - enabled = !enabled - if (user) - var/enabled_or_disabled = enabled ? "enabled" : "disabled" - balloon_alert(user, "[enabled_or_disabled]") - add_hiddenprint(user) - log_combat(user, src, "[enabled ? "enabled" : "disabled"]") - updateTurrets() - -/obj/machinery/turretid/proc/shoot_silicons(mob/user) - shoot_cyborgs = !shoot_cyborgs - if (user) - var/status = shoot_cyborgs ? "Shooting Borgs" : "Not Shooting Borgs" - balloon_alert(user, LOWER_TEXT(status)) - add_hiddenprint(user) - log_combat(user, src, "[status]") - updateTurrets() - -/obj/machinery/turretid/proc/updateTurrets() - for (var/datum/weakref/turret_ref in turrets) - var/obj/machinery/porta_turret/turret = turret_ref.resolve() - if(!turret) - turrets -= turret_ref - continue - turret.setState(enabled, lethal, shoot_cyborgs) - update_appearance() - -/obj/machinery/turretid/update_icon_state() - if(machine_stat & NOPOWER) - icon_state = "[base_icon_state]_off" - return ..() - if (enabled) - icon_state = "[base_icon_state]_[lethal ? "kill" : "stun"]" - return ..() - icon_state = "[base_icon_state]_standby" - return ..() - -/obj/item/wallframe/turret_control - name = "turret control frame" - desc = "Used for building turret control panels." - icon = 'icons/obj/machines/turret_control.dmi' - icon_state = "control_frame" - result_path = /obj/machinery/turretid - custom_materials = list(/datum/material/iron= SHEET_MATERIAL_AMOUNT) - pixel_shift = 29 - /obj/item/gun/proc/get_turret_properties() . = list() .["lethal_projectile"] = null @@ -1176,7 +969,7 @@ DEFINE_BITFIELD(turret_flags, list( .["stun_projectile"] = /obj/projectile/beam/lasertag/bluetag .["lethal_projectile"] = /obj/projectile/beam/lasertag/bluetag .["base_icon_state"] = "blue" - .["shot_delay"] = 30 + .["shot_delay"] = 3 SECONDS .["team_color"] = "blue" /obj/item/gun/energy/laser/redtag/get_turret_properties() @@ -1184,7 +977,7 @@ DEFINE_BITFIELD(turret_flags, list( .["stun_projectile"] = /obj/projectile/beam/lasertag/redtag .["lethal_projectile"] = /obj/projectile/beam/lasertag/redtag .["base_icon_state"] = "red" - .["shot_delay"] = 30 + .["shot_delay"] = 3 SECONDS .["team_color"] = "red" /obj/item/gun/energy/e_gun/turret/get_turret_properties() diff --git a/code/game/machinery/porta_turret/portable_turret_construct.dm b/code/game/machinery/porta_turret/portable_turret_construct.dm index d84f7bee725430..6b06894e010670 100644 --- a/code/game/machinery/porta_turret/portable_turret_construct.dm +++ b/code/game/machinery/porta_turret/portable_turret_construct.dm @@ -17,6 +17,7 @@ density = TRUE obj_flags = UNIQUE_RENAME | RENAME_NO_DESC use_power = NO_POWER_USE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 5) var/build_step = PTURRET_UNSECURED //the current step in the building process var/finish_name = "turret" //the name applied to the product turret var/obj/item/gun/installed_gun = null diff --git a/code/game/machinery/porta_turret/turret_control.dm b/code/game/machinery/porta_turret/turret_control.dm new file mode 100644 index 00000000000000..c1b436f3dcc140 --- /dev/null +++ b/code/game/machinery/porta_turret/turret_control.dm @@ -0,0 +1,214 @@ +/obj/machinery/turretid + name = "turret control panel" + desc = "Used to control a room's automated defenses." + icon = 'icons/obj/machines/turret_control.dmi' + icon_state = "control" + base_icon_state = "control" + density = FALSE + req_access = list(ACCESS_AI_UPLOAD) + resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF + interaction_flags_click = ALLOW_SILICON_REACH + /// Variable dictating if linked turrets are active and will shoot targets + var/enabled = TRUE + /// Variable dictating if linked turrets will shoot lethal projectiles + var/lethal = FALSE + /// Variable dictating if the panel is locked, preventing changes to turret settings + var/locked = TRUE + /// An area in which linked turrets are located, it can be an area name, path or nothing + var/control_area = null + /// AI is unable to use this machine if set to TRUE + var/ailock = FALSE + /// Variable dictating if linked turrets will shoot cyborgs + var/shoot_cyborgs = FALSE + /// List of weakrefs to all turrets + var/list/turrets = list() + +/obj/machinery/turretid/Initialize(mapload) + . = ..() + + if(mapload) + find_and_mount_on_atom() + else + locked = FALSE + power_change() + + var/area/control_area_instance + + if(control_area) + control_area_instance = get_area_instance_from_text(control_area) + if(!control_area_instance) + log_mapping("Bad control_area path for [src] at [AREACOORD(src)]: [control_area]") + + if(!control_area_instance) + control_area_instance = get_area(src) + + for(var/obj/machinery/porta_turret/T in control_area_instance) + turrets |= WEAKREF(T) + +/obj/machinery/turretid/Destroy() + turrets.Cut() + return ..() + +/obj/machinery/turretid/update_overlays() + . = ..() + if(machine_stat & NOPOWER) + if(enabled) + . += mutable_appearance(icon, "button_left") + if(lethal) + . += mutable_appearance(icon, "button_right") + return + + if(enabled) + . += mutable_appearance(icon, "button_left") + . += emissive_appearance(icon, "emissive_button_left", src) + if(lethal) + . += mutable_appearance(icon, "kill") + . += mutable_appearance(icon, "button_right") + . += emissive_appearance(icon, "emissive_button_right", src) + else + . += mutable_appearance(icon, "stun") + else + . += mutable_appearance(icon, "standby") + . += emissive_appearance(icon, "emissive_screen", src) + +/obj/machinery/turretid/power_change() + . = ..() + update_appearance(UPDATE_OVERLAYS) + +/obj/machinery/turretid/examine(mob/user) + . += ..() + if(issilicon(user) && !(machine_stat & BROKEN)) + . += span_notice("Ctrl-click [src] to [ enabled ? "disable" : "enable"] turrets.") + . += span_notice("Alt-click [src] to set turrets to [ lethal ? "stun" : "kill"].") + +/obj/machinery/turretid/multitool_act(mob/living/user, obj/item/multitool/multi_tool) + . = NONE + if(machine_stat & BROKEN) + return + + if(multi_tool.buffer && istype(multi_tool.buffer, /obj/machinery/porta_turret)) + turrets |= WEAKREF(multi_tool.buffer) + to_chat(user, span_notice("You link \the [multi_tool.buffer] with \the [src].")) + return ITEM_INTERACT_SUCCESS + +/obj/machinery/turretid/attackby(obj/item/attacking_item, mob/user, list/modifiers, list/attack_modifiers) + if(machine_stat & BROKEN) + return + + if (issilicon(user)) + return attack_hand(user) + + var/id = attacking_item.GetID() + + if(isnull(id)) + return + + if (check_access(id)) + if(obj_flags & EMAGGED) + to_chat(user, span_warning("The turret control is unresponsive!")) + return + + locked = !locked + to_chat(user, span_notice("You [ locked ? "lock" : "unlock"] the panel.")) + else + to_chat(user, span_alert("Access denied.")) + +/obj/machinery/turretid/emag_act(mob/user, obj/item/card/emag/emag_card) + if(obj_flags & EMAGGED) + return FALSE + balloon_alert(user, "access analysis module shorted") + obj_flags |= EMAGGED + locked = FALSE + return TRUE + +/obj/machinery/turretid/attack_ai(mob/user) + if(!ailock || isAdminGhostAI(user)) + return attack_hand(user) + else + to_chat(user, span_warning("There seems to be a firewall preventing you from accessing this device!")) + +/obj/machinery/turretid/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) + if(!ui) + ui = new(user, src, "TurretControl", name) + ui.open() + +/obj/machinery/turretid/ui_data(mob/user) + var/list/data = list() + data["locked"] = locked + data["siliconUser"] = HAS_SILICON_ACCESS(user) + data["enabled"] = enabled + data["lethal"] = lethal + data["shootCyborgs"] = shoot_cyborgs + return data + +/obj/machinery/turretid/ui_act(action, list/params, datum/tgui/ui, datum/ui_state/state) + . = ..() + if(.) + return + + var/mob/user = ui.user + + switch(action) + if("lock") + if(!HAS_SILICON_ACCESS(user)) + return + if((obj_flags & EMAGGED) || (machine_stat & BROKEN)) + to_chat(user, span_warning("The turret control is unresponsive!")) + return + locked = !locked + return TRUE + if("power") + toggle_on(user) + return TRUE + if("mode") + toggle_lethal(user) + return TRUE + if("shoot_silicons") + shoot_silicons(user) + return TRUE + +/obj/machinery/turretid/proc/toggle_lethal(mob/user) + lethal = !lethal + if (user) + var/enabled_or_disabled = lethal ? "disabled" : "enabled" + balloon_alert(user, "safeties [enabled_or_disabled]") + add_hiddenprint(user) + log_combat(user, src, "[enabled_or_disabled] lethals on") + updateTurrets() + +/obj/machinery/turretid/proc/toggle_on(mob/user) + enabled = !enabled + if (user) + var/enabled_or_disabled = enabled ? "enabled" : "disabled" + balloon_alert(user, "[enabled_or_disabled]") + add_hiddenprint(user) + log_combat(user, src, "[enabled ? "enabled" : "disabled"]") + updateTurrets() + +/obj/machinery/turretid/proc/shoot_silicons(mob/user) + shoot_cyborgs = !shoot_cyborgs + if (user) + var/status = shoot_cyborgs ? "Shooting Borgs" : "Not Shooting Borgs" + balloon_alert(user, LOWER_TEXT(status)) + add_hiddenprint(user) + log_combat(user, src, "[status]") + updateTurrets() + +/obj/machinery/turretid/proc/updateTurrets() + for (var/datum/weakref/turret_ref in turrets) + var/obj/machinery/porta_turret/turret = turret_ref.resolve() + if(!turret) + turrets -= turret_ref + continue + turret.setState(enabled, lethal, shoot_cyborgs) + update_appearance() + +/obj/item/wallframe/turret_control + name = "turret control frame" + desc = "Used for building turret control panels." + icon = 'icons/obj/machines/turret_control.dmi' + icon_state = "control_frame" + result_path = /obj/machinery/turretid + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 6) + pixel_shift = 30 diff --git a/code/game/machinery/quantum_pad.dm b/code/game/machinery/quantum_pad.dm index 4f13690290e1e9..d09f2af6e7a60a 100644 --- a/code/game/machinery/quantum_pad.dm +++ b/code/game/machinery/quantum_pad.dm @@ -23,9 +23,7 @@ if(map_pad_id) mapped_quantum_pads[map_pad_id] = src - AddComponent(/datum/component/usb_port, list( - /obj/item/circuit_component/quantumpad, - )) + AddComponent(/datum/component/usb_port, typecacheof(list(/obj/item/circuit_component/quantumpad), only_root_path = TRUE)) /obj/machinery/quantumpad/Destroy() mapped_quantum_pads -= map_pad_id diff --git a/code/game/machinery/recharger.dm b/code/game/machinery/recharger.dm index 1ea84c1f993c18..ad97f8ad4cdf0d 100644 --- a/code/game/machinery/recharger.dm +++ b/code/game/machinery/recharger.dm @@ -12,8 +12,6 @@ var/recharge_coeff = 1 /// Did we put power into "charging" last process()? var/using_power = FALSE - /// Did we finish recharging the currently inserted item? - var/finished_recharging = FALSE /// List of items that can be recharged var/static/list/allowed_devices = typecacheof(list( /obj/item/gun/energy, @@ -72,7 +70,6 @@ charging = arrived START_PROCESSING(SSmachines, src) update_use_power(ACTIVE_POWER_USE) - finished_recharging = FALSE using_power = TRUE update_appearance() return ..() @@ -157,17 +154,25 @@ if(charging_cell) if(charging_cell.charge < charging_cell.maxcharge) charge_cell(charging_cell.chargerate * recharge_coeff * seconds_per_tick, charging_cell) - using_power = TRUE + if(charging_cell.charge >= charging_cell.maxcharge) //Inserted thing is at max charge/ammo, notify those around us + playsound(src, 'sound/machines/ping.ogg', 30, TRUE) + say("[charging] has finished recharging!") + else + using_power = TRUE update_appearance() + return if(istype(charging, /obj/item/ammo_box/magazine/recharge)) //if you add any more snowflake ones, make sure to update the examine messages too. var/obj/item/ammo_box/magazine/recharge/power_pack = charging for(var/charge_iterations in 1 to recharge_coeff) - if(power_pack.stored_ammo.len >= power_pack.max_ammo) - break - power_pack.stored_ammo += new power_pack.ammo_type(power_pack) - use_energy(active_power_usage * seconds_per_tick) - using_power = TRUE + if(power_pack.stored_ammo.len < power_pack.max_ammo) + power_pack.stored_ammo += new power_pack.ammo_type(power_pack) + use_energy(active_power_usage * seconds_per_tick) + if(power_pack.stored_ammo >= power_pack.max_ammo) + playsound(src, 'sound/machines/ping.ogg', 30, TRUE) + say("[charging] has finished recharging!") + else + using_power = TRUE update_appearance() return @@ -180,18 +185,16 @@ using_power = TRUE else if(recalibrating_gun.shots_before_degradation < recalibrating_gun.max_shots_before_degradation) - recalibrating_gun.attempt_recalibration(TRUE, 1 * recharge_coeff) + recalibrating_gun.attempt_recalibration(TRUE, recharge_coeff) use_energy(active_power_usage * recharge_coeff * seconds_per_tick) - using_power = TRUE - + if(recalibrating_gun.shots_before_degradation == recalibrating_gun.max_shots_before_degradation) + playsound(src, 'sound/machines/ping.ogg', 30, TRUE) + say("[charging] has finished recalibrating!") + else + using_power = TRUE update_appearance() return - if(!using_power && !finished_recharging) //Inserted thing is at max charge/ammo, notify those around us - finished_recharging = TRUE - playsound(src, 'sound/machines/ping.ogg', 30, TRUE) - say("[charging] has finished recharging!") - /obj/machinery/recharger/emp_act(severity) . = ..() if (. & EMP_PROTECT_CONTENTS) diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm index e8a0a823871be5..3eacf7b7f9f374 100644 --- a/code/game/machinery/rechargestation.dm +++ b/code/game/machinery/rechargestation.dm @@ -16,14 +16,14 @@ var/datum/callback/charge_cell ///Whether we're sending iron and glass to a cyborg. Requires Silo connection. var/sendmats = FALSE - var/datum/component/remote_materials/materials + var/datum/remote_materials/materials /obj/machinery/recharge_station/Initialize(mapload) . = ..() - materials = AddComponent( - /datum/component/remote_materials, \ + materials = new ( + src, \ mapload, \ mat_container_flags = MATCONTAINER_NO_INSERT, \ ) @@ -46,7 +46,7 @@ GLOB.roundstart_station_borgcharger_areas += area_name /obj/machinery/recharge_station/Destroy() - materials = null + QDEL_NULL(materials) charge_cell = null return ..() diff --git a/code/game/machinery/recycler.dm b/code/game/machinery/recycler.dm index c02be961a9ff58..fbcd2b5ab719f4 100644 --- a/code/game/machinery/recycler.dm +++ b/code/game/machinery/recycler.dm @@ -16,16 +16,16 @@ var/crush_damage = 1000 var/eat_victim_items = TRUE var/item_recycle_sound = 'sound/items/tools/welder.ogg' - var/datum/component/material_container/materials + var/datum/material_container/materials /obj/machinery/recycler/Initialize(mapload) - materials = AddComponent( - /datum/component/material_container, \ + materials = new ( + src, \ SSmaterials.materials_by_category[MAT_CATEGORY_SILO], \ INFINITY, \ MATCONTAINER_NO_INSERT \ ) - AddComponent(/datum/component/simple_rotation) + AddElement(/datum/element/simple_rotation) AddComponent( /datum/component/butchering/recycler, \ speed = 0.1 SECONDS, \ @@ -45,7 +45,7 @@ AddElement(/datum/element/connect_loc, loc_connections) /obj/machinery/recycler/Destroy() - materials = null + QDEL_NULL(materials) return ..() /obj/machinery/recycler/RefreshParts() @@ -76,7 +76,7 @@ return SUCCESSFUL_UNFASTEN /obj/machinery/recycler/crowbar_act(mob/living/user, obj/item/tool) - if(default_pry_open(tool, close_after_pry = TRUE)) + if(default_deconstruction_crowbar(tool)) return ITEM_INTERACT_SUCCESS return ITEM_INTERACT_BLOCKING @@ -125,106 +125,91 @@ INVOKE_ASYNC(src, PROC_REF(eat), enterer) /obj/machinery/recycler/proc/eat(atom/movable/morsel, sound=TRUE) - if(machine_stat & (BROKEN|NOPOWER)) - return - if(safety_mode) - return - if(iseffect(morsel)) + if(machine_stat & (BROKEN|NOPOWER) || safety_mode) return if(!isturf(morsel.loc)) - return //I don't know how you called Crossed() but stop it. - if(morsel.resistance_flags & INDESTRUCTIBLE) + stack_trace("on_entered() called with invalid location: [morsel.loc]") // I don't know how you called Entered() but stop it. return - if(morsel.flags_1 & HOLOGRAM_1) - visible_message(span_notice("[morsel] fades away!")) - qdel(morsel) + if(morsel.resistance_flags & INDESTRUCTIBLE) return + /// Queue of objects to process. var/list/atom/to_eat = list(morsel) - - var/living_detected = FALSE //technically includes silicons as well but eh + /// Regular items to be recycled. var/list/nom = list() - var/list/crunchy_nom = list() //Mobs have to be handled differently so they get a different list instead of checking them multiple times. + /// Living mobs to be crushed. + var/list/crunchy_nom = list() // Mobs have to be handled differently so they get a different list instead of checking them multiple times. + /// Count of items that couldn't be processed. var/not_eaten = 0 - while (to_eat.len) - var/atom/movable/thing = to_eat[1] - to_eat -= thing + while(LAZYLEN(to_eat)) + var/atom/movable/thing = popleft(to_eat) - if (thing.flags_1 & HOLOGRAM_1) - qdel(thing) - continue + if(triggers_safety_shutdown(thing)) + emergency_stop() + return - if (thing.resistance_flags & INDESTRUCTIBLE) - if (!isturf(thing.loc) && !recursive_loc_check(thing, /mob/living)) + if(thing.resistance_flags & INDESTRUCTIBLE) + if(!isturf(thing.loc) && !recursive_loc_check(thing, /mob/living)) thing.forceMove(loc) - not_eaten += 1 + not_eaten++ continue - if (isliving(thing)) - living_detected = TRUE - crunchy_nom += thing - if (!issilicon(thing)) - to_eat |= thing.contents + if(thing.flags_1 & HOLOGRAM_1) + for(var/atom/movable/hologram_content as anything in thing.contents) + hologram_content.forceMove(loc) // we shouldn't qdel() the non-holographic content of the hologram. + visible_message(span_notice("[thing] fades away!")) + qdel(thing) continue - if (!isobj(thing)) - not_eaten += 1 + if(isliving(thing)) + LAZYADD(crunchy_nom, thing) + if(!issilicon(thing)) + LAZYOR(to_eat, thing.contents) continue - if (isitem(thing)) - var/obj/item/as_item = thing - if (as_item.item_flags & ABSTRACT) - not_eaten += 1 - continue + if(!isobj(thing)) + not_eaten++ + continue - // Prevent blindly deconstructing locked secure closets (head closets, important departmental orders, etc.) - // unless they have already been unlocked to prevent exploiting the recycler to bypass closet access. - if (iscloset(thing)) - var/obj/structure/closet/as_closet = thing - if (as_closet.secure && as_closet.locked) - not_eaten += 1 + if(isitem(thing)) + var/obj/item/item_thing = thing + if(item_thing.item_flags & ABSTRACT) + not_eaten++ continue - if (istype(thing, /obj/item/organ/brain) || istype(thing, /obj/item/dullahan_relay)) - living_detected = TRUE - - if (istype(thing, /obj/item/mmi)) - var/obj/item/mmi/mmi = thing - if (!isnull(mmi.brain)) - living_detected = TRUE + if(iscloset(thing)) + var/obj/structure/closet/closet_thing = thing + if(closet_thing.secure && closet_thing.locked) // Prevent blindly deconstructing locked secure closets (head closets, important departmental orders, etc.) + not_eaten++ // unless they have already been unlocked to prevent exploiting the recycler to bypass closet access. + continue - nom += thing - to_eat |= thing.contents + LAZYADD(nom, thing) + LAZYOR(to_eat, thing.contents) - if(living_detected) // First, check if we have any living beings detected. - if(obj_flags & EMAGGED) - for(var/CRUNCH in crunchy_nom) // Eat them and keep going because we don't care about safety. - if(!isliving(CRUNCH)) // MMIs and brains will get eaten like normal items - continue + for(var/mob/living/living_mob in crunchy_nom) + if(!is_operational) //we ran out of power after recycling a large amount to living stuff, time to stop + break + if(living_mob.incorporeal_move) + continue - var/mob/living/living_mob = CRUNCH - if(living_mob.incorporeal_move) - continue + crush_living(living_mob) + use_energy(active_power_usage) - if(!is_operational) //we ran out of power after recycling a large amount to living stuff, time to stop - break - crush_living(CRUNCH) - use_energy(active_power_usage) - else // Stop processing right now without eating anything. - emergency_stop() - return + var/nom_length = LAZYLEN(nom) /** * we process the list in reverse so that atoms without parents/contents are deleted first & their parents are deleted next & so on. * this is the reverse order in which get_all_contents() returns its list * if we delete an atom containing stuff then all its stuff are deleted with it as well so we will end recycling deleted items down the list and gain nothing from them */ - for(var/i = length(nom); i >= 1; i--) + for(var/i = nom_length; i >= 1; i--) if(!is_operational) //we ran out of power after recycling a large amount to items, time to stop break + var/full_power_usage = TRUE var/obj/nom_obj = nom[i] + if(isitem(nom_obj) || HAS_TRAIT(nom_obj, TRAIT_RECYCLE_LIKE_ITEM)) // DOPPLER EDIT CHANGE - Lets non-items get their custom materials recycled - ORIGINAL: if (isitem(nom_obj)) // Whether or not items consume full power depends on if they produced a material when recycled. full_power_usage = recycle_item(nom_obj) @@ -232,28 +217,52 @@ // When a non-item is eaten, we deconstruct it with dismantled = FALSE so that // it and its contents aren't just deleted. These always consume full power. nom_obj.deconstruct(FALSE) + use_energy(active_power_usage / (full_power_usage ? 1 : 2)) - if(nom.len && sound) - playsound(src, item_recycle_sound, (50 + nom.len * 5), TRUE, nom.len, ignore_walls = (nom.len - 10)) // As a substitute for playing 50 sounds at once. + if(nom_length && sound) + var/sound_volume = clamp(nom_length * 5, 50, 100) + var/walls_ignoring = max(nom_length - 10, 0) + playsound(src, item_recycle_sound, sound_volume, TRUE, nom_length, ignore_walls = walls_ignoring) // As a substitute for playing 50 sounds at once. + if(not_eaten) - playsound(src, 'sound/machines/buzz/buzz-sigh.ogg', (50 + not_eaten * 5), FALSE, not_eaten, ignore_walls = (not_eaten - 10)) // Ditto. - -/obj/machinery/recycler/proc/recycle_item(obj/item/weapon) - . = FALSE - var/obj/item/grown/log/wood = weapon - if(istype(wood)) - var/seed_modifier = 0 - if(wood.seed) - seed_modifier = round(wood.seed.potency / 25) + var/sound_volume = clamp(not_eaten * 5, 50, 100) + var/walls_ignoring = max(not_eaten - 10, 0) + playsound(src, 'sound/machines/buzz/buzz-sigh.ogg', sound_volume, FALSE, not_eaten, ignore_walls = walls_ignoring) // Ditto. + +/// Determines if the target should trigger an emergency stop due to safety concerns. +/obj/machinery/recycler/proc/triggers_safety_shutdown(atom/movable/target) + if(obj_flags & EMAGGED) + return FALSE // Emagged recycler ignores all safety checks. + + if(isliving(target)) + return TRUE + + if(isbrain(target) || istype(target, /obj/item/dullahan_relay)) + return TRUE + + if(istype(target, /obj/item/mmi)) + var/obj/item/mmi/mmi_thing = target + return !!(mmi_thing.brain) + + return FALSE + +/obj/machinery/recycler/proc/recycle_item(obj/item/target) + if(istype(target, /obj/item/grown/log)) + var/obj/item/grown/log/wood = target + var/seed_modifier = wood.seed ? round(wood.seed.potency / 25) : 0 new wood.plank_type(loc, 1 + seed_modifier) - . = TRUE - else - var/retrieved = materials.insert_item(weapon, multiplier = (amount_produced / 100)) - if(retrieved > 0) //item was salvaged i.e. deleted - materials.retrieve_all() - return TRUE - qdel(weapon) + qdel(target) + return TRUE + + var/retrieved = materials.insert_item(target, multiplier = (amount_produced / 100)) + if(retrieved > 0) //item was salvaged i.e. deleted + materials.retrieve_all() + qdel(target) + return TRUE + + qdel(target) + return FALSE /obj/machinery/recycler/proc/emergency_stop() playsound(src, 'sound/machines/buzz/buzz-sigh.ogg', 50, FALSE) @@ -267,16 +276,13 @@ update_appearance() /obj/machinery/recycler/proc/crush_living(mob/living/living_mob) - living_mob.forceMove(loc) - if(issilicon(living_mob)) playsound(src, 'sound/items/tools/welder.ogg', 50, TRUE) else playsound(src, 'sound/effects/splat.ogg', 50, TRUE) - if(iscarbon(living_mob)) - if(living_mob.stat == CONSCIOUS) - living_mob.say("ARRRRRRRRRRRGH!!!", forced= "recycler grinding") + if(iscarbon(living_mob) && living_mob.stat == CONSCIOUS) + living_mob.say("ARRRRRRRRRRRGH!!!", forced= "recycler grinding") if(!issilicon(living_mob)) add_mob_blood(living_mob) @@ -284,7 +290,7 @@ // Instantly lie down, also go unconscious from the pain, before you die. living_mob.Unconscious(100) - living_mob.adjustBruteLoss(crush_damage) + living_mob.adjust_brute_loss(crush_damage) update_appearance() /obj/machinery/recycler/on_deconstruction(disassembled) diff --git a/code/game/machinery/requests_console.dm b/code/game/machinery/requests_console.dm index 350aaa43be233f..018bfd65e5002f 100644 --- a/code/game/machinery/requests_console.dm +++ b/code/game/machinery/requests_console.dm @@ -129,7 +129,7 @@ GLOBAL_LIST_EMPTY(req_console_ckey_departments) LAZYADD(GLOB.reta_consoles_by_origin[dept_key], src) if(mapload) - find_and_hang_on_wall() + find_and_mount_on_atom() /obj/machinery/requests_console/Destroy() QDEL_LIST(messages) @@ -547,6 +547,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/requests_console/auto_name, 30) icon_state = "req_comp_off" result_path = /obj/machinery/requests_console/auto_name pixel_shift = 30 + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 7) /datum/aas_config_entry/rc_emergency name = "RC Alert: Emergency Request" diff --git a/code/game/machinery/roulette_machine.dm b/code/game/machinery/roulette_machine.dm index e31c72a53b09e2..e9e94686f7f2a5 100644 --- a/code/game/machinery/roulette_machine.dm +++ b/code/game/machinery/roulette_machine.dm @@ -263,7 +263,7 @@ var/account_balance = my_card?.registered_account?.account_balance potential_payout = (account_balance >= potential_payout) ? potential_payout : account_balance - say("You have won [potential_payout] credits! Congratulations!") + say("You have won [potential_payout] [MONEY_NAME]! Congratulations!") playsound(src, 'sound/machines/synth/synth_yes.ogg', 50) if(isliving(user) && (user in viewers(src))) var/mob/living/living_user = user diff --git a/code/game/machinery/scanner_gate.dm b/code/game/machinery/scanner_gate.dm index 49475d53f951ea..27271f3c4b164f 100644 --- a/code/game/machinery/scanner_gate.dm +++ b/code/game/machinery/scanner_gate.dm @@ -87,7 +87,7 @@ COMSIG_ATOM_ENTERED = PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) - AddComponent(/datum/component/simple_rotation, ROTATION_IGNORE_ANCHORED|ROTATION_REQUIRE_WRENCH|ROTATION_NEEDS_UNBLOCKED) + AddElement(/datum/element/simple_rotation, ROTATION_IGNORE_ANCHORED|ROTATION_REQUIRE_WRENCH|ROTATION_NEEDS_UNBLOCKED) register_context() /obj/machinery/scanner_gate/Destroy(force) diff --git a/code/game/machinery/sheetifier.dm b/code/game/machinery/sheetifier.dm index 815b35213b9e57..c689318ddc479a 100644 --- a/code/game/machinery/sheetifier.dm +++ b/code/game/machinery/sheetifier.dm @@ -7,12 +7,12 @@ circuit = /obj/item/circuitboard/machine/sheetifier layer = BELOW_OBJ_LAYER var/busy_processing = FALSE - var/datum/component/material_container/materials + var/datum/material_container/materials /obj/machinery/sheetifier/Initialize(mapload) . = ..() - materials = AddComponent( \ - /datum/component/material_container, \ + materials = new ( \ + src, \ list(/datum/material/meat, /datum/material/hauntium), \ SHEET_MATERIAL_AMOUNT * MAX_STACK_SIZE * 2, \ MATCONTAINER_EXAMINE, \ @@ -24,7 +24,7 @@ ) /obj/machinery/sheetifier/Destroy() - materials = null + QDEL_NULL(materials) return ..() /obj/machinery/sheetifier/update_overlays() diff --git a/code/game/machinery/sleepers.dm b/code/game/machinery/sleepers.dm index 9b843cd5506126..1715ead996807d 100644 --- a/code/game/machinery/sleepers.dm +++ b/code/game/machinery/sleepers.dm @@ -218,10 +218,10 @@ data["occupant"]["health"] = mob_occupant.health data["occupant"]["maxHealth"] = mob_occupant.maxHealth data["occupant"]["minHealth"] = HEALTH_THRESHOLD_DEAD - data["occupant"]["bruteLoss"] = mob_occupant.getBruteLoss() - data["occupant"]["oxyLoss"] = mob_occupant.getOxyLoss() - data["occupant"]["toxLoss"] = mob_occupant.getToxLoss() - data["occupant"]["fireLoss"] = mob_occupant.getFireLoss() + data["occupant"]["bruteLoss"] = mob_occupant.get_brute_loss() + data["occupant"]["oxyLoss"] = mob_occupant.get_oxy_loss() + data["occupant"]["toxLoss"] = mob_occupant.get_tox_loss() + data["occupant"]["fireLoss"] = mob_occupant.get_fire_loss() data["occupant"]["brainLoss"] = mob_occupant.get_organ_loss(ORGAN_SLOT_BRAIN) data["occupant"]["reagents"] = list() if(mob_occupant.reagents && mob_occupant.reagents.reagent_list.len) diff --git a/code/game/machinery/slotmachine.dm b/code/game/machinery/slotmachine.dm index a5c6bfdc1a87aa..ded188b82bd1bd 100644 --- a/code/game/machinery/slotmachine.dm +++ b/code/game/machinery/slotmachine.dm @@ -122,7 +122,7 @@ var/obj/item/holochip/inserted_chip = inserted if(!user.temporarilyRemoveItemFromInventory(inserted_chip)) return ITEM_INTERACT_BLOCKING - balloon_alert(user, "[inserted_chip.credits] credit[inserted_chip.credits == 1 ? "" : "s"] inserted") + balloon_alert(user, "[inserted_chip.credits] [MONEY_NAME_AUTOPURAL(inserted_chip.credits)] inserted") balance += inserted_chip.credits qdel(inserted_chip) return ITEM_INTERACT_SUCCESS @@ -309,7 +309,7 @@ else if(check_jackpot(JACKPOT_SEVENS)) var/prize = money + JACKPOT - visible_message("[src] says, 'JACKPOT! You win [prize] credits!'") + visible_message("[src] says, 'JACKPOT! You win [prize] [MONEY_NAME]!'") priority_announce("Congratulations to [user ? user.real_name : usrname] for winning the jackpot at the slot machine in [get_area(src)]!") if(isliving(user) && (user in viewers(src))) var/mob/living/living_user = user @@ -327,14 +327,14 @@ sleep(REEL_DEACTIVATE_DELAY) else if(linelength == 5) - visible_message("[src] says, 'Big Winner! You win a thousand credits!'") + visible_message("[src] says, 'Big Winner! You win a thousand [MONEY_NAME]!'") give_money(BIG_PRIZE) if(isliving(user) && (user in viewers(src))) var/mob/living/living_user = user living_user.add_mood_event("slots", /datum/mood_event/slots/win/big) else if(linelength == 4) - visible_message("[src] says, 'Winner! You win four hundred credits!'") + visible_message("[src] says, 'Winner! You win four hundred [MONEY_NAME]!'") give_money(SMALL_PRIZE) if(isliving(user) && (user in viewers(src))) var/mob/living/living_user = user diff --git a/code/game/machinery/spaceheater.dm b/code/game/machinery/spaceheater.dm index 0e1f8ae06298e3..3010b84b19ea9a 100644 --- a/code/game/machinery/spaceheater.dm +++ b/code/game/machinery/spaceheater.dm @@ -39,8 +39,8 @@ var/settable_temperature_median = 30 + T0C ///Range of temperatures above and below the median that we can set our target temperature (increase by upgrading the capacitors) var/settable_temperature_range = 30 - ///Should we add an overlay for open spaceheaters - var/display_panel = TRUE + /// The icon_state of the emissive, because improvised heaters are special and don't follow along with the modes + var/emissive_state /datum/armor/machinery_space_heater fire = 80 @@ -118,8 +118,12 @@ /obj/machinery/space_heater/update_overlays() . = ..() - if(panel_open && display_panel) + + if(on) + . += emissive_appearance(icon, "[emissive_state ? emissive_state : base_icon_state + "-" + mode]-emissive", src, alpha = src.alpha) + if(panel_open) . += "[base_icon_state]-open" + . += emissive_blocker(icon, "[base_icon_state]-open", src, alpha = src.alpha) /obj/machinery/space_heater/on_set_panel_open() update_appearance() @@ -313,16 +317,14 @@ ///For use with heating reagents in a ghetto way /obj/machinery/space_heater/improvised_chem_heater - icon = 'icons/obj/medical/chemical.dmi' - icon_state = "sheater-off" name = "improvised chem heater" desc = "A space heater fashioned to reroute heating to a water bath on top." panel_open = TRUE //This is always open - since we've injected wires in the panel //We inherit the cell from the heater prior cell = null interaction_flags_click = FORBID_TELEKINESIS_REACH - display_panel = FALSE settable_temperature_range = 50 + custom_materials = list(/datum/material/glass = SHEET_MATERIAL_AMOUNT * 3, /datum/material/iron = SHEET_MATERIAL_AMOUNT * 2) ///The beaker within the heater var/obj/item/reagent_containers/beaker = null /// How quickly it delivers heat to the reagents. In watts per joule of the thermal energy difference of the reagent from the temperature difference of the current and target temperatures. @@ -479,14 +481,24 @@ . = ..() if(!on || !beaker || !cell) icon_state = "sheater-off" + emissive_state = null return if(target_temperature < beaker.reagents.chem_temp) icon_state = "sheater-cool" + emissive_state = icon_state return if(target_temperature > beaker.reagents.chem_temp) icon_state = "sheater-heat" + emissive_state = icon_state return icon_state = "sheater-off" + emissive_state = null + +/obj/machinery/space_heater/improvised_chem_heater/update_overlays() + . += ..() + . += "[icon_state]-beaker" + . += "[base_icon_state]-rigged" + . += emissive_blocker(icon, "[base_icon_state]-rigged", src, alpha = src.alpha) /obj/machinery/space_heater/improvised_chem_heater/RefreshParts() . = ..() diff --git a/code/game/machinery/status_display.dm b/code/game/machinery/status_display.dm index b925baf894fd96..69a8555f3e1ab5 100644 --- a/code/game/machinery/status_display.dm +++ b/code/game/machinery/status_display.dm @@ -403,12 +403,10 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/status_display/evac, 32) // register for radio system SSradio.add_object(src, frequency) // Circuit USB - AddComponent(/datum/component/usb_port, list( - /obj/item/circuit_component/status_display, - )) + AddComponent(/datum/component/usb_port, typecacheof(list(/obj/item/circuit_component/status_display), only_root_path = TRUE)) RegisterSignal(SSsecurity_level, COMSIG_SECURITY_LEVEL_CHANGED, PROC_REF(on_sec_level_change)) if(mapload) - find_and_hang_on_wall() + find_and_mount_on_atom() /obj/machinery/status_display/evac/Destroy() SSradio.remove_object(src,frequency) @@ -744,7 +742,8 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/status_display/ai, 32) . = ..() // register for radio system to receive AI emote signals SSradio.add_object(src, frequency) - find_and_hang_on_wall() + if(mapload) + find_and_mount_on_atom() /obj/machinery/status_display/ai/Destroy() SSradio.remove_object(src, frequency) @@ -776,7 +775,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/status_display/ai, 32) icon_state = GLOB.ai_status_display_emotes[emotion] // Default fallback else - icon_state = "ai_neutral" + icon_state = "ai_download" set_picture(icon_state) return PROCESS_KILL @@ -1030,7 +1029,7 @@ GLOBAL_LIST_EMPTY_TYPED(greenscreen_displays, /obj/effect/abstract/greenscreen_d /obj/machinery/greenscreen_camera/Initialize(mapload) . = ..() - AddComponent(/datum/component/simple_rotation, ROTATION_IGNORE_ANCHORED) + AddElement(/datum/element/simple_rotation, ROTATION_IGNORE_ANCHORED) update_appearance(UPDATE_OVERLAYS) /obj/machinery/greenscreen_camera/Destroy() diff --git a/code/game/machinery/suit_storage_unit.dm b/code/game/machinery/suit_storage_unit.dm index ea9e9383aa33d4..860bacc37e46fd 100644 --- a/code/game/machinery/suit_storage_unit.dm +++ b/code/game/machinery/suit_storage_unit.dm @@ -80,12 +80,12 @@ /obj/machinery/suit_storage_unit/captain mask_type = /obj/item/clothing/mask/gas/atmos/captain - storage_type = /obj/item/tank/jetpack/oxygen/captain + storage_type = /obj/item/tank/jetpack/captain mod_type = /obj/item/mod/control/pre_equipped/magnate /obj/machinery/suit_storage_unit/centcom mask_type = /obj/item/clothing/mask/gas/atmos/centcom - storage_type = /obj/item/tank/jetpack/oxygen/captain + storage_type = /obj/item/tank/jetpack/captain mod_type = /obj/item/mod/control/pre_equipped/corporate /obj/machinery/suit_storage_unit/engine @@ -137,7 +137,7 @@ /obj/machinery/suit_storage_unit/syndicate mask_type = /obj/item/clothing/mask/gas/syndicate - storage_type = /obj/item/tank/jetpack/oxygen/harness + storage_type = /obj/item/tank/jetpack/harness mod_type = /obj/item/mod/control/pre_equipped/nuclear /obj/machinery/suit_storage_unit/syndicate/lavaland @@ -493,9 +493,9 @@ update_appearance() if(mob_occupant) if(uv_super) - mob_occupant.adjustFireLoss(rand(20, 36)) + mob_occupant.adjust_fire_loss(rand(20, 36)) else - mob_occupant.adjustFireLoss(rand(10, 16)) + mob_occupant.adjust_fire_loss(rand(10, 16)) if(iscarbon(mob_occupant) && mob_occupant.stat < UNCONSCIOUS) //Awake, organic and screaming mob_occupant.painful_scream() // DOPPLER EDIT: check for painkilling before screaming diff --git a/code/game/machinery/syndicatebomb.dm b/code/game/machinery/syndicatebomb.dm index 726338848ecde1..d28b9b5694ca37 100644 --- a/code/game/machinery/syndicatebomb.dm +++ b/code/game/machinery/syndicatebomb.dm @@ -15,6 +15,7 @@ subsystem_type = /datum/controller/subsystem/processing/fastprocess interaction_flags_machine = INTERACT_MACHINE_WIRES_IF_OPEN | INTERACT_MACHINE_OFFLINE use_power = NO_POWER_USE + custom_materials = list(/datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT * 10) /// What is the lowest amount of time we can set the timer to? var/minimum_timer = SYNDIEBOMB_MIN_TIMER_SECONDS @@ -276,7 +277,7 @@ activate() add_fingerprint(user) // We don't really concern ourselves with duds or fakes after this - if(isnull(payload) || istype(payload, /obj/machinery/syndicatebomb/training)) + if(isnull(payload) || istype(payload, /obj/item/bombcore/training)) return notify_ghosts( @@ -356,6 +357,7 @@ w_class = WEIGHT_CLASS_NORMAL flags_1 = PREVENT_CONTENTS_EXPLOSION_1 // We detonate upon being exploded. resistance_flags = FLAMMABLE //Burnable (but the casing isn't) + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2.05) var/adminlog = null var/range_heavy = 3 var/range_medium = 9 diff --git a/code/game/machinery/telecomms/machine_interactions.dm b/code/game/machinery/telecomms/machine_interactions.dm index 7a606d42641957..9b733931db20ad 100644 --- a/code/game/machinery/telecomms/machine_interactions.dm +++ b/code/game/machinery/telecomms/machine_interactions.dm @@ -322,7 +322,7 @@ info["name"] = new_name // No color changing for channels with theme settings if(!GLOB.freqtospan["[freq]"]) - var/new_color = input(usr, "Choose color for frequency", "Modifying Frequency Information", info["color"]) as color|null + var/new_color = tgui_color_picker(usr, "Choose color for frequency", "Modifying Frequency Information", info["color"]) if(new_color) info["color"] = new_color frequency_infos[params["freq"]] = info @@ -341,7 +341,7 @@ for(var/list/channel in get_channels()) if(channel["freq"] == freq || channel["name"] == name) return - var/color = input(usr, "Choose color for frequency", "Adding Frequency Information") as color|null + var/color = tgui_color_picker(usr, "Choose color for frequency", "Adding Frequency Information") if(!color) return frequency_infos[num2text(freq)] = list( diff --git a/code/game/machinery/transformer.dm b/code/game/machinery/transformer.dm index f9c31487234e52..8a0b8c60c1752d 100644 --- a/code/game/machinery/transformer.dm +++ b/code/game/machinery/transformer.dm @@ -91,8 +91,8 @@ update_appearance() playsound(src.loc, 'sound/items/tools/welder.ogg', 50, TRUE) - victim.painful_scream() // DOPPLER EDIT: check for painkilling before screaming // It is painful - victim.adjustBruteLoss(max(0, 80 - victim.getBruteLoss())) // Hurt the human, don't try to kill them though. + victim.painful_scream() // DOPPLER EDIT - Check painkiller for screams - ORIGINAL: victim.emote("scream") // It is painful + victim.adjust_brute_loss(max(0, 80 - victim.get_brute_loss())) // Hurt the human, don't try to kill them though. // Sleep for a couple of ticks to allow the human to see the pain sleep(0.5 SECONDS) diff --git a/code/game/machinery/wall_healer.dm b/code/game/machinery/wall_healer.dm index cde06ebb98aa8d..3bcef5c124aef7 100644 --- a/code/game/machinery/wall_healer.dm +++ b/code/game/machinery/wall_healer.dm @@ -70,7 +70,7 @@ init_payment() register_context() if(mapload) - find_and_hang_on_wall() + find_and_mount_on_atom() /obj/machinery/wall_healer/Destroy() clear_using_mob() @@ -487,10 +487,10 @@ add_mob_blood(current_user) return - var/brute_healing_now = round(min(initial(brute_healing) * 0.1, brute_healing, current_user.getBruteLoss()), DAMAGE_PRECISION) - var/burn_healing_now = round(min(initial(burn_healing) * 0.1, burn_healing, current_user.getFireLoss()), DAMAGE_PRECISION) - var/tox_healing_now = round(min(initial(tox_healing) * 0.1, tox_healing, current_user.getToxLoss()), DAMAGE_PRECISION) - var/blood_healing_now = HAS_TRAIT(current_user, TRAIT_NOBLOOD) ? 0 : round(min(initial(blood_healing) * 0.1, blood_healing, max(BLOOD_VOLUME_OKAY - current_user.blood_volume, 0)), 0.1) + var/brute_healing_now = round(min(initial(brute_healing) * 0.1, brute_healing, current_user.get_brute_loss()), DAMAGE_PRECISION) + var/burn_healing_now = round(min(initial(burn_healing) * 0.1, burn_healing, current_user.get_fire_loss()), DAMAGE_PRECISION) + var/tox_healing_now = round(min(initial(tox_healing) * 0.1, tox_healing, current_user.get_tox_loss()), DAMAGE_PRECISION) + var/blood_healing_now = round(min(initial(blood_healing) * 0.1, blood_healing, max(0, BLOOD_VOLUME_OKAY - current_user.get_blood_volume())), 0.1) var/cost = round(per_heal_cost * (brute_healing_now + burn_healing_now + tox_healing_now + blood_healing_now), 1) if(attempt_charge(src, current_user, extra_fees = cost) & COMPONENT_OBJ_CANCEL_CHARGE) @@ -502,18 +502,17 @@ var/amount_healed = 0 if(brute_healing_now) - amount_healed += current_user.adjustBruteLoss(-brute_healing_now, required_bodytype = BODYTYPE_ORGANIC) + amount_healed += current_user.adjust_brute_loss(-brute_healing_now, required_bodytype = BODYTYPE_ORGANIC) brute_healing -= brute_healing_now add_mob_blood(current_user) if(burn_healing_now) - amount_healed += current_user.adjustFireLoss(-burn_healing_now, required_bodytype = BODYTYPE_ORGANIC) + amount_healed += current_user.adjust_fire_loss(-burn_healing_now, required_bodytype = BODYTYPE_ORGANIC) burn_healing -= burn_healing_now if(tox_healing_now) - amount_healed += current_user.adjustToxLoss(-tox_healing_now, required_biotype = MOB_ORGANIC) + amount_healed += current_user.adjust_tox_loss(-tox_healing_now, required_biotype = MOB_ORGANIC) tox_healing -= tox_healing_now if(blood_healing_now) - current_user.blood_volume += blood_healing_now - amount_healed += blood_healing_now + amount_healed += current_user.adjust_blood_volume(blood_healing_now, maximum = BLOOD_VOLUME_OKAY) blood_healing -= blood_healing_now add_mob_blood(current_user) @@ -528,10 +527,10 @@ playsound(src, 'sound/machines/defib/defib_saftyOff.ogg', 50, FALSE, SHORT_RANGE_SOUND_EXTRARANGE) if(antispam_counter % 3 != 1) return - var/missed_brute_healing = brute_healing_now > 0 && !current_user.getBruteLoss() - var/missed_burn_healing = burn_healing_now > 0 && !current_user.getFireLoss() - var/missed_tox_healing = tox_healing_now > 0 && !current_user.getToxLoss() - var/missed_blood_healing = blood_healing_now > 0 && current_user.blood_volume >= BLOOD_VOLUME_OKAY + var/missed_brute_healing = brute_healing_now > 0 && !current_user.get_brute_loss() + var/missed_burn_healing = burn_healing_now > 0 && !current_user.get_fire_loss() + var/missed_tox_healing = tox_healing_now > 0 && !current_user.get_tox_loss() + var/missed_blood_healing = blood_healing_now > 0 && current_user.get_blood_volume() >= BLOOD_VOLUME_OKAY if(missed_brute_healing || missed_burn_healing || missed_tox_healing || missed_blood_healing) to_chat(current_user, span_notice("Nothing happens. Seems like [src] needs to recharge.")) return diff --git a/code/game/machinery/washing_machine.dm b/code/game/machinery/washing_machine.dm index e52ea36acec7bf..f251dfb41fc968 100644 --- a/code/game/machinery/washing_machine.dm +++ b/code/game/machinery/washing_machine.dm @@ -180,16 +180,33 @@ GLOBAL_LIST_INIT(dye_registry, list( icon_state = "wm_1_0" density = TRUE state_open = TRUE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 5, /datum/material/glass = SHEET_MATERIAL_AMOUNT) + circuit = /obj/item/circuitboard/machine/washing_machine var/busy = FALSE var/bloody_mess = FALSE var/obj/item/color_source - var/max_wash_capacity = 5 + /// The max amount of items that can be washed per load + var/max_wash_capacity + /// The time it takes to wash a load of laundry + var/time_to_wash + /// The current number of items inserted + var/total_load = 0 /obj/machinery/washing_machine/examine(mob/user) . = ..() if(!busy) . += span_notice("Right-click with an empty hand to start a wash cycle.") +/obj/machinery/washing_machine/RefreshParts() + . = ..() + var/total_volume = 0 + for(var/obj/item/reagent_containers/cup/beaker/beaker in component_parts) + total_volume += beaker.reagents.maximum_volume + max_wash_capacity = floor(total_volume/20) + + for(var/datum/stock_part/servo/servo in component_parts) + time_to_wash = 20 SECONDS / servo.tier + /obj/machinery/washing_machine/process(seconds_per_tick) if(!busy) animate(src, transform=matrix(), time=2) @@ -290,7 +307,7 @@ GLOBAL_LIST_INIT(dye_registry, list( /mob/living/carbon/human/machine_wash(obj/machinery/washing_machine/washer, mob/user) adjust_wet_stacks(8) adjust_disgust(40, DISGUST_LEVEL_VERYDISGUSTED) - adjustOxyLoss(12) + adjust_oxy_loss(12) log_combat(user, src, "machine washed (oxy)") /obj/item/machine_wash(obj/machinery/washing_machine/washer) @@ -329,7 +346,7 @@ GLOBAL_LIST_INIT(dye_registry, list( icon_state = "wm_[state_open]_blood" return ..() - var/full = contents.len ? 1 : 0 + var/full = total_load ? 1 : 0 icon_state = "wm_[state_open]_[full]" return ..() @@ -361,7 +378,7 @@ GLOBAL_LIST_INIT(dye_registry, list( if(bloody_mess) to_chat(user, span_warning("[src] must be cleaned up first!")) return ITEM_INTERACT_BLOCKING - if(contents.len >= max_wash_capacity) + if(total_load >= max_wash_capacity) to_chat(user, span_warning("The washing machine is full!")) return ITEM_INTERACT_BLOCKING if(!user.transferItemToLoc(item, src)) @@ -369,6 +386,7 @@ GLOBAL_LIST_INIT(dye_registry, list( return ITEM_INTERACT_BLOCKING if(item.dye_color) color_source = item + total_load++ update_appearance() return ITEM_INTERACT_SUCCESS @@ -431,7 +449,7 @@ GLOBAL_LIST_INIT(dye_registry, list( if(HAS_TRAIT(user, TRAIT_BRAINWASHING)) ADD_TRAIT(src, TRAIT_BRAINWASHING, SKILLCHIP_TRAIT) update_appearance() - addtimer(CALLBACK(src, PROC_REF(wash_cycle), user), 20 SECONDS) + addtimer(CALLBACK(src, PROC_REF(wash_cycle), user), time_to_wash) START_PROCESSING(SSfastprocess, src) return SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN @@ -445,3 +463,4 @@ GLOBAL_LIST_INIT(dye_registry, list( . = ..() set_density(TRUE) //because machinery/open_machine() sets it to FALSE color_source = null + total_load = 0 diff --git a/code/game/objects/buckling.dm b/code/game/objects/buckling.dm index 2b1fdbf73897cf..567f0933d12489 100644 --- a/code/game/objects/buckling.dm +++ b/code/game/objects/buckling.dm @@ -9,6 +9,8 @@ var/buckle_requires_restraints = FALSE /// The mobs currently buckled to this atom var/list/mob/living/buckled_mobs = null //list() + /// How much time it takes to buckle a mob to us? + var/buckle_delay = 2 SECONDS /// The maximum number of mob/livings allowed to be buckled to this atom at once var/max_buckled_mobs = 1 /// Whether things buckled to this atom can be pulled while they're buckled @@ -104,7 +106,14 @@ RegisterSignal(src, COMSIG_MOVABLE_SET_ANCHORED, PROC_REF(on_set_anchored)) M.set_buckled(src) buckled_mobs |= M - M.throw_alert(ALERT_BUCKLED, /atom/movable/screen/alert/buckled) + + ///If the icon is too big, don't add it to the screen alert + var/add_src_icon = TRUE + var/list/dim = get_icon_dimensions(icon) + if(dim["height"] > ICON_SIZE_Y || dim["width"] > ICON_SIZE_X) + add_src_icon = FALSE + + M.throw_alert(ALERT_BUCKLED, /atom/movable/screen/alert/buckled, new_master = add_src_icon ? src : null) M.set_glide_size(glide_size) M.Move(loc) @@ -314,7 +323,7 @@ M.visible_message(span_warning("[user] starts buckling [M] to [src]!"),\ span_userdanger("[user] starts buckling you to [src]!"),\ span_hear("You hear metal clanking.")) - if(!do_after(user, 2 SECONDS, M)) + if(!do_after(user, buckle_delay, M)) return FALSE // Sanity check before we attempt to buckle. Is everything still in a kosher state for buckling after the 3 seconds have elapsed? diff --git a/code/game/objects/effects/anomalies/anomalies_dimensional_themes.dm b/code/game/objects/effects/anomalies/anomalies_dimensional_themes.dm index 75b07ba9c1e421..0b1e620abdcf14 100644 --- a/code/game/objects/effects/anomalies/anomalies_dimensional_themes.dm +++ b/code/game/objects/effects/anomalies/anomalies_dimensional_themes.dm @@ -155,7 +155,8 @@ if(istype(object, /obj/machinery/door/airlock)) if(istype(new_object, /obj/machinery/door/airlock)) //carry over access-related and adjacent variables. The rest is not as important var/obj/machinery/door/airlock/airlock = object - var/obj/machinery/door/new_airlock = new_object + var/obj/machinery/door/airlock/new_airlock = new_object + new_airlock.closeOtherId = airlock.closeOtherId new_airlock.unres_sides = airlock.unres_sides new_airlock.req_access = airlock.req_access?.Copy() new_airlock.req_one_access = airlock.req_one_access?.Copy() diff --git a/code/game/objects/effects/anomalies/anomalies_flux.dm b/code/game/objects/effects/anomalies/anomalies_flux.dm index 1d823d00b60b5b..ddf7b0367336a3 100644 --- a/code/game/objects/effects/anomalies/anomalies_flux.dm +++ b/code/game/objects/effects/anomalies/anomalies_flux.dm @@ -44,10 +44,10 @@ /obj/effect/anomaly/flux/detonate() switch(emp_zap) if(FLUX_EMP) - empulse(src, 4, 16) + empulse(src, 4, 16, emp_source = src) explosion(src, heavy_impact_range = 1, light_impact_range = 4, flash_range = 6) //Trashes the room a bit, might blow a small hole in the hull. if(FLUX_LIGHT_EMP) - empulse(src, 4, 6) + empulse(src, 4, 6, emp_source = src) explosion(src, light_impact_range = 3, flash_range = 6) if(FLUX_NO_EMP) new /obj/effect/particle_effect/sparks(loc) diff --git a/code/game/objects/effects/anomalies/anomalies_weather.dm b/code/game/objects/effects/anomalies/anomalies_weather.dm new file mode 100644 index 00000000000000..ea407acfa3af19 --- /dev/null +++ b/code/game/objects/effects/anomalies/anomalies_weather.dm @@ -0,0 +1,100 @@ +/obj/effect/anomaly/weather + name = "weather anomaly" + anomaly_core = /obj/item/assembly/signaler/anomaly/weather + lifespan = ANOMALY_COUNTDOWN_TIMER * 2.5 + + /// Chance per turf per second that we will produce thunder. Use the defines + var/thunder_chance = 0 + /// The type of weather this anomaly will produce. If unset, will be picked from select_weather() + var/datum/weather/weather_type + /// List of active weathers spawned by this anomaly + VAR_PRIVATE/list/active_weathers + +/obj/effect/anomaly/weather/Initialize(mapload, new_lifespan, drops_core, forced_anomaly_type = src.weather_type, forced_thunder_chance = src.thunder_chance) + . = ..() + + add_atom_colour(COLOR_MATRIX_INVERT, FIXED_COLOUR_PRIORITY) + + weather_type = forced_anomaly_type || select_weather() + thunder_chance = forced_thunder_chance + + active_weathers = list() + + var/telegraph = lifespan / 5 // 1/5th of the time is dedicated to telegraphing, to give people time to find and defuse it + var/end_dur = lifespan / 15 // then 1/15th of the time is dedicated to winding down + var/total_dur = lifespan - telegraph - end_dur + + var/list/affected_areas = list(impact_area) + var/list/num_turfs = length(impact_area.get_turfs_from_all_zlevels()) + for(var/spread_dir in GLOB.alldirs) + var/area/nearby = find_adjacent_impacted_area(spread_dir) + // prevents nearby the central hallway from basically always being included + if(isnull(nearby) || length(nearby.get_turfs_from_all_zlevels()) > num_turfs * 1.5) + continue + affected_areas |= nearby + + var/datum/weather/weather = SSweather.run_weather( + weather_datum_type = weather_type, + z_levels = z, + weather_data = list( + WEATHER_FORCED_AREAS = affected_areas, + WEATHER_FORCED_FLAGS = weather_type::weather_flags | WEATHER_INDOORS | WEATHER_THUNDER | WEATHER_STRICT_ALERT, + WEATHER_FORCED_THUNDER = thunder_chance, + WEATHER_FORCED_TELEGRAPH = telegraph, + WEATHER_FORCED_END = end_dur, + WEATHER_FORCED_DURATION = total_dur, + ) + ) + RegisterSignal(weather, COMSIG_QDELETING, PROC_REF(clear_ref)) + active_weathers += weather + +/obj/effect/anomaly/weather/proc/clear_ref(datum/weather/weather_datum) + SIGNAL_HANDLER + active_weathers -= weather_datum + UnregisterSignal(weather_datum, COMSIG_QDELETING) + +/obj/effect/anomaly/weather/proc/select_weather() + return pick( + /datum/weather/rain_storm, + /datum/weather/snow_storm, + /datum/weather/sand_storm, + ) + +/// steps outward from src to find an area that is not the impact_area. +/obj/effect/anomaly/weather/proc/find_adjacent_impacted_area(check_dir) + var/limit = 9 + var/turf/next_turf = get_step(src, check_dir) + while(next_turf.loc == impact_area && limit > 0) + next_turf = get_step(next_turf, check_dir) + if(isnull(next_turf)) + return null + limit -= 1 + + return next_turf.loc + +/obj/effect/anomaly/weather/anomalyNeutralize() + for(var/datum/weather/weather_datum as anything in active_weathers) + weather_datum?.wind_down() + return ..() + +/obj/effect/anomaly/weather/detonate() + playsound(src, 'sound/effects/magic/repulse.ogg', 100, TRUE) + for(var/atom/movable/repulsed in range(src, 5)) + if(repulsed == src || repulsed.anchored) + continue + var/throwtarget = get_edge_target_turf(src, get_dir(src, get_step_away(repulsed, src))) + repulsed.safe_throw_at(throwtarget, 6, 2, src, force = MOVE_FORCE_EXTREMELY_STRONG) + +/obj/effect/anomaly/weather/Destroy() + for(var/datum/weather/weather_datum as anything in active_weathers) + clear_ref(weather_datum) + return ..() + +/obj/effect/anomaly/weather/thundering + name = "thundering weather anomaly" + + thunder_chance = THUNDER_CHANCE_HIGH + // maybe we can put acid rain in this later? + // though it'd feel unfair if it showed up and immediately dumped acid on people. + // we would need an even longer telegraphing time for that + weather_type = /datum/weather/rain_storm diff --git a/code/game/objects/effects/blessing.dm b/code/game/objects/effects/blessing.dm index 540be85db4ed55..f4f9ea3814001f 100644 --- a/code/game/objects/effects/blessing.dm +++ b/code/game/objects/effects/blessing.dm @@ -6,16 +6,22 @@ anchored = TRUE density = FALSE mouse_opacity = MOUSE_OPACITY_TRANSPARENT + /// Is this blessing visible to those with the ability to see blessed tiles? (chaplains) + var/invisible /obj/effect/blessing/Initialize(mapload) . = ..() + + RegisterSignal(loc, COMSIG_ATOM_INTERCEPT_TELEPORTING, PROC_REF(block_cult_teleport)) + + if(invisible) + return + var/image/blessing_icon = image(icon = 'icons/effects/effects.dmi', icon_state = "blessed", layer = ABOVE_NORMAL_TURF_LAYER, loc = src) blessing_icon.alpha = 64 blessing_icon.appearance_flags = RESET_ALPHA add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/blessed_aware, "blessing", blessing_icon) - RegisterSignal(loc, COMSIG_ATOM_INTERCEPT_TELEPORTING, PROC_REF(block_cult_teleport)) - /obj/effect/blessing/Destroy() UnregisterSignal(loc, COMSIG_ATOM_INTERCEPT_TELEPORTING) return ..() @@ -26,3 +32,6 @@ if(channel == TELEPORT_CHANNEL_CULT) return TRUE + +/obj/effect/blessing/invisible + invisible = TRUE diff --git a/code/game/objects/effects/decals/cleanable/blood.dm b/code/game/objects/effects/decals/cleanable/blood.dm index 1433d3451caba9..c6b342cb7bc5fe 100644 --- a/code/game/objects/effects/decals/cleanable/blood.dm +++ b/code/game/objects/effects/decals/cleanable/blood.dm @@ -739,11 +739,10 @@ . += bloodstep_overlay if(emissive_alpha && emissive_alpha < alpha && !dried) - var/enter_emissive_state = "[enter_state]_emissive-[emissive_alpha]" - var/mutable_appearance/emissive_overlay = bloody_footprints_cache[enter_emissive_state] + var/enter_emissive_state = "[enter_state]_emissive-[Ddir]-[emissive_alpha]" + var/image/emissive_overlay = bloody_footprints_cache[enter_emissive_state] if(!emissive_overlay) - emissive_overlay = blood_emissive(icon, "[icon_state_to_use]1") - emissive_overlay.dir = Ddir + emissive_overlay = image(blood_emissive(icon, "[icon_state_to_use]1"), dir = Ddir) bloody_footprints_cache[enter_emissive_state] = emissive_overlay . += emissive_overlay @@ -756,11 +755,10 @@ . += bloodstep_overlay if(emissive_alpha && emissive_alpha < alpha && !dried) - var/exit_emissive_state = "[exit_state]_emissive-[emissive_alpha]" - var/mutable_appearance/emissive_overlay = bloody_footprints_cache[exit_emissive_state] + var/exit_emissive_state = "[exit_state]_emissive-[Ddir]-[emissive_alpha]" + var/image/emissive_overlay = bloody_footprints_cache[exit_emissive_state] if(!emissive_overlay) - emissive_overlay = blood_emissive(icon, "[icon_state_to_use]2") - emissive_overlay.dir = Ddir + emissive_overlay = image(blood_emissive(icon, "[icon_state_to_use]2"), dir = Ddir) bloody_footprints_cache[exit_emissive_state] = emissive_overlay . += emissive_overlay diff --git a/code/game/objects/effects/decals/cleanable/fuel.dm b/code/game/objects/effects/decals/cleanable/fuel.dm index e372e93c43d67a..ced0b5376b1b7d 100644 --- a/code/game/objects/effects/decals/cleanable/fuel.dm +++ b/code/game/objects/effects/decals/cleanable/fuel.dm @@ -78,8 +78,9 @@ /obj/effect/decal/cleanable/fuel_pool/bullet_act(obj/projectile/hit_proj) . = ..() - ignite() - log_combat(hit_proj.firer, src, "used [hit_proj] to ignite") + if(hit_proj.damage > 0) + ignite() + log_combat(hit_proj.firer, src, "used [hit_proj] to ignite") /obj/effect/decal/cleanable/fuel_pool/attackby(obj/item/item, mob/user, list/modifiers, list/attack_modifiers) if(item.ignition_effect(src, user)) diff --git a/code/game/objects/effects/decals/cleanable/mess.dm b/code/game/objects/effects/decals/cleanable/mess.dm index 1a2e307c1b3bc5..1d250034609be0 100644 --- a/code/game/objects/effects/decals/cleanable/mess.dm +++ b/code/game/objects/effects/decals/cleanable/mess.dm @@ -82,7 +82,7 @@ if(!isnull(broken_flooring)) return var/turf/T = get_turf(src) - if(T.tiled_dirt && is_tileable) + if(T.tiled_turf && is_tileable) icon = 'icons/effects/dirt.dmi' icon_state = "dirt-0" smoothing_flags = SMOOTH_BITMASK @@ -383,3 +383,7 @@ GLOBAL_LIST_EMPTY(nebula_vomits) flick("rubble_bounce", src) icon_state = "rubble" update_appearance(UPDATE_ICON_STATE) + +/obj/effect/decal/cleanable/can_bits + name = "shredded can" + desc = "This story doesn't hold water anymore." diff --git a/code/game/objects/effects/decals/decal.dm b/code/game/objects/effects/decals/decal.dm index be3e03d5e6e672..b8069b0ab41a44 100644 --- a/code/game/objects/effects/decals/decal.dm +++ b/code/game/objects/effects/decals/decal.dm @@ -19,6 +19,7 @@ while(isopenspaceturf(loc) && can_z_move(DOWN, z_move_flags = ZMOVE_ALLOW_ANCHORED)) zMove(DOWN, z_move_flags = ZMOVE_ALLOW_ANCHORED) AddElement(/datum/element/connect_loc, loc_connections) + AddElement(/datum/element/force_move_pulled) /obj/effect/decal/blob_act(obj/structure/blob/B) if(B && B.loc == loc) diff --git a/code/game/objects/effects/decals/remains.dm b/code/game/objects/effects/decals/remains.dm index a527317b476693..16254e9610c64a 100644 --- a/code/game/objects/effects/decals/remains.dm +++ b/code/game/objects/effects/decals/remains.dm @@ -48,7 +48,7 @@ ///Releases a cloud of smoke based on the randomly generated reagent in Initialize(). /obj/effect/decal/remains/human/smokey/proc/release_smoke(mob/living/smoke_releaser) - visible_message(span_warning("[smoke_releaser] disturbs the [src], which releases a huge cloud of gas!")) + visible_message(span_warning("[smoke_releaser] disturbs [src], which releases a huge cloud of gas!")) var/datum/effect_system/fluid_spread/smoke/chem/cigarette_puff = new() cigarette_puff.chemholder.add_reagent(that_shit_that_killed_saddam, 15) cigarette_puff.attach(get_turf(src)) diff --git a/code/game/objects/effects/decals/turfdecal/markings.dm b/code/game/objects/effects/decals/turfdecal/markings.dm index 53815dd6457f66..ccca8d281f3a62 100644 --- a/code/game/objects/effects/decals/turfdecal/markings.dm +++ b/code/game/objects/effects/decals/turfdecal/markings.dm @@ -187,8 +187,7 @@ //Bottom -/obj/effect/turf_decal/syndicateemblem/bottom/left/obj/effect/turf_decal/raven/nine - icon_state = "RAVEN9" +/obj/effect/turf_decal/syndicateemblem/bottom/left icon_state = "synd1,1" /obj/effect/turf_decal/syndicateemblem/bottom/middle diff --git a/code/game/objects/effects/effect_system/effect_system.dm b/code/game/objects/effects/effect_system/effect_system.dm index 6ddd65f12cfcae..73ffc52a2bdbf0 100644 --- a/code/game/objects/effects/effect_system/effect_system.dm +++ b/code/game/objects/effects/effect_system/effect_system.dm @@ -12,14 +12,6 @@ would spawn and follow the beaker, even if it is carried or thrown. pass_flags = PASSTABLE | PASSGRILLE anchored = TRUE -/obj/effect/particle_effect/Initialize(mapload) - . = ..() - GLOB.cameranet.updateVisibility(src) - -/obj/effect/particle_effect/Destroy() - GLOB.cameranet.updateVisibility(src) - return ..() - // Prevents effects from getting registered for SSnewtonian_movement /obj/effect/particle_effect/newtonian_move(inertia_angle, instant = FALSE, start_delay = 0, drift_force = 0, controlled_cap = null) return TRUE diff --git a/code/game/objects/effects/effect_system/fluid_spread/effects_smoke.dm b/code/game/objects/effects/effect_system/fluid_spread/effects_smoke.dm index 6d71edad180bd3..83ef6e552938e2 100644 --- a/code/game/objects/effects/effect_system/fluid_spread/effects_smoke.dm +++ b/code/game/objects/effects/effect_system/fluid_spread/effects_smoke.dm @@ -207,7 +207,7 @@ return smoker.drop_all_held_items() - smoker.adjustOxyLoss(1) + smoker.adjust_oxy_loss(1) smoker.emote("cough") /** diff --git a/code/game/objects/effects/info.dm b/code/game/objects/effects/info.dm index c9295a090c184e..9ffb49a84f79a5 100644 --- a/code/game/objects/effects/info.dm +++ b/code/game/objects/effects/info.dm @@ -18,7 +18,7 @@ /obj/effect/abstract/info/Click() . = ..() - to_chat(usr, info_text) + to_chat(usr, boxed_message("[span_boldnotice(name)]
[span_info(info_text)]")) /obj/effect/abstract/info/MouseEntered(location, control, params) . = ..() diff --git a/code/game/objects/effects/poster_motivational.dm b/code/game/objects/effects/poster_motivational.dm index 5306a3fb972436..702cdfdde8a31f 100644 --- a/code/game/objects/effects/poster_motivational.dm +++ b/code/game/objects/effects/poster_motivational.dm @@ -152,6 +152,8 @@ When people read this poster they'll feel better!" icon_state = "bike" +// Departmental posters + /obj/item/poster/quirk/cargo_logo poster_type = /obj/structure/sign/poster/quirk/cargo_logo quirk_poster_department = ACCOUNT_CAR diff --git a/code/game/objects/effects/posters/contraband.dm b/code/game/objects/effects/posters/contraband.dm index ff6e1e74b64669..75fadc26340e1b 100644 --- a/code/game/objects/effects/posters/contraband.dm +++ b/code/game/objects/effects/posters/contraband.dm @@ -845,3 +845,17 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sign/poster/contraband/bojack, 32) icon_state = "double_rainbow" MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sign/poster/contraband/double_rainbow, 32) + +/obj/structure/sign/poster/contraband/vodka + name = "Vodka" + desc = "The text is written entirely in Russian. You can barely read anything except the word 'BODKA'." + icon_state = "vodka" + +MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sign/poster/contraband/vodka, 32) + +/obj/structure/sign/poster/contraband/ninja + name = "Ninja" + desc = "Greetings from the Spider Clan." + icon_state = "ninja" + +MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sign/poster/contraband/ninja, 32) diff --git a/code/game/objects/effects/posters/official.dm b/code/game/objects/effects/posters/official.dm index 47b360476ee44c..ca4646631bb057 100644 --- a/code/game/objects/effects/posters/official.dm +++ b/code/game/objects/effects/posters/official.dm @@ -430,3 +430,11 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sign/poster/official/boombox, 32) icon_state = "download_gun" MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sign/poster/official/download, 32) + +/obj/structure/sign/poster/official/mining + name = "Undiscovered Species" + desc = "A poster showing one of the Ash Walker species. We still know very little about them, be a pioneer! \ + When people read this poster they'll feel better!" + icon_state = "ashwalkers" + +MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sign/poster/official/mining, 32) diff --git a/code/game/objects/effects/posters/poster.dm b/code/game/objects/effects/posters/poster.dm index d93c5ada83c1c4..1fe4e365691794 100644 --- a/code/game/objects/effects/posters/poster.dm +++ b/code/game/objects/effects/posters/poster.dm @@ -18,13 +18,9 @@ force = 0 resistance_flags = FLAMMABLE w_class = WEIGHT_CLASS_SMALL - var/poster_type + var/obj/structure/sign/poster/poster_type = /obj/structure/sign/poster/random var/obj/structure/sign/poster/poster_structure -/obj/item/poster/examine(mob/user) - . = ..() - . += span_notice("You can booby-trap the poster by using a glass shard on it before you put it up.") - /obj/item/poster/Initialize(mapload, obj/structure/sign/poster/new_poster_structure) . = ..() @@ -36,53 +32,104 @@ AddElement(/datum/element/contextual_screentip_item_typechecks, hovering_item_typechecks) if(new_poster_structure && (new_poster_structure.loc != src)) - new_poster_structure.forceMove(src) //The poster structure *must* be in the item's contents for the exited() proc to properly clean up when placing the poster + qdel(new_poster_structure.GetComponent(/datum/component/atom_mounted)) + new_poster_structure.forceMove(src) poster_structure = new_poster_structure - if(!new_poster_structure && poster_type) - poster_structure = new poster_type(src) + if(!poster_type) // If we weren't already assigned a poster_type, we infer from the contained poster_structure + if(istype(poster_structure, /obj/structure/sign/poster)) // Make sure our poster structure is valid + poster_type = poster_structure.type + else + stack_trace("Rolled poster [type] was created without either a valid poster_type [poster_type] or poster_structure [poster_structure]") + poster_type = /obj/structure/sign/poster/random // Panic, do something random + if(ispath(poster_type, /obj/structure/sign/poster)) // Make sure we have a valid poster_type before using it + name = "[poster_type::poster_item_name] - [poster_type::name]" + desc = poster_type::poster_item_desc + icon_state = poster_type::poster_item_icon_state + else // We did not have a valid poster_type, light the beacons + CRASH("Rolled poster [type] has an invalid or null poster_type [poster_type]") - // posters store what name and description they would like their - // rolled up form to take. - if(poster_structure) - if(QDELETED(poster_structure)) - stack_trace("A poster was initialized with a qdeleted poster_structure, something's gone wrong") - return INITIALIZE_HINT_QDEL - name = poster_structure.poster_item_name - desc = poster_structure.poster_item_desc - icon_state = poster_structure.poster_item_icon_state +/obj/item/poster/Destroy(force) + QDEL_NULL(poster_structure) + return ..() - name = "[name] - [poster_structure.original_name]" +/obj/item/poster/examine(mob/user) + . = ..() + . += span_notice("You can booby-trap the poster by using a glass shard on it before you put it up.") /obj/item/poster/attackby(obj/item/I, mob/user, list/modifiers, list/attack_modifiers) if(!istype(I, /obj/item/shard)) return ..() - if (poster_structure.trap?.resolve()) + if (locate(/obj/item/shard) in (poster_structure?.contents || contents)) balloon_alert(user, "already trapped!") return - if(!user.transferItemToLoc(I, poster_structure)) + if(!user.transferItemToLoc(I, src)) return - poster_structure.trap = WEAKREF(I) to_chat(user, span_notice("You conceal \the [I] inside the rolled up poster.")) -/obj/item/poster/Exited(atom/movable/gone, direction) - . = ..() - if(gone == poster_structure) - poster_structure = null - if(!QDELING(src)) - qdel(src) //we're now a poster, huzzah! +/obj/item/poster/interact_with_atom(turf/closed/wall_structure, mob/living/user, list/modifiers) + if(!isclosedturf(wall_structure)) + return NONE -/obj/item/poster/Destroy(force) - QDEL_NULL(poster_structure) - return ..() + var/turf/user_turf = get_turf(user) + var/dir = get_dir(user_turf, wall_structure) + if(!(dir in GLOB.cardinals)) + balloon_alert(user, "stand in line with wall!") + return ITEM_INTERACT_BLOCKING + + // Deny placing posters on currently-diagonal walls, although the wall may change in the future. + if (wall_structure.smoothing_flags & SMOOTH_DIAGONAL_CORNERS) + for(var/overlay in wall_structure.overlays) + var/image/new_image = overlay + if(copytext(new_image.icon_state, 1, 3) == "d-") //3 == length("d-") + 1 + to_chat(user, span_warning("Cannot place on diagonal wall!")) + return ITEM_INTERACT_FAILURE + + var/stuff_on_wall = 0 + for(var/obj/contained_object in wall_structure.contents) //Let's see if it already has a poster on it or too much stuff + if(istype(contained_object, /obj/structure/sign/poster)) + balloon_alert(user, "no room!") + return ITEM_INTERACT_FAILURE + stuff_on_wall++ + if(stuff_on_wall == 3) + balloon_alert(user, "no room!") + return ITEM_INTERACT_FAILURE + + balloon_alert(user, "hanging poster...") + var/obj/structure/sign/poster/placed_poster = poster_structure || new poster_type(src) + placed_poster.forceMove(user_turf) + placed_poster.setDir(dir) + switch(dir) + if(NORTH) + placed_poster.pixel_y = 32 + if(SOUTH) + placed_poster.pixel_y = -32 + if(EAST) + placed_poster.pixel_x = 32 + if(WEST) + placed_poster.pixel_x = -32 + var/obj/item/shard/trap = locate() in contents + if(trap) + trap.forceMove(placed_poster) + placed_poster.poster_item_type = type + poster_structure = null + flick("poster_being_set", placed_poster) + playsound(src, 'sound/items/poster/poster_being_created.ogg', 100, TRUE) + qdel(src) -// The poster sign/structure + var/turf/user_drop_location = get_turf(user) + if(!do_after(user, PLACE_SPEED, placed_poster, extra_checks = CALLBACK(placed_poster, TYPE_PROC_REF(/obj/structure/sign/poster, snowflake_closed_turf_check), wall_structure))) + placed_poster.roll_and_drop(user_drop_location, user) + return ITEM_INTERACT_FAILURE + + placed_poster.AddComponent(/datum/component/atom_mounted, wall_structure) + placed_poster.on_placed_poster(user) + return ITEM_INTERACT_SUCCESS /** * The structure form of a poster. - * * These are what get placed on maps as posters. They are also what gets created when a player places a poster on a wall. * For the item form that can be spawned for players, see [/obj/item/poster] */ @@ -98,18 +145,19 @@ var/never_random = FALSE // used for the 'random' subclasses. ///Exclude posters of these types from being added to the random pool var/list/blacklisted_types = list() - ///Whether the poster should be printable from library management computer. Mostly exists to keep directionals from being printed. + ///Whether the poster should be printable from library management computer. var/printable = FALSE + ///What type should we put back in the rolled poster when we get cut down + var/cutdown_type var/poster_item_name = "hypothetical poster" var/poster_item_desc = "This hypothetical poster item should not exist, let's be honest here." var/poster_item_icon_state = "rolled_poster" var/poster_item_type = /obj/item/poster - ///A sharp shard of material can be hidden inside of a poster, attempts to embed when it is torn down. - var/datum/weakref/trap /obj/structure/sign/poster/Initialize(mapload) . = ..() + cutdown_type = type if(random_basetype) randomise(random_basetype) if(!ruined) @@ -142,7 +190,8 @@ poster_types -= typesof(iterated_type) var/list/approved_types = list() for(var/obj/structure/sign/poster/type_of_poster as anything in poster_types) - if(initial(type_of_poster.icon_state) && !initial(type_of_poster.never_random)) + // It must have an icon state, not be banned from the random pool, and not be pixel shifted (eliminates directional subtypes) + if(initial(type_of_poster.icon_state) && !initial(type_of_poster.never_random) && !initial(type_of_poster.pixel_x) && !initial(type_of_poster.pixel_y)) approved_types |= type_of_poster var/obj/structure/sign/poster/selected = pick(approved_types) @@ -155,6 +204,7 @@ poster_item_desc = initial(selected.poster_item_desc) poster_item_icon_state = initial(selected.poster_item_icon_state) ruined = initial(selected.ruined) + cutdown_type = initial(selected.type) if(length(GLOB.holidays) && prob(30)) // its the holidays! lets get festive apply_holiday() update_appearance() @@ -172,15 +222,15 @@ desc = holi_data.poster_desc icon_state = holi_data.poster_icon -/obj/structure/sign/poster/attackby(obj/item/tool, mob/user, list/modifiers, list/attack_modifiers) - if(tool.tool_behaviour == TOOL_WIRECUTTER) - tool.play_tool_sound(src, 100) - if(ruined) - to_chat(user, span_notice("You remove the remnants of the poster.")) - qdel(src) - else - to_chat(user, span_notice("You carefully remove the poster from the wall.")) - roll_and_drop(Adjacent(user) ? get_turf(user) : loc, user) +/obj/structure/sign/poster/wirecutter_act(mob/living/user, obj/item/tool) + tool.play_tool_sound(src, 100) + if(ruined) + to_chat(user, span_notice("You remove the remnants of the poster.")) + qdel(src) + else + to_chat(user, span_notice("You carefully remove the poster from the wall.")) + roll_and_drop(Adjacent(user) ? get_turf(user) : loc, user) + return ITEM_INTERACT_SUCCESS /obj/structure/sign/poster/attack_hand(mob/user, list/modifiers) . = ..() @@ -197,7 +247,7 @@ // HO-HO-HOHOHO HU HU-HU HU-HU /obj/structure/sign/poster/proc/spring_trap(mob/user) - var/obj/item/shard/payload = trap?.resolve() + var/obj/item/shard/payload = locate() in contents if (!payload) return @@ -222,46 +272,9 @@ /// Re-creates the poster item from the poster structure /obj/structure/sign/poster/proc/return_to_poster_item(atom/location) - return new poster_item_type(location, src) - -//separated to reduce code duplication. Moved here for ease of reference and to unclutter r_wall/attackby() -/turf/closed/proc/place_poster(obj/item/poster/rolled_poster, mob/user) - if(!rolled_poster.poster_structure) - to_chat(user, span_warning("[rolled_poster] has no poster... inside it? Inform a coder!")) - return - - // Deny placing posters on currently-diagonal walls, although the wall may change in the future. - if (smoothing_flags & SMOOTH_DIAGONAL_CORNERS) - for (var/overlay in overlays) - var/image/new_image = overlay - if(copytext(new_image.icon_state, 1, 3) == "d-") //3 == length("d-") + 1 - return - - var/stuff_on_wall = 0 - for(var/obj/contained_object in contents) //Let's see if it already has a poster on it or too much stuff - if(istype(contained_object, /obj/structure/sign/poster)) - balloon_alert(user, "no room!") - return - stuff_on_wall++ - if(stuff_on_wall == 3) - balloon_alert(user, "no room!") - return - - balloon_alert(user, "hanging poster...") - var/obj/structure/sign/poster/placed_poster = rolled_poster.poster_structure - - flick("poster_being_set", placed_poster) - placed_poster.forceMove(src) //deletion of the poster is handled in poster/Exited(), so don't have to worry about P anymore. - placed_poster.find_and_hang_on_wall() - playsound(src, 'sound/items/poster/poster_being_created.ogg', 100, TRUE) - - var/turf/user_drop_location = get_turf(user) //cache this so it just falls to the ground if they move. also no tk memes allowed. - if(!do_after(user, PLACE_SPEED, placed_poster, extra_checks = CALLBACK(placed_poster, TYPE_PROC_REF(/obj/structure/sign/poster, snowflake_closed_turf_check), src))) - placed_poster.roll_and_drop(user_drop_location, user) - return - - placed_poster.on_placed_poster(user) - return TRUE + . = new poster_item_type(location, new cutdown_type) + qdel(src) + return . /obj/structure/sign/poster/proc/snowflake_closed_turf_check(atom/hopefully_still_a_closed_turf) //since turfs never get deleted but instead change type, make sure we're still being placed on a wall. return isclosedturf(hopefully_still_a_closed_turf) diff --git a/code/game/objects/effects/spawners/costume.dm b/code/game/objects/effects/spawners/costume.dm index 32f5bcd4fc8fad..a679783c4b2bf0 100644 --- a/code/game/objects/effects/spawners/costume.dm +++ b/code/game/objects/effects/spawners/costume.dm @@ -30,7 +30,7 @@ /obj/effect/spawner/costume/madscientist name = "mad scientist costume spawner" items = list( - /obj/item/clothing/under/rank/captain/suit, + /obj/item/clothing/under/costume/captain, /obj/item/clothing/head/flatcap, /obj/item/clothing/suit/toggle/labcoat/mad, ) @@ -38,7 +38,7 @@ /obj/effect/spawner/costume/elpresidente name = "el presidente costume spawner" items = list( - /obj/item/clothing/under/rank/captain/suit, + /obj/item/clothing/under/costume/captain, /obj/item/clothing/head/flatcap, /obj/item/cigarette/cigar/havana, /obj/item/clothing/shoes/jackboots, diff --git a/code/game/objects/effects/spawners/random/armory.dm b/code/game/objects/effects/spawners/random/armory.dm index d4a14240539925..3661a510ad0601 100644 --- a/code/game/objects/effects/spawners/random/armory.dm +++ b/code/game/objects/effects/spawners/random/armory.dm @@ -62,6 +62,33 @@ icon_state = "laser_gun" loot = list(/obj/item/gun/energy/laser) +/obj/effect/spawner/random/armory/laser_pistol + name = "laser pistol spawner" + icon_state = "laser_gun" + spawn_loot_count = 6 + loot = list(/obj/item/gun/energy/laser/pistol) + +/obj/effect/spawner/random/armory/laser_carbine + name = "laser_carbine spawner" + icon_state = "laser_gun" + loot = list(/obj/item/gun/energy/laser/carbine) + +/obj/effect/spawner/random/armory/assault_laser + name = "assault laser gun spawner" + icon_state = "laser_gun" + spawn_loot_count = 1 + loot = list(/obj/item/gun/energy/laser/assault) + +/obj/effect/spawner/random/armory/pick_laser_loadout + name = "laser gun type randomizer" + icon_state = "laser_gun" + spawn_loot_count = 1 + loot = list( + /obj/effect/spawner/random/armory/laser_gun = 30, + /obj/effect/spawner/random/armory/laser_carbine = 30, + /obj/effect/spawner/random/armory/laser_pistol = 10, + ) + /obj/effect/spawner/random/armory/e_gun name = "energy gun spawner" icon_state = "e_gun" diff --git a/code/game/objects/effects/spawners/random/bureaucracy.dm b/code/game/objects/effects/spawners/random/bureaucracy.dm index 583d3ad95a1b2d..ea66c109a10ac5 100644 --- a/code/game/objects/effects/spawners/random/bureaucracy.dm +++ b/code/game/objects/effects/spawners/random/bureaucracy.dm @@ -19,7 +19,7 @@ name = "stamp spawner" icon_state = "stamp" loot = list( - /obj/item/stamp = 3, + /obj/item/stamp/granted = 3, /obj/item/stamp/denied = 1, ) diff --git a/code/game/objects/effects/spawners/random/food_or_drink.dm b/code/game/objects/effects/spawners/random/food_or_drink.dm index 9ec343953f5497..c4e89a169dd45b 100644 --- a/code/game/objects/effects/spawners/random/food_or_drink.dm +++ b/code/game/objects/effects/spawners/random/food_or_drink.dm @@ -110,7 +110,7 @@ /obj/item/food/grown/onion, /obj/item/food/grown/peanut, /obj/item/food/grown/pineapple, - /obj/item/seeds/plum, + /obj/item/food/grown/plum, /obj/item/food/grown/potato, /obj/item/food/grown/pumpkin, /obj/item/food/grown/carrot, diff --git a/code/game/objects/effects/spawners/random/lavaland_mobs.dm b/code/game/objects/effects/spawners/random/lavaland_mobs.dm index 4c6cf035324592..4fa771c7d77877 100644 --- a/code/game/objects/effects/spawners/random/lavaland_mobs.dm +++ b/code/game/objects/effects/spawners/random/lavaland_mobs.dm @@ -55,11 +55,41 @@ desc = "Chance to spawn a rare shiny version." icon = 'icons/mob/simple/lavaland/raptor_big.dmi' icon_state = "raptor_red" + pixel_x = -12 loot = list( - /mob/living/basic/raptor/red = 20, - /mob/living/basic/raptor/white = 20, - /mob/living/basic/raptor/purple = 20, - /mob/living/basic/raptor/green = 20, - /mob/living/basic/raptor/yellow = 20, + /mob/living/basic/raptor/red = 25, + /mob/living/basic/raptor/white = 25, + /mob/living/basic/raptor/purple = 25, + /mob/living/basic/raptor/green = 25, + /mob/living/basic/raptor/yellow = 25, + /mob/living/basic/raptor/blue = 25, /mob/living/basic/raptor/black = 1, ) + +/obj/effect/spawner/random/lavaland_mob/raptor/young + name = "random raptor youngling" + icon_state = "young_red" + loot = list( + /mob/living/basic/raptor/young/red = 25, + /mob/living/basic/raptor/young/white = 25, + /mob/living/basic/raptor/young/purple = 25, + /mob/living/basic/raptor/young/green = 25, + /mob/living/basic/raptor/young/yellow = 25, + /mob/living/basic/raptor/young/blue = 25, + /mob/living/basic/raptor/young/black = 1, + ) + +/obj/effect/spawner/random/lavaland_mob/raptor/baby + name = "random raptor chick" + icon = 'icons/mob/simple/lavaland/raptor_baby.dmi' + icon_state = "baby_red" + pixel_x = 0 + loot = list( + /mob/living/basic/raptor/baby/red = 25, + /mob/living/basic/raptor/baby/white = 25, + /mob/living/basic/raptor/baby/purple = 25, + /mob/living/basic/raptor/baby/green = 25, + /mob/living/basic/raptor/baby/yellow = 25, + /mob/living/basic/raptor/baby/blue = 25, + /mob/living/basic/raptor/baby/black = 1, + ) diff --git a/code/game/objects/effects/spawners/random/structure.dm b/code/game/objects/effects/spawners/random/structure.dm index a83b88c3a98631..3e2b642122727f 100644 --- a/code/game/objects/effects/spawners/random/structure.dm +++ b/code/game/objects/effects/spawners/random/structure.dm @@ -116,6 +116,7 @@ icon_state = "crate" loot = list( /obj/structure/closet/crate = 20, + /obj/structure/closet/crate/cardboard = 5, /obj/structure/closet/crate/wooden = 1, /obj/structure/closet/crate/internals = 1, /obj/structure/closet/crate/medical = 1, diff --git a/code/game/objects/effects/spawners/random/trash.dm b/code/game/objects/effects/spawners/random/trash.dm index 642d370463206a..409429aa8860b5 100644 --- a/code/game/objects/effects/spawners/random/trash.dm +++ b/code/game/objects/effects/spawners/random/trash.dm @@ -363,7 +363,8 @@ name = "box spawner" icon_state = "box" loot = list( - /obj/structure/closet/cardboard = 9, + /obj/structure/closet/cardboard = 5, + /obj/structure/closet/crate/cardboard = 4, /obj/structure/closet/cardboard/metal = 1, ) diff --git a/code/game/objects/effects/spawners/structure.dm b/code/game/objects/effects/spawners/structure.dm index 6dd8729cf97737..271cdaaf69ea83 100644 --- a/code/game/objects/effects/spawners/structure.dm +++ b/code/game/objects/effects/spawners/structure.dm @@ -371,11 +371,16 @@ again. return ..() /obj/effect/spawner/structure/electrified_grille - name = "electrified grill spawner" + name = "electrified grille spawner" icon = 'icons/obj/structures_spawners.dmi' icon_state = "electrified_grille" spawn_list = list(/obj/structure/grille, /obj/structure/cable) +/obj/effect/spawner/structure/electrified_grille/layer1 + name = "layer 1 electrified grille spawner" + icon_state = "red_electrified_grille" + spawn_list = list(/obj/structure/grille, /obj/structure/cable/layer1) + ///flipped tables /obj/effect/spawner/structure/flipped_table name = "flipped table spawner" diff --git a/code/game/objects/effects/temporary_visuals/miscellaneous.dm b/code/game/objects/effects/temporary_visuals/miscellaneous.dm index 4065a78104e75d..55239756339cdc 100644 --- a/code/game/objects/effects/temporary_visuals/miscellaneous.dm +++ b/code/game/objects/effects/temporary_visuals/miscellaneous.dm @@ -807,3 +807,21 @@ /obj/effect/temp_visual/circle_wave/star_blast color = COLOR_VOID_PURPLE + +/obj/effect/temp_visual/focus_ring + randomdir = FALSE + name = "ring" + icon_state = "focus_ring" + layer = BELOW_MOB_LAYER + duration = 2.5 SECONDS + pixel_y = -4 + alpha = 0 + +/obj/effect/temp_visual/focus_ring/Initialize(mapload) + . = ..() + animate(src, alpha = 100, time = 2 SECONDS, easing = QUAD_EASING|EASE_IN) + addtimer(CALLBACK(src, PROC_REF(dissipate)), 2 SECONDS) + + +/obj/effect/temp_visual/focus_ring/proc/dissipate() + animate(src, alpha = 0, time = 0.5 SECONDS, easing = QUAD_EASING|EASE_OUT) diff --git a/code/game/objects/empulse.dm b/code/game/objects/empulse.dm index e7246fd04ef6e9..640e08da102f0d 100644 --- a/code/game/objects/empulse.dm +++ b/code/game/objects/empulse.dm @@ -1,13 +1,13 @@ -/proc/empulse(turf/epicenter, heavy_range, light_range, log=0) +/proc/empulse(turf/epicenter, heavy_range, light_range, emp_source) if(!epicenter) return if(!isturf(epicenter)) epicenter = get_turf(epicenter.loc) - if(log) - message_admins("EMP with size ([heavy_range], [light_range]) in area [epicenter.loc.name] ") - log_game("EMP with size ([heavy_range], [light_range]) in area [epicenter.loc.name] ") + if(emp_source) + message_admins("EMP with size ([heavy_range], [light_range]) in [ADMIN_VERBOSEJMP(epicenter)], caused by [emp_source] ") + log_game("EMP with size ([heavy_range], [light_range]) in [ADMIN_VERBOSEJMP(epicenter)], caused by [emp_source] ") if(heavy_range > 1) new /obj/effect/temp_visual/emp/pulse(epicenter) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 87313ba7bdfdfb..c7056feb4319c0 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -209,7 +209,7 @@ VAR_PROTECTED/datum/embedding/embed_data ///for flags such as [GLASSESCOVERSEYES] - var/flags_cover = 0 + var/flags_cover = NONE var/heat = 0 /// All items with sharpness of SHARP_EDGED or higher will automatically get the butchering component. var/sharpness = NONE @@ -250,11 +250,6 @@ ///What dye registry should be looked at when dying this item; see washing_machine.dm var/dying_key - ///Grinder var:A reagent list containing the reagents this item produces when ground up in a grinder - this can be an empty list to allow for reagent transferring only - var/list/grind_results - ///A reagent the nutriments are converted into when the item is juiced. - var/datum/reagent/consumable/juice_typepath - /// Used in obj/item/examine to give additional notes on what the weapon does, separate from the predetermined output variables var/offensive_notes /// Used in obj/item/examine to determines whether or not to detail an item's statistics even if it does not meet the force requirements @@ -265,14 +260,6 @@ /// A lazylist used for applying fantasy values, contains the actual modification applied to a variable. var/list/fantasy_modifications = null - /// Has the item been reskinned? - var/current_skin - /// List of options to reskin. - var/list/unique_reskin - /// If reskins change base icon state as well - var/unique_reskin_changes_base_icon_state = FALSE - /// If reskins change inhands as well - var/unique_reskin_changes_inhand = FALSE /// Do we apply a click cooldown when resisting this object if it is restraining them? var/resist_cooldown = CLICK_CD_BREAKOUT @@ -308,9 +295,6 @@ SEND_GLOBAL_SIGNAL(COMSIG_GLOB_NEW_ITEM, src) - setup_reskinning() - - /obj/item/Destroy(force) // This var exists as a weird proxy "owner" ref // It's used in a few places. Stop using it, and optimially replace all uses please @@ -325,19 +309,6 @@ return ..() - -/obj/item/add_context(atom/source, list/context, obj/item/held_item, mob/user) - . = ..() - - if(!unique_reskin) - return - - if(current_skin && !(obj_flags & INFINITE_RESKIN)) - return - - context[SCREENTIP_CONTEXT_ALT_LMB] = "Reskin" - return CONTEXTUAL_SCREENTIP_SET - /obj/item/click_ctrl(mob/user) SHOULD_NOT_OVERRIDE(TRUE) @@ -492,9 +463,6 @@ else if (siemens_coefficient <= 0.5) .["partially insulated"] = "It is made from a poor insulator that will dampen (but not fully block) electric shocks passing through it." - if(LAZYLEN(unique_reskin) && !current_skin) - .["reskinnable"] = "This item is able to be reskinned! Alt-Click to do so!" - /obj/item/examine_descriptor(mob/user) return "item" @@ -777,7 +745,6 @@ if(item_flags & DROPDEL && !QDELETED(src)) qdel(src) - item_flags &= ~IN_INVENTORY UnregisterSignal(src, list(SIGNAL_ADDTRAIT(TRAIT_NO_WORN_ICON), SIGNAL_REMOVETRAIT(TRAIT_NO_WORN_ICON))) SEND_SIGNAL(src, COMSIG_ITEM_DROPPED, user) SEND_SIGNAL(user, COMSIG_MOB_DROPPED_ITEM, src) @@ -789,7 +756,6 @@ SHOULD_CALL_PARENT(TRUE) SEND_SIGNAL(src, COMSIG_ITEM_PICKUP, user) SEND_SIGNAL(user, COMSIG_LIVING_PICKED_UP_ITEM, src) - item_flags |= IN_INVENTORY /// called when "found" in pockets and storage items. Returns 1 if the search should end. /obj/item/proc/on_found(mob/finder) @@ -850,7 +816,6 @@ for(var/datum/action/action as anything in actions) give_item_action(action, user, slot) - item_flags |= IN_INVENTORY RegisterSignals(src, list(SIGNAL_ADDTRAIT(TRAIT_NO_WORN_ICON), SIGNAL_REMOVETRAIT(TRAIT_NO_WORN_ICON)), PROC_REF(update_slot_icon), override = TRUE) if(!initial && (slot_flags & slot) && (play_equip_sound())) @@ -956,7 +921,6 @@ . = ..() if(!isliving(hit_atom)) //Living mobs handle hit sounds differently. - throw_drop_sound_chain(YEET_SOUND_VOLUME) return @@ -1097,6 +1061,12 @@ /obj/item/proc/blend_requirements(obj/machinery/reagentgrinder/R) return TRUE +///Returns a reagent list containing the reagents this item produces when ground up in a grinder +/obj/item/proc/grind_results() + RETURN_TYPE(/list/datum/reagent) + + return null + ///Called BEFORE the object is ground up - use this to change grind results based on conditions. Return "-1" to prevent the grinding from occurring /obj/item/proc/on_grind() PROTECTED_PROC(TRUE) @@ -1130,18 +1100,26 @@ /obj/item/proc/grind_atom(datum/reagents/target_holder, mob/user) PROTECTED_PROC(TRUE) + var/list/datum/reagent/grind_reagents = grind_results() + . = FALSE - if(length(grind_results)) - target_holder.add_reagent_list(grind_results) + if(length(grind_reagents)) + target_holder.add_reagent_list(grind_reagents) . = TRUE if(reagents?.trans_to(target_holder, reagents.total_volume, transferred_by = user)) . = TRUE +///Returns A reagent the nutriments are converted into when the item is juiced. +/obj/item/proc/juice_typepath() + RETURN_TYPE(/datum/reagent) + + return null + ///Called BEFORE the object is ground up - use this to change grind results based on conditions. Return "-1" to prevent the grinding from occurring /obj/item/proc/on_juice() PROTECTED_PROC(TRUE) - if(!juice_typepath) + if(!juice_typepath()) return -1 return SEND_SIGNAL(src, COMSIG_ITEM_ON_JUICE) @@ -1175,9 +1153,11 @@ . = FALSE - if(ispath(juice_typepath)) - reagents.convert_reagent(/datum/reagent/consumable/nutriment, juice_typepath, include_source_subtypes = FALSE) - reagents.convert_reagent(/datum/reagent/consumable/nutriment/vitamin, juice_typepath, include_source_subtypes = FALSE) + var/juice_result = juice_typepath() + + if(ispath(juice_result)) + reagents.convert_reagent(/datum/reagent/consumable/nutriment, juice_result, include_source_subtypes = FALSE) + reagents.convert_reagent(/datum/reagent/consumable/nutriment/vitamin, juice_result, include_source_subtypes = FALSE) . = TRUE if(!QDELETED(target_holder)) @@ -1257,9 +1237,13 @@ if("operative") outline_color = COLOR_THEME_OPERATIVE if("clockwork") - outline_color = COLOR_THEME_CLOCKWORK //if you want free gbp go fix the fact that clockwork's tooltip css is glass' + outline_color = COLOR_THEME_CLOCKWORK if("glass") outline_color = COLOR_THEME_GLASS + if("trasen-knox") + outline_color = COLOR_THEME_TRASENKNOX + if("detective") + outline_color = COLOR_THEME_DETECTIVE else //this should never happen, hopefully outline_color = COLOR_WHITE if(color) @@ -1362,28 +1346,26 @@ /obj/item/proc/get_part_rating() return 0 +/** + * this proc override makes sure that even if DoUnEquip is not properly called through the appropriate channels, + * it'll still be called if we find that the item has the IN_INVENTORY flag. + * + * THIS IS BY NO MEAN AN EXCUSE TO KNOWINGLY AVOID CALLING THE RIGHT PROCS FOR INVENTORY MANAGEMENT, + * BUT A FALLBACK IN THE CASE WE MISTAKINGLY DON'T, TO MAKE SURE THINGS WORK AS INTENDED SINCE + * INVENTORY MANAGEMENT HAS A LOT MORE TO IT THAN JUST CALLING A PROC OR TWO MANUALLY. + */ /obj/item/doMove(atom/destination) - if (!ismob(loc)) + if (!(item_flags & IN_INVENTORY)) return ..() - var/mob/owner = loc - var/hand_index = owner.get_held_index_of_item(src) - if(!hand_index) + if(!ismob(loc)) + stack_trace("[src] had the IN_INVENTORY flag but the location was not a mob!") + item_flags &= ~IN_INVENTORY return ..() - owner.held_items[hand_index] = null - owner.update_held_items() - if(owner.client) - owner.client.screen -= src - if(owner.observers?.len) - for(var/mob/dead/observe as anything in owner.observers) - if(observe.client) - observe.client.screen -= src - layer = initial(layer) - SET_PLANE_IMPLICIT(src, initial(plane)) - appearance_flags &= ~NO_CLIENT_COLOR - dropped(owner, FALSE) - return ..() + var/mob/owner = loc + // This should remove the IN_INVENTORY flag. Otherwise we'll end up having a loop + owner.transferItemToLoc(src, destination, force = TRUE, silent = TRUE, animated = FALSE) /obj/item/proc/canStrip(mob/stripper, mob/owner) SHOULD_BE_PURE(TRUE) @@ -1823,7 +1805,7 @@ /// Common proc used by painting tools like spraycans and palettes that can access the entire 24 bits color space. /obj/item/proc/pick_painting_tool_color(mob/user, default_color) - var/chosen_color = input(user,"Pick new color", "[src]", default_color) as color|null + var/chosen_color = tgui_color_picker(user, "Pick new color", "[src]", default_color) if(!chosen_color || QDELETED(src) || IS_DEAD_OR_INCAP(user) || !user.is_holding(src)) return set_painting_tool_color(chosen_color) @@ -2138,3 +2120,11 @@ target_limb = victim.get_bodypart(target_limb) || victim.bodyparts[1] return get_embed()?.embed_into(victim, target_limb) + +/// Checks if user can insert a valid container into the chemistry machine. +/obj/item/proc/can_insert_container(mob/living/user, obj/machinery/chem_machine) + return is_chem_container() && chem_machine.can_interact(user) && user.can_perform_action(chem_machine, ALLOW_SILICON_REACH | FORBID_TELEKINESIS_REACH) + +/// Checks if this container is valid for use with chemistry machinery. +/obj/item/proc/is_chem_container() + return FALSE diff --git a/code/game/objects/items/apc_frame.dm b/code/game/objects/items/apc_frame.dm index f8824861dba0f8..ce9d9be368605e 100644 --- a/code/game/objects/items/apc_frame.dm +++ b/code/game/objects/items/apc_frame.dm @@ -6,34 +6,21 @@ result_path = /obj/machinery/power/apc/auto_name /obj/item/wallframe/apc/try_build(turf/on_wall, user) - if(!..()) - return var/turf/T = get_turf(on_wall) //the user is not where it needs to be. var/area/A = get_area(user) if(A.apc) to_chat(user, span_warning("This area already has an APC!")) - return //only one APC per area - if(!A.requires_power) + return FALSE //only one APC per area + if(!A.requires_power || A.always_unpowered) to_chat(user, span_warning("You cannot place [src] in this area!")) - return //can't place apcs in areas with no power requirement + return FALSE //can't place apcs in areas with no power requirement for(var/obj/machinery/power/terminal/E in T) if(E.master) to_chat(user, span_warning("There is another network terminal here!")) - return - else - new /obj/item/stack/cable_coil(T, 10) - to_chat(user, span_notice("You cut the cables and disassemble the unused power terminal.")) - qdel(E) - return TRUE - -/obj/item/wallframe/apc/screwdriver_act(mob/living/user, obj/item/tool) - //overriding the wallframe parent screwdriver act with this one which allows applying to existing apc frames. + return FALSE + return ..() - var/turf/turf = get_step(get_turf(user), user.dir) - if(iswallturf(turf)) - if(locate(/obj/machinery/power/apc) in get_turf(user)) - var/obj/machinery/power/apc/mounted_apc = locate(/obj/machinery/power/apc) in get_turf(user) - mounted_apc.wallframe_act(user, src) - return ITEM_INTERACT_SUCCESS - turf.item_interaction(user, src) - return ITEM_INTERACT_SUCCESS +/obj/item/wallframe/apc/after_attach(obj/machinery/power/apc/attached_to) + for(var/obj/machinery/power/terminal/E in attached_to.loc) + attached_to.make_terminal() + return diff --git a/code/game/objects/items/body_egg.dm b/code/game/objects/items/body_egg.dm index d95a9e2f96333e..05eabac2872296 100644 --- a/code/game/objects/items/body_egg.dm +++ b/code/game/objects/items/body_egg.dm @@ -33,17 +33,17 @@ egg_owner.med_hud_set_status() INVOKE_ASYNC(src, PROC_REF(RemoveInfectionImages), egg_owner) -/obj/item/organ/body_egg/on_death(seconds_per_tick, times_fired) +/obj/item/organ/body_egg/on_death(seconds_per_tick) . = ..() if(!owner) return - egg_process(seconds_per_tick, times_fired) + egg_process(seconds_per_tick) -/obj/item/organ/body_egg/on_life(seconds_per_tick, times_fired) +/obj/item/organ/body_egg/on_life(seconds_per_tick) . = ..() - egg_process(seconds_per_tick, times_fired) + egg_process(seconds_per_tick) -/obj/item/organ/body_egg/proc/egg_process(seconds_per_tick, times_fired) +/obj/item/organ/body_egg/proc/egg_process(seconds_per_tick) return /obj/item/organ/body_egg/proc/RefreshInfectionImage() diff --git a/code/game/objects/items/busts_and_figurines.dm b/code/game/objects/items/busts_and_figurines.dm index 592302cab67788..660fffa2d833b0 100644 --- a/code/game/objects/items/busts_and_figurines.dm +++ b/code/game/objects/items/busts_and_figurines.dm @@ -109,7 +109,7 @@ // Bully the guy for fucking up. /obj/item/statuebust/hippocratic/proc/fuck_it_up(mob/living/carbon/user) to_chat(user, span_warning("You forget what comes next like a dumbass. The Hippocrates bust looks down on you, disappointed.")) - user.adjustOrganLoss(ORGAN_SLOT_BRAIN, 2) + user.adjust_organ_loss(ORGAN_SLOT_BRAIN, 2) COOLDOWN_RESET(src, oath_cd) /obj/item/maneki_neko diff --git a/code/game/objects/items/cardboard_cutouts.dm b/code/game/objects/items/cardboard_cutouts.dm index 36efc61481d623..89f9a14d99cb8b 100644 --- a/code/game/objects/items/cardboard_cutouts.dm +++ b/code/game/objects/items/cardboard_cutouts.dm @@ -8,6 +8,7 @@ resistance_flags = FLAMMABLE obj_flags = CAN_BE_HIT item_flags = NO_PIXEL_RANDOM_DROP + custom_materials = list(/datum/material/cardboard = SHEET_MATERIAL_AMOUNT * 5) /// If the cutout is pushed over and has to be righted var/pushed_over = FALSE /// If the cutout actually appears as what it portray and not a discolored version diff --git a/code/game/objects/items/cards_ids.dm b/code/game/objects/items/cards_ids.dm index 8662957d4b70a2..8661424856d23e 100644 --- a/code/game/objects/items/cards_ids.dm +++ b/code/game/objects/items/cards_ids.dm @@ -165,7 +165,7 @@ /obj/item/card/id/Destroy() if (registered_account) - registered_account.bank_cards -= src + LAZYREMOVE(registered_account.bank_cards, src) if (my_store) QDEL_NULL(my_store) if (isitem(loc)) @@ -550,7 +550,7 @@ if(isnull(registered_account) || registered_account.replaceable) //Same check we use when we check if we can assign an account context[SCREENTIP_CONTEXT_ALT_RMB] = "Assign account" else if(registered_account.account_balance > 0) - context[SCREENTIP_CONTEXT_ALT_LMB] = "Withdraw credits" + context[SCREENTIP_CONTEXT_ALT_LMB] = "Withdraw [MONEY_NAME]" if(trim && length(trim.honorifics)) context[SCREENTIP_CONTEXT_CTRL_LMB] = "Toggle honorific" return CONTEXTUAL_SCREENTIP_SET @@ -676,7 +676,7 @@ var/money_added = mass_insert_money(money_contained, user) if(!money_added) return ITEM_INTERACT_BLOCKING - to_chat(user, span_notice("You stuff the contents into the card! They disappear in a puff of bluespace smoke, adding [money_added] worth of credits to the linked account.")) + to_chat(user, span_notice("You stuff the contents into the card! They disappear in a puff of bluespace smoke, adding [money_added] worth of [MONEY_NAME] to the linked account.")) return ITEM_INTERACT_SUCCESS return NONE @@ -703,13 +703,13 @@ return FALSE registered_account.adjust_money(cash_money, "System: Deposit") SSblackbox.record_feedback("amount", "credits_inserted", cash_money) - log_econ("[cash_money] credits were inserted into [src] owned by [src.registered_name]") + log_econ("[cash_money] [MONEY_NAME] were inserted into [src] owned by [src.registered_name]") if(physical_currency) - to_chat(user, span_notice("You stuff [money] into [src]. It disappears in a small puff of bluespace smoke, adding [cash_money] credits to the linked account.")) + to_chat(user, span_notice("You stuff [money] into [src]. It disappears in a small puff of bluespace smoke, adding [cash_money] [MONEY_NAME] to the linked account.")) else - to_chat(user, span_notice("You insert [money] into [src], adding [cash_money] credits to the linked account.")) + to_chat(user, span_notice("You insert [money] into [src], adding [cash_money] [MONEY_NAME] to the linked account.")) - to_chat(user, span_notice("The linked account now reports a balance of [registered_account.account_balance] cr.")) + to_chat(user, span_notice("The linked account now reports a balance of [registered_account.account_balance] [MONEY_SYMBOL].")) qdel(money) return TRUE @@ -736,7 +736,7 @@ registered_account.adjust_money(total, "System: Deposit") SSblackbox.record_feedback("amount", "credits_inserted", total) - log_econ("[total] credits were inserted into [src] owned by [src.registered_name]") + log_econ("[total] [MONEY_NAME] were inserted into [src] owned by [src.registered_name]") QDEL_LIST(money) return total @@ -768,11 +768,11 @@ to_chat(user, span_warning("The account ID number provided is invalid.")) return FALSE if(old_account) - old_account.bank_cards -= src + LAZYREMOVE(old_account.bank_cards, src) account.account_balance += old_account.account_balance - account.bank_cards += src + LAZYADD(account.bank_cards, src) registered_account = account - to_chat(user, span_notice("The provided account has been linked to this ID card. It contains [account.account_balance] credits.")) + to_chat(user, span_notice("The provided account has been linked to this ID card. It contains [account.account_balance] [MONEY_NAME].")) return TRUE /obj/item/card/id/click_alt(mob/living/user) @@ -798,20 +798,20 @@ if(choice == "Link Account") set_new_account(user) return CLICK_ACTION_SUCCESS - var/amount_to_remove = tgui_input_number(user, "How much do you want to withdraw? (Max: [registered_account.account_balance] cr)", "Withdraw Funds", max_value = registered_account.account_balance) + var/amount_to_remove = tgui_input_number(user, "How much do you want to withdraw? (Max: [registered_account.account_balance] [MONEY_SYMBOL])", "Withdraw Funds", max_value = registered_account.account_balance) if(!amount_to_remove || QDELETED(user) || QDELETED(src) || issilicon(user) || loc != user) return CLICK_ACTION_BLOCKING if(!alt_click_can_use_id(user)) return CLICK_ACTION_BLOCKING if(!registered_account.adjust_money(-amount_to_remove, "System: Withdrawal")) var/difference = amount_to_remove - registered_account.account_balance - registered_account.bank_card_talk(span_warning("ERROR: The linked account requires [difference] more credit\s to perform that withdrawal."), TRUE) + registered_account.bank_card_talk(span_warning("ERROR: The linked account requires [difference] more [MONEY_NAME_AUTOPURAL(difference)] to perform that withdrawal."), TRUE) return CLICK_ACTION_BLOCKING var/obj/item/holochip/holochip = new (user.drop_location(), amount_to_remove) user.put_in_hands(holochip) - to_chat(user, span_notice("You withdraw [amount_to_remove] credits into a holochip.")) + to_chat(user, span_notice("You withdraw [amount_to_remove] [MONEY_NAME] into a holochip.")) SSblackbox.record_feedback("amount", "credits_removed", amount_to_remove) - log_econ("[amount_to_remove] credits were removed from [src] owned by [registered_name]") + log_econ("[amount_to_remove] [MONEY_NAME] were removed from [src] owned by [registered_name]") return CLICK_ACTION_SUCCESS @@ -822,15 +822,15 @@ set_new_account(user) /obj/item/card/id/proc/pay_debt(user) - var/amount_to_pay = tgui_input_number(user, "How much do you want to pay? (Max: [registered_account.account_balance] cr)", "Debt Payment", max_value = min(registered_account.account_balance, registered_account.account_debt)) + var/amount_to_pay = tgui_input_number(user, "How much do you want to pay? (Max: [registered_account.account_balance] [MONEY_SYMBOL])", "Debt Payment", max_value = min(registered_account.account_balance, registered_account.account_debt)) if(!amount_to_pay || QDELETED(src) || loc != user || !alt_click_can_use_id(user)) return var/prev_debt = registered_account.account_debt var/amount_paid = registered_account.pay_debt(amount_to_pay) if(amount_paid) - var/message = span_notice("You pay [amount_to_pay] credits of a [prev_debt] cr debt. [registered_account.account_debt] cr to go.") + var/message = span_notice("You pay [amount_to_pay] [MONEY_NAME] of a [prev_debt] [MONEY_SYMBOL] debt. [registered_account.account_debt] [MONEY_SYMBOL] to go.") if(!registered_account.account_debt) - message = span_nicegreen("You pay the last [amount_to_pay] credits of your debt, extinguishing it. Congratulations!") + message = span_nicegreen("You pay the last [amount_to_pay] [MONEY_NAME] of your debt, extinguishing it. Congratulations!") to_chat(user, message) /obj/item/card/id/examine(mob/user) @@ -839,10 +839,10 @@ return if(registered_account && !isnull(registered_account.account_id)) - . += "The account linked to the ID belongs to '[registered_account.account_holder]' and reports a balance of [registered_account.account_balance] cr." + . += "The account linked to the ID belongs to '[registered_account.account_holder]' and reports a balance of [registered_account.account_balance] [MONEY_SYMBOL]." if(ACCESS_COMMAND in access) var/datum/bank_account/linked_dept = SSeconomy.get_dep_account(registered_account.account_job.paycheck_department) - . += "The [linked_dept.account_holder] linked to the ID reports a balance of [linked_dept.account_balance] cr." + . += "The [linked_dept.account_holder] linked to the ID reports a balance of [linked_dept.account_balance] [MONEY_SYMBOL]." else . += span_notice("Alt-Right-Click the ID to set the linked bank account.") @@ -882,15 +882,15 @@ if(registered_account) if(registered_account.mining_points) . += "There's [registered_account.mining_points] mining point\s loaded onto the card's bank account." - . += "The account linked to the ID belongs to '[registered_account.account_holder]' and reports a balance of [registered_account.account_balance] cr." + . += "The account linked to the ID belongs to '[registered_account.account_holder]' and reports a balance of [registered_account.account_balance] [MONEY_SYMBOL]." if(registered_account.account_debt) - . += span_warning("The account is currently indebted for [registered_account.account_debt] cr. [100*DEBT_COLLECTION_COEFF]% of all earnings will go towards extinguishing it.") + . += span_warning("The account is currently indebted for [registered_account.account_debt] [MONEY_SYMBOL]. [100*DEBT_COLLECTION_COEFF]% of all earnings will go towards extinguishing it.") if(registered_account.account_job) var/datum/bank_account/D = SSeconomy.get_dep_account(registered_account.account_job.paycheck_department) if(D) - . += "The [D.account_holder] reports a balance of [D.account_balance] cr." + . += "The [D.account_holder] reports a balance of [D.account_balance] [MONEY_SYMBOL]." . += span_info("Alt-Click the ID to pull money from the linked account in the form of holochips.") - . += span_info("You can insert credits into the linked account by pressing holochips, cash, or coins against the ID.") + . += span_info("You can insert [MONEY_NAME] into the linked account by pressing holochips, cash, or coins against the ID.") if(registered_account.replaceable) . += span_info("Alt-Right-Click the ID to change the linked bank account.") if(registered_account.civilian_bounty) @@ -1095,11 +1095,10 @@ /obj/item/card/id/departmental_budget/Initialize(mapload) . = ..() - var/datum/bank_account/B = SSeconomy.get_dep_account(department_ID) - if(B) - registered_account = B - if(!B.bank_cards.Find(src)) - B.bank_cards += src + var/datum/bank_account/department_account = SSeconomy.get_dep_account(department_ID) + if(department_account) + registered_account = department_account + LAZYOR(department_account.bank_cards, src) name = "departmental card ([department_name])" desc = "Provides access to the [department_name]." SSeconomy.dep_cards += src @@ -1974,7 +1973,7 @@ var/datum/bank_account/account = SSeconomy.bank_accounts_by_id["[owner.account_id]"] if(account) - account.bank_cards += src + LAZYADD(account.bank_cards, src) registered_account = account to_chat(user, span_notice("Your account number has been automatically assigned.")) @@ -2060,6 +2059,7 @@ worn_icon_state = "nothing" resistance_flags = FLAMMABLE slot_flags = ITEM_SLOT_ID + custom_materials = list(/datum/material/cardboard = SHEET_MATERIAL_AMOUNT) ///The "name" of the "owner" of this "ID" var/scribbled_name ///The assignment written on this card. diff --git a/code/game/objects/items/chainsaw.dm b/code/game/objects/items/chainsaw.dm index d316725fbfea54..ed5a62cc562a4a 100644 --- a/code/game/objects/items/chainsaw.dm +++ b/code/game/objects/items/chainsaw.dm @@ -24,6 +24,7 @@ actions_types = list(/datum/action/item_action/startchainsaw) tool_behaviour = TOOL_SAW toolspeed = 1.5 //Turn it on first you dork + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 5, /datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT * 5, /datum/material/glass = SHEET_MATERIAL_AMOUNT * 3) var/force_on = 24 /// The looping sound for our chainsaw when running var/datum/looping_sound/chainsaw/chainsaw_loop diff --git a/code/game/objects/items/cigarettes.dm b/code/game/objects/items/cigarettes.dm index c791ecb97655da..08bbb551b2ccc0 100644 --- a/code/game/objects/items/cigarettes.dm +++ b/code/game/objects/items/cigarettes.dm @@ -22,7 +22,6 @@ CIGARETTE PACKETS ARE IN FANCY.DM base_icon_state = "match" w_class = WEIGHT_CLASS_TINY heat = 1000 - grind_results = list(/datum/reagent/phosphorus = 2) /// Whether this match has been lit. var/lit = FALSE /// Whether this match has burnt out. @@ -32,6 +31,9 @@ CIGARETTE PACKETS ARE IN FANCY.DM /// If the match is broken var/broken = FALSE +/obj/item/match/grind_results() + return list(/datum/reagent/phosphorus = 2) + /obj/item/match/process(seconds_per_tick) smoketime -= seconds_per_tick * (1 SECONDS) if(smoketime <= 0) @@ -163,8 +165,10 @@ CIGARETTE PACKETS ARE IN FANCY.DM name = "firebrand" desc = "An unlit firebrand. It makes you wonder why it's not just called a stick." smoketime = 40 SECONDS - custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT) - grind_results = list(/datum/reagent/carbon = 2) + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 2) + +/obj/item/match/firebrand/grind_results() + return list(/datum/reagent/carbon = 2) /obj/item/match/firebrand/Initialize(mapload) . = ..() @@ -175,6 +179,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM desc = "A budget lighter done by using a battery and some aluminium. Hold tightly to ignite." icon_state = "battery_unlit" base_icon_state = "battery" + custom_materials = list(/datum/material/iron = SMALL_MATERIAL_AMOUNT * 7, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.5) /obj/item/match/battery/attack_self(mob/living/user, modifiers) . = ..() @@ -197,7 +202,6 @@ CIGARETTE PACKETS ARE IN FANCY.DM throw_speed = 0.5 w_class = WEIGHT_CLASS_TINY slot_flags = ITEM_SLOT_MASK - grind_results = list() heat = 1000 light_range = 1 light_color = LIGHT_COLOR_FIRE @@ -564,7 +568,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM var/obj/item/organ/lungs/lungs = smoker.get_organ_slot(ORGAN_SLOT_LUNGS) if(lungs && IS_ORGANIC_ORGAN(lungs)) var/smoker_resistance = HAS_TRAIT(smoker, TRAIT_SMOKER) ? 0.5 : 1 - smoker.adjustOrganLoss(ORGAN_SLOT_LUNGS, lung_harm * smoker_resistance) + smoker.adjust_organ_loss(ORGAN_SLOT_LUNGS, lung_harm * smoker_resistance) if(!reagents.trans_to(smoker, to_smoke, methods = INHALE, ignore_stomach = TRUE)) reagents.remove_all(to_smoke) @@ -908,7 +912,9 @@ CIGARETTE PACKETS ARE IN FANCY.DM icon_state = "cigbutt" w_class = WEIGHT_CLASS_TINY throwforce = 0 - grind_results = list(/datum/reagent/carbon = 2) + +/obj/item/cigbutt/grind_results() + return list(/datum/reagent/carbon = 2) /obj/item/cigbutt/cigarbutt name = "cigar butt" @@ -932,6 +938,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM list_reagents = null w_class = WEIGHT_CLASS_SMALL choke_forever = TRUE + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 2) ///name of the stuff packed inside this pipe var/packeditem @@ -1009,7 +1016,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM inhand_icon_on = null inhand_icon_off = null lung_harm = 2 - custom_materials = list(/datum/material/glass = SHEET_MATERIAL_AMOUNT) + custom_materials = list(/datum/material/glass = SHEET_MATERIAL_AMOUNT * 3) /////////// //ROLLING// diff --git a/code/game/objects/items/circuitboards/circuitboard.dm b/code/game/objects/items/circuitboards/circuitboard.dm index 97b2a1441b9f95..df4d122332130a 100644 --- a/code/game/objects/items/circuitboards/circuitboard.dm +++ b/code/game/objects/items/circuitboards/circuitboard.dm @@ -15,7 +15,6 @@ abstract_type = /obj/item/circuitboard custom_materials = list(/datum/material/glass = HALF_SHEET_MATERIAL_AMOUNT) w_class = WEIGHT_CLASS_SMALL - grind_results = list(/datum/reagent/silicon = 20) greyscale_colors = CIRCUIT_COLOR_GENERIC var/build_path = null /// whether or not the circuit board will build into a vendor whose products cost nothing (used for offstation vending machines mostly) @@ -30,6 +29,9 @@ set_greyscale(new_config = /datum/greyscale_config/circuit) return ..() +/obj/item/circuitboard/grind_results() + return list(/datum/reagent/silicon = 20) + /obj/item/circuitboard/proc/apply_default_parts(obj/machinery/machine) if(LAZYLEN(machine.component_parts)) // This really shouldn't happen. If it somehow does, print out a stack trace and gracefully handle it. diff --git a/code/game/objects/items/circuitboards/computer_circuitboards.dm b/code/game/objects/items/circuitboards/computer_circuitboards.dm index 99308f05d9e3e3..b1a7e0bb445c58 100644 --- a/code/game/objects/items/circuitboards/computer_circuitboards.dm +++ b/code/game/objects/items/circuitboards/computer_circuitboards.dm @@ -429,12 +429,20 @@ name = "R&D Console" greyscale_colors = CIRCUIT_COLOR_SCIENCE build_path = /obj/machinery/computer/rdconsole + req_access = list(ACCESS_RESEARCH) // Research access is required to toggle the lock. + var/silence_announcements = FALSE + var/locked = TRUE + +// An unlocked subtype of the board for mapping. +/obj/item/circuitboard/computer/rdconsole/unlocked + locked = FALSE /obj/item/circuitboard/computer/rdconsole/examine(mob/user) . = ..() . += span_info("The board is configured to [silence_announcements ? "silence" : "announce"] researched nodes on radio.") . += span_notice("The board mode can be changed with a [EXAMINE_HINT("multitool")].") + . += span_notice("The board is [locked ? "locked" : "unlocked"], and can be [locked ? "unlocked" : "locked"] with an ID that has research access.") /obj/item/circuitboard/computer/rdconsole/multitool_act(mob/living/user) . = ..() @@ -445,6 +453,10 @@ balloon_alert(user, "announcements [silence_announcements ? "enabled" : "disabled"]") /obj/item/circuitboard/computer/rdconsole/emag_act(mob/user, obj/item/card/emag/emag_card) + if (locked) + locked = FALSE + to_chat(user, span_notice("You magnetically trigger the locking mechanism, causing it to unlock.")) + if (obj_flags & EMAGGED) return FALSE @@ -453,6 +465,20 @@ to_chat(user, span_notice("You overload the node announcement chip, forcing every node to be announced on the common channel.")) return TRUE +/obj/item/circuitboard/computer/rdconsole/attackby(obj/item/attacking_item, mob/living/user, list/modifiers, list/attack_modifiers) + if (user.combat_mode || !isidcard(attacking_item)) + return ..() + if (check_access(attacking_item)) + locked = !locked + balloon_alert(user, locked ? "locked" : "unlocked") + user.visible_message( + message = span_notice("\The [user] unlock[user.p_s()] \the [src] with \the [attacking_item]."), + self_message = span_notice("You unlock \the [src] with \the [attacking_item]."), + blind_message = span_hear("You hear a soft beep."), + ) + else + balloon_alert(user, "no access!") + /obj/item/circuitboard/computer/rdservercontrol name = "R&D Server Control" greyscale_colors = CIRCUIT_COLOR_SCIENCE diff --git a/code/game/objects/items/circuitboards/machines/machine_circuitboards.dm b/code/game/objects/items/circuitboards/machines/machine_circuitboards.dm index b472f732abdae0..d955ce114cb77f 100644 --- a/code/game/objects/items/circuitboards/machines/machine_circuitboards.dm +++ b/code/game/objects/items/circuitboards/machines/machine_circuitboards.dm @@ -1888,3 +1888,14 @@ req_components = list( /datum/stock_part/micro_laser = 1, ) + +/obj/item/circuitboard/machine/washing_machine + name = "Washing Machine" + greyscale_colors = CIRCUIT_COLOR_SERVICE + build_path = /obj/machinery/washing_machine + req_components = list( + /obj/item/stack/sheet/glass = 1, + /obj/item/reagent_containers/cup/beaker = 2, + /datum/stock_part/water_recycler = 1, + /datum/stock_part/servo = 1, + ) diff --git a/code/game/objects/items/clown_items.dm b/code/game/objects/items/clown_items.dm index 7d8b4da6a4195f..a3d41245399f8c 100644 --- a/code/game/objects/items/clown_items.dm +++ b/code/game/objects/items/clown_items.dm @@ -25,7 +25,6 @@ throwforce = 0 throw_speed = 3 throw_range = 7 - grind_results = list(/datum/reagent/lye = 10) var/cleanspeed = 3.5 SECONDS //slower than mop force_string = "robust... against germs" var/uses = 100 @@ -35,6 +34,9 @@ AddComponent(/datum/component/slippery, 80) AddComponent(/datum/component/cleaner, cleanspeed, 0.1, pre_clean_callback=CALLBACK(src, PROC_REF(should_clean)), on_cleaned_callback=CALLBACK(src, PROC_REF(decreaseUses))) //less scaling for soapies +/obj/item/soap/grind_results() + return list(/datum/reagent/lye = 10) + /obj/item/soap/examine(mob/user) . = ..() var/max_uses = initial(uses) @@ -56,37 +58,45 @@ /obj/item/soap/homemade desc = "A homemade bar of soap. Smells of... well...." - grind_results = list(/datum/reagent/consumable/liquidgibs = 9, /datum/reagent/lye = 9) icon_state = "soapgibs" inhand_icon_state = "soapgibs" worn_icon_state = "soapgibs" cleanspeed = 3 SECONDS // faster than base soap to reward chemists for going to the effort +/obj/item/soap/homemade/grind_results() + return list(/datum/reagent/consumable/liquidgibs = 9, /datum/reagent/lye = 9) + /obj/item/soap/nanotrasen desc = "A heavy duty bar of Nanotrasen brand soap. Smells of plasma." - grind_results = list(/datum/reagent/toxin/plasma = 10, /datum/reagent/lye = 10) icon_state = "soapnt" inhand_icon_state = "soapnt" worn_icon_state = "soapnt" cleanspeed = 2.8 SECONDS //janitor gets this uses = 300 +/obj/item/soap/nanotrasen/grind_results() + return list(/datum/reagent/toxin/plasma = 10, /datum/reagent/lye = 10) + /obj/item/soap/deluxe desc = "A deluxe Waffle Corporation brand bar of soap. Smells of high-class luxury." - grind_results = list(/datum/reagent/consumable/aloejuice = 10, /datum/reagent/lye = 10) icon_state = "soapdeluxe" inhand_icon_state = "soapdeluxe" worn_icon_state = "soapdeluxe" cleanspeed = 2 SECONDS //captain gets one of these +/obj/item/soap/deluxe/grind_results() + return list(/datum/reagent/consumable/aloejuice = 10, /datum/reagent/lye = 10) + /obj/item/soap/syndie desc = "An untrustworthy bar of soap made of strong chemical agents that dissolve blood faster." - grind_results = list(/datum/reagent/toxin/acid = 10, /datum/reagent/lye = 10) icon_state = "soapsyndie" inhand_icon_state = "soapsyndie" worn_icon_state = "soapsyndie" cleanspeed = 0.5 SECONDS //faster than mops so it's useful for traitors who want to clean crime scenes +/obj/item/soap/syndie/grind_results() + return list(/datum/reagent/toxin/acid = 10, /datum/reagent/lye = 10) + /obj/item/soap/drone name = "\improper integrated soap module" inhand_icon_state = "soapnt" @@ -97,13 +107,26 @@ /obj/item/soap/omega name = "\improper Omega soap" desc = "The most advanced soap known to mankind. The beginning of the end for germs." - grind_results = list(/datum/reagent/consumable/potato_juice = 9, /datum/reagent/consumable/ethanol/lizardwine = 9, /datum/reagent/monkey_powder = 9, /datum/reagent/drug/krokodil = 9, /datum/reagent/toxin/acid/nitracid = 9, /datum/reagent/baldium = 9, /datum/reagent/consumable/ethanol/hooch = 9, /datum/reagent/bluespace = 9, /datum/reagent/drug/pumpup = 9, /datum/reagent/consumable/space_cola = 9) icon_state = "soapomega" inhand_icon_state = "soapomega" worn_icon_state = "soapomega" cleanspeed = 0.3 SECONDS //Only the truest of mind soul and body get one of these uses = 800 //In the Greek numeric system, Omega has a value of 800 +/obj/item/soap/omega/grind_results() + return list( + /datum/reagent/consumable/potato_juice = 9, + /datum/reagent/consumable/ethanol/lizardwine = 9, + /datum/reagent/monkey_powder = 9, + /datum/reagent/drug/krokodil = 9, + /datum/reagent/toxin/acid/nitracid = 9, + /datum/reagent/baldium = 9, + /datum/reagent/consumable/ethanol/hooch = 9, + /datum/reagent/bluespace = 9, + /datum/reagent/drug/pumpup = 9, + /datum/reagent/consumable/space_cola = 9 + ) + /obj/item/soap/omega/suicide_act(mob/living/user) user.visible_message(span_suicide("[user] is using [src] to scrub themselves from the timeline! It looks like [user.p_theyre()] trying to commit suicide!")) new /obj/structure/chrono_field(user.loc, user) @@ -229,6 +252,7 @@ inhand_icon_state = "gold_horn" worn_icon_state = "horn_gold" COOLDOWN_DECLARE(golden_horn_cooldown) + custom_materials = list(/datum/material/bananium = SHEET_MATERIAL_AMOUNT * 5) /obj/item/bikehorn/golden/attack() flip_mobs() diff --git a/code/game/objects/items/control_wand.dm b/code/game/objects/items/control_wand.dm index cea7044427ec56..06604a872fdf67 100644 --- a/code/game/objects/items/control_wand.dm +++ b/code/game/objects/items/control_wand.dm @@ -30,10 +30,9 @@ var/static/list/area/restricted_areas = list( /area/station/command/bridge, /*so Captain's remote isn't totally useless*/ /area/station/security, /*so antag RD/HoP/QM/CMO can't easily screw up the brig doors*/ - /area/station/ai_monitored/command/nuke_storage, /*aka Vault since it's QM's special thing*/ - /area/station/ai_monitored/turret_protected/ai, // these are areas exclusive to RD - /area/station/ai_monitored/turret_protected/ai_upload_foyer, // but sometimes mappers might misconfig - /area/station/ai_monitored/turret_protected/ai_upload, // their doors with our several dozen access helpers + /area/station/command/vault, /*aka Vault since it's QM's special thing*/ + /area/station/ai/satellite/chamber, // these are areas exclusive to RD + /area/station/ai/upload, // but sometimes mappers might misconfig their doors with our several dozen access helpers ) COOLDOWN_DECLARE(shock_cooldown) /// sound played when mode is switched @@ -127,9 +126,8 @@ region_access = REGION_RESEARCH owner_trim = /datum/id_trim/job/research_director our_domain = list( - /area/station/ai_monitored/turret_protected/ai, - /area/station/ai_monitored/turret_protected/ai_upload_foyer, - /area/station/ai_monitored/turret_protected/ai_upload, + /area/station/ai/satellite/chamber, + /area/station/ai/upload, ) /obj/item/door_remote/head_of_security @@ -147,7 +145,7 @@ department = "cargo" region_access = REGION_SUPPLY owner_trim = /datum/id_trim/job/quartermaster - our_domain = list( /area/station/ai_monitored/command/nuke_storage ) + our_domain = list( /area/station/command/vault ) /obj/item/door_remote/chief_medical_officer name = "medical door remote" diff --git a/code/game/objects/items/cosmetics.dm b/code/game/objects/items/cosmetics.dm index 4550b7cf6b897d..c0834a6d459551 100644 --- a/code/game/objects/items/cosmetics.dm +++ b/code/game/objects/items/cosmetics.dm @@ -232,8 +232,9 @@ var/new_style = tgui_input_list(user, "Select a facial hairstyle", "Grooming", SSaccessories.facial_hairstyles_list) if(isnull(new_style)) return - if(!get_location_accessible(human_target, location)) - to_chat(user, span_warning("The headgear is in the way!")) + var/covering = human_target.is_mouth_covered() + if(covering) + to_chat(user, span_warning("[covering] is in the way!")) return if(!(noggin.head_flags & HEAD_FACIAL_HAIR)) to_chat(user, span_warning("There is no facial hair to style!")) @@ -250,8 +251,9 @@ else return else - if(!get_location_accessible(human_target, location)) - to_chat(user, span_warning("The mask is in the way!")) + var/covering = human_target.is_mouth_covered() + if(covering) + to_chat(user, span_warning("[covering] is in the way!")) return if(!(noggin.head_flags & HEAD_FACIAL_HAIR)) to_chat(user, span_warning("There is no facial hair to shave!")) @@ -288,7 +290,7 @@ var/new_style = tgui_input_list(user, "Select a hairstyle", "Grooming", SSaccessories.hairstyles_list) if(isnull(new_style)) return - if(!get_location_accessible(human_target, location)) + if(!human_target.is_location_accessible(location)) to_chat(user, span_warning("The headgear is in the way!")) return if(!(noggin.head_flags & HEAD_HAIR)) @@ -304,7 +306,7 @@ human_target.set_hairstyle(new_style, update = TRUE) return else - if(!get_location_accessible(human_target, location)) + if(!human_target.is_location_accessible(location)) to_chat(user, span_warning("The headgear is in the way!")) return if(!(noggin.head_flags & HEAD_HAIR)) diff --git a/code/game/objects/items/courtroom.dm b/code/game/objects/items/courtroom.dm index d605a3b05f1010..bd57a8f83f6ee7 100644 --- a/code/game/objects/items/courtroom.dm +++ b/code/game/objects/items/courtroom.dm @@ -14,6 +14,7 @@ attack_verb_continuous = list("bashes", "batters", "judges", "whacks") attack_verb_simple = list("bash", "batter", "judge", "whack") resistance_flags = FLAMMABLE + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 2) /obj/item/gavelhammer/Initialize(mapload) . = ..() @@ -33,6 +34,7 @@ throwforce = 2 w_class = WEIGHT_CLASS_TINY resistance_flags = FLAMMABLE + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT) /obj/item/gavelblock/attackby(obj/item/I, mob/user, list/modifiers, list/attack_modifiers) if(istype(I, /obj/item/gavelhammer)) diff --git a/code/game/objects/items/crayons.dm b/code/game/objects/items/crayons.dm index 07938d1d0d8cd8..f055aa108bd7cb 100644 --- a/code/game/objects/items/crayons.dm +++ b/code/game/objects/items/crayons.dm @@ -30,7 +30,6 @@ w_class = WEIGHT_CLASS_TINY attack_verb_continuous = list("attacks", "colours") attack_verb_simple = list("attack", "colour") - grind_results = list() interaction_flags_atom = parent_type::interaction_flags_atom | INTERACT_ATOM_IGNORE_MOBILITY /// Icon state to use when capped @@ -215,8 +214,10 @@ drawtype = pick(all_drawables) AddElement(/datum/element/venue_price, FOOD_PRICE_EXOTIC) - AddElement(/datum/element/tool_renaming) - if(can_change_colour) + //This makes sure that spraycans do not rename stuff instead of painting + if(!can_change_colour) + AddElement(/datum/element/tool_renaming) + else AddComponent(/datum/component/palette, AVAILABLE_SPRAYCAN_SPACE, paint_color) refill() diff --git a/code/game/objects/items/credit_holochip.dm b/code/game/objects/items/credit_holochip.dm index 59c5339c3140ba..8da91ef371aff1 100644 --- a/code/game/objects/items/credit_holochip.dm +++ b/code/game/objects/items/credit_holochip.dm @@ -16,7 +16,7 @@ if(!credits && amount) credits = amount if(credits <= 0 && !mapload) - stack_trace("Holochip created with 0 or less credits in [get_area_name(src)]!") + stack_trace("Holochip created with 0 or less [MONEY_NAME] in [get_area_name(src)]!") return INITIALIZE_HINT_QDEL add_traits(list(TRAIT_FISHING_BAIT, TRAIT_BAIT_ALLOW_FISHING_DUD), INNATE_TRAIT) update_appearance() @@ -24,20 +24,20 @@ /obj/item/holochip/examine(mob/user) . = ..() - . += "[span_notice("It's loaded with [credits] credit[( credits > 1 ) ? "s" : ""]")]\n"+\ + . += "[span_notice("It's loaded with [credits] [MONEY_NAME_AUTOPURAL(credits)]")]\n"+\ span_notice("Alt-Click to split.") /obj/item/holochip/add_context(atom/source, list/context, obj/item/held_item, mob/living/user) if(istype(held_item, /obj/item/holochip)) context[SCREENTIP_CONTEXT_LMB] = "Merge Into" - context[SCREENTIP_CONTEXT_ALT_LMB] = "Extract Credits" + context[SCREENTIP_CONTEXT_ALT_LMB] = "Extract [MONEY_NAME_CAPITALIZED]" return CONTEXTUAL_SCREENTIP_SET /obj/item/holochip/get_item_credit_value() return credits /obj/item/holochip/update_name() - name = "\improper [credits] credit holochip" + name = "\improper [credits] [MONEY_NAME_SINGULAR] holochip" return ..() /obj/item/holochip/update_icon_state() @@ -117,7 +117,7 @@ if(loc != user) to_chat(user, span_warning("You must be holding the holochip to continue!")) return CLICK_ACTION_BLOCKING - var/split_amount = tgui_input_number(user, "How many credits do you want to extract from the holochip? (Max: [credits] cr)", "Holochip", max_value = credits) + var/split_amount = tgui_input_number(user, "How many [MONEY_NAME] do you want to extract from the holochip? (Max: [credits] [MONEY_SYMBOL])", "Holochip", max_value = credits) if(!split_amount || QDELETED(user) || QDELETED(src) || issilicon(user) || !usr.can_perform_action(src, NEED_DEXTERITY|FORBID_TELEKINESIS_REACH) || loc != user) return CLICK_ACTION_BLOCKING var/new_credits = spend(split_amount, TRUE) @@ -126,7 +126,7 @@ if(!user.put_in_hands(chip)) chip.forceMove(user.drop_location()) add_fingerprint(user) - to_chat(user, span_notice("You extract [split_amount] credits into a new holochip.")) + to_chat(user, span_notice("You extract [split_amount] [MONEY_NAME] into a new holochip.")) return CLICK_ACTION_SUCCESS /obj/item/holochip/emp_act(severity) diff --git a/code/game/objects/items/debug_items.dm b/code/game/objects/items/debug_items.dm index 354e628895d01c..a382733560d7b4 100644 --- a/code/game/objects/items/debug_items.dm +++ b/code/game/objects/items/debug_items.dm @@ -59,72 +59,10 @@ /obj/item/debug/omnitool/attack_self(mob/user) if(!user) return - var/list/tool_list = list( - "Crowbar" = image(icon = 'icons/obj/tools.dmi', icon_state = "crowbar"), - "Multitool" = image(icon = 'icons/obj/devices/tool.dmi', icon_state = "multitool"), - "Screwdriver" = image(icon = 'icons/map_icons/items/_item.dmi', icon_state = "/obj/item/screwdriver"), - "Wirecutters" = image(icon = 'icons/obj/tools.dmi', icon_state = "cutters_map"), - "Wrench" = image(icon = 'icons/obj/tools.dmi', icon_state = "wrench"), - "Welding Tool" = image(icon = 'icons/obj/tools.dmi', icon_state = "miniwelder"), - "Analyzer" = image(icon = 'icons/obj/devices/scanner.dmi', icon_state = "analyzer"), - "Pickaxe" = image(icon = 'icons/obj/mining.dmi', icon_state = "minipick"), - "Shovel" = image(icon = 'icons/obj/mining.dmi', icon_state = "shovel"), - "Retractor" = image(icon = 'icons/obj/medical/surgery_tools.dmi', icon_state = "retractor"), - "Hemostat" = image(icon = 'icons/obj/medical/surgery_tools.dmi', icon_state = "hemostat"), - "Cautery" = image(icon = 'icons/obj/medical/surgery_tools.dmi', icon_state = "cautery"), - "Drill" = image(icon = 'icons/obj/medical/surgery_tools.dmi', icon_state = "drill"), - "Scalpel" = image(icon = 'icons/obj/medical/surgery_tools.dmi', icon_state = "scalpel"), - "Saw" = image(icon = 'icons/obj/medical/surgery_tools.dmi', icon_state = "saw"), - "Bonesetter" = image(icon = 'icons/obj/medical/surgery_tools.dmi', icon_state = "bonesetter"), - "Knife" = image(icon = 'icons/obj/service/kitchen.dmi', icon_state = "knife"), - "Blood Filter" = image(icon = 'icons/obj/medical/surgery_tools.dmi', icon_state = "bloodfilter"), - "Rolling Pin" = image(icon = 'icons/obj/service/kitchen.dmi', icon_state = "rolling_pin"), - "Wire Brush" = image(icon = 'icons/obj/tools.dmi', icon_state = "wirebrush"), - ) - var/tool_result = show_radial_menu(user, src, tool_list, custom_check = CALLBACK(src, PROC_REF(check_menu), user), require_near = TRUE, tooltips = TRUE) + var/tool_result = show_radial_menu(user, src, GLOB.tool_to_image, custom_check = CALLBACK(src, PROC_REF(check_menu), user), require_near = TRUE, tooltips = TRUE) if(!check_menu(user)) return - switch(tool_result) - if("Crowbar") - tool_behaviour = TOOL_CROWBAR - if("Multitool") - tool_behaviour = TOOL_MULTITOOL - if("Screwdriver") - tool_behaviour = TOOL_SCREWDRIVER - if("Wirecutters") - tool_behaviour = TOOL_WIRECUTTER - if("Wrench") - tool_behaviour = TOOL_WRENCH - if("Welding Tool") - tool_behaviour = TOOL_WELDER - if("Analyzer") - tool_behaviour = TOOL_ANALYZER - if("Pickaxe") - tool_behaviour = TOOL_MINING - if("Shovel") - tool_behaviour = TOOL_SHOVEL - if("Retractor") - tool_behaviour = TOOL_RETRACTOR - if("Hemostat") - tool_behaviour = TOOL_HEMOSTAT - if("Cautery") - tool_behaviour = TOOL_CAUTERY - if("Drill") - tool_behaviour = TOOL_DRILL - if("Scalpel") - tool_behaviour = TOOL_SCALPEL - if("Saw") - tool_behaviour = TOOL_SAW - if("Bonesetter") - tool_behaviour = TOOL_BONESET - if("Knife") - tool_behaviour = TOOL_KNIFE - if("Blood Filter") - tool_behaviour = TOOL_BLOODFILTER - if("Rolling Pin") - tool_behaviour = TOOL_ROLLINGPIN - if("Wire Brush") - tool_behaviour = TOOL_RUSTSCRAPER + tool_behaviour = tool_result /obj/item/debug/omnitool/item_spawner name = "spawntool" diff --git a/code/game/objects/items/defib.dm b/code/game/objects/items/defib.dm index 1dc026665a5991..1d4cf790f66d48 100644 --- a/code/game/objects/items/defib.dm +++ b/code/game/objects/items/defib.dm @@ -121,17 +121,10 @@ //ATTACK HAND IGNORING PARENT RETURN VALUE /obj/item/defibrillator/attack_hand(mob/user, list/modifiers) if(loc == user) - if(slot_flags & ITEM_SLOT_BACK) - if(user.get_item_by_slot(ITEM_SLOT_BACK) == src) - ui_action_click() - else - to_chat(user, span_warning("Put the defibrillator on your back first!")) - - else if(slot_flags & ITEM_SLOT_BELT) - if(user.get_item_by_slot(ITEM_SLOT_BELT) == src) - ui_action_click() - else - to_chat(user, span_warning("Strap the defibrillator's belt on first!")) + if(user.get_slot_by_item(src) & slot_flags) + ui_action_click() + else + balloon_alert(user, "equip the unit first!") return else if(istype(loc, /obj/machinery/defibrillator_mount)) ui_action_click() //checks for this are handled in defibrillator.mount.dm @@ -266,9 +259,10 @@ desc = "A belt-equipped defibrillator that can be rapidly deployed." icon_state = "defibcompact" inhand_icon_state = null + slot_flags = ITEM_SLOT_BELT|ITEM_SLOT_SUITSTORE|ITEM_SLOT_DEX_STORAGE + worn_icon = 'icons/mob/clothing/belt.dmi' worn_icon_state = "defibcompact" w_class = WEIGHT_CLASS_NORMAL - slot_flags = ITEM_SLOT_BELT paddle_state = "defibcompact-paddles" powered_state = "defibcompact-powered" charge_state = "defibcompact-charge" @@ -280,6 +274,11 @@ cell = new(src) update_power() +/obj/item/defibrillator/compact/loaded/cmo // subtype for the spy steal objective + name = "chief medical officer's compact defibrillator" + icon_state = "defibcmo" + resistance_flags = INDESTRUCTIBLE // So no cheesy getting rid of like other steal/head items + /obj/item/defibrillator/compact/combat name = "combat defibrillator" desc = "A belt-equipped blood-red defibrillator. Can revive through thick clothing, has an experimental self-recharging battery, and can be utilized as a weapon via applying the paddles while in a combat stance." @@ -341,6 +340,7 @@ . = ..() AddElement(/datum/element/update_icon_updates_onmob, ITEM_SLOT_BACK) AddComponent(/datum/component/two_handed, force_unwielded=8, force_wielded=12) + RegisterSignal(src, COMSIG_HUMAN_NON_STORAGE_HOTKEY, PROC_REF(on_non_storage_hotkey)) /obj/item/shockpaddles/Destroy() defib = null @@ -508,7 +508,7 @@ busy = TRUE M.visible_message(span_danger("[user] touches [M] with [src]!"), \ span_userdanger("[user] touches [M] with [src]!")) - M.adjustStaminaLoss(60) + M.adjust_stamina_loss(60) M.Knockdown(75) M.set_jitter_if_lower(100 SECONDS) M.apply_status_effect(/datum/status_effect/convulsing) @@ -608,25 +608,27 @@ fail_reason = "Patient's brain is missing. Further attempts futile." if (DEFIB_FAIL_BLACKLISTED) fail_reason = "Patient has been blacklisted from revival. Further attempts futile." + if (DEFIB_FAIL_GOLEM) + fail_reason = "Patient is constructed from inorganic materials. Further attempts futile, though manual reconstruction is possible." if(fail_reason) user.visible_message(span_warning("[req_defib ? "[defib]" : "[src]"] buzzes: Resuscitation failed - [fail_reason]")) playsound(src, 'sound/machines/defib/defib_failed.ogg', 50, FALSE) else - var/total_brute = H.getBruteLoss() - var/total_burn = H.getFireLoss() + var/total_brute = H.get_brute_loss() + var/total_burn = H.get_fire_loss() var/need_mob_update = FALSE //If the body has been fixed so that they would not be in crit when defibbed, give them oxyloss to put them back into crit if (H.health > HALFWAYCRITDEATH) - need_mob_update += H.adjustOxyLoss(H.health - HALFWAYCRITDEATH, updating_health = FALSE) + need_mob_update += H.adjust_oxy_loss(H.health - HALFWAYCRITDEATH, updating_health = FALSE) else - var/overall_damage = total_brute + total_burn + H.getToxLoss() + H.getOxyLoss() + var/overall_damage = total_brute + total_burn + H.get_tox_loss() + H.get_oxy_loss() var/mobhealth = H.health - need_mob_update += H.adjustOxyLoss((mobhealth - HALFWAYCRITDEATH) * (H.getOxyLoss() / overall_damage), updating_health = FALSE) - need_mob_update += H.adjustToxLoss((mobhealth - HALFWAYCRITDEATH) * (H.getToxLoss() / overall_damage), updating_health = FALSE, forced = TRUE) // force tox heal for toxin lovers too - need_mob_update += H.adjustFireLoss((mobhealth - HALFWAYCRITDEATH) * (total_burn / overall_damage), updating_health = FALSE) - need_mob_update += H.adjustBruteLoss((mobhealth - HALFWAYCRITDEATH) * (total_brute / overall_damage), updating_health = FALSE) + need_mob_update += H.adjust_oxy_loss((mobhealth - HALFWAYCRITDEATH) * (H.get_oxy_loss() / overall_damage), updating_health = FALSE) + need_mob_update += H.adjust_tox_loss((mobhealth - HALFWAYCRITDEATH) * (H.get_tox_loss() / overall_damage), updating_health = FALSE, forced = TRUE) // force tox heal for toxin lovers too + need_mob_update += H.adjust_fire_loss((mobhealth - HALFWAYCRITDEATH) * (total_burn / overall_damage), updating_health = FALSE) + need_mob_update += H.adjust_brute_loss((mobhealth - HALFWAYCRITDEATH) * (total_brute / overall_damage), updating_health = FALSE) if(need_mob_update) H.updatehealth() // Previous "adjust" procs don't update health, so we do it manually. user.visible_message(span_notice("[req_defib ? "[defib]" : "[src]"] pings: Resuscitation successful.")) @@ -669,6 +671,13 @@ /obj/item/shockpaddles/proc/is_wielded() return HAS_TRAIT(src, TRAIT_WIELDED) +/obj/item/shockpaddles/proc/on_non_storage_hotkey(datum/source, mob/living/carbon/human/user, obj/item/possible_storage) + SIGNAL_HANDLER + if(possible_storage == defib) + user.dropItemToGround(src) + return COMPONENT_STORAGE_HOTKEY_HANDLED + return NONE + /obj/item/shockpaddles/cyborg name = "cyborg defibrillator paddles" icon = 'icons/obj/medical/defib.dmi' diff --git a/code/game/objects/items/devices/aicard.dm b/code/game/objects/items/devices/aicard.dm index 62ff966c91c9ae..1f9a78e3f3fb3c 100644 --- a/code/game/objects/items/devices/aicard.dm +++ b/code/game/objects/items/devices/aicard.dm @@ -35,12 +35,14 @@ desc = "A stylish upgrade (?) to the intelliCard." icon_state = "aitater" base_icon_state = "aitater" + custom_materials = list(/datum/material/iron = SMALL_MATERIAL_AMOUNT * 0.5, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.5) /obj/item/aicard/aispook name = "intelliLantern" desc = "A spoOoOoky upgrade to the intelliCard." icon_state = "aispook" base_icon_state = "aispook" + custom_materials = list(/datum/material/iron = SMALL_MATERIAL_AMOUNT * 0.5, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.5) /obj/item/aicard/suicide_act(mob/living/user) user.visible_message(span_suicide("[user] is trying to upload [user.p_them()]self into [src]! That's not going to work out well!")) @@ -159,7 +161,7 @@ if(AI && AI.loc == src) to_chat(AI, span_userdanger("Your core files are being wiped!")) while(AI.stat != DEAD && flush) - AI.adjustOxyLoss(5) + AI.adjust_oxy_loss(5) AI.updatehealth() sleep(0.5 SECONDS) flush = FALSE diff --git a/code/game/objects/items/devices/aicard_evil.dm b/code/game/objects/items/devices/aicard_evil.dm index b63ecf25870c21..0c9f0c6f9c486d 100644 --- a/code/game/objects/items/devices/aicard_evil.dm +++ b/code/game/objects/items/devices/aicard_evil.dm @@ -69,7 +69,7 @@ // Transfer the AI from the core we created into the card, then delete the core capture_ai(new_ai, user) - var/obj/structure/ai_core/deactivated/detritus = locate() in get_turf(src) + var/obj/structure/ai_core/detritus = locate() in get_turf(src) qdel(detritus) AI.set_control_disabled(FALSE) AI.radio_enabled = TRUE diff --git a/code/game/objects/items/devices/blood_scanner.dm b/code/game/objects/items/devices/blood_scanner.dm index 5add88050f514a..4a32545b0a4516 100644 --- a/code/game/objects/items/devices/blood_scanner.dm +++ b/code/game/objects/items/devices/blood_scanner.dm @@ -56,13 +56,13 @@ /obj/item/blood_scanner/proc/scan_blood(mob/living/scanner, mob/living/carbon/scanned_person) var/render_list = list() - var/oxy_loss = scanned_person.getOxyLoss() - var/tox_loss = scanned_person.getToxLoss() + var/oxy_loss = scanned_person.get_oxy_loss() + var/tox_loss = scanned_person.get_tox_loss() render_list += span_info("You read the [src]'s screen:\n") render_list += "Blood Type: [scanned_person?.dna?.blood_type]\n" if(oxy_loss > 50)//if they have knockout levels of suffocation damage render_list += "Warning: Hypoxic blood oxygen levels.\n" - if(scanned_person.blood_volume <= BLOOD_VOLUME_SAFE) + if(scanned_person.get_blood_volume(apply_modifiers = TRUE) <= BLOOD_VOLUME_SAFE) render_list += "Warning: Dangerously low blood flow.\n" if(tox_loss > 10) render_list += "Warning: Toxic buildup detected in bloodstream.\n" diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm index f38aa9147cfe04..6228e6c1e3a589 100644 --- a/code/game/objects/items/devices/flashlight.dm +++ b/code/game/objects/items/devices/flashlight.dm @@ -17,7 +17,10 @@ w_class = WEIGHT_CLASS_SMALL obj_flags = CONDUCTS_ELECTRICITY slot_flags = ITEM_SLOT_BELT - custom_materials = list(/datum/material/iron= SMALL_MATERIAL_AMOUNT * 0.5, /datum/material/glass= SMALL_MATERIAL_AMOUNT * 0.2) + custom_materials = list( + /datum/material/iron = SMALL_MATERIAL_AMOUNT * 0.5, + /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.2, + ) actions_types = list(/datum/action/item_action/toggle_light) action_slots = ALL light_system = OVERLAY_LIGHT_DIRECTIONAL @@ -231,7 +234,7 @@ . += span_notice_ml("[patient] has [pill_count] pill[pill_count > 1 ? "s" : ""] implanted in [patient.p_their()] teeth.\n") //assess any suffocation damage - var/hypoxia_status = patient.getOxyLoss() > 20 + var/hypoxia_status = patient.get_oxy_loss() > 20 if(patient == user) if(hypoxia_status) @@ -250,9 +253,11 @@ else . += span_info_ml("You press a finger to [patient.p_their()] gums:\n") - if(patient.blood_volume <= BLOOD_VOLUME_SAFE && patient.blood_volume > BLOOD_VOLUME_OKAY) + var/cached_blood_volume = patient.get_blood_volume(apply_modifiers = TRUE) + + if(cached_blood_volume <= BLOOD_VOLUME_SAFE && cached_blood_volume > BLOOD_VOLUME_OKAY) . += span_danger_ml("Color returns slowly!\n")//low blood - else if(patient.blood_volume <= BLOOD_VOLUME_OKAY) + else if(cached_blood_volume <= BLOOD_VOLUME_OKAY) . += span_danger_ml("Color does not return!\n")//critical blood else . += span_notice_ml("Color returns quickly.\n")//they're okay :D @@ -442,7 +447,6 @@ light_color = LIGHT_COLOR_FLARE light_system = OVERLAY_LIGHT light_power = 2 - grind_results = list(/datum/reagent/sulfur = 15) sound_on = 'sound/items/match_strike.ogg' toggle_context = FALSE has_closed_handle = FALSE @@ -456,7 +460,11 @@ var/trash_type = /obj/item/trash/flare /// If the light source can be extinguished var/can_be_extinguished = FALSE - custom_materials = list(/datum/material/plastic= SMALL_MATERIAL_AMOUNT * 0.5) + custom_materials = list( + /datum/material/iron = SMALL_MATERIAL_AMOUNT * 0.5, + /datum/material/plasma = SMALL_MATERIAL_AMOUNT * 0.5, + /datum/material/plastic = SMALL_MATERIAL_AMOUNT * 0.5, + ) /obj/item/flashlight/flare/Initialize(mapload) . = ..() @@ -470,6 +478,9 @@ damtype = BURN update_brightness() +/obj/item/flashlight/flare/grind_results() + return list(/datum/reagent/sulfur = 15) + /obj/item/flashlight/flare/init_slapcrafting() return @@ -713,6 +724,7 @@ slot_flags = null trash_type = /obj/effect/decal/cleanable/ash can_be_extinguished = TRUE + custom_materials = list(/datum/material/wood = SMALL_MATERIAL_AMOUNT*0.5) /obj/item/flashlight/flare/torch/on start_on = TRUE @@ -724,6 +736,7 @@ fuel = INFINITY randomize_fuel = FALSE start_on = TRUE + custom_materials = null /obj/item/flashlight/flare/torch/red color = "#ff0000" @@ -853,11 +866,11 @@ base_icon_state = "glowstick" inhand_icon_state = null worn_icon_state = "lightstick" - grind_results = list(/datum/reagent/phenol = 15, /datum/reagent/hydrogen = 10, /datum/reagent/oxygen = 5) //Meth-in-a-stick sound_on = 'sound/effects/wounds/crack2.ogg' // the cracking sound isn't just for wounds silly toggle_context = FALSE ignore_base_color = TRUE has_closed_handle = FALSE + custom_materials = null /// How much max fuel we have var/max_fuel = 0 /// How much oxygen gets added upon cracking the stick. Doesn't actually produce a reaction with the fluid but it does allow for bootleg chemical "grenades" @@ -886,6 +899,11 @@ ) RegisterSignal(reagents, COMSIG_REAGENTS_HOLDER_UPDATED, PROC_REF(on_reagent_change)) +/obj/item/flashlight/glowstick/grind_results() + . = list(/datum/reagent/phenol = 15, /datum/reagent/hydrogen = 10) + if(!light_on) + .[/datum/reagent/oxygen] = 5 + /obj/item/flashlight/glowstick/proc/get_fuel() return reagents.get_reagent_amount(fuel_type) @@ -925,7 +943,6 @@ /obj/item/flashlight/glowstick/proc/turn_on() reagents.add_reagent(/datum/reagent/oxygen, oxygen_added) - grind_results -= /datum/reagent/oxygen set_light_on(TRUE) // Just in case var/datum/action/toggle = locate(/datum/action/item_action/toggle_light) in actions // No sense having a toggle light action that we don't use eh? diff --git a/code/game/objects/items/devices/multitool.dm b/code/game/objects/items/devices/multitool.dm index e724449142329d..626c42d65a44e1 100644 --- a/code/game/objects/items/devices/multitool.dm +++ b/code/game/objects/items/devices/multitool.dm @@ -295,10 +295,10 @@ for(var/x = x1; x <= x2; x += CHUNK_SIZE) for(var/y = y1; y <= y2; y += CHUNK_SIZE) - var/datum/camerachunk/chunk = GLOB.cameranet.getCameraChunk(x, y, epicenter.z) + var/datum/camerachunk/chunk = SScameras.generate_chunk(x, y, epicenter.z) // removing cameras in build mode didnt affect it and i guess it needs an AI eye to update so we have to do this manually // unless we only want to see static in a jank manner only if an eye updates it - chunk?.update() // UPDATE THE FUCK NOW + chunk?.force_update(only_if_necessary = FALSE) // UPDATE THE FUCK NOW . |= chunk /obj/item/multitool/ai_detect/proc/cleanup_static() diff --git a/code/game/objects/items/devices/pressureplates.dm b/code/game/objects/items/devices/pressureplates.dm index d75682d72a4cd8..d1bff2e7432872 100644 --- a/code/game/objects/items/devices/pressureplates.dm +++ b/code/game/objects/items/devices/pressureplates.dm @@ -9,6 +9,7 @@ icon_state = "pressureplate" layer = ABOVE_OPEN_TURF_LAYER plane = FLOOR_PLANE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 1.75, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.7) var/trigger_mob = TRUE var/trigger_item = FALSE var/specific_item = null diff --git a/code/game/objects/items/devices/quantum_keycard.dm b/code/game/objects/items/devices/quantum_keycard.dm index 44cd9fbe6eaed9..abe5d99b55d882 100644 --- a/code/game/objects/items/devices/quantum_keycard.dm +++ b/code/game/objects/items/devices/quantum_keycard.dm @@ -22,7 +22,7 @@ /area/station/service = COLOR_SERVICE_LIME, /area/centcom = COLOR_CENTCOM_BLUE, // how? /area/station/command = COLOR_COMMAND_BLUE, - /area/station/ai_monitored = COLOR_COMMAND_BLUE, + /area/station/ai = COLOR_COMMAND_BLUE, /area/station/medical = COLOR_MEDICAL_BLUE, /area/station/science = COLOR_SCIENCE_PINK, /area/station/engineering = COLOR_ENGINEERING_ORANGE, diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm index 9e81f9b9d2b0b9..6206003e3acc21 100644 --- a/code/game/objects/items/devices/radio/headset.dm +++ b/code/game/objects/items/devices/radio/headset.dm @@ -268,12 +268,12 @@ GLOBAL_LIST_INIT(channel_tokens, list( /obj/item/radio/headset/heads command = TRUE + icon_state = "com_headset" + worn_icon_state = "com_headset" /obj/item/radio/headset/heads/captain name = "\proper the captain's headset" desc = "The headset of the king." - icon_state = "com_headset" - worn_icon_state = "com_headset" keyslot = /obj/item/encryptionkey/heads/captain /obj/item/radio/headset/heads/captain/alt @@ -289,22 +289,16 @@ GLOBAL_LIST_INIT(channel_tokens, list( /obj/item/radio/headset/heads/rd name = "\proper the research director's headset" desc = "Headset of the fellow who keeps society marching towards technological singularity." - icon_state = "com_headset" - worn_icon_state = "com_headset" keyslot = /obj/item/encryptionkey/heads/rd /obj/item/radio/headset/heads/hos name = "\proper the head of security's headset" desc = "The headset of the man in charge of keeping order and protecting the station." - icon_state = "com_headset" - worn_icon_state = "com_headset" keyslot = /obj/item/encryptionkey/heads/hos /obj/item/radio/headset/heads/hos/advisor name = "\proper the veteran security advisor headset" desc = "The headset of the man who was in charge of keeping order and protecting the station..." - icon_state = "com_headset" - worn_icon_state = "com_headset" keyslot = /obj/item/encryptionkey/heads/hos command = FALSE @@ -321,29 +315,21 @@ GLOBAL_LIST_INIT(channel_tokens, list( /obj/item/radio/headset/heads/ce name = "\proper the chief engineer's headset" desc = "The headset of the guy in charge of keeping the station powered and undamaged." - icon_state = "com_headset" - worn_icon_state = "com_headset" keyslot = /obj/item/encryptionkey/heads/ce /obj/item/radio/headset/heads/cmo name = "\proper the chief medical officer's headset" desc = "The headset of the highly trained medical chief." - icon_state = "com_headset" - worn_icon_state = "com_headset" keyslot = /obj/item/encryptionkey/heads/cmo /obj/item/radio/headset/heads/hop name = "\proper the head of personnel's headset" desc = "The headset of the guy who will one day be captain." - icon_state = "com_headset" - worn_icon_state = "com_headset" keyslot = /obj/item/encryptionkey/heads/hop /obj/item/radio/headset/heads/qm name = "\proper the quartermaster's headset" desc = "The headset of the guy who runs the cargo department." - icon_state = "com_headset" - worn_icon_state = "com_headset" keyslot = /obj/item/encryptionkey/heads/qm /obj/item/radio/headset/headset_cargo @@ -469,25 +455,23 @@ GLOBAL_LIST_INIT(channel_tokens, list( return TRUE /obj/item/radio/headset/attackby(obj/item/W, mob/user, list/modifiers, list/attack_modifiers) - if(istype(W, /obj/item/encryptionkey)) - if(keyslot && keyslot2) - to_chat(user, span_warning("The headset can't hold another key!")) - return - - if(!keyslot) - if(!user.transferItemToLoc(W, src)) - return - keyslot = W - - else - if(!user.transferItemToLoc(W, src)) - return - keyslot2 = W + if(!istype(W, /obj/item/encryptionkey)) + return ..() + if(keyslot && keyslot2) + to_chat(user, span_warning("The headset can't hold another key!")) + return - recalculateChannels() + if(!keyslot) + if(!user.transferItemToLoc(W, src)) + return + keyslot = W else - return ..() + if(!user.transferItemToLoc(W, src)) + return + keyslot2 = W + + recalculateChannels() /obj/item/radio/headset/recalculateChannels() . = ..() diff --git a/code/game/objects/items/devices/radio/intercom.dm b/code/game/objects/items/devices/radio/intercom.dm index 1b33ba5b49ac70..796ccbe3b20a1f 100644 --- a/code/game/objects/items/devices/radio/intercom.dm +++ b/code/game/objects/items/devices/radio/intercom.dm @@ -39,7 +39,7 @@ return RegisterSignal(current_area, COMSIG_AREA_POWER_CHANGE, PROC_REF(AreaPowerCheck)) if(mapload) - find_and_hang_on_wall() + find_and_mount_on_atom() GLOB.intercoms_list += src /obj/item/radio/intercom/Destroy() @@ -197,7 +197,7 @@ icon_state = "intercom" result_path = /obj/item/radio/intercom/unscrewed pixel_shift = 26 - custom_materials = list(/datum/material/iron = SMALL_MATERIAL_AMOUNT * 0.75, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.25) + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2) MAPPING_DIRECTIONAL_HELPERS(/obj/item/radio/intercom, 27) @@ -231,8 +231,14 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/item/radio/intercom, 27) desc = "A custom-made Syndicate-issue intercom used to transmit on all Nanotrasen frequencies. Particularly expensive." freerange = TRUE +/obj/item/radio/intercom/mi13 + name = "intercom" + desc = "Talk through this to talk to whoever is in this facility with you." + freerange = TRUE + MAPPING_DIRECTIONAL_HELPERS(/obj/item/radio/intercom/prison, 27) MAPPING_DIRECTIONAL_HELPERS(/obj/item/radio/intercom/chapel, 27) MAPPING_DIRECTIONAL_HELPERS(/obj/item/radio/intercom/command, 27) MAPPING_DIRECTIONAL_HELPERS(/obj/item/radio/intercom/syndicate, 27) MAPPING_DIRECTIONAL_HELPERS(/obj/item/radio/intercom/syndicate/freerange, 27) +MAPPING_DIRECTIONAL_HELPERS(/obj/item/radio/intercom/mi13, 27) diff --git a/code/game/objects/items/devices/reverse_bear_trap.dm b/code/game/objects/items/devices/reverse_bear_trap.dm index 95e4a8fdeb9d2b..93b80fdb67ff84 100644 --- a/code/game/objects/items/devices/reverse_bear_trap.dm +++ b/code/game/objects/items/devices/reverse_bear_trap.dm @@ -101,7 +101,7 @@ if(!do_after(user, 3 SECONDS, target = target) || target.get_item_by_slot(ITEM_SLOT_HEAD)) return target.visible_message(span_warning("[user] forces and locks [src] onto [target]'s head!"), \ - span_userdanger("[target] locks [src] onto your head!"), "You hear a click, and then a timer ticking down.") + span_userdanger("[user] locks [src] onto your head!"), "You hear a click, and then a timer ticking down.") to_chat(user, span_danger("You force [src] onto [target]'s head and click the padlock shut.")) user.dropItemToGround(src) diff --git a/code/game/objects/items/devices/scanners/autopsy_scanner.dm b/code/game/objects/items/devices/scanners/autopsy_scanner.dm index d407ce6b8e30b5..c541e513a0d899 100644 --- a/code/game/objects/items/devices/scanners/autopsy_scanner.dm +++ b/code/game/objects/items/devices/scanners/autopsy_scanner.dm @@ -67,10 +67,10 @@ autopsy_information += "Time of Death - [scanned.station_timestamp_timeofdeath]
" autopsy_information += "Subject has been dead for [DisplayTimeText(round(world.time - scanned.timeofdeath))].
" - var/oxy_loss = scanned.getOxyLoss() - var/tox_loss = scanned.getToxLoss() - var/fire_loss = scanned.getFireLoss() - var/brute_loss = scanned.getBruteLoss() + var/oxy_loss = scanned.get_oxy_loss() + var/tox_loss = scanned.get_tox_loss() + var/fire_loss = scanned.get_fire_loss() + var/brute_loss = scanned.get_brute_loss() /// "Body Data" portion of the autopsy - damage, wounds, and limbs var/dmgreport = "Body Data:\ \ @@ -91,7 +91,7 @@ dmgreport += "" dmgreport += "" continue - var/has_any_embeds = length(limb.embedded_objects) >= 1 + var/has_any_embeds = LAZYLEN(limb.embedded_objects) >= 1 var/has_any_wounds = length(limb.wounds) >= 1 dmgreport += "" dmgreport += "" @@ -187,31 +187,34 @@ // Blood Info if(HAS_TRAIT(scanned, TRAIT_HUSK)) - autopsy_information += "Blood can't be found, subject is husked by: " - if(HAS_TRAIT_FROM(scanned, TRAIT_HUSK, BURN)) - autopsy_information += "Severe burns.
" - else if (HAS_TRAIT_FROM(scanned, TRAIT_HUSK, CHANGELING_DRAIN)) + autopsy_information += "Subject is husked by: " + if(HAS_TRAIT_FROM(scanned, TRAIT_HUSK, CHANGELING_DRAIN)) autopsy_information += "Desiccation, commonly caused by Changelings.
" - else + else if(HAS_TRAIT_FROM(scanned, TRAIT_HUSK, SKELETON_TRAIT)) + autopsy_information += "Stripped flesh.
" + else if(!HAS_TRAIT_FROM(scanned, TRAIT_HUSK, BURN)) // prioritize showing unknown causes over burns autopsy_information += "Unknown causes.
" - else - var/datum/blood_type/blood_type = scanned.get_bloodtype() - if(blood_type) - var/blood_percent = round((scanned.blood_volume / BLOOD_VOLUME_NORMAL) * 100) - var/blood_type_format - var/level_format - if(scanned.blood_volume <= BLOOD_VOLUME_SAFE && scanned.blood_volume > BLOOD_VOLUME_OKAY) - level_format = "LOW [blood_percent]%, [scanned.blood_volume] cl" - else if(scanned.blood_volume <= BLOOD_VOLUME_OKAY) - level_format = "CRITICAL [blood_percent]%, [scanned.blood_volume] cl" - else - level_format = "[blood_percent]%, [scanned.blood_volume] cl" - if(blood_type.get_type()) - blood_type_format = "type: [blood_type.get_type()]" - autopsy_information += "[blood_type.get_blood_name()] level: [level_format], [blood_type_format]
" - var/blood_alcohol_content = scanned.get_blood_alcohol_content() - if(blood_alcohol_content > 0) - autopsy_information += "↳ [blood_type?.get_blood_name() || "Blood"] alcohol content: [blood_alcohol_content]%
" + else + autopsy_information += "Severe burns.
" + + var/datum/blood_type/blood_type = scanned.get_bloodtype() + if(blood_type) + var/cached_blood_volume = scanned.get_blood_volume(apply_modifiers = TRUE) + var/blood_percent = round((cached_blood_volume / BLOOD_VOLUME_NORMAL) * 100) + var/blood_type_format + var/level_format + if(cached_blood_volume <= BLOOD_VOLUME_SAFE && cached_blood_volume > BLOOD_VOLUME_OKAY) + level_format = "LOW [blood_percent]%, [cached_blood_volume] cl" + else if(cached_blood_volume <= BLOOD_VOLUME_OKAY) + level_format = "CRITICAL [blood_percent]%, [cached_blood_volume] cl" + else + level_format = "[blood_percent]%, [cached_blood_volume] cl" + if(blood_type.get_type()) + blood_type_format = "type: [blood_type.get_type()]" + autopsy_information += "[blood_type.get_blood_name()] level: [level_format], [blood_type_format]
" + var/blood_alcohol_content = scanned.get_blood_alcohol_content() + if(blood_alcohol_content > 0) + autopsy_information += "↳ [blood_type?.get_blood_name() || "Blood"] alcohol content: [blood_alcohol_content]%
" autopsy_information += "
" autopsy_information += "Chemical Data:
" diff --git a/code/game/objects/items/devices/scanners/gas_analyzer.dm b/code/game/objects/items/devices/scanners/gas_analyzer.dm index 605d106c1f9aa3..a04788ac5327d4 100644 --- a/code/game/objects/items/devices/scanners/gas_analyzer.dm +++ b/code/game/objects/items/devices/scanners/gas_analyzer.dm @@ -16,7 +16,6 @@ throw_range = 7 tool_behaviour = TOOL_ANALYZER custom_materials = list(/datum/material/iron=SMALL_MATERIAL_AMOUNT * 0.3, /datum/material/glass=SMALL_MATERIAL_AMOUNT * 0.2) - grind_results = list(/datum/reagent/mercury = 5, /datum/reagent/iron = 5, /datum/reagent/silicon = 5) interaction_flags_click = NEED_LITERACY|NEED_LIGHT|ALLOW_RESTING pickup_sound = 'sound/items/handling/gas_analyzer/gas_analyzer_pickup.ogg' drop_sound = 'sound/items/handling/gas_analyzer/gas_analyzer_drop.ogg' @@ -44,6 +43,9 @@ slapcraft_recipes = slapcraft_recipe_list,\ ) +/obj/item/analyzer/grind_results() + return list(/datum/reagent/mercury = 5, /datum/reagent/iron = 5, /datum/reagent/silicon = 5) + /obj/item/analyzer/equipped(mob/user, slot, initial) . = ..() ADD_TRAIT(user, TRAIT_DETECT_STORM, CLOTHING_TRAIT) @@ -234,5 +236,7 @@ worn_icon_state = "analyzer" w_class = WEIGHT_CLASS_NORMAL custom_materials = list(/datum/material/iron = SMALL_MATERIAL_AMOUNT, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.2, /datum/material/gold = SMALL_MATERIAL_AMOUNT*3, /datum/material/bluespace=SMALL_MATERIAL_AMOUNT*2) - grind_results = list(/datum/reagent/mercury = 5, /datum/reagent/iron = 5, /datum/reagent/silicon = 5) ranged_scan_distance = 15 + +/obj/item/analyzer/ranged/grind_results() + return list(/datum/reagent/mercury = 5, /datum/reagent/iron = 5, /datum/reagent/silicon = 5) diff --git a/code/game/objects/items/devices/scanners/health_analyzer.dm b/code/game/objects/items/devices/scanners/health_analyzer.dm index 9050174585c4ed..bfedb580407e59 100644 --- a/code/game/objects/items/devices/scanners/health_analyzer.dm +++ b/code/game/objects/items/devices/scanners/health_analyzer.dm @@ -156,10 +156,10 @@ var/list/render_list = list() // Damage specifics - var/oxy_loss = target.getOxyLoss() - var/tox_loss = target.getToxLoss() - var/fire_loss = target.getFireLoss() - var/brute_loss = target.getBruteLoss() + var/oxy_loss = target.get_oxy_loss() + var/tox_loss = target.get_tox_loss() + var/fire_loss = target.get_fire_loss() + var/brute_loss = target.get_brute_loss() var/mob_status = (!target.appears_alive() ? span_alert("Deceased") : "[round(target.health / target.maxHealth, 0.01) * 100]% healthy") if(HAS_TRAIT(target, TRAIT_FAKEDEATH) && target.stat != DEAD) @@ -178,19 +178,21 @@ // Husk detection if(HAS_TRAIT(target, TRAIT_HUSK)) if(advanced) - if(HAS_TRAIT_FROM(target, TRAIT_HUSK, BURN)) - render_list += "Subject has been husked by [conditional_tooltip("severe burns", "Tend burns and apply a de-husking agent, such as [/datum/reagent/medicine/c2/synthflesh::name].", tochat)].
" - else if (HAS_TRAIT_FROM(target, TRAIT_HUSK, CHANGELING_DRAIN)) + if(HAS_TRAIT_FROM(target, TRAIT_HUSK, CHANGELING_DRAIN)) render_list += "Subject has been husked by [conditional_tooltip("desiccation", "Irreparable. Under normal circumstances, revival can only proceed via brain transplant.", tochat)].
" - else + else if(HAS_TRAIT_FROM(target, TRAIT_HUSK, SKELETON_TRAIT)) + render_list += "Subject has been husked due to severe flesh loss.
" + else if(!HAS_TRAIT_FROM(target, TRAIT_HUSK, BURN)) // prioritize showing unknown causes over burns render_list += "Subject has been husked by mysterious causes.
" + else + render_list += "Subject has been husked by [conditional_tooltip("severe burns", "Tend burns and apply a de-husking agent, such as [/datum/reagent/medicine/c2/synthflesh::name].", tochat)].
" else render_list += "Subject has been husked.
" - if(target.getStaminaLoss()) + if(target.get_stamina_loss()) if(advanced) - render_list += "Fatigue level: [target.getStaminaLoss()]%.
" + render_list += "Fatigue level: [target.get_stamina_loss()]%.
" else render_list += "Subject appears to be suffering from fatigue.
" @@ -263,7 +265,7 @@ dmgreport += "" dmgreport += "" continue - var/has_any_embeds = length(limb.embedded_objects) >= 1 + var/has_any_embeds = LAZYLEN(limb.embedded_objects) >= 1 var/has_any_wounds = length(limb.wounds) >= 1 var/is_damaged = limb.burn_dam > 0 || limb.brute_dam > 0 if(!is_damaged && (zone != BODY_ZONE_CHEST || (tox_loss <= 0 && oxy_loss <= 0)) && !has_any_embeds && !has_any_wounds) @@ -382,15 +384,16 @@ // Blood Level var/datum/blood_type/blood_type = target.get_bloodtype() if(blood_type) - var/blood_percent = round((target.blood_volume / BLOOD_VOLUME_NORMAL) * 100) + var/cached_blood_volume = target.get_blood_volume(apply_modifiers = TRUE) + var/blood_percent = round((cached_blood_volume / BLOOD_VOLUME_NORMAL) * 100) var/blood_type_format var/level_format - if(target.blood_volume <= BLOOD_VOLUME_SAFE && target.blood_volume > BLOOD_VOLUME_OKAY) - level_format = "LOW [blood_percent]%, [target.blood_volume] cl" + if(cached_blood_volume <= BLOOD_VOLUME_SAFE && cached_blood_volume > BLOOD_VOLUME_OKAY) + level_format = "LOW [blood_percent]%, [cached_blood_volume] cl" if (blood_type.restoration_chem) level_format = conditional_tooltip(level_format, "Recommendation: [blood_type.restoration_chem::name] supplement.", tochat) - else if(target.blood_volume <= BLOOD_VOLUME_OKAY) - level_format = "CRITICAL [blood_percent]%, [target.blood_volume] cl" + else if(cached_blood_volume <= BLOOD_VOLUME_OKAY) + level_format = "CRITICAL [blood_percent]%, [cached_blood_volume] cl" var/recommendation = list() if (blood_type.restoration_chem) recommendation += "[blood_type.restoration_chem::name] supplement" @@ -402,7 +405,7 @@ recommendation += "immediate [blood_type.get_blood_name()] transufion" level_format = conditional_tooltip(level_format, "Recommendation: [english_list(recommendation, and_text = " or ")].", tochat) else - level_format = "[blood_percent]%, [target.blood_volume] cl" + level_format = "[blood_percent]%, [cached_blood_volume] cl" if (blood_type.get_type()) blood_type_format = "type: [blood_type.get_type()]" @@ -412,7 +415,7 @@ compatible_types_readable |= initial(comp_blood_type.name) blood_type_format = span_tooltip("Can receive from types [english_list(compatible_types_readable)].", blood_type_format) - render_list += "[blood_type.get_blood_name()] level: [level_format],[blood_type_format]
" + render_list += "[blood_type.get_blood_name()] level: [level_format],[blood_type_format]
" var/blood_alcohol_content = target.get_blood_alcohol_content() if(blood_alcohol_content > 0) @@ -705,7 +708,7 @@ show_emotion(AID_EMOTION_HAPPY) /obj/item/healthanalyzer/simple/proc/violence_damage(mob/living/user) - user.adjustBruteLoss(4) + user.adjust_brute_loss(4) /obj/item/healthanalyzer/simple/interact_with_atom(atom/interacting_with, mob/living/user, list/modifiers) if(!isliving(interacting_with)) @@ -773,7 +776,7 @@ scan_for_what = "diseases" /obj/item/healthanalyzer/simple/disease/violence_damage(mob/living/user) - user.adjustBruteLoss(1) + user.adjust_brute_loss(1) user.reagents.add_reagent(/datum/reagent/toxin, rand(1, 3)) /obj/item/healthanalyzer/simple/disease/do_the_scan(mob/living/carbon/scanning, mob/living/user) diff --git a/code/game/objects/items/devices/scanners/plant_analyzer.dm b/code/game/objects/items/devices/scanners/plant_analyzer.dm index e653d09dcb8b1f..4adfec936299a9 100644 --- a/code/game/objects/items/devices/scanners/plant_analyzer.dm +++ b/code/game/objects/items/devices/scanners/plant_analyzer.dm @@ -326,11 +326,11 @@ product_grinder_results[seed.product] = list() var/obj/item/food/grown/product = new seed.product var/datum/reagent/product_distill_reagent = product.distill_reagent - var/datum/reagent/product_juice_typepath = product.juice_typepath + var/datum/reagent/product_juice_typepath = product.juice_typepath() product_grinder_results[seed.product]["distill_reagent"] = initial(product_distill_reagent.name) product_grinder_results[seed.product]["juice_name"] = initial(product_juice_typepath.name) product_grinder_results[seed.product]["grind_results"] = list() - for(var/datum/reagent/reagent as anything in product.grind_results) + for(var/datum/reagent/reagent as anything in product.grind_results()) product_grinder_results[seed.product]["grind_results"] += initial(reagent.name) qdel(product) seed_data["distill_reagent"] = product_grinder_results[seed.product]["distill_reagent"] diff --git a/code/game/objects/items/devices/sensor_device.dm b/code/game/objects/items/devices/sensor_device.dm index 97320669be87ce..9eb9ee94255cf4 100644 --- a/code/game/objects/items/devices/sensor_device.dm +++ b/code/game/objects/items/devices/sensor_device.dm @@ -17,3 +17,7 @@ /obj/item/sensor_device/attack_self(mob/user) GLOB.crewmonitor.show(user,src) //Proc already exists, just had to call it + +/obj/item/sensor_device/Initialize(mapload) + . = ..() + AddElement(/datum/element/drag_to_activate) diff --git a/code/game/objects/items/devices/traitordevices.dm b/code/game/objects/items/devices/traitordevices.dm index f5b569b553244c..b4c9c628c05a4e 100644 --- a/code/game/objects/items/devices/traitordevices.dm +++ b/code/game/objects/items/devices/traitordevices.dm @@ -404,6 +404,7 @@ effective or pretty fucking useless. desc = "A jury-rigged device that disrupts nearby radio communication. Its crude construction provides a significantly smaller area of effect compared to its Syndicate counterpart." range = 5 disruptor_range = 3 + custom_materials = list(/datum/material/iron = SMALL_MATERIAL_AMOUNT * 0.5, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.5) /obj/item/jammer/makeshift/Initialize(mapload) . = ..() diff --git a/code/game/objects/items/dice.dm b/code/game/objects/items/dice.dm index fe0fe2e2913b13..416abb3064e9ef 100644 --- a/code/game/objects/items/dice.dm +++ b/code/game/objects/items/dice.dm @@ -369,7 +369,7 @@ //Throw selected_turf.visible_message(span_userdanger("Unseen forces throw [user]!")) user.Stun(60) - user.adjustBruteLoss(50) + user.adjust_brute_loss(50) var/throw_dir = pick(GLOB.cardinals) var/atom/throw_target = get_edge_target_turf(user, throw_dir) user.throw_at(throw_target, 200, 4) diff --git a/code/game/objects/items/dna_injector.dm b/code/game/objects/items/dna_injector.dm index 09cc0a9b2ccb60..baf4bb85e62617 100644 --- a/code/game/objects/items/dna_injector.dm +++ b/code/game/objects/items/dna_injector.dm @@ -120,6 +120,7 @@ addtimer(CALLBACK(target.dna, TYPE_PROC_REF(/datum/dna, remove_mutation), mutation, MUTATION_SOURCE_TIMED_INJECTOR), duration) if(fields) if(fields["name"] && fields["UE"] && fields["blood_type"]) + LAZYINITLIST(target.dna.previous) if(!target.dna.previous["name"]) target.dna.previous["name"] = target.real_name if(!target.dna.previous["UE"]) @@ -130,17 +131,19 @@ target.dna.unique_enzymes = fields["UE"] target.name = target.real_name target.set_blood_type(fields["blood_type"]) - target.dna.temporary_mutations[UE_CHANGED] = endtime + LAZYSET(target.dna.temporary_mutations, UE_CHANGED, endtime) if(fields["UI"]) //UI+UE + LAZYINITLIST(target.dna.previous) if(!target.dna.previous["UI"]) target.dna.previous["UI"] = target.dna.unique_identity target.dna.unique_identity = merge_text(target.dna.unique_identity, fields["UI"]) - target.dna.temporary_mutations[UI_CHANGED] = endtime + LAZYSET(target.dna.temporary_mutations, UI_CHANGED, endtime) if(fields["UF"]) //UI+UE + LAZYINITLIST(target.dna.previous) if(!target.dna.previous["UF"]) target.dna.previous["UF"] = target.dna.unique_features target.dna.unique_features = merge_text(target.dna.unique_features, fields["UF"]) - target.dna.temporary_mutations[UF_CHANGED] = endtime + LAZYSET(target.dna.temporary_mutations, UF_CHANGED, endtime) if(fields["UI"] || fields["UF"]) target.updateappearance(mutcolor_update = TRUE, mutations_overlay_update = TRUE) return TRUE diff --git a/code/game/objects/items/dna_probe.dm b/code/game/objects/items/dna_probe.dm index 9e3be2dce40c41..1f7307a8d75b67 100644 --- a/code/game/objects/items/dna_probe.dm +++ b/code/game/objects/items/dna_probe.dm @@ -54,6 +54,9 @@ /obj/item/dna_probe/proc/try_upload_dna(obj/machinery/dna_vault/target, mob/user) var/uploaded = 0 + stored_dna_plants -= target.plant_dna + stored_dna_human -= target.human_dna + stored_dna_animal -= target.animal_dna var/plant_dna_length = length(stored_dna_plants) var/human_dna_length = length(stored_dna_human) var/animal_dna_length = length(stored_dna_animal) diff --git a/code/game/objects/items/drug_items.dm b/code/game/objects/items/drug_items.dm index bea5cec30fa2c6..1fd6a788894e69 100644 --- a/code/game/objects/items/drug_items.dm +++ b/code/game/objects/items/drug_items.dm @@ -74,7 +74,6 @@ transfer_fingerprints_to(ampoule_shard) splash_reagents(hit_atom, throwingdatum?.get_thrower(), was_thrown = TRUE, allow_closed_splash = FALSE) qdel(src) - hit_atom.Bumped(ampoule_shard) /obj/item/reagent_containers/cup/blastoff_ampoule/Initialize(mapload, vol) . = ..() diff --git a/code/game/objects/items/dualsaber.dm b/code/game/objects/items/dualsaber.dm index f6edc5da9018bd..3f2aea409c75e7 100644 --- a/code/game/objects/items/dualsaber.dm +++ b/code/game/objects/items/dualsaber.dm @@ -151,7 +151,7 @@ if(HAS_TRAIT(src, TRAIT_WIELDED)) user.take_bodypart_damage(20,25,check_armor = TRUE) else - user.adjustStaminaLoss(25) + user.adjust_stamina_loss(25) /obj/item/dualsaber/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK, damage_type = BRUTE) if(!HAS_TRAIT(src, TRAIT_WIELDED)) diff --git a/code/game/objects/items/dyespray.dm b/code/game/objects/items/dyespray.dm index ceb292a20adcf9..a62a17f4352018 100644 --- a/code/game/objects/items/dyespray.dm +++ b/code/game/objects/items/dyespray.dm @@ -57,7 +57,7 @@ if(!user.can_perform_action(src, NEED_DEXTERITY)) return - var/new_grad_color = input(user, "Choose a secondary hair color:", "Character Preference",human_target.grad_color) as color|null + var/new_grad_color = tgui_color_picker(user, "Choose a secondary hair color:", "Character Preference", human_target.get_hair_gradient_color()) if(!new_grad_color || !user.can_perform_action(src, NEED_DEXTERITY) || !target.IsReachableBy(user)) return @@ -105,7 +105,7 @@ return var/default_color = overlay.dye_color || overlay.draw_color - var/new_color = input(user, "Choose a color for [selected]:", "Character Preference", default_color) as color|null + var/new_color = tgui_color_picker(user, "Choose a color for [selected]:", "Character Preference", default_color) if(isnull(new_color) || new_color == default_color || !user.can_perform_action(src, NEED_DEXTERITY)) return if(QDELETED(selected) || !(selected in target.organs)) diff --git a/code/game/objects/items/emags.dm b/code/game/objects/items/emags.dm index 219e1a3e144d82..9bce1d09fdd030 100644 --- a/code/game/objects/items/emags.dm +++ b/code/game/objects/items/emags.dm @@ -31,8 +31,7 @@ var/emag_count = 0 for(var/obj/item/card/emag/emag in get_all_contents() + emag_card.get_all_contents()) // This is including itself emag_count++ - if(emag_count > 6) // 1 uplink's worth is the limit - to_chat(user, span_warning("Nope, lesson learned. No more.")) + if(emag_count >= 128) // prevent overlay sprite overload allowed on a single item, incase someone manages to (somehow) emag an emag 128 times return FALSE if(emag_card.loc != loc) // Both have to be in your hand (or TK shenanigans) return FALSE diff --git a/code/game/objects/items/extinguisher.dm b/code/game/objects/items/extinguisher.dm index 4102728d4f0b9e..9f58808a752391 100644 --- a/code/game/objects/items/extinguisher.dm +++ b/code/game/objects/items/extinguisher.dm @@ -162,7 +162,7 @@ throwforce = 1 w_class = WEIGHT_CLASS_SMALL force = 3 - custom_materials = list(/datum/material/iron = SMALL_MATERIAL_AMOUNT * 0.5, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.4) + custom_materials = null max_water = 30 sprite_name = "coolant" dog_fashion = null @@ -369,15 +369,19 @@ reagents.clear_reagents() user.visible_message(span_notice("[user] empties out [src] onto the floor using the release valve."), span_info("You quietly empty out [src] using its release valve.")) -//firebot assembly -/obj/item/extinguisher/attackby(obj/O, mob/user, list/modifiers, list/attack_modifiers) - if(istype(O, /obj/item/bodypart/arm/left/robot) || istype(O, /obj/item/bodypart/arm/right/robot)) - to_chat(user, span_notice("You add [O] to [src].")) - qdel(O) - qdel(src) - user.put_in_hands(new /obj/item/bot_assembly/firebot) - else - ..() +// Firebot assembly +/obj/item/extinguisher/item_interaction(mob/living/user, obj/item/tool, list/modifiers) + if (!istype(tool, /obj/item/bodypart/arm/left/robot) && !istype(tool, /obj/item/bodypart/arm/right/robot)) + return NONE + + to_chat(user, span_notice("You add [tool] to [src].")) + qdel(tool) + var/obj/item/bot_assembly/firebot/assembly = new(drop_location()) + var/held_index = user.is_holding(src) + qdel(src) + if (held_index) + user.put_in_hand(assembly, held_index) + return ITEM_INTERACT_SUCCESS /obj/item/extinguisher/anti name = "fire extender" diff --git a/code/game/objects/items/fireaxe.dm b/code/game/objects/items/fireaxe.dm index ed88848ea6d44c..23cd24c375c530 100644 --- a/code/game/objects/items/fireaxe.dm +++ b/code/game/objects/items/fireaxe.dm @@ -69,6 +69,8 @@ GLOBAL_DATUM(bridge_axe, /obj/item/fireaxe) return if(target.resistance_flags & INDESTRUCTIBLE) return + if(QDELETED(target)) + return if(istype(target, /obj/structure/window) || istype(target, /obj/structure/grille)) target.atom_destruction("fireaxe") @@ -83,6 +85,7 @@ GLOBAL_DATUM(bridge_axe, /obj/item/fireaxe) icon_angle = 180 force_unwielded = 5 force_wielded = 23 + custom_materials = list(/datum/material/bone = SHEET_MATERIAL_AMOUNT * 6) /* * Metal Hydrogen Axe diff --git a/code/game/objects/items/flamethrower.dm b/code/game/objects/items/flamethrower.dm index e406dbb6f5c59e..29a410dcb10313 100644 --- a/code/game/objects/items/flamethrower.dm +++ b/code/game/objects/items/flamethrower.dm @@ -12,7 +12,7 @@ throw_speed = 1 throw_range = 5 w_class = WEIGHT_CLASS_NORMAL - custom_materials = list(/datum/material/iron= HALF_SHEET_MATERIAL_AMOUNT * 0.5) + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 1.05, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.8) resistance_flags = FIRE_PROOF trigger_guard = TRIGGER_GUARD_NORMAL light_system = OVERLAY_LIGHT diff --git a/code/game/objects/items/flatpacks.dm b/code/game/objects/items/flatpacks.dm index 8894b05f7b80ed..b2a49a51787594 100644 --- a/code/game/objects/items/flatpacks.dm +++ b/code/game/objects/items/flatpacks.dm @@ -103,6 +103,7 @@ icon_state = "flatcart" density = TRUE opacity = FALSE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 8, /datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT) /obj/structure/flatpack_cart/Initialize(mapload) . = ..() diff --git a/code/game/objects/items/food/_food.dm b/code/game/objects/items/food/_food.dm index 604b6c3c5abec8..7475a8c18ba6fc 100644 --- a/code/game/objects/items/food/_food.dm +++ b/code/game/objects/items/food/_food.dm @@ -10,7 +10,6 @@ righthand_file = 'icons/mob/inhands/items/food_righthand.dmi' abstract_type = /obj/item/food obj_flags = UNIQUE_RENAME - grind_results = list() material_flags = MATERIAL_NO_EDIBILITY /** * A list of material paths. the main material in the custom_materials list is also added on init. diff --git a/code/game/objects/items/food/burgers.dm b/code/game/objects/items/food/burgers.dm index 5bcf079c24fcc5..05811a6dd9fa0a 100644 --- a/code/game/objects/items/food/burgers.dm +++ b/code/game/objects/items/food/burgers.dm @@ -684,7 +684,12 @@ tastes = list("bun" = 2, "beef patty" = 4, "cheese" = 2, "beef soaked in chili" = 3, "a smoking flare" = 2) foodtypes = GRAIN | MEAT | DAIRY | VEGETABLES crafting_complexity = FOOD_COMPLEXITY_4 - custom_materials = list(/datum/material/meat = MEATDISH_MATERIAL_AMOUNT * 2, /datum/material/plastic= SMALL_MATERIAL_AMOUNT * 0.5) + custom_materials = list( + /datum/material/meat = MEATDISH_MATERIAL_AMOUNT * 2, + /datum/material/iron = SMALL_MATERIAL_AMOUNT * 0.5, + /datum/material/plasma = SMALL_MATERIAL_AMOUNT * 0.5, + /datum/material/plastic = SMALL_MATERIAL_AMOUNT * 0.5, + ) /obj/item/food/burger/crazy/Initialize(mapload) . = ..() diff --git a/code/game/objects/items/food/cheese.dm b/code/game/objects/items/food/cheese.dm index ee608c7e408a6a..78d590fa10a425 100644 --- a/code/game/objects/items/food/cheese.dm +++ b/code/game/objects/items/food/cheese.dm @@ -87,6 +87,7 @@ tastes = list("cheese" = 4, "royalty" = 1) rat_heal = 70 crafting_complexity = FOOD_COMPLEXITY_3 + custom_materials = list(/datum/material/gold = SHEET_MATERIAL_AMOUNT * 5) //Curd cheese, a general term which I will now proceed to stretch as thin as the toppings on a supermarket sandwich: //I'll use it as a substitute for ricotta, cottage cheese and quark, as well as any other non-aged, soft grainy cheese diff --git a/code/game/objects/items/food/meatslab.dm b/code/game/objects/items/food/meatslab.dm index 01c4c4b8f7a537..55fa78c3295550 100644 --- a/code/game/objects/items/food/meatslab.dm +++ b/code/game/objects/items/food/meatslab.dm @@ -211,6 +211,10 @@ foodtypes = RAW | MEAT | BUGS blood_decal_type = /obj/effect/decal/cleanable/insectguts +/obj/item/food/meat/slab/bugmeat/Initialize(mapload) + . = ..() + AddElement(/datum/element/raptor_food, health_modifier = 2, color_chances = string_list(list(/datum/raptor_color/green = 2))) + /obj/item/food/meat/slab/mouse name = "mouse meat" desc = "A slab of mouse meat. Best not eat it raw." @@ -337,6 +341,10 @@ tastes = list("meat" = 1) foodtypes = RAW | MEAT | TOXIC +/obj/item/food/meat/slab/goliath/Initialize(mapload) + . = ..() + AddElement(/datum/element/raptor_food, attack_modifier = 0.5, speed_modifier = -0.05, color_chances = string_list(list(/datum/raptor_color/red = 5))) + /obj/item/food/meat/slab/goliath/burn() visible_message(span_notice("[src] finishes cooking!")) new /obj/item/food/meat/steak/goliath(loc) @@ -569,6 +577,10 @@ trash_type = null tastes = list("meat" = 1, "rock" = 1) +/obj/item/food/meat/steak/goliath/Initialize(mapload) + . = ..() + AddElement(/datum/element/raptor_food, attack_modifier = 1, speed_modifier = -0.075, color_chances = string_list(list(/datum/raptor_color/red = 7))) + /obj/item/food/meat/steak/gondola name = "gondola steak" tastes = list("meat" = 1, "tranquility" = 1) diff --git a/code/game/objects/items/food/misc.dm b/code/game/objects/items/food/misc.dm index a0e619a1ec655b..afb2f506685c54 100644 --- a/code/game/objects/items/food/misc.dm +++ b/code/game/objects/items/food/misc.dm @@ -13,9 +13,11 @@ tastes = list("watermelon" = 1) foodtypes = FRUIT food_flags = FOOD_FINGER_FOOD - juice_typepath = /datum/reagent/consumable/watermelonjuice w_class = WEIGHT_CLASS_SMALL +/obj/item/food/watermelonslice/juice_typepath() + return /datum/reagent/consumable/watermelonjuice + /obj/item/food/watermelonmush name = "watermelon mush" desc = "A plop of watery goodness." @@ -29,9 +31,11 @@ tastes = list("watermelon" = 1) foodtypes = FRUIT food_flags = FOOD_FINGER_FOOD - juice_typepath = /datum/reagent/consumable/watermelonjuice w_class = WEIGHT_CLASS_SMALL +/obj/item/food/watermelonmush/juice_typepath() + return /datum/reagent/consumable/watermelonjuice + /obj/item/food/holymelonslice name = "holymelon slice" desc = "A slice of holy goodness." @@ -45,9 +49,11 @@ tastes = list("holymelon" = 1) foodtypes = FRUIT food_flags = FOOD_FINGER_FOOD - juice_typepath = /datum/reagent/water/holywater w_class = WEIGHT_CLASS_SMALL +/obj/item/food/holymelonslice/juice_typepath() + return /datum/reagent/water/holywater + /obj/item/food/holymelonmush name = "holymelon mush" desc = "A plop of holy goodness." @@ -61,9 +67,11 @@ tastes = list("holymelon" = 1) foodtypes = FRUIT food_flags = FOOD_FINGER_FOOD - juice_typepath = /datum/reagent/water/holywater w_class = WEIGHT_CLASS_SMALL +/obj/item/food/holymelonmush/juice_typepath() + return /datum/reagent/water/holywater + /obj/item/food/barrelmelonslice name = "barrelmelon slice" desc = "A slice of beery goodness." @@ -77,9 +85,11 @@ tastes = list("beer" = 1) foodtypes = FRUIT food_flags = FOOD_FINGER_FOOD - juice_typepath = /datum/reagent/consumable/ethanol/beer w_class = WEIGHT_CLASS_SMALL +/obj/item/food/barrelmelonslice/juice_typepath() + return /datum/reagent/consumable/ethanol/beer + /obj/item/food/barrelmelonmush name = "barrelmelon mush" desc = "A plop of beery goodness." @@ -93,9 +103,10 @@ tastes = list("beer" = 1) foodtypes = FRUIT food_flags = FOOD_FINGER_FOOD - juice_typepath = /datum/reagent/consumable/ethanol/beer w_class = WEIGHT_CLASS_SMALL +/obj/item/food/barrelmelonmush/juice_typepath() + return /datum/reagent/consumable/ethanol/beer /obj/item/food/appleslice name = "apple slice" @@ -110,9 +121,11 @@ tastes = list("apple" = 1) foodtypes = FRUIT food_flags = FOOD_FINGER_FOOD - juice_typepath = /datum/reagent/consumable/applejuice w_class = WEIGHT_CLASS_SMALL +/obj/item/food/appleslice/juice_typepath() + return /datum/reagent/consumable/applejuice + /obj/item/food/hugemushroomslice name = "huge mushroom slice" desc = "A slice from a huge mushroom." @@ -431,11 +444,13 @@ name = "pineapple slice" desc = "A sliced piece of juicy pineapple." icon_state = "pineapple_slice" - juice_typepath = /datum/reagent/consumable/pineapplejuice tastes = list("pineapple" = 1) foodtypes = FRUIT | PINEAPPLE w_class = WEIGHT_CLASS_TINY +/obj/item/food/pineappleslice/juice_typepath() + return /datum/reagent/consumable/pineapplejuice + /obj/item/food/crab_rangoon name = "crab rangoon" desc = "Has many names, like crab puffs, cheese won'tons, crab dumplings? Whatever you call them, they're a fabulous blast of cream cheesy crab." @@ -619,10 +634,12 @@ /datum/reagent/medicine/antihol = 2, ) tastes = list("pickle" = 1, "spices" = 1, "salt water" = 2) - juice_typepath = /datum/reagent/consumable/pickle foodtypes = VEGETABLES w_class = WEIGHT_CLASS_SMALL +/obj/item/food/pickle/juice_typepath() + return /datum/reagent/consumable/pickle + /obj/item/food/pickle/make_edible() . = ..() AddComponentFrom(SOURCE_EDIBLE_INNATE, /datum/component/edible, check_liked = CALLBACK(src, PROC_REF(check_liked))) @@ -849,8 +866,7 @@ /obj/item/food/ink_sac/proc/blind_em(mob/living/victim, can_splat_on) if(can_splat_on) - victim.adjust_temp_blindness_up_to(7 SECONDS, 10 SECONDS) - victim.adjust_confusion_up_to(3.5 SECONDS, 6 SECONDS) - victim.Paralyze(2 SECONDS) //splat! + victim.adjust_temp_blindness_up_to(2.5 SECONDS, 3 SECONDS) + victim.adjust_confusion_up_to(2.5 SECONDS, 3 SECONDS) victim.visible_message(span_warning("[victim] is inked by [src]!"), span_userdanger("You've been inked by [src]!")) playsound(victim, SFX_DESECRATION, 50, TRUE) diff --git a/code/game/objects/items/food/packaged.dm b/code/game/objects/items/food/packaged.dm index 5b5f45a8d28a52..1458c3c101dd42 100644 --- a/code/game/objects/items/food/packaged.dm +++ b/code/game/objects/items/food/packaged.dm @@ -166,13 +166,11 @@ splat_color = COLOR_NEARLY_ALL_BLACK, \ hit_callback = CALLBACK(src, PROC_REF(blind_em)), \ ) - ADD_TRAIT(src, TRAIT_UNCATCHABLE, INNATE_TRAIT) //good luck catching the liquid /obj/item/food/canned/squid_ink/proc/blind_em(mob/living/victim, can_splat_on) if(can_splat_on) - victim.adjust_temp_blindness_up_to(7 SECONDS, 10 SECONDS) - victim.adjust_confusion_up_to(3.5 SECONDS, 6 SECONDS) - victim.Paralyze(2 SECONDS) //splat! + victim.adjust_temp_blindness_up_to(2.5 SECONDS, 3 SECONDS) + victim.adjust_confusion_up_to(2.5 SECONDS, 3 SECONDS) victim.visible_message(span_warning("[victim] is inked by [src]!"), span_userdanger("You've been inked by [src]!")) playsound(victim, SFX_DESECRATION, 50, TRUE) diff --git a/code/game/objects/items/food/pizza.dm b/code/game/objects/items/food/pizza.dm index 7fef3fb8657c54..ab8267e7ea4a15 100644 --- a/code/game/objects/items/food/pizza.dm +++ b/code/game/objects/items/food/pizza.dm @@ -73,7 +73,7 @@ . = ..() if(!sliced) return - user.visible_message(span_notice("You take a slice of [src]."), span_notice("[user] takes a slice of [src].")) + user.visible_message(span_notice("[user] takes a slice of [src]."), span_notice("You take a slice of [src].")) produce_slice(user) /obj/item/food/pizza/proc/get_slices_filter() //to not repeat code diff --git a/code/game/objects/items/food/sandwichtoast.dm b/code/game/objects/items/food/sandwichtoast.dm index 62d766839a9c7a..6e92d4013782af 100644 --- a/code/game/objects/items/food/sandwichtoast.dm +++ b/code/game/objects/items/food/sandwichtoast.dm @@ -30,9 +30,9 @@ custom_materials = null /obj/item/food/sandwich/cheese/make_grillable() - AddComponent(/datum/component/grillable, /obj/item/food/sandwich/cheese/grilled, rand(30 SECONDS, 60 SECONDS), TRUE) + AddComponent(/datum/component/grillable, /obj/item/food/sandwich/grilled_cheese, rand(30 SECONDS, 60 SECONDS), TRUE) -/obj/item/food/sandwich/cheese/grilled +/obj/item/food/sandwich/grilled_cheese name = "grilled cheese sandwich" desc = "A warm, melty sandwich that goes perfectly with tomato soup." icon_state = "toastedsandwich" @@ -43,8 +43,10 @@ /datum/reagent/carbon = 4, ) tastes = list("toast" = 2, "cheese" = 3, "butter" = 1) + foodtypes = GRAIN | DAIRY venue_value = FOOD_PRICE_NORMAL crafting_complexity = FOOD_COMPLEXITY_3 + custom_materials = null /obj/item/food/sandwich/jelly name = "jelly sandwich" @@ -268,6 +270,7 @@ tastes = list("bread" = 1, "meat" = 1, "tomato sauce" = 1, "death" = 1) foodtypes = MEAT|VEGETABLES|GRAIN eat_time = 4 SECONDS // Makes it harder to force-feed this to people as a weapon, as funny as that is. + custom_materials = list(/datum/material/meat = MEATSLAB_MATERIAL_AMOUNT * 2) var/static/list/correct_clothing = list(/obj/item/clothing/under/rank/civilian/cookjorts, /obj/item/clothing/under/shorts/jeanshorts) /obj/item/food/sandwich/death/Initialize(mapload) diff --git a/code/game/objects/items/food/snacks.dm b/code/game/objects/items/food/snacks.dm index 9da40b24807b27..7caf726e8123c6 100644 --- a/code/game/objects/items/food/snacks.dm +++ b/code/game/objects/items/food/snacks.dm @@ -230,9 +230,11 @@ custom_price = PAYCHECK_CREW * 0.8 //nuts are expensive in real life, and this is the best food in the vendor. junkiness = 10 //less junky than other options, since peanuts are a decently healthy snack option w_class = WEIGHT_CLASS_SMALL - grind_results = list(/datum/reagent/consumable/peanut_butter = 5, /datum/reagent/consumable/nutriment/fat/oil = 2) var/safe_for_consumption = TRUE +/obj/item/food/peanuts/grind_results() + return list(/datum/reagent/consumable/peanut_butter = 5, /datum/reagent/consumable/nutriment/fat/oil = 2) + /obj/item/food/peanuts/salted name = "\improper Gallery's salt reserves peanuts" desc = "Tastes salty." @@ -397,7 +399,9 @@ GLOBAL_LIST_INIT(safe_peanut_types, populate_safe_peanut_types()) custom_price = PAYCHECK_CREW//pistachios are even more expensive. junkiness = 10 //on par with peanuts w_class = WEIGHT_CLASS_SMALL - grind_results = list(/datum/reagent/consumable/peanut_butter = 5, /datum/reagent/consumable/nutriment/fat/oil = 2) + +/obj/item/food/pistachios/grind_results() + return list(/datum/reagent/consumable/peanut_butter = 5, /datum/reagent/consumable/nutriment/fat/oil = 2) /obj/item/food/semki name = "\improper Semki Sunflower Seeds" @@ -538,7 +542,9 @@ GLOBAL_LIST_INIT(safe_peanut_types, populate_safe_peanut_types()) foodtypes = JUNKFOOD | SUGAR | NUTS junkiness = 25 w_class = WEIGHT_CLASS_SMALL - grind_results = list(/datum/reagent/consumable/nutriment/fat/oil = 3, /datum/reagent/consumable/caramel = 2) + +/obj/item/food/hot_shots/grind_results() + return list(/datum/reagent/consumable/nutriment/fat/oil = 3, /datum/reagent/consumable/caramel = 2) /obj/item/food/sticko name = "\improper Sticko Classic" diff --git a/code/game/objects/items/frog_statue.dm b/code/game/objects/items/frog_statue.dm index d1f65dc4b2ad53..8c95ef4951bc19 100644 --- a/code/game/objects/items/frog_statue.dm +++ b/code/game/objects/items/frog_statue.dm @@ -96,7 +96,7 @@ return if(contained_frog.stat == DEAD) contained_frog.revive() - contained_frog.adjustBruteLoss(-5) + contained_frog.adjust_brute_loss(-5) /obj/item/frog_statue/proc/animate_filter(mob/living/frog) add_filter(STATUE_FILTER, 2, list("type" = "outline", "color" = FILTER_COLOR, "size" = 1)) @@ -146,7 +146,7 @@ new_frog.name = frog_name /obj/item/frog_contract/proc/select_frog_color(mob/user, mob/living/basic/leaper/new_frog) - var/frog_color = input(user, "Select your frog's color!" , "Pet toad color", COLOR_GREEN) as color|null + var/frog_color = tgui_color_picker(user, "Select your frog's color!" , "Pet toad color", COLOR_GREEN) if(isnull(frog_color)) to_chat(user, span_warning("Please choose a valid color.")) select_frog_color(user, new_frog) diff --git a/code/game/objects/items/gift.dm b/code/game/objects/items/gift.dm index 1843431f3d2ae7..03fefc39ee181b 100644 --- a/code/game/objects/items/gift.dm +++ b/code/game/objects/items/gift.dm @@ -106,6 +106,8 @@ /obj/item/gift/anything name = "christmas gift" desc = "It could be anything!" + /// Weak reference to who this gift is for and who can open it, if that's nobody then anyone can + var/datum/weakref/recipient_ref = null /obj/item/gift/anything/get_gift_type() var/static/list/obj/item/possible_gifts = null @@ -115,3 +117,25 @@ var/gift_type = pick(possible_gifts) return gift_type + +/obj/item/gift/anything/attack_self(mob/user) + if (isnull(recipient_ref)) + return ..() + + var/datum/mind/recipient = recipient_ref.resolve() + if(recipient && recipient != user?.mind) + to_chat(user, span_notice("This gift isn't for you, and you don't want to get on Santa's bad side!")) + return FALSE + return ..() + +/// Assign the mind of someone as the person this gift is for +/obj/item/gift/anything/proc/assign_recipient(datum/mind/recipient) + if (ismob(recipient)) // You're presumably at this point because you are an admin who fucked up but I will save you + var/mob/recipient_mob = recipient + recipient = recipient_mob.mind + + if (isnull(recipient)) + return + + name = "[initial(name)] for [recipient.name] ([recipient.assigned_role.title])" + recipient_ref = WEAKREF(recipient) diff --git a/code/game/objects/items/granters/magic/charge.dm b/code/game/objects/items/granters/magic/charge.dm index 988d17aa13ba37..0210227d3b0b43 100644 --- a/code/game/objects/items/granters/magic/charge.dm +++ b/code/game/objects/items/granters/magic/charge.dm @@ -17,4 +17,5 @@ /obj/item/book/granter/action/spell/charge/recoil(mob/living/user) . = ..() to_chat(user,span_warning("[src] suddenly feels very warm!")) - empulse(src, 1, 1) + empulse(src, 1, 1, emp_source = src) + diff --git a/code/game/objects/items/granters/martial_arts/cqc.dm b/code/game/objects/items/granters/martial_arts/cqc.dm index 4fff32623c8643..4fb39673e9c853 100644 --- a/code/game/objects/items/granters/martial_arts/cqc.dm +++ b/code/game/objects/items/granters/martial_arts/cqc.dm @@ -24,6 +24,6 @@ to_chat(user, span_warning("[src] explodes!")) playsound(src,'sound/effects/explosion/explosion1.ogg',40,TRUE) user.flash_act(1, 1) - user.adjustBruteLoss(6) - user.adjustFireLoss(6) + user.adjust_brute_loss(6) + user.adjust_fire_loss(6) qdel(src) diff --git a/code/game/objects/items/granters/martial_arts/sleeping_carp.dm b/code/game/objects/items/granters/martial_arts/sleeping_carp.dm index 88123439725f06..17db0d9ba147ca 100644 --- a/code/game/objects/items/granters/martial_arts/sleeping_carp.dm +++ b/code/game/objects/items/granters/martial_arts/sleeping_carp.dm @@ -4,8 +4,9 @@ martial_name = "sleeping carp" desc = "A scroll filled with strange markings. It seems to be drawings of some sort of martial art." greet = span_sciradio("You have learned the ancient martial art of the Sleeping Carp! Your hand-to-hand combat has become much more effective, and you are now able to deflect any projectiles \ - directed toward you while in Combat Mode. Your body has also hardened itself, granting extra protection against lasting wounds that would otherwise mount during extended combat. \ - However, you are also unable to use any ranged weaponry. You can learn more about your newfound art by using the Recall Teachings verb in the Sleeping Carp tab.") + directed toward you while in Combat Mode. You are also able to sometimes dodge melee and unarmed attacks against you, but only as long as you dress in appropriate martial arts clothing. Or \ + carp-themed clothing. Your body has also hardened itself, granting extra protection against lasting wounds that would otherwise mount during extended combat. However, you are also unable to \ + use any ranged weaponry. You can learn more about your newfound art by using the Recall Teachings verb in the Sleeping Carp tab.") icon = 'icons/obj/scrolls.dmi' icon_state = "sleepingcarp" worn_icon_state = "scroll" diff --git a/code/game/objects/items/grenades/chem_grenade.dm b/code/game/objects/items/grenades/chem_grenade.dm index 98b7edf19ae2f6..b5780ea8406a76 100644 --- a/code/game/objects/items/grenades/chem_grenade.dm +++ b/code/game/objects/items/grenades/chem_grenade.dm @@ -6,6 +6,7 @@ inhand_icon_state = "flashbang" w_class = WEIGHT_CLASS_SMALL force = 2 + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT) /// Which stage of construction this grenade is currently at. var/stage = GRENADE_EMPTY /// The set of reagent containers that have been added to this grenade casing. diff --git a/code/game/objects/items/grenades/emgrenade.dm b/code/game/objects/items/grenades/emgrenade.dm index 4f3b9d2e4849c5..295faeb9809720 100644 --- a/code/game/objects/items/grenades/emgrenade.dm +++ b/code/game/objects/items/grenades/emgrenade.dm @@ -8,7 +8,6 @@ . = ..() if(!.) return - update_mob() - empulse(src, 4, 10) + empulse(src, 4, 10, emp_source = src) qdel(src) diff --git a/code/game/objects/items/grenades/flashbang.dm b/code/game/objects/items/grenades/flashbang.dm index 41d370d7bdd8ed..cf7c11ade6a74d 100644 --- a/code/game/objects/items/grenades/flashbang.dm +++ b/code/game/objects/items/grenades/flashbang.dm @@ -32,24 +32,30 @@ return update_mob() - var/flashbang_turf = get_turf(src) + var/turf/flashbang_turf = get_turf(src) if(!flashbang_turf) return + + //Check that there's enough pressure on the detonation turf for the 'bang' part of the flashbang to work. + var/datum/gas_mixture/environment = flashbang_turf.return_air() + var/pressure = environment?.return_pressure() + var/soundbang = pressure >= SOUND_MINIMUM_PRESSURE + do_sparks(rand(5, 9), FALSE, src) playsound(flashbang_turf, 'sound/items/weapons/flashbang.ogg', 100, TRUE, 8, 0.9) new /obj/effect/dummy/lighting_obj (flashbang_turf, flashbang_range + 2, 4, COLOR_WHITE, 2) for(var/mob/living/living_mob in get_hearers_in_view(flashbang_range, flashbang_turf)) - bang(get_turf(living_mob), living_mob) + bang(get_turf(living_mob), living_mob, soundbang) qdel(src) -/obj/item/grenade/flashbang/proc/bang(turf/turf, mob/living/living_mob) +/obj/item/grenade/flashbang/proc/bang(turf/turf, mob/living/living_mob, soundbang = TRUE) if(living_mob.stat == DEAD) //They're dead! return living_mob.show_message(span_warning("BANG"), MSG_AUDIBLE) - var/distance = max(0, get_dist(get_turf(src), turf)) + var/distance = get_dist(get_turf(src), turf) var/sweetspot_range = clamp(CEILING(flashbang_range/sweetspot_divider, 1), 0, flashbang_range) -//Flash + //Flash var/attempt_flash = living_mob.flash_act(affect_silicon = 1) if(attempt_flash == FLASH_COMPLETED) if(distance <= sweetspot_range || issilicon(living_mob)) @@ -60,20 +66,23 @@ living_mob.dropItemToGround(living_mob.get_active_held_item()) living_mob.dropItemToGround(living_mob.get_inactive_held_item()) -//Bang - if(!distance || loc == living_mob || loc == living_mob.loc) - living_mob.soundbang_act(2, 20 SECONDS, 10, 15) + //Bang + if(!soundbang && distance) + return + + if(!distance) + living_mob.soundbang_act(SOUNDBANG_OVERWHELMING, 20 SECONDS, 10, 15) return if(distance <= 1) // Adds more stun as to not prime n' pull (#45381) - living_mob.soundbang_act(2, 3 SECONDS, 5) + living_mob.soundbang_act(SOUNDBANG_STRONG, 3 SECONDS, 5) return if(distance <= sweetspot_range) - living_mob.soundbang_act(1, max(200 / max(1, distance), 60), rand(0, 5)) + living_mob.soundbang_act(SOUNDBANG_NORMAL, max(20 SECONDS / max(1, distance), 60), rand(0, 5)) return - if(!living_mob.soundbang_act(1, 0, rand(0, 2))) + if(!living_mob.soundbang_act(SOUNDBANG_NORMAL, 0, rand(0, 2))) return living_mob.adjust_staggered_up_to(max(200/max(1, distance), 5), 10 SECONDS) @@ -133,17 +142,17 @@ if(living_mob.stat == DEAD) //They're dead! return living_mob.show_message(span_warning("POP"), MSG_AUDIBLE) - var/distance = max(0, get_dist(get_turf(src), turf)) + var/distance = get_dist(get_turf(src), turf) //Flash if(living_mob.flash_act(affect_silicon = 1)) living_mob.Paralyze(max(10/max(1, distance), 5)) living_mob.Knockdown(max(100/max(1, distance), 60)) //Bang - if(!distance || loc == living_mob || loc == living_mob.loc) - living_mob.Paralyze(20) - living_mob.Knockdown(200) - living_mob.soundbang_act(1, 200, 10, 15) + if(!distance) + living_mob.Paralyze(2 SECONDS) + living_mob.Knockdown(20 SECONDS) + living_mob.soundbang_act(SOUNDBANG_NORMAL, 200, 10, 15) if(living_mob.apply_damages(brute = 10, burn = 10)) to_chat(living_mob, span_userdanger("The blast from \the [src] bruises and burns you!")) diff --git a/code/game/objects/items/grenades/ghettobomb.dm b/code/game/objects/items/grenades/ghettobomb.dm index 1a7dc6f4fffcbc..dec21fdc1f4c96 100644 --- a/code/game/objects/items/grenades/ghettobomb.dm +++ b/code/game/objects/items/grenades/ghettobomb.dm @@ -16,6 +16,7 @@ shrapnel_type = /obj/projectile/bullet/shrapnel/ied det_time = 225 SECONDS //this is handled by assemblies now display_timer = FALSE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 1.65, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 2) /// Explosive power var/power = 5 /// Our assembly that when activated causes us to explode diff --git a/code/game/objects/items/grenades/hypno.dm b/code/game/objects/items/grenades/hypno.dm index d77049419abca3..13bdf7351ab45f 100644 --- a/code/game/objects/items/grenades/hypno.dm +++ b/code/game/objects/items/grenades/hypno.dm @@ -32,46 +32,38 @@ /obj/item/grenade/hypnotic/proc/bang(turf/turf, mob/living/living_mob) if(living_mob.stat == DEAD) //They're dead! return - var/distance = max(0, get_dist(get_turf(src), turf)) + var/distance = get_dist(get_turf(src), turf) //Bang var/hypno_sound = FALSE //Hearing protection check - if(iscarbon(living_mob)) - var/mob/living/carbon/target = living_mob - var/list/reflist = list(1) - SEND_SIGNAL(target, COMSIG_CARBON_SOUNDBANG, reflist) - var/intensity = reflist[1] - var/ear_safety = target.get_ear_protection() - var/effect_amount = intensity - ear_safety - if(effect_amount > 0) - hypno_sound = TRUE + if(living_mob.get_ear_protection() < 0) + hypno_sound = TRUE - if(!distance || loc == living_mob || loc == living_mob.loc) - living_mob.Paralyze(10) - living_mob.Knockdown(100) + if(!distance) + living_mob.Paralyze(1 SECONDS) + living_mob.Knockdown(10 SECONDS) to_chat(living_mob, span_hypnophrase("The sound echoes in your brain...")) living_mob.adjust_hallucinations(150 SECONDS) else if(distance <= 1) - living_mob.Paralyze(5) - living_mob.Knockdown(30) + living_mob.Paralyze(0.5 SECONDS) + living_mob.Knockdown(3 SECONDS) if(hypno_sound) to_chat(living_mob, span_hypnophrase("The sound echoes in your brain...")) living_mob.adjust_hallucinations(150 SECONDS) //Flash - if(living_mob.flash_act(affect_silicon = 1)) - living_mob.Paralyze(max(10/max(1, distance), 5)) - living_mob.Knockdown(max(100/max(1, distance), 40)) - if(iscarbon(living_mob)) - var/mob/living/carbon/target = living_mob - if(target.hypnosis_vulnerable()) //The sound causes the necessary conditions unless the target has mindshield or hearing protection - target.apply_status_effect(/datum/status_effect/trance, 100, TRUE) - else - to_chat(target, span_hypnophrase("The light is so pretty...")) - target.adjust_drowsiness_up_to(20 SECONDS, 40 SECONDS) - target.adjust_confusion_up_to(10 SECONDS, 20 SECONDS) - target.adjust_dizzy_up_to(20 SECONDS, 40 SECONDS) + if(!living_mob.flash_act(affect_silicon = TRUE)) + return + living_mob.Paralyze(max(1 SECONDS / (distance || 1), 0.5 SECONDS)) + living_mob.Knockdown(max(10 SECONDS / (distance || 1), 4 SECONDS)) + if(living_mob.hypnosis_vulnerable()) //The sound causes the necessary conditions unless the target has mindshield or hearing protection + living_mob.apply_status_effect(/datum/status_effect/trance, 10 SECONDS, TRUE) + return + to_chat(living_mob, span_hypnophrase("The light is so pretty...")) + living_mob.adjust_drowsiness_up_to(20 SECONDS, 40 SECONDS) + living_mob.adjust_confusion_up_to(10 SECONDS, 20 SECONDS) + living_mob.adjust_dizzy_up_to(20 SECONDS, 40 SECONDS) diff --git a/code/game/objects/items/grenades/syndieminibomb.dm b/code/game/objects/items/grenades/syndieminibomb.dm index 6e874f9d864bab..02fb27777bcd24 100644 --- a/code/game/objects/items/grenades/syndieminibomb.dm +++ b/code/game/objects/items/grenades/syndieminibomb.dm @@ -73,6 +73,6 @@ for (var/turf/open/floor/floor in view(freeze_range, loc)) floor.MakeSlippery(TURF_WET_PERMAFROST, 6 MINUTES) for(var/mob/living/carbon/victim in floor) - victim.adjustStaminaLoss(stamina_damage) + victim.adjust_stamina_loss(stamina_damage) victim.adjust_bodytemperature(temp_adjust) qdel(src) diff --git a/code/game/objects/items/gun_maintenance.dm b/code/game/objects/items/gun_maintenance.dm index 77ba80352910b8..d580d37fe2535a 100644 --- a/code/game/objects/items/gun_maintenance.dm +++ b/code/game/objects/items/gun_maintenance.dm @@ -14,6 +14,7 @@ w_class = WEIGHT_CLASS_BULKY drop_sound = 'sound/items/handling/ammobox_drop.ogg' pickup_sound = 'sound/items/handling/ammobox_pickup.ogg' + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 6) /// How many times we can use this maintenance kit to maintain a gun var/uses = 3 /// THe maximum uses, used for our examine text. diff --git a/code/game/objects/items/hand_items.dm b/code/game/objects/items/hand_items.dm index 0d82370cdaabb7..cc4a9fd5b42e79 100644 --- a/code/game/objects/items/hand_items.dm +++ b/code/game/objects/items/hand_items.dm @@ -128,11 +128,11 @@ to_chat(user, span_warning("You can't bring yourself to noogie [target]! You don't want to risk harming anyone...")) return - if(!(target?.get_bodypart(BODY_ZONE_HEAD)) || user.pulling != target || user.grab_state < GRAB_AGGRESSIVE || user.getStaminaLoss() > 80) + if(!(target?.get_bodypart(BODY_ZONE_HEAD)) || user.pulling != target || user.grab_state < GRAB_AGGRESSIVE || user.get_stamina_loss() > 80) return FALSE var/obj/item/bodypart/head/the_head = target.get_bodypart(BODY_ZONE_HEAD) - if(!(the_head.biological_state & BIO_FLESH)) + if(!(the_head.biological_state & (BIO_FLESH|BIO_CHITIN))) to_chat(user, span_warning("You can't noogie [target], [target.p_they()] [target.p_have()] no skin on [target.p_their()] head!")) return @@ -174,7 +174,7 @@ if(!(target?.get_bodypart(BODY_ZONE_HEAD)) || user.pulling != target) return FALSE - if(user.getStaminaLoss() > 80) + if(user.get_stamina_loss() > 80) to_chat(user, span_warning("You're too tired to continue giving [target] a noogie!")) to_chat(target, span_danger("[user] is too tired to continue giving you a noogie!")) return @@ -190,7 +190,7 @@ log_combat(user, target, "given a noogie to", addition = "([damage] brute before armor)") target.apply_damage(damage, BRUTE, BODY_ZONE_HEAD) - user.adjustStaminaLoss(iteration + 5) + user.adjust_stamina_loss(iteration + 5) playsound(get_turf(user), SFX_RUSTLE, 50) if(prob(33)) @@ -245,7 +245,7 @@ shake_camera(slapped, 2, 2) slapped.Paralyze(2.5 SECONDS) slapped.adjust_confusion(7 SECONDS) - slapped.adjustStaminaLoss(40) + slapped.adjust_stamina_loss(40) else if(user.zone_selected == BODY_ZONE_HEAD || user.zone_selected == BODY_ZONE_PRECISE_MOUTH) if(user == slapped) user.visible_message( diff --git a/code/game/objects/items/handcuffs.dm b/code/game/objects/items/handcuffs.dm index f4c36f02456e1f..6433aca9a069d5 100644 --- a/code/game/objects/items/handcuffs.dm +++ b/code/game/objects/items/handcuffs.dm @@ -208,7 +208,7 @@ var/cable_color = CABLE_COLOR_RED lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi' - custom_materials = list(/datum/material/iron= SMALL_MATERIAL_AMOUNT * 1.5, /datum/material/glass= SMALL_MATERIAL_AMOUNT * 0.75) + custom_materials = list(/datum/material/iron= SMALL_MATERIAL_AMOUNT * 1.5, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 1.5) breakouttime = 30 SECONDS cuffsound = 'sound/items/weapons/cablecuff.ogg' pickup_sound = null @@ -572,6 +572,7 @@ righthand_file = 'icons/mob/inhands/weapons/thrown_righthand.dmi' breakouttime = 3.5 SECONDS//easy to apply, easy to break out of gender = NEUTER + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 6.1, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 1.5) ///Amount of time to knock the target down for once it's hit in deciseconds. var/knockdown = 0 ///Reference of the mob we will attempt to snare @@ -624,6 +625,7 @@ inhand_icon_state = "bola_r" breakouttime = 7 SECONDS knockdown = 3.5 SECONDS + custom_materials = list(/datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT * 6.1, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.7) /** * A security variant of the bola. @@ -639,6 +641,7 @@ w_class = WEIGHT_CLASS_SMALL breakouttime = 6 SECONDS custom_price = PAYCHECK_COMMAND * 0.35 + custom_materials = null /obj/item/restraints/legcuffs/bola/energy/Initialize(mapload) . = ..() diff --git a/code/game/objects/items/his_grace.dm b/code/game/objects/items/his_grace.dm index 5bbec5cd17de4e..1aa4eb028100cf 100644 --- a/code/game/objects/items/his_grace.dm +++ b/code/game/objects/items/his_grace.dm @@ -157,7 +157,7 @@ master.remove_status_effect(/datum/status_effect/his_grace) REMOVE_TRAIT(src, TRAIT_NODROP, HIS_GRACE_TRAIT) master.Paralyze(60) - master.adjustBruteLoss(master.maxHealth) + master.adjust_brute_loss(master.maxHealth) playsound(master, 'sound/effects/splat.ogg', 100, FALSE) else master.apply_status_effect(/datum/status_effect/his_grace,gender) @@ -181,7 +181,7 @@ do_attack_animation(L, null, src) playsound(L, 'sound/items/weapons/smash.ogg', 50, TRUE) playsound(L, 'sound/effects/desecration/desecration-01.ogg', 50, TRUE) - L.adjustBruteLoss(force) + L.adjust_brute_loss(force) adjust_bloodthirst(-5) //Don't stop attacking they're right there! else consume(L) @@ -235,7 +235,7 @@ return var/victims = 0 meal.visible_message(span_warning("[src] swings open and devours [meal]!"), "[src] consumes you!") - meal.adjustBruteLoss(200) + meal.adjust_brute_loss(200) playsound(meal, 'sound/effects/desecration/desecration-02.ogg', 75, TRUE) playsound(src, 'sound/items/eatfood.ogg', 100, TRUE) meal.forceMove(src) diff --git a/code/game/objects/items/implants/implant_explosive.dm b/code/game/objects/items/implants/implant_explosive.dm index 1714010ae03607..832eca03a78614 100644 --- a/code/game/objects/items/implants/implant_explosive.dm +++ b/code/game/objects/items/implants/implant_explosive.dm @@ -143,16 +143,13 @@ if(imp_in && !imp_in.stat && !no_paralyze) imp_in.visible_message(span_warning("[imp_in] doubles over in pain!")) imp_in.Paralyze(14 SECONDS) - //total of 4 bomb beeps, and we've already beeped once - var/bomb_beeps_until_boom = 3 + if(!panic_beep_sound) - while(bomb_beeps_until_boom > 0) + for(var/index in 1 to 3) // Total of 4 bomb beeps, and we've already beeped once //for extra spice - var/beep_volume = 35 + var/beep_volume = 30 + (5 * index) playsound(loc, 'sound/items/timer.ogg', beep_volume, vary = FALSE) sleep(delay * 0.25) - bomb_beeps_until_boom-- - beep_volume += 5 explode() else addtimer(CALLBACK(src, PROC_REF(explode)), delay) @@ -166,9 +163,9 @@ ///When called, just explodes /obj/item/implant/explosive/proc/explode(atom/override_explode_target = null) - explosion_devastate = round(explosion_devastate) - explosion_heavy = round(explosion_heavy) - explosion_light = round(explosion_light) + explosion_devastate = floor(explosion_devastate) + explosion_heavy = floor(explosion_heavy) + explosion_light = floor(explosion_light) explosion(override_explode_target || src, devastation_range = explosion_devastate, heavy_impact_range = explosion_heavy, light_impact_range = explosion_light, flame_range = explosion_light, flash_range = explosion_light, explosion_cause = src) var/mob/living/kill_mob = isliving(override_explode_target) ? override_explode_target : imp_in if(!isnull(kill_mob)) diff --git a/code/game/objects/items/implants/implant_kaza_ruk.dm b/code/game/objects/items/implants/implant_kaza_ruk.dm new file mode 100644 index 00000000000000..ce26fb1b678bcd --- /dev/null +++ b/code/game/objects/items/implants/implant_kaza_ruk.dm @@ -0,0 +1,41 @@ +/obj/item/implant/kaza_ruk + name = "kaza ruk implant" + desc = "Teaches you the Tiziran martial arts of Kaza Ruk in 5 short instructional videos beamed directly into your eyeballs." + icon = 'icons/obj/scrolls.dmi' + icon_state ="scroll2" + /// The martial art style this implant teaches. + var/datum/martial_art/kaza_ruk/style + +/obj/item/implant/kaza_ruk/get_data() + var/dat = {"Implant Specifications:
+ Name: Kaza Ruk Implant
+ Life: 4 hours after death of host
+ Implant Details:
+ Function: Teaches even the clumsiest host the arts of Kaza Ruk."} + return dat + +/obj/item/implant/kaza_ruk/Initialize(mapload) + . = ..() + style = new(src) + +/obj/item/implant/kaza_ruk/Destroy() + QDEL_NULL(style) + return ..() + +/obj/item/implant/kaza_ruk/activate() + . = ..() + if(isnull(imp_in.mind)) + return + if(style.unlearn(imp_in)) + return + + style.teach(imp_in) + +/obj/item/implanter/kaza_ruk + name = "implanter (kaza ruk)" + imp_type = /obj/item/implant/kaza_ruk + +/obj/item/implantcase/kaza_ruk + name = "implant case - 'Kaza Ruk'" + desc = "A glass case containing an implant that can teach the user the Tiziran martial arts of Kaza Ruk." + imp_type = /obj/item/implant/kaza_ruk diff --git a/code/game/objects/items/implants/implant_krav_maga.dm b/code/game/objects/items/implants/implant_krav_maga.dm deleted file mode 100644 index 5dd821a683d696..00000000000000 --- a/code/game/objects/items/implants/implant_krav_maga.dm +++ /dev/null @@ -1,41 +0,0 @@ -/obj/item/implant/krav_maga - name = "krav maga implant" - desc = "Teaches you the arts of Krav Maga in 5 short instructional videos beamed directly into your eyeballs." - icon = 'icons/obj/scrolls.dmi' - icon_state ="scroll2" - /// The martial art style this implant teaches. - var/datum/martial_art/krav_maga/style - -/obj/item/implant/krav_maga/get_data() - var/dat = {"Implant Specifications:
- Name: Krav Maga Implant
- Life: 4 hours after death of host
- Implant Details:
- Function: Teaches even the clumsiest host the arts of Krav Maga."} - return dat - -/obj/item/implant/krav_maga/Initialize(mapload) - . = ..() - style = new(src) - -/obj/item/implant/krav_maga/Destroy() - QDEL_NULL(style) - return ..() - -/obj/item/implant/krav_maga/activate() - . = ..() - if(isnull(imp_in.mind)) - return - if(style.unlearn(imp_in)) - return - - style.teach(imp_in) - -/obj/item/implanter/krav_maga - name = "implanter (krav maga)" - imp_type = /obj/item/implant/krav_maga - -/obj/item/implantcase/krav_maga - name = "implant case - 'Krav Maga'" - desc = "A glass case containing an implant that can teach the user the arts of Krav Maga." - imp_type = /obj/item/implant/krav_maga diff --git a/code/game/objects/items/implants/implant_misc.dm b/code/game/objects/items/implants/implant_misc.dm index ceccbe1b729e48..6e053a1a44b4e8 100644 --- a/code/game/objects/items/implants/implant_misc.dm +++ b/code/game/objects/items/implants/implant_misc.dm @@ -20,7 +20,7 @@ /obj/item/implant/emp/activate() . = ..() uses-- - empulse(imp_in, 3, 5) + empulse(imp_in, 3, 5, emp_source = src) if(!uses) qdel(src) diff --git a/code/game/objects/items/inspector.dm b/code/game/objects/items/inspector.dm index 8a08562bd840db..56e63994c22321 100644 --- a/code/game/objects/items/inspector.dm +++ b/code/game/objects/items/inspector.dm @@ -336,6 +336,7 @@ icon_state = "bananium_inspector" w_class = WEIGHT_CLASS_SMALL max_mode = BANANIUM_CLOWN_INSPECTOR_PRINT_SOUND_MODE_LAST + custom_materials = list(/datum/material/bananium = SHEET_MATERIAL_AMOUNT * 5) ///How many more times can we print? var/paper_charges = 32 ///Max value of paper_charges @@ -458,9 +459,11 @@ * If it is ground, it will turn into 5u water. */ /obj/item/paper/fake_report/water - grind_results = list(/datum/reagent/water = 5) interaction_flags_click = NEED_DEXTERITY|NEED_HANDS|ALLOW_RESTING +/obj/item/paper/fake_report/water/grind_results() + return list(/datum/reagent/water = 5) + /obj/item/paper/fake_report/water/click_alt(mob/living/user) var/datum/action/innate/origami/origami_action = locate() in user.actions if(origami_action?.active) //Origami masters can fold water diff --git a/code/game/objects/items/kitchen.dm b/code/game/objects/items/kitchen.dm index 5ca2ae02bb4a43..95412ef4088ee8 100644 --- a/code/game/objects/items/kitchen.dm +++ b/code/game/objects/items/kitchen.dm @@ -131,7 +131,7 @@ /obj/item/knife/kitchen/silicon/examine() . = ..() - . += " It's fitted with a [tool_behaviour] head." + . += "It's fitted with a [tool_behaviour] head." /obj/item/knife/kitchen/silicon/attack_self(mob/user) playsound(get_turf(user), 'sound/items/tools/change_drill.ogg', 50, TRUE) @@ -167,7 +167,7 @@ throwforce = 5 throw_speed = 3 throw_range = 7 - custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 1.5) + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 2) resistance_flags = FLAMMABLE w_class = WEIGHT_CLASS_NORMAL attack_verb_continuous = list("bashes", "batters", "bludgeons", "thrashes", "whacks") diff --git a/code/game/objects/items/knives.dm b/code/game/objects/items/knives.dm index 963728761c0706..b94a91e34562c5 100644 --- a/code/game/objects/items/knives.dm +++ b/code/game/objects/items/knives.dm @@ -47,7 +47,7 @@ ///Adds the butchering component, used to override stats for special cases /obj/item/knife/proc/set_butchering() AddComponent(/datum/component/butchering, \ - speed = 8 SECONDS - force, \ + speed = 9 SECONDS - force * 2, \ effectiveness = 100, \ bonus_modifier = force - 10, \ ) @@ -134,7 +134,7 @@ /obj/item/knife/hunting/set_butchering() AddComponent(/datum/component/butchering, \ - speed = 8 SECONDS - force, \ + speed = 9 SECONDS - force * 2, \ effectiveness = 100, \ bonus_modifier = force + 10, \ ) @@ -217,7 +217,7 @@ obj_flags = parent_type::obj_flags & ~CONDUCTS_ELECTRICITY force = 15 throwforce = 15 - custom_materials = null + custom_materials = list(/datum/material/bone = SHEET_MATERIAL_AMOUNT * 2) /datum/embedding/combat_knife/weak embed_chance = 35 @@ -245,7 +245,7 @@ attack_verb_continuous = list("shanks", "shivs") attack_verb_simple = list("shank", "shiv") armor_type = /datum/armor/none - custom_materials = list(/datum/material/glass = SMALL_MATERIAL_AMOUNT * 4) + custom_materials = list(/datum/material/glass = SHEET_MATERIAL_AMOUNT) /obj/item/knife/shiv/make_stabby() AddComponent(/datum/component/alternative_sharpness, SHARP_POINTY, alt_continuous, alt_simple, -3) @@ -258,7 +258,7 @@ force = 9 throwforce = 13 armor_type = /datum/armor/shiv_plasma - custom_materials = list(/datum/material/glass=SMALL_MATERIAL_AMOUNT *4, /datum/material/plasma=SMALL_MATERIAL_AMOUNT * 2) + custom_materials = list(/datum/material/alloy/plasmaglass = SHEET_MATERIAL_AMOUNT) /datum/armor/shiv_plasma melee = 25 @@ -278,7 +278,7 @@ throw_range = 7 wound_bonus = 10 armor_type = /datum/armor/shiv_titanium - custom_materials = list(/datum/material/glass=SMALL_MATERIAL_AMOUNT * 4, /datum/material/titanium=SMALL_MATERIAL_AMOUNT * 2) + custom_materials = list(/datum/material/alloy/titaniumglass = SHEET_MATERIAL_AMOUNT) /datum/armor/shiv_titanium melee = 25 @@ -301,7 +301,7 @@ wound_bonus = 10 exposed_wound_bonus = 20 armor_type = /datum/armor/shiv_plastitanium - custom_materials = list(/datum/material/glass= SMALL_MATERIAL_AMOUNT * 4, /datum/material/alloy/plastitanium= SMALL_MATERIAL_AMOUNT * 2) + custom_materials = list(/datum/material/alloy/plastitaniumglass = SHEET_MATERIAL_AMOUNT) /datum/armor/shiv_plastitanium melee = 50 diff --git a/code/game/objects/items/latexballoon.dm b/code/game/objects/items/latexballoon.dm index b2190cdc88604e..3439e6867f5d0a 100644 --- a/code/game/objects/items/latexballoon.dm +++ b/code/game/objects/items/latexballoon.dm @@ -15,6 +15,7 @@ w_class = WEIGHT_CLASS_TINY throw_speed = 1 throw_range = 7 + custom_materials = list(/datum/material/iron = SMALL_MATERIAL_AMOUNT * 0.2, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.2) var/state = DEFLATED var/datum/gas_mixture/air_contents = null diff --git a/code/game/objects/items/lighter.dm b/code/game/objects/items/lighter.dm index 46f84b7a11aeba..bd87f67ea2295e 100644 --- a/code/game/objects/items/lighter.dm +++ b/code/game/objects/items/lighter.dm @@ -9,7 +9,6 @@ obj_flags = CONDUCTS_ELECTRICITY slot_flags = ITEM_SLOT_BELT resistance_flags = FIRE_PROOF - grind_results = list(/datum/reagent/iron = 1, /datum/reagent/fuel = 5, /datum/reagent/fuel/oil = 5) custom_price = PAYCHECK_CREW * 1.1 light_system = OVERLAY_LIGHT light_range = 2 @@ -55,6 +54,9 @@ ) update_appearance() +/obj/item/lighter/grind_results() + return list(/datum/reagent/iron = 1, /datum/reagent/fuel = 5, /datum/reagent/fuel/oil = 5) + /obj/item/lighter/examine(mob/user) . = ..() if(get_fuel() <= 0) @@ -315,7 +317,9 @@ heat_while_on = parent_type::heat_while_on + 1000 //Blue flame is hotter, this means this does act as a welding tool. light_color = LIGHT_COLOR_CYAN overlay_state = "slime" - grind_results = list(/datum/reagent/iron = 1, /datum/reagent/fuel = 5, /datum/reagent/medicine/pyroxadone = 5) + +/obj/item/lighter/slime/grind_results() + return list(/datum/reagent/iron = 1, /datum/reagent/fuel = 5, /datum/reagent/medicine/pyroxadone = 5) /obj/item/lighter/skull name = "badass zippo" @@ -329,11 +333,13 @@ light_color = LIGHT_COLOR_HALOGEN heat_while_on = TCMB //I swear it's a real lighter dude you just can't see the flame dude I promise overlay_state = "mime" - grind_results = list(/datum/reagent/iron = 1, /datum/reagent/toxin/mutetoxin = 5, /datum/reagent/consumable/nothing = 10) light_range = 0 light_power = 0 fancy = FALSE +/obj/item/lighter/mime/grind_results() + return list(/datum/reagent/iron = 1, /datum/reagent/toxin/mutetoxin = 5, /datum/reagent/consumable/nothing = 10) + /obj/item/lighter/mime/ignition_effect(atom/A, mob/user) . = span_infoplain("[user] lifts \the [src] to the [A], which miraculously lights!") @@ -343,11 +349,13 @@ icon_state = "slighter" light_color = LIGHT_COLOR_ELECTRIC_CYAN overlay_state = "bright" - grind_results = list(/datum/reagent/iron = 1, /datum/reagent/flash_powder = 10) light_range = 8 light_power = 3 //Irritatingly bright and large enough to cover a small room. fancy = FALSE +/obj/item/lighter/bright/grind_results() + return list(/datum/reagent/iron = 1, /datum/reagent/flash_powder = 10) + /obj/item/lighter/bright/examine(mob/user) . = ..() diff --git a/code/game/objects/items/maintenance_loot.dm b/code/game/objects/items/maintenance_loot.dm index 9ad0c206bbca9b..9a87976932ce81 100644 --- a/code/game/objects/items/maintenance_loot.dm +++ b/code/game/objects/items/maintenance_loot.dm @@ -21,12 +21,14 @@ w_class = WEIGHT_CLASS_BULKY wound_bonus = 20 demolition_mod = 1.25 - grind_results = list(/datum/reagent/lead = 20) pickup_sound = 'sound/items/handling/lead_pipe/lead_pipe_pickup.ogg' drop_sound = 'sound/items/handling/materials/metal_drop.ogg' throw_drop_sound = 'sound/items/handling/lead_pipe/lead_pipe_drop.ogg' hitsound = 'sound/items/lead_pipe_hit.ogg' +/obj/item/lead_pipe/grind_results() + return list(/datum/reagent/lead = 20) + //A good battery early in the shift. Source of lead & sulfuric acid reagents. //Add lead material to this once implemented. /obj/item/stock_parts/power_store/cell/lead @@ -42,7 +44,9 @@ emp_damage_modifier = 4 // 15 shots. charge_light_type = null connector_type = "leadacid" - grind_results = list(/datum/reagent/lead = 15, /datum/reagent/toxin/acid = 15, /datum/reagent/water = 20) + +/obj/item/stock_parts/power_store/cell/lead/grind_results() + return list(/datum/reagent/lead = 15, /datum/reagent/toxin/acid = 15, /datum/reagent/water = 20) //starts partially discharged /obj/item/stock_parts/power_store/cell/lead/Initialize(mapload) @@ -56,8 +60,8 @@ ) // Give our owner shock touch when entering the digital realm -/obj/item/stock_parts/power_store/cell/lead/proc/shockingly_improve_avatar(mob/living/carbon/human/neo, mob/living/carbon/human/avatar, external_load_flags) - if(external_load_flags & DOMAIN_FORBIDS_ABILITIES) +/obj/item/stock_parts/power_store/cell/lead/proc/shockingly_improve_avatar(mob/living/carbon/human/neo, mob/living/carbon/human/avatar, domain_flags) + if(domain_flags & DOMAIN_FORBIDS_ABILITIES) return BITRUNNER_GEAR_LOAD_BLOCKED if(!avatar.can_mutate()) diff --git a/code/game/objects/items/manuals.dm b/code/game/objects/items/manuals.dm index f798fa66ad848b..611a035acba914 100644 --- a/code/game/objects/items/manuals.dm +++ b/code/game/objects/items/manuals.dm @@ -98,6 +98,7 @@ \ Dough: 10u water + 15u flour for simple dough.
\ 6u egg yolk + 12 egg white + 15u flour + 5u sugar for cake batter.
\ + (15u soy milk can be substituted for the eggs.)
\ Doughs can be transformed by using a knife and rolling pin.
\ All doughs can be baked.
\ Bowl: Add recipe ingredients and liquid to make soups.
\ diff --git a/code/game/objects/items/melee/baton.dm b/code/game/objects/items/melee/baton.dm index 0ae9edda5edbfc..fdca06d2ae4c96 100644 --- a/code/game/objects/items/melee/baton.dm +++ b/code/game/objects/items/melee/baton.dm @@ -103,67 +103,94 @@ /obj/item/melee/baton/proc/add_deep_lore() return -/// Checks if we can actually USE the baton. Impure -/obj/item/melee/baton/proc/can_baton(mob/living/target, mob/living/user) +#define STUN_ATTACK "stun attack" + +/** + * Checks if we can stun targets with the baton. + * + * Impure (has chat feedback and mutates state in some subtypes). + * In other words don't call this unless a stun is being attempted. + * + * * target - The mob being hit with the baton + * * user - The mob using the baton + * * harmbatonning - Whether or not this is being called from a harmbaton attack + * + * Returns TRUE if we can stun the target, FALSE if we cannot. + */ +/obj/item/melee/baton/proc/try_stun(mob/living/target, mob/living/user, harmbatonning) PROTECTED_PROC(TRUE) - if(clumsy_check(user, target)) + if(!active) return FALSE - if(!chunky_finger_usable && ishuman(user)) var/mob/living/carbon/human/human_user = user if(human_user.check_chunky_fingers() && user.is_holding(src) && !HAS_MIND_TRAIT(user, TRAIT_CHUNKYFINGERS_IGNORE_BATON)) - balloon_alert(human_user, "fingers are too big!") + if(!harmbatonning) + balloon_alert(human_user, "fingers are too big!") return FALSE - + if(!COOLDOWN_FINISHED(src, cooldown_check)) + if(wait_desc && !harmbatonning) + balloon_alert(user, wait_desc) + return FALSE + if(HAS_TRAIT_FROM(target, TRAIT_IWASBATONED, REF(user)) ) //no doublebaton abuse anon! + if(!harmbatonning) + target.balloon_alert(user, "can't stun yet!") + return FALSE return TRUE // Stun attack /obj/item/melee/baton/pre_attack(atom/target, mob/living/user, list/modifiers, list/attack_modifiers) . = ..() - if(. || !isliving(target)) - return . - - if(!can_baton(target, user)) + if(.) return TRUE - if(!COOLDOWN_FINISHED(src, cooldown_check)) - if(wait_desc) - balloon_alert(user, wait_desc) - return TRUE + if(!isliving(target)) + return FALSE // bashing objects + + var/harmbatonning = LAZYACCESS(modifiers, RIGHT_CLICK) + if(harmbatonning && !stun_on_harmbaton) + return FALSE // harmbatonning, no stun + + // see if this attack will result in a stun, or if we need to cancel it + if(!try_stun(target, user, harmbatonning)) + if(harmbatonning) + return FALSE // if harmbatonning, ALwAYS attack + if(active) + return TRUE // if active, but can't stun? no attack + if(!user.combat_mode) + return TRUE // if not in combat mode? no attack + + return FALSE // otherwise, attack normally + + // clumsy people redirect this attack - yes, this bypasses IWASBATONED and such + if(HAS_TRAIT(user, TRAIT_CLUMSY) && prob(50)) + user.visible_message( + span_danger("[user] accidentally hits [user.p_them()]self over the head with [src]! What a doofus!"), + span_userdanger("You accidentally hit yourself over the head with [src]!"), + visible_message_flags = ALWAYS_SHOW_SELF_MESSAGE, + ) - if(HAS_TRAIT_FROM(target, TRAIT_IWASBATONED, REF(user))) //no doublebaton abuse anon! - target.balloon_alert(user, "can't stun yet!") - return TRUE + finalize_baton_attack(user, user, clumsy = TRUE) + user.apply_damage(2 * force, BRUTE, BODY_ZONE_HEAD, attacking_item = src) + log_combat(user, user, "accidentally stun attacked [user.p_them()]self due to their clumsiness", src) + user.do_attack_animation(user) + user.changeNext_move(attack_speed) + return TRUE // you hit yourself, nerd - if(active) - // when we continue to attack, deal 0 (brute) damage (just stun) + // if not harm batonning, we override the default attack properties do do nothing + if(!harmbatonning) SET_ATTACK_FORCE(attack_modifiers, 0) MUTE_ATTACK_HITSOUND(attack_modifiers) HIDE_ATTACK_MESSAGES(attack_modifiers) - return . - -// Harm attack -/obj/item/melee/baton/pre_attack_secondary(atom/target, mob/living/user, list/modifiers, list/attack_modifiers) - . = ..() - if(. != SECONDARY_ATTACK_CALL_NORMAL || !isliving(target)) - return . - - if(!can_baton(target, user)) - return SECONDARY_ATTACK_CANCEL_ATTACK_CHAIN - - // call attack, NOT pre_attack - // (so we go directly to harming) - return SECONDARY_ATTACK_CONTINUE_CHAIN + // then denote the attack as "will stun" for afterattack + LAZYSET(attack_modifiers, STUN_ATTACK, TRUE) + return FALSE // attack and stun // This is where stun gets applied /obj/item/melee/baton/afterattack(atom/target, mob/user, list/modifiers, list/attack_modifiers) - if(!isliving(target) || !active || !COOLDOWN_FINISHED(src, cooldown_check) || HAS_TRAIT_FROM(target, TRAIT_IWASBATONED, REF(user))) - return - // worst check in the chain but - right click = harmbaton - if(LAZYACCESS(modifiers, RIGHT_CLICK) && !stun_on_harmbaton) + if(QDELETED(target) || !LAZYACCESS(attack_modifiers, STUN_ATTACK)) return - finalize_baton_attack(target, user, modifiers) + finalize_baton_attack(target, user) var/list/desc if(iscyborg(target)) @@ -209,17 +236,17 @@ return CONTEXTUAL_SCREENTIP_SET /// Wrapper for calling "stun()" and doing relevant vfx/sfx -/obj/item/melee/baton/proc/finalize_baton_attack(mob/living/target, mob/living/user, list/modifiers) +/obj/item/melee/baton/proc/finalize_baton_attack(mob/living/target, mob/living/user, clumsy = FALSE) PROTECTED_PROC(TRUE) COOLDOWN_START(src, cooldown_check, cooldown) if(on_stun_sound) playsound(src, on_stun_sound, on_stun_volume, TRUE, -1) - if(baton_effect(target, user, modifiers) && user) + if(baton_effect(target, user, null, clumsy) && user) set_batoned(target, user, cooldown) log_combat(user, target, "stunned", src.name) /// The actual "stun()" of the stun baton -/obj/item/melee/baton/proc/baton_effect(mob/living/target, mob/living/user, list/modifiers, stun_override) +/obj/item/melee/baton/proc/baton_effect(mob/living/target, mob/living/user, stun_override, clumsy) PROTECTED_PROC(TRUE) var/trait_check = HAS_TRAIT(target, TRAIT_BATON_RESISTANCE) if(iscyborg(target)) @@ -233,7 +260,7 @@ var/mob/living/carbon/human/human_target = target if(prob(force_say_chance)) human_target.force_say() - var/armour_block = target.run_armor_check(null, armour_type_against_stun, null, null, stun_armour_penetration) + var/armour_block = target.run_armor_check(BODY_ZONE_CHEST, armour_type_against_stun, null, null, stun_armour_penetration) target.apply_damage(stamina_damage, STAMINA, blocked = armour_block) if(!trait_check) target.Knockdown((isnull(stun_override) ? knockdown_time : stun_override)) @@ -278,34 +305,7 @@ ADD_TRAIT(target, TRAIT_IWASBATONED, user_ref) addtimer(TRAIT_CALLBACK_REMOVE(target, TRAIT_IWASBATONED, user_ref), cooldown) -/obj/item/melee/baton/proc/clumsy_check(mob/living/user, mob/living/intented_target) - if(!active || !HAS_TRAIT(user, TRAIT_CLUMSY) || prob(50)) - return FALSE - user.visible_message(span_danger("[user] accidentally hits [user.p_them()]self over the head with [src]! What a doofus!"), span_userdanger("You accidentally hit yourself over the head with [src]!"), visible_message_flags = ALWAYS_SHOW_SELF_MESSAGE) - - if(iscyborg(user)) - if(affect_cyborg) - user.flash_act(affect_silicon = TRUE) - user.Paralyze(clumsy_knockdown_time) - additional_effects_cyborg(user, user) // user is the target here - if(on_stun_sound) - playsound(src, on_stun_sound, on_stun_volume, TRUE, -1) - else - playsound(src, 'sound/effects/bang.ogg', 10, TRUE) - else - //straight up always force say for clumsy humans - if(ishuman(user)) - var/mob/living/carbon/human/human_user = user - human_user.force_say() - user.Knockdown(clumsy_knockdown_time) - user.apply_damage(stamina_damage, STAMINA) - additional_effects_non_cyborg(user, user) // user is the target here - if(on_stun_sound) - playsound(src, on_stun_sound, on_stun_volume, TRUE, -1) - - user.apply_damage(2 * force, BRUTE, BODY_ZONE_HEAD, attacking_item = src) - log_combat(user, user, "accidentally stun attacked [user.p_them()]self due to their clumsiness", src) - user.do_attack_animation(user) +#undef STUN_ATTACK /obj/item/conversion_kit name = "conversion kit" @@ -666,28 +666,18 @@ //we're below minimum, turn off turn_off() -/obj/item/melee/baton/security/clumsy_check(mob/living/carbon/human/user) - . = ..() - if(.) - SEND_SIGNAL(user, COMSIG_LIVING_MINOR_SHOCK) - deductcharge(cell_hit_cost) - -/obj/item/melee/baton/security/pre_attack(atom/target, mob/living/user, list/modifiers, list/attack_modifiers) - . = ..() - if(. || !isliving(target)) - return . - - if(!active && !user.combat_mode) +/obj/item/melee/baton/security/try_stun(mob/living/target, mob/living/user, harmbatonning) + if(!active && !harmbatonning && !user.combat_mode) target.visible_message( span_warning("[user] prods [target] with [src]. Luckily it was off."), span_warning("[user] prods you with [src]. Luckily it was off."), visible_message_flags = ALWAYS_SHOW_SELF_MESSAGE, ) - return TRUE + return FALSE - return . + return ..() -/obj/item/melee/baton/security/baton_effect(mob/living/target, mob/living/user, modifiers, stun_override) +/obj/item/melee/baton/security/baton_effect(mob/living/target, mob/living/user, stun_override, clumsy) if(iscyborg(loc)) var/mob/living/silicon/robot/robot = loc if(!robot || !robot.cell || !robot.cell.use(cell_hit_cost)) @@ -732,7 +722,7 @@ /obj/item/melee/baton/security/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum) . = ..() - if(!. && active && prob(throw_stun_chance) && hit_atom) + if(!. && active && prob(throw_stun_chance) && isliving(hit_atom)) finalize_baton_attack(hit_atom, throwingdatum?.get_thrower()) /obj/item/melee/baton/security/emp_act(severity) @@ -764,6 +754,20 @@ /obj/item/melee/baton/security/loaded/hos preload_cell_type = /obj/item/stock_parts/power_store/cell/super +// Stunsword Skins +/datum/atom_skin/stunsword + abstract_type = /datum/atom_skin/stunsword + change_inhand_icon_state = TRUE + change_base_icon_state = TRUE + +/datum/atom_skin/stunsword/default + preview_name = "Default" + new_icon_state = "stunsword" + +/datum/atom_skin/stunsword/energy + preview_name = "Energy" + new_icon_state = "stunsword_energy" + ///Stun Sword /obj/item/melee/baton/security/stunsword name = "\improper NT-20 'Excalibur' Stunsword" @@ -789,14 +793,12 @@ convertible = FALSE obj_flags = UNIQUE_RENAME - unique_reskin = list( - "Default" = "stunsword", - "Energy Stunsword" = "stunsword_energy", - ) - unique_reskin_changes_inhand = TRUE - unique_reskin_changes_base_icon_state = TRUE -/obj/item/melee/baton/security/stunsword/loaded/add_deep_lore() +/obj/item/melee/baton/security/stunsword/Initialize(mapload) + . = ..() + AddComponent(/datum/component/reskinable_item, /datum/atom_skin/stunsword) + +/obj/item/melee/baton/security/stunsword/add_deep_lore() return /obj/item/melee/baton/security/stunsword/loaded @@ -824,6 +826,7 @@ slot_flags = ITEM_SLOT_BACK convertible = FALSE active_changes_inhand = FALSE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 1.15, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 2) var/obj/item/assembly/igniter/sparkler ///Determines whether or not we can improve the cattleprod into a new type. Prevents turning the cattleprod subtypes into different subtypes, or wasting materials on making it....another version of itself. var/can_upgrade = TRUE @@ -867,16 +870,16 @@ var/obj/item/melee/baton/security/cattleprod/brand_new_prod = new our_prod(user.loc) user.put_in_hands(brand_new_prod) -/obj/item/melee/baton/security/cattleprod/can_baton(mob/living/target, mob/living/user) - if(!sparkler.activate()) - return FALSE - return ..() +/obj/item/melee/baton/security/cattleprod/try_stun(mob/living/target, mob/living/user, harmbatonning) + return ..() && sparkler.activate() /obj/item/melee/baton/security/cattleprod/Destroy() - if(sparkler) - QDEL_NULL(sparkler) + QDEL_NULL(sparkler) return ..() +/obj/item/melee/baton/security/cattleprod/loaded + preload_cell_type = /obj/item/stock_parts/power_store/cell/high + /obj/item/melee/baton/security/boomerang name = "\improper OZtek Boomerang" desc = "A device invented in 2486 for the great Space Emu War by the confederacy of Australicus, these high-tech boomerangs also work exceptionally well at stunning crewmembers. Just be careful to catch it when thrown!" @@ -913,18 +916,13 @@ inhand_icon_state = "teleprod" slot_flags = null can_upgrade = FALSE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 1.15, /datum/material/bluespace = SHEET_MATERIAL_AMOUNT, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 2) -/obj/item/melee/baton/security/cattleprod/teleprod/clumsy_check(mob/living/carbon/human/user) - . = ..() - if(!.) - return - do_teleport(user, get_turf(user), 50, channel = TELEPORT_CHANNEL_BLUESPACE) - -/obj/item/melee/baton/security/cattleprod/teleprod/baton_effect(mob/living/target, mob/living/user, modifiers, stun_override) +/obj/item/melee/baton/security/cattleprod/teleprod/baton_effect(mob/living/target, mob/living/user, stun_override, clumsy) . = ..() if(!. || target.move_resist >= MOVE_FORCE_OVERPOWERING) return - do_teleport(target, get_turf(target), 15, channel = TELEPORT_CHANNEL_BLUESPACE) + do_teleport(target, get_turf(target), clumsy ? 50 : 15, channel = TELEPORT_CHANNEL_BLUESPACE) /obj/item/melee/baton/security/cattleprod/telecrystalprod name = "snatcherprod" @@ -937,13 +935,7 @@ throw_stun_chance = 50 //I think it'd be funny can_upgrade = FALSE -/obj/item/melee/baton/security/cattleprod/telecrystalprod/clumsy_check(mob/living/carbon/human/user) - . = ..() - if(!.) - return - do_teleport(src, get_turf(user), 50, channel = TELEPORT_CHANNEL_BLUESPACE) //Wait, where did it go? - -/obj/item/melee/baton/security/cattleprod/telecrystalprod/baton_effect(mob/living/target, mob/living/user, modifiers, stun_override) +/obj/item/melee/baton/security/cattleprod/telecrystalprod/baton_effect(mob/living/target, mob/living/user, stun_override, clumsy) . = ..() if(!.) return @@ -956,6 +948,8 @@ stuff_in_hand.forceMove(user.drop_location()) stuff_in_hand.loc.visible_message(span_warning("[stuff_in_hand] suddenly appears!")) + if(clumsy && user.dropItemToGround(src, force = TRUE, silent = TRUE)) + do_teleport(src, get_turf(user), 50, channel = TELEPORT_CHANNEL_BLUESPACE) //Wait, where did it go? /obj/item/melee/baton/nunchaku name = "Syndie Fitness Nunchuks" @@ -998,7 +992,7 @@ randomize_state() // blocks any melee/throwable attacks - owner.adjustStaminaLoss(5) + owner.adjust_stamina_loss(5) final_block_chance = 100 // counterattack at melee diff --git a/code/game/objects/items/melee/chainofcommand.dm b/code/game/objects/items/melee/chainofcommand.dm index 8009b031df4c79..ed0482f4abc1bf 100644 --- a/code/game/objects/items/melee/chainofcommand.dm +++ b/code/game/objects/items/melee/chainofcommand.dm @@ -66,7 +66,8 @@ /atom/movable/screen/alert/status_effect/commanded name = "Commanded" desc = "You are inspired to do things faster!" - icon_state = "commanded" + use_user_hud_icon = TRUE + overlay_state = "commanded" /obj/item/melee/chainofcommand/tailwhip name = "liz o' nine tails" @@ -74,6 +75,7 @@ icon_state = "tailwhip" inhand_icon_state = "tailwhip" item_flags = NONE + custom_materials = list(/datum/material/iron = SMALL_MATERIAL_AMOUNT * 0.1, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.1) /obj/item/melee/chainofcommand/tailwhip/kitty name = "cat o' nine tails" diff --git a/code/game/objects/items/melee/energy.dm b/code/game/objects/items/melee/energy.dm index 956c75bb94334e..8c450549066494 100644 --- a/code/game/objects/items/melee/energy.dm +++ b/code/game/objects/items/melee/energy.dm @@ -23,6 +23,8 @@ var/active_force = 30 /// Throwforce while active. var/active_throwforce = 20 + /// The throw speed of the weapon when on + var/active_throw_speed = 4 /// Sharpness while active. var/active_sharpness = SHARP_EDGED /// Hitsound played attacking while active. @@ -61,7 +63,7 @@ /datum/component/transforming, \ force_on = active_force, \ throwforce_on = active_throwforce, \ - throw_speed_on = 4, \ + throw_speed_on = active_throw_speed, \ sharpness_on = active_sharpness, \ hitsound_on = active_hitsound, \ w_class_on = active_w_class, \ @@ -156,6 +158,7 @@ active_force = 150 active_throwforce = 30 + active_throw_speed = 3 active_w_class = WEIGHT_CLASS_HUGE /obj/item/melee/energy/axe/make_transformable() @@ -163,7 +166,7 @@ /datum/component/transforming, \ force_on = active_force, \ throwforce_on = active_throwforce, \ - throw_speed_on = throw_speed, \ + throw_speed_on = active_throw_speed, \ sharpness_on = sharpness, \ w_class_on = active_w_class, \ ) @@ -211,6 +214,9 @@ if(!HAS_TRAIT(src, TRAIT_TRANSFORM_ACTIVE)) return FALSE + if(attack_type == OVERWHELMING_ATTACK) + return FALSE + if(attack_type == LEAP_ATTACK) final_block_chance -= 25 //OH GOD GET IT OFF ME @@ -384,7 +390,7 @@ icon_angle = 0 /obj/item/melee/energy/sword/surplus - name = "\improper Type I 'Iaito' energy sword" + name = "\improper Pattern I 'Iaito' energy sword" desc = "Oversized, overengineered, and somehow still mass-produced. The twin energy blades, theoretically, help make up for the poor cutting plane the emitter generates. \ When there are no more heroes in a desperate struggle, it's kill or be killed." icon_state = "surplus_e_sword" @@ -396,6 +402,7 @@ inhand_y_dimension = 64 active_force = 15 // This force is augmented by the state of our target. active_throwforce = 15 + active_throw_speed = 3 alt_continuous = list("whacks", "smacks", "bashes") alt_simple = list("whack", "smack", "bash") alt_sharpness = NONE @@ -414,7 +421,6 @@ . = ..() RegisterSignal(src, COMSIG_TRANSFORMING_PRE_TRANSFORM, PROC_REF(check_power)) AddElement(/datum/element/examine_lore, \ - lore_hint = span_notice("You can [EXAMINE_HINT("look closer")] to learn a little more about [src]."), \ lore = "This early iteration of the now infamous energy sword was, supposedly, a Waffle Corp prototype first trialed in a variety of armed conflicts \ around the interstellar frontier.
\
\ @@ -499,6 +505,26 @@ if(!HAS_TRAIT(src, TRAIT_TRANSFORM_ACTIVE) || charge <= 0) return + expend_charge(user) + +/obj/item/melee/energy/sword/surplus/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK, damage_type = BRUTE) + if(!HAS_TRAIT(src, TRAIT_TRANSFORM_ACTIVE)) + return FALSE + + if(attack_type == OVERWHELMING_ATTACK) + return FALSE + + if(attack_type == LEAP_ATTACK) + final_block_chance -= 25 + + if(prob(final_block_chance) && charge) + expend_charge(owner) + return TRUE + +/obj/item/melee/energy/sword/surplus/proc/expend_charge(mob/user) + if(!charge) // not that this will ever get here without charge, but... + return + charge-- if(charge <= 0) user.balloon_alert(user, "out of charge!") @@ -531,20 +557,17 @@ armour_penetration = 0 wound_bonus = -10 demolition_mod = 1 - embed_type = /datum/embedding/holy_esword sword_color_icon = "blue" light_color = LIGHT_COLOR_LIGHT_CYAN active_force = 18 active_throwforce = 10 + active_throw_speed = 3 alt_force_mod = -3 /obj/item/melee/energy/sword/nullrod/Initialize(mapload) . = ..() AddElement(/datum/element/nullrod_core) -/datum/embedding/holy_esword - embed_chance = 0 - /obj/item/melee/energy/sword/nullrod/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK, damage_type = BRUTE) if(!HAS_TRAIT(src, TRAIT_TRANSFORM_ACTIVE)) return FALSE diff --git a/code/game/objects/items/melee/misc.dm b/code/game/objects/items/melee/misc.dm index e757897d69157d..2f4defafa2cdd2 100644 --- a/code/game/objects/items/melee/misc.dm +++ b/code/game/objects/items/melee/misc.dm @@ -43,7 +43,7 @@ lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' obj_flags = CONDUCTS_ELECTRICITY | UNIQUE_RENAME - force = 15 + force = 20 throwforce = 10 demolition_mod = 0.75 //but not metal w_class = WEIGHT_CLASS_BULKY @@ -94,7 +94,7 @@ INVOKE_ASYNC(baned_target, TYPE_PROC_REF(/mob/living/carbon/human, emote), "scream") /obj/item/melee/sabre/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK, damage_type = BRUTE) - if(attack_type == (PROJECTILE_ATTACK || LEAP_ATTACK || OVERWHELMING_ATTACK)) + if(attack_type == PROJECTILE_ATTACK || attack_type == LEAP_ATTACK || attack_type == OVERWHELMING_ATTACK) final_block_chance = 0 //Don't bring a sword to a gunfight, and also you aren't going to really block someone full body tackling you with a sword. Or a road roller, if one happened to hit you. return ..() @@ -139,11 +139,11 @@ if(!QDELETED(affecting) && !(affecting.bodypart_flags & BODYPART_UNREMOVABLE) && affecting.owner == user && !QDELETED(user)) playsound(user, hitsound, 25, TRUE) affecting.dismember(BRUTE) - user.adjustBruteLoss(20) + user.adjust_brute_loss(force * 1.25) /obj/item/melee/sabre/proc/manual_suicide(mob/living/user, originally_nodropped) if(!QDELETED(user)) - user.adjustBruteLoss(200) + user.adjust_brute_loss(200) user.death(FALSE) REMOVE_TRAIT(src, TRAIT_NODROP, SABRE_SUICIDE_TRAIT) @@ -178,7 +178,7 @@ AddComponent(/datum/component/jousting) /obj/item/melee/parsnip_sabre/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK, damage_type = BRUTE) - if(attack_type == (PROJECTILE_ATTACK || LEAP_ATTACK || OVERWHELMING_ATTACK)) + if(attack_type == PROJECTILE_ATTACK || attack_type == LEAP_ATTACK || attack_type == OVERWHELMING_ATTACK) final_block_chance = 0 //Don't bring a sword to a gunfight, and also you aren't going to really block someone full body tackling you with a sword. Or a road roller, if one happened to hit you. return ..() @@ -214,12 +214,12 @@ block_sound = 'sound/items/weapons/parry.ogg' /obj/item/melee/beesword/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK, damage_type = BRUTE) - if(attack_type == (PROJECTILE_ATTACK || LEAP_ATTACK || OVERWHELMING_ATTACK)) + if(attack_type == PROJECTILE_ATTACK || attack_type == LEAP_ATTACK || attack_type == OVERWHELMING_ATTACK) final_block_chance = 0 //Don't bring a sword to a gunfight, and also you aren't going to really block someone full body tackling you with a sword. Or a road roller, if one happened to hit you. return ..() /obj/item/melee/beesword/afterattack(atom/target, mob/user, list/modifiers, list/attack_modifiers) - if(iscarbon(target)) + if(iscarbon(target) && !QDELETED(target)) var/mob/living/carbon/carbon_target = target carbon_target.reagents.add_reagent(/datum/reagent/toxin, 4) @@ -243,6 +243,7 @@ armour_penetration = 1000 force_string = "INFINITE" item_flags = NEEDS_PERMIT|NO_BLOOD_ON_ITEM + custom_materials = list(/datum/material/adamantine = SHEET_MATERIAL_AMOUNT * 20, /datum/material/iron = SHEET_MATERIAL_AMOUNT) var/obj/machinery/power/supermatter_crystal/shard var/balanced = 1 @@ -543,6 +544,7 @@ desc = "[initial(desc)] Its handle is made of [material.name]." /obj/item/melee/cleric_mace/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK, damage_type = BRUTE) - if(attack_type == (PROJECTILE_ATTACK || LEAP_ATTACK || OVERWHELMING_ATTACK)) + if(attack_type == PROJECTILE_ATTACK || attack_type == LEAP_ATTACK || attack_type == OVERWHELMING_ATTACK) final_block_chance = 0 //Don't bring a...mace to a gunfight, and also you aren't going to really block someone full body tackling you with a mace. Or a road roller, if one happened to hit you. return ..() + diff --git a/code/game/objects/items/pinpointer.dm b/code/game/objects/items/pinpointer.dm index dfff30effdc197..2e23ffdfbb7791 100644 --- a/code/game/objects/items/pinpointer.dm +++ b/code/game/objects/items/pinpointer.dm @@ -220,6 +220,7 @@ GLOBAL_LIST_EMPTY(sniffable_sheets) desc = "A handheld tracking device that locates sheets of glass and iron." icon_state = "pinpointer_sniffer" worn_icon_state = "pinpointer_black" + custom_materials = list(/datum/material/iron = SMALL_MATERIAL_AMOUNT * 0.8, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.7) /obj/item/pinpointer/material_sniffer/scan_for_target() if(target || !GLOB.sniffable_sheets.len) diff --git a/code/game/objects/items/pneumaticCannon.dm b/code/game/objects/items/pneumatic_cannon.dm similarity index 99% rename from code/game/objects/items/pneumaticCannon.dm rename to code/game/objects/items/pneumatic_cannon.dm index e8fe75c74b36ac..8ea0ee60b67a05 100644 --- a/code/game/objects/items/pneumaticCannon.dm +++ b/code/game/objects/items/pneumatic_cannon.dm @@ -20,6 +20,7 @@ lefthand_file = 'icons/mob/inhands/weapons/guns_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/guns_righthand.dmi' armor_type = /datum/armor/item_pneumatic_cannon + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 6) var/maxWeightClass = 20 //The max weight of items that can fit into the cannon var/loadedWeightClass = 0 //The weight of items currently in the cannon var/obj/item/tank/internals/tank = null //The gas tank that is drawn from to fire things diff --git a/code/game/objects/items/rcd/RCD.dm b/code/game/objects/items/rcd/RCD.dm index 892cbe70489ff0..1e531a2ddcc67c 100644 --- a/code/game/objects/items/rcd/RCD.dm +++ b/code/game/objects/items/rcd/RCD.dm @@ -68,9 +68,9 @@ design_category = GLOB.rcd_designs[root_category][1] var/list/design = GLOB.rcd_designs[root_category][design_category][1] - rcd_design_path = design["[RCD_DESIGN_PATH]"] + rcd_design_path = design[RCD_DESIGN_PATH] design_title = initial(rcd_design_path.name) - mode = design["[RCD_DESIGN_MODE]"] + mode = design[RCD_DESIGN_MODE] construction_mode = mode GLOB.rcd_list += src @@ -115,15 +115,13 @@ mode = RCD_TURF user.visible_message(span_suicide("[user] sets the RCD to 'Wall' and points it down [user.p_their()] throat! It looks like [user.p_theyre()] trying to commit suicide!")) - if(checkResource(16, user)) // It takes 16 resources to construct a wall + if(useResource(16, user)) // It takes 16 resources to construct a wall var/success = T.rcd_act(user, src, list("[RCD_DESIGN_MODE]" = RCD_TURF, "[RCD_DESIGN_PATH]" = /turf/open/floor/plating/rcd)) T = get_turf(user) // If the RCD placed a floor instead of a wall, having a wall without plating under it is cursed // There isn't an easy programmatical way to check if rcd_act will place a floor or a wall, so just repeat using it for free if(success && isopenturf(T)) T.rcd_act(user, src, list("[RCD_DESIGN_MODE]" = RCD_TURF, "[RCD_DESIGN_PATH]" = /turf/open/floor/plating/rcd)) - useResource(16, user) - activate() playsound(get_turf(user), SFX_TOOL_SWITCH, 20, TRUE) user.gib(DROP_ALL_REMAINS) return MANUAL_SUICIDE @@ -140,8 +138,8 @@ * * [mob][user]- the user */ /obj/item/construction/rcd/proc/can_place(atom/target, list/rcd_results, mob/user) - var/rcd_mode = rcd_results["[RCD_DESIGN_MODE]"] - var/atom/movable/rcd_structure = rcd_results["[RCD_DESIGN_PATH]"] + var/rcd_mode = rcd_results[RCD_DESIGN_MODE] + var/atom/movable/rcd_structure = rcd_results[RCD_DESIGN_PATH] /** *For anything that does not go an a wall we have to make sure that turf is clear for us to put the structure on it *If we are just trying to destroy something then this check is not necessary @@ -173,9 +171,18 @@ * if we are trying to create plating on turf which is not a proper floor then don't check for objects on top of the turf just allow that turf to be converted into plating. e.g. create plating beneath a player or underneath a machine frame/any dense object * if we are trying to finish a wall girder then let it finish then make sure no one/nothing is stuck in the girder */ - else if(rcd_mode == RCD_TURF && rcd_structure == /turf/open/floor/plating/rcd && (!istype(target_turf, /turf/open/floor) || istype(target, /obj/structure/girder))) + else if(rcd_mode == RCD_TURF && rcd_structure == /turf/open/floor/plating/rcd) //if a player builds a wallgirder on top of himself manually with iron sheets he can't finish the wall if he is still on the girder. Exclude the girder itself when checking for other dense objects on the turf - if(istype(target, /obj/structure/girder) && target_turf.is_blocked_turf(exclude_mobs = FALSE, source_atom = null, ignore_atoms = list(target))) + var/list/ignore_types = list() + if(isturf(target)) + if(isfloorturf(target)) + ignore_types += /obj/structure/girder + else + ignore_types = null + else if(istype(target, /obj/structure/girder)) + ignore_types += /obj/structure/girder + + if(ignore_types && target_turf.is_blocked_turf(exclude_mobs = FALSE, source_atom = null, ignore_atoms = ignore_types, type_list = TRUE)) playsound(get_turf(user), SFX_TOOL_SWITCH, 20, TRUE) balloon_alert(user, "something is on the girder!") return FALSE @@ -250,8 +257,8 @@ balloon_alert(user, "too durable!") return ITEM_INTERACT_BLOCKING - rcd_results["[RCD_DESIGN_MODE]"] = mode - rcd_results["[RCD_DESIGN_PATH]"] = rcd_design_path + rcd_results[RCD_DESIGN_MODE] = mode + rcd_results[RCD_DESIGN_PATH] = rcd_design_path var/delay = rcd_results["delay"] * delay_mod if ( @@ -265,10 +272,10 @@ var/target_name = target.name //Store this information before it gets mutated by the rcd. var/target_path = target.type - var/atom/design_path = rcd_results["[RCD_DESIGN_PATH]"] + var/atom/design_path = rcd_results[RCD_DESIGN_PATH] var/location = AREACOORD(target) if(_rcd_create_effect(target, user, delay, rcd_results)) - log_tool("[key_name(user)] used [src] to [rcd_results["[RCD_DESIGN_MODE]"] != RCD_DECONSTRUCT ? "construct [initial(design_path.name)]([design_path])" : "deconstruct [target_name]([target_path])"] at [location]") + log_tool("[key_name(user)] used [src] to [rcd_results[RCD_DESIGN_MODE] != RCD_DECONSTRUCT ? "construct [initial(design_path.name)]([design_path])" : "deconstruct [target_name]([target_path])"] at [location]") current_active_effects -= 1 return ITEM_INTERACT_SUCCESS @@ -285,10 +292,10 @@ /obj/item/construction/rcd/proc/_rcd_create_effect(atom/target, mob/user, delay, list/rcd_results) PRIVATE_PROC(TRUE) - var/obj/effect/constructing_effect/rcd_effect = new(get_turf(target), delay, rcd_results["[RCD_DESIGN_MODE]"], construction_upgrades) + var/obj/effect/constructing_effect/rcd_effect = new(get_turf(target), delay, rcd_results[RCD_DESIGN_MODE], construction_upgrades) //resource & structure placement sanity checks before & after delay along with beam effects - if(!checkResource(rcd_results["cost"], user) || !can_place(target, rcd_results, user)) + if(!useResource(rcd_results["cost"], user, TRUE) || !can_place(target, rcd_results, user)) qdel(rcd_effect) return FALSE var/beam @@ -302,17 +309,14 @@ return FALSE if (QDELETED(rcd_effect)) return FALSE - if(!checkResource(rcd_results["cost"], user) || !can_place(target, rcd_results, user)) + if(!useResource(rcd_results["cost"], user, TRUE) || !can_place(target, rcd_results, user)) qdel(rcd_effect) return FALSE - if(!useResource(rcd_results["cost"], user)) - qdel(rcd_effect) - return FALSE - activate() if(!target.rcd_act(user, src, rcd_results)) qdel(rcd_effect) return FALSE + useResource(rcd_results["cost"], user) playsound(loc, 'sound/machines/click.ogg', 50, TRUE) rcd_effect.end_animation() return TRUE @@ -417,9 +421,9 @@ if(design == null) //not a valid design return TRUE design_category = category_name - mode = design["[RCD_DESIGN_MODE]"] + mode = design[RCD_DESIGN_MODE] construction_mode = mode - rcd_design_path = design["[RCD_DESIGN_PATH]"] + rcd_design_path = design[RCD_DESIGN_PATH] design_title = initial(rcd_design_path.name) blueprint_changed = TRUE @@ -486,31 +490,20 @@ max_matter = borgy.cell.maxcharge return borgy.cell.charge -/obj/item/construction/rcd/borg/useResource(amount, mob/user) - if(!iscyborg(user)) - return 0 - var/mob/living/silicon/robot/borgy = user - if(!borgy.cell) - if(user) - balloon_alert(user, "no cell found!") - return 0 - . = borgy.cell.use(amount * energyfactor) //borgs get 1.3x the use of their RCDs - if(!. && user) - balloon_alert(user, "insufficient charge!") - return . - -/obj/item/construction/rcd/borg/checkResource(amount, mob/user) - if(!iscyborg(user)) - return 0 +/obj/item/construction/rcd/borg/useResource(amount, mob/user, dry_run) var/mob/living/silicon/robot/borgy = user + if(!iscyborg(borgy)) + return FALSE if(!borgy.cell) - if(user) - balloon_alert(user, "no cell found!") - return 0 - . = borgy.cell.charge >= (amount * energyfactor) - if(!. && user) + balloon_alert(user, "no cell found!") + return FALSE + if(borgy.cell.charge < (amount * energyfactor)) balloon_alert(user, "insufficient charge!") - return . + return FALSE + if(!dry_run) + playsound(loc, 'sound/items/deconstruct.ogg', 50, TRUE) + return borgy.cell.use(amount * energyfactor) + return TRUE /obj/item/construction/rcd/borg/syndicate name = "syndicate RCD" @@ -603,28 +596,37 @@ var/obj/vehicle/sealed/mecha/gundam = owner return round(gundam.get_charge() / MASS_TO_ENERGY) -/obj/item/construction/rcd/exosuit/useResource(amount, mob/user) +/obj/item/construction/rcd/exosuit/useResource(amount, mob/user, dry_run) if(silo_link) return ..() if(!ismecha(owner)) - return 0 - var/obj/vehicle/sealed/mecha/gundam = owner - if(!gundam.use_energy(amount * MASS_TO_ENERGY)) - gundam.balloon_alert(user, "insufficient charge!") return FALSE - return TRUE - -/obj/item/construction/rcd/exosuit/checkResource(amount, mob/user) - if(silo_link) - return ..() - if(!ismecha(owner)) - return 0 var/obj/vehicle/sealed/mecha/gundam = owner if(!gundam.has_charge(amount * MASS_TO_ENERGY)) gundam.balloon_alert(user, "insufficient charge!") return FALSE + if(!dry_run) + playsound(loc, 'sound/items/deconstruct.ogg', 50, TRUE) + return gundam.use_energy(amount * MASS_TO_ENERGY) return TRUE +/obj/item/construction/rcd/exosuit/detonate_pulse() + var/obj/item/mecha_parts/mecha_equipment/rcd/ourshell = loc + if(!istype(ourshell)) + return + ourshell.audible_message(span_danger("[ourshell] begins to vibrate and buzz loudly!"), \ + span_danger("[ourshell] begins vibrating violently!")) + // 5 seconds to get rid of it + addtimer(CALLBACK(src, PROC_REF(detonate_pulse_explode)), 5 SECONDS) + +/obj/item/construction/rcd/exosuit/detonate_pulse_explode() + var/obj/item/mecha_parts/mecha_equipment/rcd/ourshell = loc + explosion(ourshell, light_impact_range = 3, flame_range = 1, flash_range = 1) + if(owner) + ourshell.detach() + qdel(ourshell) + + #undef MASS_TO_ENERGY #undef FREQUENT_USE_DEBUFF_MULTIPLIER diff --git a/code/game/objects/items/rcd/RCL.dm b/code/game/objects/items/rcd/RCL.dm index 1d966d37670f49..6c48d2f691d759 100644 --- a/code/game/objects/items/rcd/RCL.dm +++ b/code/game/objects/items/rcd/RCL.dm @@ -324,6 +324,7 @@ max_amount = 30 name = "makeshift rapid pipe cleaner layer" ghetto = TRUE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 15) /obj/item/rcl/ghetto/update_icon_state() if(!loaded) diff --git a/code/game/objects/items/rcd/RHD.dm b/code/game/objects/items/rcd/RHD.dm index 53e5ba0cb7ddd3..ccd2b9f50639c5 100644 --- a/code/game/objects/items/rcd/RHD.dm +++ b/code/game/objects/items/rcd/RHD.dm @@ -35,7 +35,7 @@ /// bitflags for banned upgrades var/banned_upgrades = NONE /// remote connection to the silo - var/datum/component/remote_materials/silo_mats + var/datum/remote_materials/silo_mats /// switch to use internal or remote storage var/silo_link = FALSE /// has the blueprint design changed @@ -51,9 +51,13 @@ spark_system.set_up(5, 0, src) spark_system.attach(src) if(construction_upgrades & RCD_UPGRADE_SILO_LINK) - silo_mats = AddComponent(/datum/component/remote_materials, mapload, FALSE) + silo_mats = new (src, mapload, FALSE) update_appearance() +/obj/item/construction/Destroy() + QDEL_NULL(silo_mats) + return ..() + ///An do_after() specially designed for rhd devices /obj/item/construction/proc/build_delay(mob/user, delay, atom/target) if(delay <= 0) @@ -122,7 +126,7 @@ return FALSE construction_upgrades |= design_disk.upgrade if((design_disk.upgrade & RCD_UPGRADE_SILO_LINK) && !silo_mats) - silo_mats = AddComponent(/datum/component/remote_materials, FALSE, FALSE) + silo_mats = new (src, FALSE, FALSE) playsound(loc, 'sound/machines/click.ogg', 50, TRUE) qdel(design_disk) update_static_data_for_all_viewers() @@ -166,9 +170,6 @@ balloon_alert(user, "storage full!") return FALSE -/obj/item/construction/proc/activate() - playsound(loc, 'sound/items/deconstruct.ogg', 50, TRUE) - /obj/item/construction/attack_self(mob/user) playsound(loc, 'sound/effects/pop.ogg', 50, FALSE) if(prob(20)) @@ -181,27 +182,39 @@ if(ratio > 0) . += "[icon_state]_charge[ratio]" -/obj/item/construction/proc/useResource(amount, mob/user) +/** + * Uses resource to do some action. Returns amount of resource used or TRUE/FALSE if only an dry run is required + * + * Arguments + * * amount - the amount of resource to use + * * mob/user - the player using the resource + * * dry_run - if TRUE will only check if the amount of resource is available but will not use any +*/ +/obj/item/construction/proc/useResource(amount, mob/user, dry_run = FALSE) if(!silo_mats || !silo_link) if(matter < amount) + if(has_ammobar) + flick("[icon_state]_empty", src) if(user) balloon_alert(user, "not enough matter!") return FALSE - matter -= amount - update_appearance() - return TRUE + if(!dry_run) + matter -= amount + update_appearance() + playsound(loc, 'sound/items/deconstruct.ogg', 50, TRUE) else - if(!silo_mats.mat_container) + if(!silo_mats.can_use_resource(user_data = ID_DATA(user))) if(user) - balloon_alert(user, "no silo detected!") + balloon_alert(user, "permission denied!") return FALSE - if(!silo_mats.mat_container.has_enough_of_material(/datum/material/iron, amount * SILO_USE_AMOUNT)) if(user) balloon_alert(user, "not enough silo material!") return FALSE - silo_mats.use_materials(list(/datum/material/iron = SILO_USE_AMOUNT), multiplier = amount, action = "RESTOCKED", name = "x restocked an RCD", user_data = ID_DATA(user)) - return TRUE + if(!dry_run) + amount = silo_mats.use_materials(list(/datum/material/iron = SILO_USE_AMOUNT), multiplier = amount, action = "RESTOCKED", name = "x restocked an RCD", user_data = ID_DATA(user)) + playsound(loc, 'sound/items/deconstruct.ogg', 50, TRUE) + return dry_run ? TRUE : amount /obj/item/construction/ui_static_data(mob/user) . = list() @@ -254,23 +267,6 @@ /obj/item/construction/proc/handle_ui_act(action, list/params, datum/tgui/ui, datum/ui_state/state) return null -/obj/item/construction/proc/checkResource(amount, mob/user) - if(!silo_mats || !silo_mats.mat_container || !silo_link) - if(silo_link) - balloon_alert(user, "silo link invalid!") - return FALSE - else - . = matter >= amount - else - if(!silo_mats.can_use_resource(user_data = ID_DATA(user))) - return FALSE - . = silo_mats.mat_container.has_enough_of_material(/datum/material/iron, amount * SILO_USE_AMOUNT) - if(!. && user) - balloon_alert(user, "low ammo!") - if(has_ammobar) - flick("[icon_state]_empty", src) //somewhat hacky thing to make RCDs with ammo counters actually have a blinking yellow light - return . - /obj/item/construction/proc/range_check(atom/target, mob/user) if(target.z != user.z) return diff --git a/code/game/objects/items/rcd/RLD.dm b/code/game/objects/items/rcd/RLD.dm index d88bb86e68bbf0..0a038ebc650c54 100644 --- a/code/game/objects/items/rcd/RLD.dm +++ b/code/game/objects/items/rcd/RLD.dm @@ -1,11 +1,11 @@ // RAPID LIGHTING DEVICE -// modes of operation +//modes of operation #define GLOW_MODE 1 #define LIGHT_MODE 2 #define REMOVE_MODE 3 -// operation costs +//operation costs #define LIGHT_TUBE_COST 10 #define FLOOR_LIGHT_COST 15 #define GLOW_STICK_COST 5 @@ -32,7 +32,6 @@ /// mode of operation see above defines var/mode = LIGHT_MODE - ///reference to thr original icons var/static/list/original_options = list( "Color Pick" = icon(icon = 'icons/hud/radial.dmi', icon_state = "omni"), @@ -42,6 +41,7 @@ ) ///will contain the original icons modified with the color choice var/list/display_options = list() + ///Current color choice var/color_choice = "#ffffff" /obj/item/construction/rld/Initialize(mapload) @@ -69,7 +69,7 @@ mode = GLOW_MODE to_chat(user, span_notice("You change RLD's mode to 'Light Launcher'.")) if("Color Pick") - var/new_choice = input(user,"","Choose Color",color_choice) as color + var/new_choice = tgui_color_picker(user, "", "Choose Color", color_choice) if(new_choice == null) return @@ -78,7 +78,7 @@ if(option == "Color Pick" || option == "Deconstruct" || option == "Silo Link") continue var/icon/icon = icon(original_options[option]) - icon.SetIntensity(new_rgb[1]/255, new_rgb[2]/255, new_rgb[3]/255) //apply new scale + icon.SetIntensity(new_rgb[1] / 255, new_rgb[2] / 255, new_rgb[3] / 255) //apply new scale display_options[option] = icon color_choice = new_choice @@ -101,8 +101,8 @@ /** * Try to place/remove a light or throw a glowstick - * Arguments * + * Arguments * * atom/interacting_with - the target atom to light or throw glowsticks at * * mob/user - the player doing this action */ @@ -119,26 +119,24 @@ return NONE //resource sanity checks before & after delay - if(!checkResource(DECONSTRUCT_COST, user)) + if(!useResource(DECONSTRUCT_COST, user, TRUE)) return ITEM_INTERACT_BLOCKING var/beam = user.Beam(interacting_with, icon_state="light_beam", time = 15) playsound(src, 'sound/machines/click.ogg', 50, TRUE) if(!do_after(user, REMOVE_DELAY, target = interacting_with)) qdel(beam) return ITEM_INTERACT_BLOCKING - if(!checkResource(DECONSTRUCT_COST, user)) + if(!useResource(DECONSTRUCT_COST, user, TRUE)) return ITEM_INTERACT_BLOCKING - if(!useResource(DECONSTRUCT_COST, user)) - return ITEM_INTERACT_BLOCKING - activate() qdel(interacting_with) + useResource(DECONSTRUCT_COST, user) return ITEM_INTERACT_SUCCESS if(LIGHT_MODE) //resource sanity checks before & after delay var/cost = iswallturf(interacting_with) ? LIGHT_TUBE_COST : FLOOR_LIGHT_COST - if(!checkResource(cost, user)) + if(!useResource(cost, user, TRUE)) return ITEM_INTERACT_BLOCKING var/beam = user.Beam(interacting_with, icon_state="light_beam", time = BUILD_DELAY) playsound(loc, 'sound/machines/click.ogg', 50, TRUE) @@ -146,7 +144,7 @@ if(!do_after(user, BUILD_DELAY, target = interacting_with)) qdel(beam) return ITEM_INTERACT_BLOCKING - if(!checkResource(cost, user)) + if(!useResource(cost, user, TRUE)) return ITEM_INTERACT_BLOCKING if(iswallturf(interacting_with)) @@ -173,31 +171,26 @@ if(!winner) balloon_alert(user, "no valid target!") return ITEM_INTERACT_BLOCKING - if(!useResource(cost, user)) - return ITEM_INTERACT_BLOCKING - activate() var/obj/machinery/light/L = new /obj/machinery/light(get_turf(winner)) L.setDir(get_dir(winner, interacting_with)) L.color = color_choice L.set_light_color(color_choice) + useResource(cost, user) return ITEM_INTERACT_SUCCESS if(isfloorturf(interacting_with)) var/turf/target = get_turf(interacting_with) if(locate(/obj/machinery/light/floor) in target) return ITEM_INTERACT_BLOCKING - if(!useResource(cost, user)) - return ITEM_INTERACT_BLOCKING - activate() var/obj/machinery/light/floor/FL = new /obj/machinery/light/floor(target) FL.color = color_choice FL.set_light_color(color_choice) + useResource(cost, user) return ITEM_INTERACT_SUCCESS if(GLOW_MODE) if(!useResource(GLOW_STICK_COST, user)) return ITEM_INTERACT_BLOCKING - activate() // Picks the closest fitting color for the fluid by hue var/closest_diff = null var/closest_fluid = null diff --git a/code/game/objects/items/rcd/RPLD.dm b/code/game/objects/items/rcd/RPLD.dm index 043d99125c084d..5a4ae38f87304e 100644 --- a/code/game/objects/items/rcd/RPLD.dm +++ b/code/game/objects/items/rcd/RPLD.dm @@ -197,26 +197,23 @@ //resource & placement sanity check before & after delay var/is_allowed = TRUE - if(!checkResource(cost, user) || !(is_allowed = canPlace(destination))) + if(!useResource(cost, user, TRUE) || !(is_allowed = canPlace(destination))) if(!is_allowed) balloon_alert(user, "tile is blocked!") return FALSE if(!build_delay(user, cost, target = destination)) return FALSE - if(!checkResource(cost, user) || !(is_allowed = canPlace(destination))) + if(!useResource(cost, user, TRUE) || !(is_allowed = canPlace(destination))) if(!is_allowed) balloon_alert(user, "tile is blocked!") return FALSE - if(!useResource(cost, user)) - return FALSE - activate() playsound(loc, 'sound/machines/click.ogg', 50, TRUE) if(ispath(blueprint, /obj/machinery/duct)) - var/is_omni = current_color == DUCT_COLOR_OMNI - new blueprint(destination, FALSE, GLOB.pipe_paint_colors[current_color], GLOB.plumbing_layers[current_layer], null, is_omni) + new blueprint(destination, GLOB.pipe_paint_colors[current_color], GLOB.plumbing_layers[current_layer]) else - new blueprint(destination, FALSE, GLOB.plumbing_layers[current_layer]) + new blueprint(destination, GLOB.plumbing_layers[current_layer]) + useResource(cost, user) return TRUE /obj/item/construction/plumbing/proc/canPlace(turf/destination) @@ -312,6 +309,8 @@ name = "service plumbing constructor" desc = "A type of plumbing constructor designed to rapidly deploy the machines needed to make a brewery." icon_state = "plumberer_service" + ///Extra price because it appears in bartender's vendor + custom_premium_price = PAYCHECK_CREW * 6 ///Design types for plumbing service constructor var/static/list/service_design_types = list( //Category 1 synthesizers diff --git a/code/game/objects/items/rcd/RTD.dm b/code/game/objects/items/rcd/RTD.dm index 50f973246c800b..b552fc33d4e1ad 100644 --- a/code/game/objects/items/rcd/RTD.dm +++ b/code/game/objects/items/rcd/RTD.dm @@ -285,7 +285,7 @@ return ITEM_INTERACT_BLOCKING //resource sanity check before & after delay along with special effects - if(!checkResource(selected_design.cost, user)) + if(!useResource(selected_design.cost, user, TRUE)) return ITEM_INTERACT_BLOCKING var/delay = CONSTRUCTION_TIME(selected_design.cost) var/obj/effect/constructing_effect/rcd_effect = new(floor, delay, RCD_TURF) @@ -299,15 +299,11 @@ qdel(beam) qdel(rcd_effect) return ITEM_INTERACT_BLOCKING - if(!checkResource(selected_design.cost, user)) + if(!useResource(selected_design.cost, user, TRUE)) qdel(rcd_effect) return ITEM_INTERACT_BLOCKING //do the tilling - if(!useResource(selected_design.cost, user)) - qdel(rcd_effect) - return ITEM_INTERACT_BLOCKING - activate() //step 1 create tile var/obj/item/stack/tile/final_tile = selected_design.new_tile(user.drop_location(), selected_direction) if(QDELETED(final_tile)) //if you were standing on a stack of tiles this newly spawned tile could get merged with it cause its spawned on your location @@ -320,6 +316,7 @@ for(var/datum/overlay_info/info in design_overlays) info.add_decal(new_turf) rcd_effect.end_animation() + useResource(selected_design.cost, user) return ITEM_INTERACT_SUCCESS @@ -357,7 +354,7 @@ return ITEM_INTERACT_BLOCKING //resource sanity check before & after delay along with beam effects - if(!checkResource(cost * 0.7, user)) //no ballon alert for checkResource as it already spans an alert to chat + if(!useResource(cost * 0.7, user, TRUE)) //no ballon alert for checkResource as it already spans an alert to chat return ITEM_INTERACT_BLOCKING var/delay = DECONSTRUCTION_TIME(cost) var/obj/effect/constructing_effect/rcd_effect = new(floor, delay, RCD_DECONSTRUCT) @@ -371,15 +368,11 @@ qdel(beam) qdel(rcd_effect) return ITEM_INTERACT_BLOCKING - if(!checkResource(cost * 0.7, user)) + if(!useResource(cost * 0.7, user, TRUE)) qdel(rcd_effect) return ITEM_INTERACT_BLOCKING //begin deconstruction - if(!useResource(cost * 0.7, user)) - qdel(rcd_effect) - return ITEM_INTERACT_BLOCKING - activate() //find & collect all decals var/list/all_decals = list() for(var/obj/effect/decal in floor.contents) @@ -393,6 +386,7 @@ else //for every other turf we scrape away exposing base turf underneath floor.ScrapeAway(flags = CHANGETURF_INHERIT_AIR) rcd_effect.end_animation() + useResource(cost * 0.7, user) return ITEM_INTERACT_SUCCESS @@ -415,27 +409,20 @@ max_matter = borgy.cell.maxcharge return borgy.cell.charge -/obj/item/construction/rtd/borg/useResource(amount, mob/user) - if(!iscyborg(user)) - return 0 - var/mob/living/silicon/robot/borgy = user - if(!borgy.cell) - balloon_alert(user, "no cell found!") - return 0 - . = borgy.cell.use(amount * RTD_BORG_ENERGY_FACTOR) - if(!.) - balloon_alert(user, "insufficient charge!") - -/obj/item/construction/rtd/borg/checkResource(amount, mob/user) - if(!iscyborg(user)) - return 0 +/obj/item/construction/rtd/borg/useResource(amount, mob/user, dry_run) var/mob/living/silicon/robot/borgy = user + if(!iscyborg(borgy)) + return FALSE if(!borgy.cell) balloon_alert(user, "no cell found!") - return 0 - . = borgy.cell.charge >= (amount * RTD_BORG_ENERGY_FACTOR) - if(!.) + return FALSE + if(borgy.cell.charge < (amount * RTD_BORG_ENERGY_FACTOR)) balloon_alert(user, "insufficient charge!") + return FALSE + if(!dry_run) + playsound(loc, 'sound/items/deconstruct.ogg', 50, TRUE) + return borgy.cell.use(amount * RTD_BORG_ENERGY_FACTOR) + return TRUE #undef RTD_BORG_ENERGY_FACTOR diff --git a/code/game/objects/items/religion.dm b/code/game/objects/items/religion.dm index 728e7dbe584a71..e820a462ff5305 100644 --- a/code/game/objects/items/religion.dm +++ b/code/game/objects/items/religion.dm @@ -9,6 +9,7 @@ attack_verb_simple = list("forcefully inspire", "violently encourage", "relentlessly galvanize") lefthand_file = 'icons/mob/inhands/equipment/banners_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/banners_righthand.dmi' + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT) var/inspiration_available = TRUE //If this banner can be used to inspire crew var/morale_time = 0 var/morale_cooldown = 600 //How many deciseconds between uses @@ -66,8 +67,8 @@ /obj/item/banner/proc/inspiration(mob/living/carbon/human/inspired_human) var/need_mob_update = FALSE - need_mob_update += inspired_human.adjustBruteLoss(-15, updating_health = FALSE) - need_mob_update += inspired_human.adjustFireLoss(-15, updating_health = FALSE) + need_mob_update += inspired_human.adjust_brute_loss(-15, updating_health = FALSE) + need_mob_update += inspired_human.adjust_fire_loss(-15, updating_health = FALSE) if(need_mob_update) inspired_human.updatehealth() inspired_human.AdjustStun(-4 SECONDS) @@ -129,8 +130,8 @@ /obj/item/banner/medical/special_inspiration(mob/living/carbon/human/inspired_human) var/need_mob_update = FALSE - need_mob_update += inspired_human.adjustToxLoss(-15, updating_health = FALSE) - need_mob_update += inspired_human.setOxyLoss(0, updating_health = FALSE) + need_mob_update += inspired_human.adjust_tox_loss(-15, updating_health = FALSE) + need_mob_update += inspired_human.set_oxy_loss(0, updating_health = FALSE) if(need_mob_update) inspired_human.updatehealth() inspired_human.reagents.add_reagent(/datum/reagent/medicine/inaprovaline, 5) @@ -404,6 +405,9 @@ /obj/item/claymore/weak desc = "This one is rusted." + icon = 'icons/obj/weapons/sword.dmi' + icon_state = "claymore_old" + worn_icon = 'icons/mob/clothing/back.dmi' force = 30 armour_penetration = 15 diff --git a/code/game/objects/items/robot/items/generic.dm b/code/game/objects/items/robot/items/generic.dm index 96e043032ba68e..3a99888c4e752d 100644 --- a/code/game/objects/items/robot/items/generic.dm +++ b/code/game/objects/items/robot/items/generic.dm @@ -39,7 +39,7 @@ return user.do_attack_animation(attacked_mob) - attacked_mob.adjustStaminaLoss(stamina_damage) + attacked_mob.adjust_stamina_loss(stamina_damage) attacked_mob.set_confusion_if_lower(5 SECONDS) attacked_mob.adjust_stutter(20 SECONDS) attacked_mob.set_jitter_if_lower(5 SECONDS) @@ -175,7 +175,7 @@ ) else if(!iscyborg(attacked_mob)) - attacked_mob.adjustFireLoss(10) + attacked_mob.adjust_fire_loss(10) user.visible_message( span_userdanger("[user] shocks [attacked_mob]!"), span_danger("You shock [attacked_mob]!"), @@ -202,7 +202,7 @@ span_danger("You crush [attacked_mob]!"), ) playsound(loc, 'sound/items/weapons/smash.ogg', 50, TRUE, -1) - attacked_mob.adjustBruteLoss(15) + attacked_mob.adjust_brute_loss(15) user.cell.use(0.3 * STANDARD_CELL_CHARGE, force = TRUE) COOLDOWN_START(src, crush_cooldown, HUG_CRUSH_COOLDOWN) @@ -374,7 +374,7 @@ span_danger("The siren pierces your hearing!"), ) for(var/mob/living/carbon/carbon in get_hearers_in_view(9, user)) - if(carbon.get_ear_protection()) + if(carbon.get_ear_protection() > 0) continue carbon.adjust_confusion(6 SECONDS) @@ -387,18 +387,20 @@ to_chat(robot_user.connected_ai, "
[span_notice("NOTICE - Peacekeeping 'HARM ALARM' used by: [user]")]
") else user.audible_message("BZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZT") - for(var/mob/living/carbon/carbon in get_hearers_in_view(9, user)) - var/bang_effect = carbon.soundbang_act(2, 0, 0, 5) + for(var/mob/living/living in get_hearers_in_view(9, user)) + var/bang_effect = living.soundbang_act(SOUNDBANG_STRONG, 0, 0, 5) switch(bang_effect) + if(0) + continue if(1) - carbon.adjust_confusion(5 SECONDS) - carbon.adjust_stutter(20 SECONDS) - carbon.adjust_jitter(20 SECONDS) - if(2) - carbon.Paralyze(40) - carbon.adjust_confusion(10 SECONDS) - carbon.adjust_stutter(30 SECONDS) - carbon.adjust_jitter(50 SECONDS) + living.adjust_confusion(5 SECONDS) + living.adjust_stutter(20 SECONDS) + living.adjust_jitter(20 SECONDS) + else + living.Paralyze(4 SECONDS) + living.adjust_confusion(10 SECONDS) + living.adjust_stutter(30 SECONDS) + living.adjust_jitter(50 SECONDS) playsound(get_turf(src), 'sound/machines/warning-buzzer.ogg', 130, 3) COOLDOWN_START(src, alarm_cooldown, HARM_ALARM_NO_SAFETY_COOLDOWN) user.log_message("used an emagged Cyborg Harm Alarm", LOG_ATTACK) diff --git a/code/game/objects/items/robot/items/hypo.dm b/code/game/objects/items/robot/items/hypo.dm index 0915e735dcb0ea..117de62e37092f 100644 --- a/code/game/objects/items/robot/items/hypo.dm +++ b/code/game/objects/items/robot/items/hypo.dm @@ -115,13 +115,13 @@ * In most places we add + 1 because we're secretly keeping [max_volume_per_reagent + 1] * units, so that when this reagent runs out it's not wholesale removed from the reagents */ - var/max_volume_per_reagent = 30 + var/max_volume_per_reagent = 25 /// Cell cost for charging a reagent - var/charge_cost = 0.05 * STANDARD_CELL_CHARGE + var/charge_cost = 0.075 * STANDARD_CELL_CHARGE /// Counts up to the next time we charge var/charge_timer = 0 /// Time it takes for shots to recharge (in seconds) - var/recharge_time = 10 + var/recharge_time = 12 ///Optional variable to override the temperature add_reagent() will use var/dispensed_temperature = DEFAULT_REAGENT_TEMPERATURE /// If the hypospray can go through armor or thick material @@ -181,10 +181,12 @@ /obj/item/reagent_containers/borghypo/interact_with_atom(atom/interacting_with, mob/living/user, list/modifiers) if(!iscarbon(interacting_with)) return NONE + var/mob/living/carbon/injectee = interacting_with if(!selected_reagent) balloon_alert(user, "no reagent selected!") return ITEM_INTERACT_BLOCKING + if(!stored_reagents.has_reagent(selected_reagent.type, amount_per_transfer_from_this)) balloon_alert(user, "not enough [selected_reagent.name]!") return ITEM_INTERACT_BLOCKING @@ -193,20 +195,16 @@ balloon_alert(user, "[injectee.parse_zone_with_bodypart(user.zone_selected)] is blocked!") return ITEM_INTERACT_BLOCKING - // This is the in-between where we're storing the reagent we're going to inject the injectee with - // because we cannot specify a singular reagent to transfer in trans_to - var/datum/reagents/hypospray_injector = new() - stored_reagents.remove_reagent(selected_reagent.type, amount_per_transfer_from_this) - hypospray_injector.add_reagent(selected_reagent.type, amount_per_transfer_from_this, reagtemp = dispensed_temperature, no_react = TRUE) + if (!injectee.reagents) + balloon_alert(user, "unable to inject!") + return ITEM_INTERACT_BLOCKING to_chat(injectee, span_warning("You feel a tiny prick!")) to_chat(user, span_notice("You inject [injectee] with the injector ([selected_reagent.name]).")) user.changeNext_move(CLICK_CD_MELEE) - - if(injectee.reagents) - hypospray_injector.trans_to(injectee, amount_per_transfer_from_this, transferred_by = user, methods = INJECT) - balloon_alert(user, "[amount_per_transfer_from_this] unit\s injected") - log_combat(user, injectee, "injected", src, "(CHEMICALS: [selected_reagent])") + stored_reagents.trans_to(injectee, amount_per_transfer_from_this, target_id = selected_reagent.type, transferred_by = user, methods = INJECT) + balloon_alert(user, "[amount_per_transfer_from_this] unit\s injected") + log_combat(user, injectee, "injected", src, "(CHEMICALS: [selected_reagent])") return ITEM_INTERACT_SUCCESS /obj/item/reagent_containers/borghypo/ui_interact(mob/user, datum/tgui/ui) diff --git a/code/game/objects/items/robot/items/storage.dm b/code/game/objects/items/robot/items/storage.dm index a9e94b7c0d9e87..8236b58108c26f 100644 --- a/code/game/objects/items/robot/items/storage.dm +++ b/code/game/objects/items/robot/items/storage.dm @@ -209,6 +209,23 @@ item_flags = SURGICAL_TOOL storable = list(/obj/item/organ, /obj/item/bodypart) + /// Underlay of whatever we have stored + var/image/stored_underlay + +/obj/item/borg/apparatus/organ_storage/update_overlays() + . = ..() + if(stored_underlay) + underlays -= stored_underlay + if(!stored) + return + stored_underlay = image(stored) + stored_underlay.layer = FLOAT_LAYER + stored_underlay.plane = FLOAT_PLANE + stored_underlay.pixel_w = 0 + stored_underlay.pixel_x = 0 + stored_underlay.pixel_y = 0 + stored_underlay.pixel_z = 0 + underlays += stored_underlay /obj/item/borg/apparatus/organ_storage/examine() . = ..() @@ -220,22 +237,6 @@ . += "Nothing." . += span_notice(" Alt-click will drop the currently stored organ. ") -/obj/item/borg/apparatus/organ_storage/update_overlays() - . = ..() - icon_state = null // hides the original icon (otherwise it's drawn underneath) - var/mutable_appearance/bag - if(stored) - var/mutable_appearance/stored_organ = new /mutable_appearance(stored) - stored_organ.layer = FLOAT_LAYER - stored_organ.plane = FLOAT_PLANE - stored_organ.pixel_w = 0 - stored_organ.pixel_z = 0 - . += stored_organ - bag = mutable_appearance(icon, icon_state = "evidence") // full bag - else - bag = mutable_appearance(icon, icon_state = "evidenceobj") // empty bag - . += bag - /obj/item/borg/apparatus/organ_storage/click_alt(mob/living/silicon/robot/user) if(!stored) to_chat(user, span_notice("[src] is empty.")) @@ -243,8 +244,7 @@ var/obj/item/organ = stored user.visible_message(span_notice("[user] dumps [organ] from [src]."), span_notice("You dump [organ] from [src].")) - cut_overlays() - organ.forceMove(get_turf(src)) + organ.forceMove(drop_location()) return CLICK_ACTION_SUCCESS ///Apparatus to allow Engineering/Sabo borgs to manipulate any material sheets. @@ -254,7 +254,8 @@ icon_state = "borg_stack_apparatus" storable = list(/obj/item/stack/sheet, /obj/item/stack/tile, - /obj/item/stack/rods) + /obj/item/stack/rods, + /obj/item/stack/conveyor) /obj/item/borg/apparatus/sheet_manipulator/Initialize(mapload) update_appearance() @@ -292,6 +293,7 @@ /obj/item/electronics, /obj/item/stock_parts/power_store, /obj/item/light, + /obj/item/conveyor_switch_construct, ) /obj/item/borg/apparatus/engineering/Initialize(mapload) diff --git a/code/game/objects/items/robot/robot_parts.dm b/code/game/objects/items/robot/robot_parts.dm index 5dee6df43084b3..5264bca98bdf9a 100644 --- a/code/game/objects/items/robot/robot_parts.dm +++ b/code/game/objects/items/robot/robot_parts.dm @@ -170,17 +170,16 @@ if(istype(W, /obj/item/stack/sheet/iron)) var/obj/item/stack/sheet/iron/M = W if(!l_arm && !r_arm && !l_leg && !r_leg && !chest && !head) - if (M.use(1)) - var/obj/item/bot_assembly/ed209/B = new - B.forceMove(drop_location()) - to_chat(user, span_notice("You arm the robot frame.")) - var/holding_this = user.get_inactive_held_item() == src - qdel(src) - if (holding_this) - user.put_in_inactive_hand(B) - else + if (!M.use(1)) to_chat(user, span_warning("You need one sheet of iron to start building ED-209!")) return + var/obj/item/bot_assembly/ed209/assembly = new(drop_location()) + to_chat(user, span_notice("You arm the robot frame.")) + var/held_index = user.is_holding(src) + qdel(src) + if (held_index) + user.put_in_hand(assembly, held_index) + else if(istype(W, /obj/item/bodypart/leg/left/robot)) if(l_leg) return diff --git a/code/game/objects/items/robot/robot_upgrades.dm b/code/game/objects/items/robot/robot_upgrades.dm index a44bcd4e48705c..e8a5a93ea66606 100644 --- a/code/game/objects/items/robot/robot_upgrades.dm +++ b/code/game/objects/items/robot/robot_upgrades.dm @@ -359,8 +359,8 @@ else repair_amount = -1 energy_cost = 0.01 * STANDARD_CELL_CHARGE - cyborg.adjustBruteLoss(repair_amount) - cyborg.adjustFireLoss(repair_amount) + cyborg.adjust_brute_loss(repair_amount) + cyborg.adjust_fire_loss(repair_amount) cyborg.updatehealth() cyborg.cell.use(energy_cost) else diff --git a/code/game/objects/items/shields.dm b/code/game/objects/items/shields.dm index a54c3bf46eb08c..5c3211b4f9af3c 100644 --- a/code/game/objects/items/shields.dm +++ b/code/game/objects/items/shields.dm @@ -1,4 +1,4 @@ -#define BATON_BASH_COOLDOWN (3 SECONDS) +#define WEAPON_BASH_COOLDOWN (3 SECONDS) /obj/item/shield name = "shield" @@ -26,7 +26,7 @@ /// sound the shield makes when it breaks var/shield_break_sound = 'sound/effects/bang.ogg' /// baton bash cooldown - COOLDOWN_DECLARE(baton_bash) + COOLDOWN_DECLARE(weapon_bash) /// is shield bashable? var/is_bashable = TRUE /// sound when a shield is bashed @@ -54,7 +54,7 @@ if(attack_type == LEAP_ATTACK) effective_block_chance = 100 if(attack_type == OVERWHELMING_ATTACK) - effective_block_chance -= 25 + effective_block_chance = 0 final_block_chance = clamp(effective_block_chance, 0, 100) . = ..() if(.) @@ -75,13 +75,14 @@ . = ..() if(. & ITEM_INTERACT_ANY_BLOCKER) return . - if(!istype(tool, /obj/item/melee/baton) || !is_bashable) + if(!istype(tool, /obj/item/melee) || !is_bashable) return . - if(!COOLDOWN_FINISHED(src, baton_bash)) + if(!COOLDOWN_FINISHED(src, weapon_bash)) return ITEM_INTERACT_BLOCKING - user.visible_message(span_warning("[user] bashes [src] with [tool]!")) playsound(src, shield_bash_sound, 50, TRUE) - COOLDOWN_START(src, baton_bash, BATON_BASH_COOLDOWN) + user.manual_emote("bashes [src] with [tool]!") + COOLDOWN_START(src, weapon_bash, WEAPON_BASH_COOLDOWN) + user.Shake(3, 3, 0.5 SECONDS) return ITEM_INTERACT_SUCCESS /obj/item/shield/proc/on_shield_block(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", damage = 0, attack_type = MELEE_ATTACK, damage_type = BRUTE) @@ -116,7 +117,7 @@ desc = "A medieval wooden buckler." icon_state = "buckler" inhand_icon_state = "buckler" - custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 10) + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 20) resistance_flags = FLAMMABLE block_chance = 30 max_integrity = 55 @@ -130,6 +131,7 @@ block_chance = 40 max_integrity = 40 w_class = WEIGHT_CLASS_NORMAL + custom_materials = null /obj/item/shield/kite name = "kite shield" @@ -166,7 +168,7 @@ desc = "A shield adept at blocking blunt objects from connecting with the torso of the shield wielder, less so bullets and laser beams." icon_state = "riot" inhand_icon_state = "riot" - custom_materials = list(/datum/material/glass= SHEET_MATERIAL_AMOUNT * 3.75, /datum/material/iron= HALF_SHEET_MATERIAL_AMOUNT) + custom_materials = list(/datum/material/glass= SHEET_MATERIAL_AMOUNT * 4.05, /datum/material/iron = SHEET_MATERIAL_AMOUNT * 2.8) transparent = TRUE max_integrity = 75 shield_break_sound = 'sound/effects/glass/glassbr3.ogg' @@ -202,6 +204,7 @@ icon_state = "flashshield" inhand_icon_state = "flashshield" var/obj/item/assembly/flash/handheld/embedded_flash = /obj/item/assembly/flash/handheld + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 5.1, /datum/material/glass= SHEET_MATERIAL_AMOUNT * 4.35) /obj/item/shield/riot/flash/Initialize(mapload) . = ..() @@ -344,7 +347,7 @@ var/effective_block_chance = final_block_chance if(attack_type == OVERWHELMING_ATTACK) - effective_block_chance -= 25 + effective_block_chance = 0 if(attack_type == PROJECTILE_ATTACK) var/obj/projectile/our_projectile = hitby @@ -478,10 +481,10 @@ desc = "A crude shield made out of several sheets of iron taped together, not very durable." icon_state = "improvised" inhand_icon_state = "improvised" - custom_materials = list(/datum/material/iron = HALF_SHEET_MATERIAL_AMOUNT * 2) + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 10) max_integrity = 35 shield_break_leftover = /obj/item/stack/rods/two armor_type = /datum/armor/item_shield/improvised block_sound = 'sound/items/trayhit/trayhit2.ogg' -#undef BATON_BASH_COOLDOWN +#undef WEAPON_BASH_COOLDOWN diff --git a/code/game/objects/items/shooting_range.dm b/code/game/objects/items/shooting_range.dm index 8ed78cccc8768f..32b8c08747d609 100644 --- a/code/game/objects/items/shooting_range.dm +++ b/code/game/objects/items/shooting_range.dm @@ -5,7 +5,7 @@ icon_state = "target_h" density = FALSE max_integrity = 1800 - item_flags = CAN_BE_HIT + obj_flags = CAN_BE_HIT /// Lazylist to keep track of bullet-hole overlays. var/list/bullethole_overlays @@ -32,7 +32,7 @@ if(isnull(always_leave_marks)) always_leave_marks = typecacheof(list( /obj/projectile/beam/practice, - /obj/projectile/beam/laser/carbine/practice, + /obj/projectile/beam/laser/rapid/practice, )) var/is_invalid_damage = hitting_projectile.damage_type != BRUTE && hitting_projectile.damage_type != BURN diff --git a/code/game/objects/items/signs.dm b/code/game/objects/items/signs.dm index a1b60aad298358..6b70eb9cad8b87 100644 --- a/code/game/objects/items/signs.dm +++ b/code/game/objects/items/signs.dm @@ -10,7 +10,7 @@ attack_verb_continuous = list("bashes", "smacks") attack_verb_simple = list("bash", "smack") resistance_flags = FLAMMABLE - + custom_materials = list(/datum/material/cardboard = SHEET_MATERIAL_AMOUNT * 2, /datum/material/iron = HALF_SHEET_MATERIAL_AMOUNT) var/label = "" COOLDOWN_DECLARE(picket_sign_cooldown) diff --git a/code/game/objects/items/skateboards.dm b/code/game/objects/items/skateboards.dm index f03189ec012785..0d860ef11f90d9 100644 --- a/code/game/objects/items/skateboards.dm +++ b/code/game/objects/items/skateboards.dm @@ -10,6 +10,7 @@ w_class = WEIGHT_CLASS_NORMAL attack_verb_continuous = list("smacks", "whacks", "slams", "smashes") attack_verb_simple = list("smack", "whack", "slam", "smash") + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 10) ///The vehicle counterpart for the board var/board_item_type = /obj/vehicle/ridden/scooter/skateboard diff --git a/code/game/objects/items/soulscythe.dm b/code/game/objects/items/soulscythe.dm index b4699dd3fa55c3..4e00fea5143f9c 100644 --- a/code/game/objects/items/soulscythe.dm +++ b/code/game/objects/items/soulscythe.dm @@ -138,15 +138,15 @@ return TRUE /obj/item/soulscythe/proc/use_blood(amount = 0, message = TRUE) - if(amount > soul.blood_volume) + if(amount > soul.get_blood_volume()) if(message) to_chat(soul, span_warning("Not enough blood!")) return FALSE - soul.blood_volume -= amount + soul.adjust_blood_volume(-amount) return TRUE /obj/item/soulscythe/proc/give_blood(amount) - soul.blood_volume = min(MAX_BLOOD_LEVEL, soul.blood_volume + amount) + soul.adjust_blood_volume(amount, maximum = MAX_BLOOD_LEVEL) /obj/item/soulscythe/proc/on_resist(mob/living/user) SIGNAL_HANDLER @@ -256,17 +256,18 @@ gender = NEUTER mob_biotypes = MOB_SPIRIT faction = list() - blood_volume = MAX_BLOOD_LEVEL + default_blood_volume = MAX_BLOOD_LEVEL hud_type = /datum/hud/soulscythe + spawn_blacklisted = TRUE /mob/living/basic/soulscythe/Initialize(mapload) . = ..() add_traits(list(TRAIT_ASHSTORM_IMMUNE, TRAIT_SNOWSTORM_IMMUNE, TRAIT_LAVA_IMMUNE), INNATE_TRAIT) RegisterSignal(src, COMSIG_LIVING_LIFE, PROC_REF(on_life)) -/mob/living/basic/soulscythe/proc/on_life(datum/source, seconds_per_tick, times_fired) // done like this because there's no need to go through all of life since the item does the work anyways +/mob/living/basic/soulscythe/proc/on_life(datum/source, seconds_per_tick) // done like this because there's no need to go through all of life since the item does the work anyways if(stat == CONSCIOUS) - blood_volume = min(MAX_BLOOD_LEVEL, blood_volume + round(1 * seconds_per_tick)) + adjust_blood_volume(round(1 * seconds_per_tick), maximum = MAX_BLOOD_LEVEL) return COMPONENT_LIVING_CANCEL_LIFE_PROCESSING /// Special projectile for the soulscythe. diff --git a/code/game/objects/items/spear.dm b/code/game/objects/items/spear.dm index d1658244ea6afe..3c3a2d507785e1 100644 --- a/code/game/objects/items/spear.dm +++ b/code/game/objects/items/spear.dm @@ -8,14 +8,15 @@ righthand_file = 'icons/mob/inhands/weapons/polearms_righthand.dmi' icon_angle = -45 force = 10 + reach = 2 w_class = WEIGHT_CLASS_BULKY slot_flags = ITEM_SLOT_BACK throwforce = 20 throw_speed = 4 - demolition_mod = 0.75 + demolition_mod = 0.75 // Note: This is significant, as this needs to be low enough that any possible force adjustments from better spears does not go over airlock deflection. See AIRLOCK_DAMAGE_DEFLECTION_N. embed_type = /datum/embedding/spear - armour_penetration = 10 - custom_materials = list(/datum/material/iron = HALF_SHEET_MATERIAL_AMOUNT, /datum/material/glass= HALF_SHEET_MATERIAL_AMOUNT * 2) + armour_penetration = 5 + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 0.65, /datum/material/glass= SHEET_MATERIAL_AMOUNT * 1.15) hitsound = 'sound/items/weapons/bladeslice.ogg' attack_verb_continuous = list("attacks", "pokes", "jabs", "tears", "lacerates", "gores") attack_verb_simple = list("attack", "poke", "jab", "tear", "lacerate", "gore") @@ -32,6 +33,10 @@ var/force_unwielded = 10 /// How much damage to do wielded var/force_wielded = 18 + /// Whether or not hitting with this spear causes damage to the spear itself + var/improvised_construction = TRUE + /// What is left over when a spear breaks + var/spear_leftovers = /obj/item/stack/rods /datum/embedding/spear impact_pain_mult = 2 @@ -59,6 +64,8 @@ force_unwielded = force_unwielded, \ force_wielded = force_wielded, \ icon_wielded = "[icon_prefix]1", \ + wield_callback = CALLBACK(src, PROC_REF(on_wield)), \ + unwield_callback = CALLBACK(src, PROC_REF(on_unwield)), \ ) add_headpike_component() update_appearance() @@ -89,38 +96,89 @@ if(/obj/item/shard/plasma) force = 11 throwforce = 21 - custom_materials = list(/datum/material/iron= HALF_SHEET_MATERIAL_AMOUNT, /datum/material/alloy/plasmaglass= HALF_SHEET_MATERIAL_AMOUNT * 2) icon_prefix = "spearplasma" + modify_max_integrity(220) + wound_bonus = -10 force_unwielded = 11 force_wielded = 19 - AddComponent(/datum/component/two_handed, force_unwielded=force_unwielded, force_wielded=force_wielded, icon_wielded="[icon_prefix]1") + AddComponent(/datum/component/two_handed, \ + force_unwielded = force_unwielded, \ + force_wielded = force_wielded, \ + icon_wielded = "[icon_prefix]1", \ + wield_callback = CALLBACK(src, PROC_REF(on_wield)), \ + unwield_callback = CALLBACK(src, PROC_REF(on_unwield)), \ + ) + if(/obj/item/shard/titanium) - force = 13 - throwforce = 21 + force = 12 + throwforce = 22 throw_range = 8 throw_speed = 5 - custom_materials = list(/datum/material/iron= HALF_SHEET_MATERIAL_AMOUNT, /datum/material/alloy/titaniumglass= HALF_SHEET_MATERIAL_AMOUNT * 2) - wound_bonus = -10 - force_unwielded = 13 - force_wielded = 18 + modify_max_integrity(230) + wound_bonus = -5 + force_unwielded = 12 + force_wielded = 20 + armour_penetration = 10 icon_prefix = "speartitanium" - AddComponent(/datum/component/two_handed, force_unwielded=force_unwielded, force_wielded=force_wielded, icon_wielded="[icon_prefix]1") + AddComponent(/datum/component/two_handed, \ + force_unwielded = force_unwielded, \ + force_wielded = force_wielded, \ + icon_wielded = "[icon_prefix]1", \ + wield_callback = CALLBACK(src, PROC_REF(on_wield)), \ + unwield_callback = CALLBACK(src, PROC_REF(on_unwield)), \ + ) + if(/obj/item/shard/plastitanium) force = 13 - throwforce = 22 + throwforce = 23 throw_range = 9 throw_speed = 5 - custom_materials = list(/datum/material/iron= HALF_SHEET_MATERIAL_AMOUNT, /datum/material/alloy/plastitaniumglass= HALF_SHEET_MATERIAL_AMOUNT * 2) - wound_bonus = -10 + modify_max_integrity(240) + wound_bonus = 0 exposed_wound_bonus = 20 force_unwielded = 13 - force_wielded = 20 + force_wielded = 21 + armour_penetration = 15 icon_prefix = "spearplastitanium" - AddComponent(/datum/component/two_handed, force_unwielded=force_unwielded, force_wielded=force_wielded, icon_wielded="[icon_prefix]1") + AddComponent(/datum/component/two_handed, \ + force_unwielded = force_unwielded, \ + force_wielded = force_wielded, \ + icon_wielded = "[icon_prefix]1", \ + wield_callback = CALLBACK(src, PROC_REF(on_wield)), \ + unwield_callback = CALLBACK(src, PROC_REF(on_unwield)), \ + ) update_appearance() return ..() +/obj/item/spear/afterattack(atom/target, mob/user, list/modifiers, list/attack_modifiers) + if(!improvised_construction) + return + take_damage(force/2, sound_effect = FALSE) + +/obj/item/spear/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum) + . = ..() + if (.) //spear was caught + return + if(!improvised_construction) + return + take_damage(throwforce/2, sound_effect = FALSE) + +/obj/item/spear/atom_destruction(damage_flag) + playsound(src, 'sound/effects/grillehit.ogg', 50) + new spear_leftovers(get_turf(src)) + if(isliving(loc)) + loc.balloon_alert(loc, "spear broken!") + return ..() + +/obj/item/spear/proc/on_wield(obj/item/source, mob/living/carbon/user) + reach = 1 + armour_penetration *= 2 + +/obj/item/spear/proc/on_unwield(obj/item/source, mob/living/carbon/user) + reach = 2 + armour_penetration /= 2 + /obj/item/spear/explosive name = "explosive lance" icon_state = "spearbomb0" @@ -196,19 +254,18 @@ attack_verb_simple = list("gore") force_unwielded = 15 force_wielded = 25 + improvised_construction = FALSE /obj/item/spear/grey_tide/afterattack(atom/movable/target, mob/living/user, list/modifiers, list/attack_modifiers) user.faction |= "greytide([REF(user)])" if(!isliving(target)) return var/mob/living/stabbed = target - if(istype(stabbed, /mob/living/simple_animal/hostile/illusion)) + if(istype(stabbed, /mob/living/basic/illusion)) return if(stabbed.stat == CONSCIOUS && prob(50)) - var/mob/living/simple_animal/hostile/illusion/fake_clone = new(user.loc) - fake_clone.faction = user.faction.Copy() - fake_clone.Copy_Parent(user, 100, user.health/2.5, 12, 30) - fake_clone.GiveTarget(stabbed) + var/mob/living/basic/illusion/fake_clone = new(user.loc) + fake_clone.full_setup(user, target_mob = stabbed, faction = user.faction, life = 10 SECONDS, hp = user.health / 2.5, damage = 12, replicate = 30) //MILITARY /obj/item/spear/military @@ -226,6 +283,7 @@ throw_range = 9 throw_speed = 5 sharpness = NONE // we break bones instead of cutting flesh + improvised_construction = FALSE /obj/item/spear/military/add_headpike_component() var/static/list/slapcraft_recipe_list = list(/datum/crafting_recipe/headpikemilitary) @@ -235,21 +293,81 @@ slapcraft_recipes = slapcraft_recipe_list,\ ) +/* + * Anti-big monster spear + * "WHERES MY DRAGONATOR?!" + */ +/obj/item/spear/dragonator + name = "giantslayer spear" + desc = "An oversized multi-bladed spear designed to kill large hostile xenoforms such as space dragons or the creatures of Indecipheres. Capable of being launched from a ballista." + icon = 'icons/obj/weapons/48x.dmi' + icon_state = "speardragon0" + icon_prefix = "speardragon" + base_icon_state = "speardragon" + lefthand_file = 'icons/mob/inhands/weapons/polearms_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/polearms_righthand.dmi' + demolition_mod = 0.5 + resistance_flags = LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF + force = 13 + throwforce = 23 + throw_range = 9 + throw_speed = 5 + wound_bonus = 0 + exposed_wound_bonus = 20 + force_unwielded = 13 + force_wielded = 21 + armour_penetration = 15 + improvised_construction = FALSE + custom_materials = list( + /datum/material/iron = SHEET_MATERIAL_AMOUNT * 42, + /datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT * 15, + /datum/material/titanium = SHEET_MATERIAL_AMOUNT * 5) + +/obj/item/spear/dragonator/Initialize(mapload) + . = ..() + AddElement(/datum/element/bane, mob_biotypes = MOB_MINING, damage_multiplier = 3.5) //For killing really big monsters, + +/* + * Untreated Giantslayer , needs to be thrown into lava + */ +/obj/item/spear/dragonator_untreated + name = "unfired giantslayer spear" + desc = "A half-finished giantslayer spear, needs to be thrown in lava to forge the metals to a killing edge." + icon = 'icons/obj/weapons/48x.dmi' + icon_state = "speardragonraw0" + icon_prefix = "speardragonraw" + base_icon_state = "speardragonraw" + demolition_mod = 0.5 + wound_bonus = 0 + exposed_wound_bonus = 0 + force_unwielded = 5 + force_wielded = 10 + armour_penetration = 0 + custom_materials = list( + /datum/material/iron = SHEET_MATERIAL_AMOUNT * 42, + /datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT * 15, + /datum/material/titanium = SHEET_MATERIAL_AMOUNT * 5) + +/obj/item/spear/dragonator_untreated/fire_act(exposed_temperature, exposed_volume) + var/obj/item/spear/dragonator/dragonator = new(loc) + playsound(dragonator.loc, 'sound/effects/magic/staff_change.ogg',5) + qdel(src) + /* * Bone Spear */ /obj/item/spear/bonespear //Blatant imitation of spear, but made out of bone. Not valid for explosive modification. + name = "bone spear" + desc = "A haphazardly-constructed yet still deadly weapon. The pinnacle of modern technology." icon_state = "bone_spear0" base_icon_state = "bone_spear0" icon_prefix = "bone_spear" - name = "bone spear" - desc = "A haphazardly-constructed yet still deadly weapon. The pinnacle of modern technology." - throwforce = 22 - armour_penetration = 15 //Enhanced armor piercing - custom_materials = list(/datum/material/bone = HALF_SHEET_MATERIAL_AMOUNT * 7) + armour_penetration = 20 //Enhanced armor piercing + custom_materials = list(/datum/material/bone = SHEET_MATERIAL_AMOUNT * 4) force_unwielded = 12 force_wielded = 20 + spear_leftovers = /obj/item/stack/sheet/bone /obj/item/spear/bonespear/add_headpike_component() var/static/list/slapcraft_recipe_list = list(/datum/crafting_recipe/headpikebone) @@ -262,18 +380,16 @@ /* * Bamboo Spear */ -/obj/item/spear/bamboospear //Blatant imitation of spear, but all natural. Also not valid for explosive modification. +/obj/item/spear/bamboospear //Blatant imitation of spear, but all natural. icon_state = "bamboo_spear0" base_icon_state = "bamboo_spear0" icon_prefix = "bamboo_spear" name = "bamboo spear" desc = "A haphazardly-constructed bamboo stick with a sharpened tip, ready to poke holes into unsuspecting people." - throwforce = 22 //Better to throw - custom_materials = list(/datum/material/bamboo = SHEET_MATERIAL_AMOUNT * 20) - force_unwielded = 10 - force_wielded = 18 - + throwforce = 23 //Better to throw + custom_materials = list(/datum/material/bamboo = SHEET_MATERIAL_AMOUNT * 25) + spear_leftovers = /obj/item/stack/sheet/mineral/bamboo /obj/item/spear/bamboospear/add_headpike_component() var/static/list/slapcraft_recipe_list = list(/datum/crafting_recipe/headpikebamboo) @@ -305,6 +421,7 @@ ) action_slots = ITEM_SLOT_HANDS actions_types = list(/datum/action/item_action/skybulge) + improvised_construction = FALSE ///The action button the spear gives, usable once a minute. /datum/action/item_action/skybulge diff --git a/code/game/objects/items/stacks/ammonia_crystals.dm b/code/game/objects/items/stacks/ammonia_crystals.dm index 2ed8331929056b..885ab685a80cb5 100644 --- a/code/game/objects/items/stacks/ammonia_crystals.dm +++ b/code/game/objects/items/stacks/ammonia_crystals.dm @@ -6,5 +6,7 @@ w_class = WEIGHT_CLASS_TINY resistance_flags = FLAMMABLE max_amount = 50 - grind_results = list(/datum/reagent/ammonia = 10) merge_type = /obj/item/stack/ammonia_crystals + +/obj/item/stack/ammonia_crystals/grind_results() + return list(/datum/reagent/ammonia = 10) diff --git a/code/game/objects/items/stacks/bscrystal.dm b/code/game/objects/items/stacks/bscrystal.dm index 1082d682c4ffa0..a278c02ce13062 100644 --- a/code/game/objects/items/stacks/bscrystal.dm +++ b/code/game/objects/items/stacks/bscrystal.dm @@ -10,12 +10,14 @@ mats_per_unit = list(/datum/material/bluespace=SHEET_MATERIAL_AMOUNT) points = 50 refined_type = /obj/item/stack/sheet/bluespace_crystal - grind_results = list(/datum/reagent/bluespace = 20) scan_state = "rock_bscrystal" merge_type = /obj/item/stack/ore/bluespace_crystal /// The teleport range when crushed/thrown at someone. var/blink_range = 8 +/obj/item/stack/ore/bluespace_crystal/grind_results() + return list(/datum/reagent/bluespace = 20) + /obj/item/stack/ore/bluespace_crystal/refined name = "refined bluespace crystal" points = 0 @@ -28,6 +30,7 @@ . = ..() pixel_x = rand(-5, 5) pixel_y = rand(-5, 5) + AddElement(/datum/element/raptor_food, ability_modifier = 0.05, attack_modifier = 0.5, color_chances = string_list(list(/datum/raptor_color/black = 1))) /obj/item/stack/ore/bluespace_crystal/get_part_rating() return 1 @@ -60,11 +63,13 @@ blink_range = 4 // Not as good as the organic stuff! points = 0 //nice try refined_type = null - grind_results = list(/datum/reagent/bluespace = 10, /datum/reagent/silicon = 20) merge_type = /obj/item/stack/ore/bluespace_crystal/artificial drop_sound = null //till I make a better one pickup_sound = null +/obj/item/stack/ore/bluespace_crystal/artificial/grind_results() + return list(/datum/reagent/bluespace = 10, /datum/reagent/silicon = 20) + //Polycrystals, aka stacks /obj/item/stack/sheet/bluespace_crystal name = "bluespace polycrystal" @@ -78,11 +83,12 @@ attack_verb_continuous = list("bluespace polybashes", "bluespace polybatters", "bluespace polybludgeons", "bluespace polythrashes", "bluespace polysmashes") attack_verb_simple = list("bluespace polybash", "bluespace polybatter", "bluespace polybludgeon", "bluespace polythrash", "bluespace polysmash") novariants = TRUE - grind_results = list(/datum/reagent/bluespace = 20) merge_type = /obj/item/stack/sheet/bluespace_crystal material_type = /datum/material/bluespace var/crystal_type = /obj/item/stack/ore/bluespace_crystal/refined +/obj/item/stack/sheet/bluespace_crystal/grind_results() + return list(/datum/reagent/bluespace = 20) /obj/item/stack/sheet/bluespace_crystal/attack_self(mob/user)// to prevent the construction menu from ever happening to_chat(user, span_warning("You cannot crush the polycrystal in-hand, try breaking one off.")) diff --git a/code/game/objects/items/stacks/cash.dm b/code/game/objects/items/stacks/cash.dm index 5541c90895e25b..35bb72d0a6725f 100644 --- a/code/game/objects/items/stacks/cash.dm +++ b/code/game/objects/items/stacks/cash.dm @@ -13,17 +13,19 @@ full_w_class = WEIGHT_CLASS_TINY resistance_flags = FLAMMABLE var/value = 0 - grind_results = list(/datum/reagent/cellulose = 10) /obj/item/stack/spacecash/Initialize(mapload, new_amount, merge = TRUE, list/mat_override=null, mat_amt=1) . = ..() add_traits(list(TRAIT_FISHING_BAIT, TRAIT_BAIT_ALLOW_FISHING_DUD), INNATE_TRAIT) update_desc() +/obj/item/stack/spacecash/grind_results() + return list(/datum/reagent/cellulose = 10) + /obj/item/stack/spacecash/update_desc() . = ..() var/total_worth = get_item_credit_value() - desc = "It's worth [total_worth] credit[(total_worth > 1) ? "s" : null] in total." + desc = "It's worth [total_worth] [MONEY_NAME_AUTOPURAL(total_worth)] in total." /obj/item/stack/spacecash/get_item_credit_value() return (amount*value) diff --git a/code/game/objects/items/stacks/golem_food/golem_food_buff.dm b/code/game/objects/items/stacks/golem_food/golem_food_buff.dm index cbd84aee0cb3f1..4960a6dfb1316a 100644 --- a/code/game/objects/items/stacks/golem_food/golem_food_buff.dm +++ b/code/game/objects/items/stacks/golem_food/golem_food_buff.dm @@ -40,7 +40,7 @@ /// Amount by which you heal from eating some iron var/healed_amount = 3 /// Order in which to heal damage types - var/list/damage_heal_order = list(BRUTE, BURN, TOX, OXY) + var/list/damage_heal_order = list(BRUTE, BURN) /datum/golem_food_buff/iron/apply_effects(mob/living/carbon/consumer, atom/movable/consumed, multiplier = 1) if (consumer.health == consumer.maxHealth) diff --git a/code/game/objects/items/stacks/golem_food/golem_status_effects.dm b/code/game/objects/items/stacks/golem_food/golem_status_effects.dm index df9c187b1a4133..eb01814eef1bfd 100644 --- a/code/game/objects/items/stacks/golem_food/golem_status_effects.dm +++ b/code/game/objects/items/stacks/golem_food/golem_status_effects.dm @@ -326,7 +326,7 @@ set_arm_fluff(arm) return TRUE -/datum/status_effect/golem/diamond/tick(delta_time, times_fired) +/datum/status_effect/golem/diamond/tick(delta_time) owner.alpha = max(owner.alpha - alpha_per_tick, 0) /// Reset alpha to starting value @@ -388,7 +388,7 @@ alert_desc = "You are more resistant to physical blows, and pack more of a punch yourself." filter_color = LIGHT_COLOR_HALOGEN /// Amount to reduce brute damage by - var/brute_modifier = 0.7 + var/brute_modifier = 0.8 // golems already have an innate 0.5 brute resistance - this is multiplicate on top of that /// How much extra damage do we do with our fists? var/damage_increase = 3 /// Deal this much extra damage to mining mobs, most of which take 0 unarmed damage usually diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm index ace7b216ca030c..9da8cebbc21b3f 100644 --- a/code/game/objects/items/stacks/medical.dm +++ b/code/game/objects/items/stacks/medical.dm @@ -16,6 +16,7 @@ cost = 250 source = /datum/robot_energy_storage/medical merge_type = /obj/item/stack/medical + apply_verb = "treating" /// How long it takes to apply it to yourself var/self_delay = 5 SECONDS /// How long it takes to apply it to someone else @@ -32,8 +33,6 @@ var/sanitization /// How much we add to flesh_healing for burn wounds on application var/flesh_regeneration - /// Verb used when applying this object to someone - var/apply_verb = "treating" /// Whether this item can be used on dead bodies var/works_on_dead = FALSE /// The sound this makes when starting healing with this item @@ -328,7 +327,7 @@ break // one at a time affecting.adjustBleedStacks(-1 * stop_bleeding, 0) if(flesh_regeneration || sanitization) - for(var/datum/wound/burn/flesh/wound as anything in affecting.wounds) + for(var/datum/wound/burn/flesh/wound in affecting.wounds) if(wound.can_be_ointmented_or_meshed()) wound.flesh_healing += flesh_regeneration wound.sanitization += sanitization @@ -336,9 +335,9 @@ post_heal_effects(max(previous_damage - affecting.get_damage(), 0), patient, user) return TRUE -/// Healing a simple mob, just an adjustbruteloss call +/// Healing a simple mob, just an adjust_brute_loss() call /obj/item/stack/medical/proc/heal_simplemob(mob/living/patient, mob/living/user) - patient.adjustBruteLoss(-1 * (heal_brute * patient.maxHealth / 100)) + patient.adjust_brute_loss(-1 * (heal_brute * patient.maxHealth / 100)) user.visible_message( span_green("[user] applies [src] on [patient]."), span_green("You apply [src] on [patient]."), @@ -360,10 +359,12 @@ heal_brute = 40 self_delay = 4 SECONDS other_delay = 2 SECONDS - grind_results = list(/datum/reagent/medicine/c2/libital = 10) merge_type = /obj/item/stack/medical/bruise_pack apply_verb = "applying to" +/obj/item/stack/medical/bruise_pack/grind_results() + return list(/datum/reagent/medicine/c2/libital = 10) + /obj/item/stack/medical/bruise_pack/suicide_act(mob/living/user) user.visible_message(span_suicide("[user] is bludgeoning [user.p_them()]self with [src]! It looks like [user.p_theyre()] trying to commit suicide!")) return BRUTELOSS @@ -378,10 +379,11 @@ other_delay = 2 SECONDS max_amount = 12 amount = 6 - grind_results = list(/datum/reagent/cellulose = 2) custom_price = PAYCHECK_CREW * 2 absorption_rate = 0.125 absorption_capacity = 5 + sanitization = 3 + flesh_regeneration = 5 splint_factor = 0.7 burn_cleanliness_bonus = 0.35 merge_type = /obj/item/stack/medical/gauze @@ -397,6 +399,9 @@ . = ..() register_context() +/obj/item/stack/medical/gauze/grind_results() + return list(/datum/reagent/cellulose = 2) + /obj/item/stack/medical/gauze/Destroy(force) . = ..() @@ -490,6 +495,13 @@ if(limb.cached_bleed_rate) add_mob_blood(patient) + + // Dressing burns provides a "one-time" bonus to sanitization and healing + // However, any notable infection will reduce the effectiveness of this bonus + for(var/datum/wound/burn/flesh/wound in limb.wounds) + wound.sanitization += sanitization * (wound.infection > 0.1 ? 0.2 : 1) + wound.flesh_healing += flesh_regeneration * (wound.infection > 0.1 ? 0 : 1) + limb.apply_gauze(src) /obj/item/stack/medical/gauze/twelve @@ -527,6 +539,8 @@ burn_cleanliness_bonus = 0.7 absorption_rate = 0.075 absorption_capacity = 4 + sanitization = 1 + flesh_regeneration = 3 merge_type = /obj/item/stack/medical/gauze/improvised /* @@ -549,8 +563,7 @@ max_amount = 10 repeating = TRUE heal_brute = 10 - stop_bleeding = 0.6 - grind_results = list(/datum/reagent/medicine/spaceacillin = 2) + stop_bleeding = 0.5 merge_type = /obj/item/stack/medical/suture apply_verb = "suturing" drop_sound = SFX_SUTURE_DROP @@ -559,15 +572,20 @@ heal_continuous_sound = SFX_SUTURE_CONTINUOUS heal_end_sound = SFX_SUTURE_END +/obj/item/stack/medical/suture/grind_results() + return list(/datum/reagent/medicine/spaceacillin = 2) + /obj/item/stack/medical/suture/medicated name = "medicated suture" icon_state = "suture_purp" desc = "A suture infused with drugs that speed up wound healing of the treated laceration." heal_brute = 15 stop_bleeding = 0.75 - grind_results = list(/datum/reagent/medicine/polypyr = 1) merge_type = /obj/item/stack/medical/suture/medicated +/obj/item/stack/medical/suture/medicated/grind_results() + return list(/datum/reagent/medicine/polypyr = 1) + /obj/item/stack/medical/ointment name = "ointment" desc = "Basic burn ointment, rated effective for second degree burns with proper bandaging, though it's still an effective stabilizer for worse burns. Not terribly good at outright healing burns though." @@ -580,14 +598,15 @@ max_amount = 8 self_delay = 4 SECONDS other_delay = 2 SECONDS - heal_burn = 5 flesh_regeneration = 2.5 sanitization = 0.25 - grind_results = list(/datum/reagent/medicine/c2/lenturi = 10) merge_type = /obj/item/stack/medical/ointment apply_verb = "applying to" +/obj/item/stack/medical/ointment/grind_results() + return list(/datum/reagent/medicine/c2/lenturi = 10) + /obj/item/stack/medical/ointment/suicide_act(mob/living/user) user.visible_message(span_suicide("[user] is squeezing [src] into [user.p_their()] mouth! [user.p_do(TRUE)]n't [user.p_they()] know that stuff is toxic?")) return TOXLOSS @@ -611,17 +630,20 @@ heal_begin_sound = SFX_REGEN_MESH_BEGIN heal_continuous_sound = SFX_REGEN_MESH_CONTINUOUS heal_end_sound = SFX_REGEN_MESH_END - - var/is_open = TRUE ///This var determines if the sterile packaging of the mesh has been opened. - grind_results = list(/datum/reagent/medicine/spaceacillin = 2) merge_type = /obj/item/stack/medical/mesh + ///This var determines if the sterile packaging of the mesh has been opened. + var/is_open = TRUE + /obj/item/stack/medical/mesh/Initialize(mapload, new_amount, merge = TRUE, list/mat_override=null, mat_amt=1) . = ..() if(amount == max_amount) //only seal full mesh packs is_open = FALSE update_appearance() +/obj/item/stack/medical/mesh/grind_results() + return list(/datum/reagent/medicine/spaceacillin = 2) + /obj/item/stack/medical/mesh/update_icon_state() if(is_open) return ..() @@ -658,15 +680,16 @@ /obj/item/stack/medical/mesh/advanced name = "advanced regenerative mesh" desc = "An advanced mesh made with aloe extracts and sterilizing chemicals, used to treat burns." - gender = PLURAL icon_state = "aloe_mesh" heal_burn = 15 sanitization = 1.25 flesh_regeneration = 3.5 - grind_results = list(/datum/reagent/consumable/aloejuice = 1) merge_type = /obj/item/stack/medical/mesh/advanced +/obj/item/stack/medical/mesh/advanced/grind_results() + return list(/datum/reagent/consumable/aloejuice = 1) + /obj/item/stack/medical/mesh/advanced/update_icon_state() if(is_open) return ..() @@ -675,7 +698,6 @@ /obj/item/stack/medical/aloe name = "aloe cream" desc = "A healing paste for minor cuts and burns." - gender = PLURAL singular_name = "aloe cream" icon_state = "aloe_paste" @@ -687,7 +709,6 @@ repeating = TRUE heal_brute = 3 heal_burn = 3 - grind_results = list(/datum/reagent/consumable/aloejuice = 1) merge_type = /obj/item/stack/medical/aloe apply_verb = "applying to" @@ -695,6 +716,9 @@ . = ..() AddComponent(/datum/component/bakeable, /obj/item/food/badrecipe, rand(10 SECONDS, 15 SECONDS), FALSE) +/obj/item/stack/medical/aloe/grind_results() + return list(/datum/reagent/consumable/aloejuice = 1) + /obj/item/stack/medical/aloe/fresh amount = 2 @@ -702,20 +726,20 @@ name = "bone gel" singular_name = "bone gel" desc = "A potent medical gel that, when applied to a damaged bone in a proper surgical setting, triggers an intense melding reaction to repair the wound. Can be directly applied alongside surgical sticky tape to a broken bone in dire circumstances, though this is very harmful to the patient and not recommended." - icon = 'icons/obj/medical/surgery_tools.dmi' icon_state = "bone-gel" inhand_icon_state = "bone-gel" lefthand_file = 'icons/mob/inhands/equipment/medical_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/medical_righthand.dmi' - amount = 5 self_delay = 20 - grind_results = list(/datum/reagent/bone_dust = 10, /datum/reagent/carbon = 10) novariants = TRUE merge_type = /obj/item/stack/medical/bone_gel apply_verb = "applying to" +/obj/item/stack/medical/bone_gel/grind_results() + return list(/datum/reagent/bone_dust = 10, /datum/reagent/carbon = 10) + /obj/item/stack/medical/bone_gel/get_surgery_tool_overlay(tray_extended) return "gel" + (tray_extended ? "" : "_out") @@ -773,7 +797,7 @@ /obj/item/stack/medical/poultice/post_heal_effects(amount_healed, mob/living/carbon/healed_mob, mob/living/user) . = ..() playsound(src, 'sound/misc/soggy.ogg', 30, TRUE) - healed_mob.adjustOxyLoss(amount_healed) + healed_mob.adjust_oxy_loss(amount_healed) /obj/item/stack/medical/bandage name = "first aid bandage" @@ -789,10 +813,11 @@ stop_bleeding = 0.2 self_delay = 3 SECONDS other_delay = 1 SECONDS - grind_results = list(/datum/reagent/medicine/c2/libital = 2) apply_verb = "applying to" pickup_sound = SFX_CLOTH_PICKUP - // add a better drop sound more fitting for a lil' itty bitty band-aid + +/obj/item/stack/medical/bandage/grind_results() + return list(/datum/reagent/medicine/c2/libital = 2) /obj/item/stack/medical/bandage/makeshift name = "makeshift bandage" diff --git a/code/game/objects/items/stacks/rods.dm b/code/game/objects/items/stacks/rods.dm index fc19ce70ccc9aa..17fd93bc5bfc8e 100644 --- a/code/game/objects/items/stacks/rods.dm +++ b/code/game/objects/items/stacks/rods.dm @@ -11,7 +11,7 @@ GLOBAL_LIST_INIT(rod_recipes, list ( \ new/datum/stack_recipe("ladder", /obj/structure/ladder/crafted, 15, time = 15 SECONDS, crafting_flags = CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_STRUCTURE), \ new/datum/stack_recipe("catwalk floor tile", /obj/item/stack/tile/catwalk_tile, 1, 4, 20, category = CAT_TILES), \ new/datum/stack_recipe("stairs frame", /obj/structure/stairs_frame, 10, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_STRUCTURE), \ - new/datum/stack_recipe("probing cane", /obj/item/cane/white, 3, time = 1 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY, category = CAT_TOOLS), \ + new/datum/stack_recipe("probing cane", /obj/item/cane/white, 3, time = 1 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_SKIP_MATERIALS_PARITY, category = CAT_TOOLS), \ new/datum/stack_recipe("sharpened iron rod", /obj/item/ammo_casing/rebar, 1, time = 0.2 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY, category = CAT_WEAPON_AMMO), \ )) @@ -28,7 +28,7 @@ GLOBAL_LIST_INIT(rod_recipes, list ( \ throw_speed = 3 throw_range = 7 demolition_mod = 1.25 - mats_per_unit = list(/datum/material/iron=HALF_SHEET_MATERIAL_AMOUNT) + mats_per_unit = list(/datum/material/iron = HALF_SHEET_MATERIAL_AMOUNT) max_amount = 50 attack_verb_continuous = list("hits", "bludgeons", "whacks") attack_verb_simple = list("hit", "bludgeon", "whack") @@ -81,9 +81,9 @@ GLOBAL_LIST_INIT(rod_recipes, list ( \ . = ..() var/amount = get_amount() if(amount <= 5) - icon_state = "rods-[amount]" + icon_state = "[initial(icon_state)]-[amount]" else - icon_state = "rods" + icon_state = initial(icon_state) /obj/item/stack/rods/welder_act(mob/living/user, obj/item/tool) if(get_amount() < 2) @@ -134,7 +134,7 @@ GLOBAL_LIST_INIT(rod_recipes, list ( \ name = "heat resistant rod" desc = "Treated, specialized iron rods. When exposed to the vacuum of space their coating breaks off, but they can hold up against the extreme heat of active lava." singular_name = "heat resistant rod" - icon_state = "rods" + icon_state = "lavarods" inhand_icon_state = "rods" color = "#5286b9ff" obj_flags = CONDUCTS_ELECTRICITY @@ -151,6 +151,7 @@ GLOBAL_LIST_INIT(rod_recipes, list ( \ name = "shuttle frame rods" desc = "Treated, specialized iron rods suitable for the construction of shuttle frames or the expansion of existing shuttles." singular_name = "shuttle frame rod" + icon_state = "shuttlerods" mats_per_unit = list(/datum/material/iron=HALF_SHEET_MATERIAL_AMOUNT, /datum/material/titanium=SMALL_MATERIAL_AMOUNT) merge_type = /obj/item/stack/rods/shuttle diff --git a/code/game/objects/items/stacks/sheets/glass.dm b/code/game/objects/items/stacks/sheets/glass.dm index c2547cbbea722e..038f8fde839abf 100644 --- a/code/game/objects/items/stacks/sheets/glass.dm +++ b/code/game/objects/items/stacks/sheets/glass.dm @@ -25,7 +25,6 @@ GLOBAL_LIST_INIT(glass_recipes, list ( \ armor_type = /datum/armor/sheet_glass resistance_flags = ACID_PROOF merge_type = /obj/item/stack/sheet/glass - grind_results = list(/datum/reagent/silicon = 20) material_type = /datum/material/glass table_type = /obj/structure/table/glass matter_amount = 4 @@ -39,6 +38,9 @@ GLOBAL_LIST_INIT(glass_recipes, list ( \ fire = 50 acid = 100 +/obj/item/stack/sheet/glass/grind_results() + return list(/datum/reagent/silicon = 20) + /obj/item/stack/sheet/glass/suicide_act(mob/living/carbon/user) user.visible_message(span_suicide("[user] begins to slice [user.p_their()] neck with \the [src]! It looks like [user.p_theyre()] trying to commit suicide!")) return BRUTELOSS @@ -101,12 +103,14 @@ GLOBAL_LIST_INIT(pglass_recipes, list ( \ armor_type = /datum/armor/sheet_plasmaglass resistance_flags = ACID_PROOF merge_type = /obj/item/stack/sheet/plasmaglass - grind_results = list(/datum/reagent/silicon = 20, /datum/reagent/toxin/plasma = 10) material_flags = NONE table_type = /obj/structure/table/glass/plasmaglass pickup_sound = 'sound/items/handling/materials/glass_pick_up.ogg' drop_sound = 'sound/items/handling/materials/glass_drop.ogg' +/obj/item/stack/sheet/plasmaglass/grind_results() + return list(/datum/reagent/silicon = 20, /datum/reagent/toxin/plasma = 10) + /obj/item/stack/sheet/plasmaglass/fifty amount = 50 @@ -146,7 +150,7 @@ GLOBAL_LIST_INIT(reinforced_glass_recipes, list ( \ null, \ new/datum/stack_recipe("directional reinforced window", /obj/structure/window/reinforced/unanchored, time = 0.5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ON_SOLID_GROUND | CRAFT_CHECK_DIRECTION, category = CAT_WINDOWS), \ new/datum/stack_recipe("fulltile reinforced window", /obj/structure/window/reinforced/fulltile/unanchored, 2, time = 2 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ON_SOLID_GROUND | CRAFT_IS_FULLTILE, category = CAT_WINDOWS), \ - new/datum/stack_recipe("glass shard", /obj/item/shard, time = 10, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ON_SOLID_GROUND, category = CAT_MISC), \ + new/datum/stack_recipe("glass shard", /obj/item/shard, time = 10, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ON_SOLID_GROUND | CRAFT_SKIP_MATERIALS_PARITY, category = CAT_MISC), \ new/datum/stack_recipe("reinforced glass tile", /obj/item/stack/tile/rglass, 1, 4, 20, category = CAT_TILES) \ )) @@ -161,12 +165,14 @@ GLOBAL_LIST_INIT(reinforced_glass_recipes, list ( \ armor_type = /datum/armor/sheet_rglass resistance_flags = ACID_PROOF merge_type = /obj/item/stack/sheet/rglass - grind_results = list(/datum/reagent/silicon = 20, /datum/reagent/iron = 10) matter_amount = 6 table_type = /obj/structure/table/reinforced/rglass pickup_sound = 'sound/items/handling/materials/glass_pick_up.ogg' drop_sound = 'sound/items/handling/materials/glass_drop.ogg' +/obj/item/stack/sheet/rglass/grind_results() + return list(/datum/reagent/silicon = 20, /datum/reagent/iron = 10) + /obj/item/stack/sheet/rglass/fifty amount = 50 @@ -185,7 +191,7 @@ GLOBAL_LIST_INIT(reinforced_glass_recipes, list ( \ GLOBAL_LIST_INIT(prglass_recipes, list ( \ new/datum/stack_recipe("directional reinforced window", /obj/structure/window/reinforced/plasma/unanchored, time = 0.5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ON_SOLID_GROUND | CRAFT_CHECK_DIRECTION, category = CAT_WINDOWS), \ new/datum/stack_recipe("fulltile reinforced window", /obj/structure/window/reinforced/plasma/fulltile/unanchored, 2, time = 2 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ON_SOLID_GROUND | CRAFT_IS_FULLTILE, category = CAT_WINDOWS), \ - new/datum/stack_recipe("plasma glass shard", /obj/item/shard/plasma, time = 40, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ON_SOLID_GROUND, category = CAT_MISC), \ + new/datum/stack_recipe("plasma glass shard", /obj/item/shard/plasma, time = 40, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ON_SOLID_GROUND | CRAFT_SKIP_MATERIALS_PARITY, category = CAT_MISC), \ new/datum/stack_recipe("reinforced plasma glass tile", /obj/item/stack/tile/rglass/plasma, 1, 4, 20, category = CAT_TILES) \ )) @@ -200,13 +206,15 @@ GLOBAL_LIST_INIT(prglass_recipes, list ( \ resistance_flags = ACID_PROOF material_flags = NONE merge_type = /obj/item/stack/sheet/plasmarglass - grind_results = list(/datum/reagent/silicon = 20, /datum/reagent/toxin/plasma = 10, /datum/reagent/iron = 10) gulag_valid = TRUE matter_amount = 8 table_type = /obj/structure/table/reinforced/plasmarglass pickup_sound = 'sound/items/handling/materials/glass_pick_up.ogg' drop_sound = 'sound/items/handling/materials/glass_drop.ogg' +/obj/item/stack/sheet/plasmarglass/grind_results() + return list(/datum/reagent/silicon = 20, /datum/reagent/toxin/plasma = 10, /datum/reagent/iron = 10) + /datum/armor/sheet_plasmarglass melee = 20 fire = 80 @@ -377,6 +385,7 @@ GLOBAL_LIST_INIT(plastitaniumglass_recipes, list( to_chat(user, span_notice("You begin to wrap the [cloth] around the [src]...")) if(do_after(user, craft_time, target = src)) var/obj/item/knife/shiv/shiv = new shiv_type + shiv.set_custom_materials(custom_materials) cloth.use(1) to_chat(user, span_notice("You wrap the [cloth] around the [src], forming a makeshift weapon.")) remove_item_from_storage(src, user) diff --git a/code/game/objects/items/stacks/sheets/hot_ice.dm b/code/game/objects/items/stacks/sheets/hot_ice.dm index cb7b016c8e30bd..de42ef32e448d2 100644 --- a/code/game/objects/items/stacks/sheets/hot_ice.dm +++ b/code/game/objects/items/stacks/sheets/hot_ice.dm @@ -5,10 +5,12 @@ singular_name = "hot ice piece" icon = 'icons/obj/stack_objects.dmi' mats_per_unit = list(/datum/material/hot_ice=SHEET_MATERIAL_AMOUNT) - grind_results = list(/datum/reagent/toxin/hot_ice = 25) material_type = /datum/material/hot_ice merge_type = /obj/item/stack/sheet/hot_ice +/obj/item/stack/sheet/hot_ice/grind_results() + return list(/datum/reagent/toxin/hot_ice = 25) + /obj/item/stack/sheet/hot_ice/suicide_act(mob/living/carbon/user) user.visible_message(span_suicide("[user] begins licking \the [src]! It looks like [user.p_theyre()] trying to commit suicide!")) return FIRELOSS//dont you kids know that stuff is toxic? diff --git a/code/game/objects/items/stacks/sheets/light.dm b/code/game/objects/items/stacks/sheets/light.dm index 8597cfc859f2b9..4d06e8fb3d1665 100644 --- a/code/game/objects/items/stacks/sheets/light.dm +++ b/code/game/objects/items/stacks/sheets/light.dm @@ -11,9 +11,12 @@ throw_range = 7 obj_flags = CONDUCTS_ELECTRICITY max_amount = 60 - grind_results = list(/datum/reagent/silicon = 20, /datum/reagent/copper = 5) + mats_per_unit = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 1.05, /datum/material/glass = SHEET_MATERIAL_AMOUNT * 1.05) merge_type = /obj/item/stack/light_w +/obj/item/stack/light_w/grind_results() + return list(/datum/reagent/silicon = 20, /datum/reagent/copper = 5) + /obj/item/stack/light_w/examine(mob/user) . = ..() . += span_warning("\The [src] looks unfinished, add iron to complete it.") diff --git a/code/game/objects/items/stacks/sheets/mineral.dm b/code/game/objects/items/stacks/sheets/mineral.dm index 0decdd0706cba4..a8169276d899e7 100644 --- a/code/game/objects/items/stacks/sheets/mineral.dm +++ b/code/game/objects/items/stacks/sheets/mineral.dm @@ -24,9 +24,9 @@ Mineral Sheets */ GLOBAL_LIST_INIT(sandstone_recipes, list ( \ - new/datum/stack_recipe("sandstone door", /obj/structure/mineral_door/sandstone, 10, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_APPLIES_MATS, category = CAT_DOORS), \ + new/datum/stack_recipe("sandstone door", /obj/structure/mineral_door/sandstone, 10, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_DOORS), \ new/datum/stack_recipe("sandstone platform", /obj/structure/platform/sandstone, 2, time = 3 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, trait_booster = TRAIT_QUICK_BUILD, trait_modifier = 0.75, category = CAT_STRUCTURE), \ - new/datum/stack_recipe("Breakdown into sand", /obj/item/stack/ore/glass, 1, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ON_SOLID_GROUND, category = CAT_MISC), \ + new/datum/stack_recipe("Breakdown into sand", /obj/item/stack/ore/glass, 1, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ON_SOLID_GROUND | CRAFT_NO_MATERIALS, category = CAT_MISC), \ )) /obj/item/stack/sheet/mineral/sandstone @@ -72,6 +72,9 @@ GLOBAL_LIST_INIT(sandbag_recipes, list ( \ . = ..() . += GLOB.sandbag_recipes +/obj/item/stack/sheet/mineral/sandbags/fifty + amount = 50 + /obj/item/emptysandbag name = "empty sandbag" desc = "A bag to be filled with sand." @@ -101,17 +104,19 @@ GLOBAL_LIST_INIT(sandbag_recipes, list ( \ singular_name = "diamond" construction_path_type = "diamond" mats_per_unit = list(/datum/material/diamond=SHEET_MATERIAL_AMOUNT) - grind_results = list(/datum/reagent/carbon = 20) gulag_valid = TRUE merge_type = /obj/item/stack/sheet/mineral/diamond material_type = /datum/material/diamond walltype = /turf/closed/wall/mineral/diamond GLOBAL_LIST_INIT(diamond_recipes, list ( \ - new/datum/stack_recipe("diamond door", /obj/structure/mineral_door/transparent/diamond, 10, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_APPLIES_MATS, category = CAT_DOORS), \ + new/datum/stack_recipe("diamond door", /obj/structure/mineral_door/transparent/diamond, 10, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_DOORS), \ new/datum/stack_recipe("diamond tile", /obj/item/stack/tile/mineral/diamond, 1, 4, 20, crafting_flags = NONE, category = CAT_TILES), \ )) +/obj/item/stack/sheet/mineral/diamond/grind_results() + return list(/datum/reagent/carbon = 20) + /obj/item/stack/sheet/mineral/diamond/get_main_recipes() . = ..() . += GLOB.diamond_recipes @@ -132,18 +137,20 @@ GLOBAL_LIST_INIT(diamond_recipes, list ( \ singular_name = "uranium sheet" construction_path_type = "uranium" mats_per_unit = list(/datum/material/uranium=SHEET_MATERIAL_AMOUNT) - grind_results = list(/datum/reagent/uranium = 20) gulag_valid = TRUE merge_type = /obj/item/stack/sheet/mineral/uranium material_type = /datum/material/uranium walltype = /turf/closed/wall/mineral/uranium GLOBAL_LIST_INIT(uranium_recipes, list ( \ - new/datum/stack_recipe("uranium door", /obj/structure/mineral_door/uranium, 10, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_APPLIES_MATS, category = CAT_DOORS), \ + new/datum/stack_recipe("uranium door", /obj/structure/mineral_door/uranium, 10, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_DOORS), \ new/datum/stack_recipe("depleted uranium platform", /obj/structure/platform/uranium, 2, time = 3 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, trait_booster = TRAIT_QUICK_BUILD, trait_modifier = 0.75, category = CAT_STRUCTURE), \ new/datum/stack_recipe("uranium tile", /obj/item/stack/tile/mineral/uranium, 1, 4, 20, crafting_flags = NONE, category = CAT_TILES), \ )) +/obj/item/stack/sheet/mineral/uranium/grind_results() + return list(/datum/reagent/uranium = 20) + /obj/item/stack/sheet/mineral/uranium/get_main_recipes() . = ..() . += GLOB.uranium_recipes @@ -169,18 +176,20 @@ GLOBAL_LIST_INIT(uranium_recipes, list ( \ resistance_flags = FLAMMABLE max_integrity = 100 mats_per_unit = list(/datum/material/plasma=SHEET_MATERIAL_AMOUNT) - grind_results = list(/datum/reagent/toxin/plasma = 20) gulag_valid = TRUE merge_type = /obj/item/stack/sheet/mineral/plasma material_type = /datum/material/plasma walltype = /turf/closed/wall/mineral/plasma +/obj/item/stack/sheet/mineral/plasma/grind_results() + return list(/datum/reagent/toxin/plasma = 20) + /obj/item/stack/sheet/mineral/plasma/suicide_act(mob/living/carbon/user) user.visible_message(span_suicide("[user] begins licking \the [src]! It looks like [user.p_theyre()] trying to commit suicide!")) return TOXLOSS//dont you kids know that stuff is toxic? GLOBAL_LIST_INIT(plasma_recipes, list ( \ - new/datum/stack_recipe("plasma door", /obj/structure/mineral_door/transparent/plasma, 10, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_APPLIES_MATS, category = CAT_DOORS), \ + new/datum/stack_recipe("plasma door", /obj/structure/mineral_door/transparent/plasma, 10, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_DOORS), \ new/datum/stack_recipe("plasma tile", /obj/item/stack/tile/mineral/plasma, 1, 4, 20, crafting_flags = NONE, category = CAT_TILES), \ )) @@ -207,20 +216,22 @@ GLOBAL_LIST_INIT(plasma_recipes, list ( \ singular_name = "gold bar" construction_path_type = "gold" mats_per_unit = list(/datum/material/gold=SHEET_MATERIAL_AMOUNT) - grind_results = list(/datum/reagent/gold = 20) gulag_valid = TRUE merge_type = /obj/item/stack/sheet/mineral/gold material_type = /datum/material/gold walltype = /turf/closed/wall/mineral/gold GLOBAL_LIST_INIT(gold_recipes, list ( \ - new/datum/stack_recipe("golden door", /obj/structure/mineral_door/gold, 10, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_APPLIES_MATS, category = CAT_DOORS), \ + new/datum/stack_recipe("golden door", /obj/structure/mineral_door/gold, 10, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_DOORS), \ new/datum/stack_recipe("golden platform", /obj/structure/platform/gold, 2, time = 3 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, trait_booster = TRAIT_QUICK_BUILD, trait_modifier = 0.75, category = CAT_STRUCTURE), \ new/datum/stack_recipe("gold tile", /obj/item/stack/tile/mineral/gold, 1, 4, 20, crafting_flags = NONE, category = CAT_TILES), \ new/datum/stack_recipe("blank plaque", /obj/item/plaque, 1, crafting_flags = NONE, category = CAT_FURNITURE), \ new/datum/stack_recipe("Simple Crown", /obj/item/clothing/head/costume/crown, 5, crafting_flags = NONE, category = CAT_CLOTHING), \ )) +/obj/item/stack/sheet/mineral/gold/grind_results() + return list(/datum/reagent/gold = 20) + /obj/item/stack/sheet/mineral/gold/get_main_recipes() . = ..() . += GLOB.gold_recipes @@ -238,7 +249,6 @@ GLOBAL_LIST_INIT(gold_recipes, list ( \ singular_name = "silver bar" construction_path_type = "silver" mats_per_unit = list(/datum/material/silver=SHEET_MATERIAL_AMOUNT) - grind_results = list(/datum/reagent/silver = 20) gulag_valid = TRUE merge_type = /obj/item/stack/sheet/mineral/silver material_type = /datum/material/silver @@ -246,11 +256,14 @@ GLOBAL_LIST_INIT(gold_recipes, list ( \ walltype = /turf/closed/wall/mineral/silver GLOBAL_LIST_INIT(silver_recipes, list ( \ - new/datum/stack_recipe("silver door", /obj/structure/mineral_door/silver, 10, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_APPLIES_MATS, category = CAT_DOORS), \ + new/datum/stack_recipe("silver door", /obj/structure/mineral_door/silver, 10, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_DOORS), \ new/datum/stack_recipe("silver platform", /obj/structure/platform/silver, 2, time = 3 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, trait_booster = TRAIT_QUICK_BUILD, trait_modifier = 0.75, category = CAT_STRUCTURE), \ new/datum/stack_recipe("silver tile", /obj/item/stack/tile/mineral/silver, 1, 4, 20, crafting_flags = NONE, category = CAT_TILES), \ )) +/obj/item/stack/sheet/mineral/silver/grind_results() + return list(/datum/reagent/silver = 20) + /obj/item/stack/sheet/mineral/silver/get_main_recipes() . = ..() . += GLOB.silver_recipes @@ -268,7 +281,6 @@ GLOBAL_LIST_INIT(silver_recipes, list ( \ singular_name = "bananium sheet" construction_path_type = "bananium" mats_per_unit = list(/datum/material/bananium=SHEET_MATERIAL_AMOUNT) - grind_results = list(/datum/reagent/consumable/banana = 20) gulag_valid = TRUE merge_type = /obj/item/stack/sheet/mineral/bananium material_type = /datum/material/bananium @@ -278,6 +290,9 @@ GLOBAL_LIST_INIT(bananium_recipes, list ( \ new/datum/stack_recipe("bananium tile", /obj/item/stack/tile/mineral/bananium, 1, 4, 20, crafting_flags = NONE, category = CAT_TILES), \ )) +/obj/item/stack/sheet/mineral/bananium/grind_results() + return list(/datum/reagent/consumable/banana = 20) + /obj/item/stack/sheet/mineral/bananium/get_main_recipes() . = ..() . += GLOB.bananium_recipes @@ -309,7 +324,7 @@ GLOBAL_LIST_INIT(titanium_recipes, list ( \ new /datum/stack_recipe("Titanium tile", /obj/item/stack/tile/mineral/titanium, 1, 4, 20, crafting_flags = NONE, category = CAT_TILES), \ new/datum/stack_recipe("Titanium Platform", /obj/structure/platform/titanium, 2, time = 3 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, trait_booster = TRAIT_QUICK_BUILD, trait_modifier = 0.75, category = CAT_STRUCTURE), \ new /datum/stack_recipe("Shuttle seat", /obj/structure/chair/comfy/shuttle, 2, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ - new /datum/stack_recipe("Material tram door assembly", /obj/structure/door_assembly/multi_tile/door_assembly_tram, 8, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_DOORS), \ + new /datum/stack_recipe("Tram door assembly", /obj/structure/door_assembly/multi_tile/door_assembly_tram, 8, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_DOORS), \ )) /obj/item/stack/sheet/mineral/titanium/get_main_recipes() @@ -382,7 +397,6 @@ GLOBAL_LIST_INIT(plastitanium_recipes, list ( \ singular_name = "snow block" force = 1 throwforce = 2 - grind_results = list(/datum/reagent/consumable/ice = 20) merge_type = /obj/item/stack/sheet/mineral/snow walltype = /turf/closed/wall/mineral/snow material_type = /datum/material/snow @@ -400,6 +414,9 @@ GLOBAL_LIST_INIT(snow_recipes, list ( \ . = ..() AddComponent(/datum/component/storm_hating) +/obj/item/stack/sheet/mineral/snow/grind_results() + return list(/datum/reagent/consumable/ice = 20) + /obj/item/stack/sheet/mineral/snow/get_main_recipes() . = ..() . += GLOB.snow_recipes @@ -472,6 +489,7 @@ GLOBAL_LIST_INIT(adamantine_recipes, list( GLOBAL_LIST_INIT(abductor_recipes, list ( \ new/datum/stack_recipe("alien bed", /obj/structure/bed/abductor, 2, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ new/datum/stack_recipe("alien locker", /obj/structure/closet/abductor, 2, time = 2 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ + new/datum/stack_recipe("strange closet", /obj/structure/closet/acloset, 2, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_CONTAINERS), \ new/datum/stack_recipe("alien table frame", /obj/structure/table_frame/abductor, 1, time = 2 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ new/datum/stack_recipe("alien airlock assembly", /obj/structure/door_assembly/door_assembly_abductor, 4, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_DOORS), \ null, \ @@ -493,9 +511,11 @@ GLOBAL_LIST_INIT(abductor_recipes, list ( \ icon_state = "slag" singular_name = "coal lump" merge_type = /obj/item/stack/sheet/mineral/coal - grind_results = list(/datum/reagent/carbon = 20) novariants = TRUE +/obj/item/stack/sheet/mineral/coal/grind_results() + return list(/datum/reagent/carbon = 20) + /obj/item/stack/sheet/mineral/coal/attackby(obj/item/W, mob/user, list/modifiers, list/attack_modifiers) if(W.get_temperature() > 300)//If the temperature of the object is over 300, then ignite var/turf/T = get_turf(src) diff --git a/code/game/objects/items/stacks/sheets/runed_metal.dm b/code/game/objects/items/stacks/sheets/runed_metal.dm index b1810b624829f9..674dea391c1e0e 100644 --- a/code/game/objects/items/stacks/sheets/runed_metal.dm +++ b/code/game/objects/items/stacks/sheets/runed_metal.dm @@ -77,11 +77,13 @@ GLOBAL_LIST_INIT(runed_metal_recipes, list( \ mats_per_unit = list(/datum/material/runedmetal = SHEET_MATERIAL_AMOUNT) construction_path_type = "runed" merge_type = /obj/item/stack/sheet/runed_metal - grind_results = list(/datum/reagent/iron = 5, /datum/reagent/blood = 15) material_type = /datum/material/runedmetal has_unique_girder = TRUE use_radial = TRUE +/obj/item/stack/sheet/runed_metal/grind_results() + return list(/datum/reagent/iron = 5, /datum/reagent/blood = 15) + /obj/item/stack/sheet/runed_metal/interact(mob/user) if(!IS_CULTIST(user)) to_chat(user, span_warning("Only one with forbidden knowledge could hope to work this metal...")) diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index 38c2c4dc26d962..c67f4c21f86c3a 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -31,18 +31,20 @@ GLOBAL_LIST_INIT(metal_recipes, list ( \ new/datum/stack_recipe("lime comfy chair", /obj/structure/chair/comfy/lime, 2, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ new/datum/stack_recipe("teal comfy chair", /obj/structure/chair/comfy/teal, 2, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ )), \ - new/datum/stack_recipe_list("sofas", list( - new /datum/stack_recipe("sofa (middle)", /obj/structure/chair/sofa/middle, 1, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), - new /datum/stack_recipe("sofa (left)", /obj/structure/chair/sofa/left, 1, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), - new /datum/stack_recipe("sofa (right)", /obj/structure/chair/sofa/right, 1, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), - new /datum/stack_recipe("sofa (corner)", /obj/structure/chair/sofa/corner, 1, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE) - )), \ - new/datum/stack_recipe_list("corporate sofas", list( \ - new /datum/stack_recipe("sofa (middle)", /obj/structure/chair/sofa/corp, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ - new /datum/stack_recipe("sofa (left)", /obj/structure/chair/sofa/corp/left, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ - new /datum/stack_recipe("sofa (right)", /obj/structure/chair/sofa/corp/right, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ - new /datum/stack_recipe("sofa (corner)", /obj/structure/chair/sofa/corp/corner, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ - )), \ + new/datum/stack_recipe_list("sofas", list( \ + new /datum/stack_recipe("corporate sofa (middle)", /obj/structure/chair/sofa/corp, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ + new /datum/stack_recipe("corporate sofa (left)", /obj/structure/chair/sofa/corp/left, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ + new /datum/stack_recipe("corporate sofa (right)", /obj/structure/chair/sofa/corp/right, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ + new /datum/stack_recipe("corporate sofa (corner)", /obj/structure/chair/sofa/corp/corner, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ + new /datum/stack_recipe("sofa (middle)", /obj/structure/chair/sofa/middle, 1, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ + new /datum/stack_recipe("sofa (left)", /obj/structure/chair/sofa/left, 1, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ + new /datum/stack_recipe("sofa (right)", /obj/structure/chair/sofa/right, 1, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ + new /datum/stack_recipe("sofa (corner)", /obj/structure/chair/sofa/corner, 1, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ + new /datum/stack_recipe("retro sofa (middle)", /obj/structure/chair/sofa/middle/brown, 1, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ + new /datum/stack_recipe("retro sofa (left)", /obj/structure/chair/sofa/left/brown, 1, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ + new /datum/stack_recipe("retro sofa (right)", /obj/structure/chair/sofa/right/brown, 1, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ + new /datum/stack_recipe("retro sofa (corner)", /obj/structure/chair/sofa/corner/brown, 1, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE) \ + )), \ new /datum/stack_recipe_list("benches", list( \ new /datum/stack_recipe("bench (middle)", /obj/structure/chair/sofa/bench, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ new /datum/stack_recipe("bench (left)", /obj/structure/chair/sofa/bench/left, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ @@ -142,10 +144,10 @@ GLOBAL_LIST_INIT(metal_recipes, list ( \ new/datum/stack_recipe("telescreen turbine frame", /obj/item/wallframe/telescreen/turbine, 7, crafting_flags = NONE, category = CAT_STRUCTURE), \ new/datum/stack_recipe("telescreen engine frame", /obj/item/wallframe/telescreen/engine, 7, crafting_flags = NONE, category = CAT_STRUCTURE), \ new/datum/stack_recipe("telescreen auxbase frame", /obj/item/wallframe/telescreen/auxbase, 7, crafting_flags = NONE, category = CAT_STRUCTURE), \ - new/datum/stack_recipe("tram controller frame", /obj/item/wallframe/tram/controller, 20, crafting_flags = NONE, category = CAT_STRUCTURE), \ + new/datum/stack_recipe("tram controller frame", /obj/item/wallframe/tram, 20, crafting_flags = NONE, category = CAT_STRUCTURE), \ new/datum/stack_recipe("tram display frame", /obj/item/wallframe/indicator_display, 7, crafting_flags = NONE, category = CAT_STRUCTURE), \ null, \ - new/datum/stack_recipe("iron door", /obj/structure/mineral_door/iron, 20, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND | CRAFT_APPLIES_MATS, category = CAT_DOORS), \ + new/datum/stack_recipe("iron door", /obj/structure/mineral_door/iron, 20, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_DOORS), \ new/datum/stack_recipe("filing cabinet", /obj/structure/filingcabinet, 2, time = 10 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ new/datum/stack_recipe("desk bell", /obj/structure/desk_bell, 2, time = 3 SECONDS, crafting_flags = NONE, category = CAT_FURNITURE), \ new/datum/stack_recipe("floodlight frame", /obj/structure/floodlight_frame, 5, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_STRUCTURE), \ @@ -167,7 +169,6 @@ GLOBAL_LIST_INIT(metal_recipes, list ( \ obj_flags = CONDUCTS_ELECTRICITY resistance_flags = FIRE_PROOF merge_type = /obj/item/stack/sheet/iron - grind_results = list(/datum/reagent/iron = 20) gulag_valid = TRUE table_type = /obj/structure/table material_type = /datum/material/iron @@ -187,6 +188,9 @@ GLOBAL_LIST_INIT(metal_recipes, list ( \ ) AddElement(/datum/element/contextual_screentip_tools, tool_behaviors) +/obj/item/stack/sheet/iron/grind_results() + return list(/datum/reagent/iron = 20) + /obj/item/stack/sheet/iron/examine(mob/user) . = ..() . += span_notice("Right click on floor to build:") @@ -294,6 +298,7 @@ GLOBAL_LIST_INIT(plasteel_recipes, list ( \ new/datum/stack_recipe("bomb assembly", /obj/machinery/syndicatebomb/empty, 10, time = 5 SECONDS, crafting_flags = NONE, category = CAT_CHEMISTRY), new/datum/stack_recipe("Large Gas Tank", /obj/structure/tank_frame, 4, time=1 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF, category = CAT_ATMOSPHERIC), new/datum/stack_recipe("shutter assembly", /obj/machinery/door/poddoor/shutters/preopen/deconstructed, 5, time = 5 SECONDS, crafting_flags = CRAFT_ONE_PER_TURF, category = CAT_DOORS), + new/datum/stack_recipe("large metal box", /obj/structure/closet/cardboard/metal, 4, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_CONTAINERS), null, new /datum/stack_recipe_list("airlock assemblies", list( \ new/datum/stack_recipe("high security airlock assembly", /obj/structure/door_assembly/door_assembly_highsecurity, 4, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_DOORS), @@ -314,7 +319,6 @@ GLOBAL_LIST_INIT(plasteel_recipes, list ( \ armor_type = /datum/armor/sheet_plasteel resistance_flags = FIRE_PROOF merge_type = /obj/item/stack/sheet/plasteel - grind_results = list(/datum/reagent/iron = 20, /datum/reagent/toxin/plasma = 20) gulag_valid = TRUE table_type = /obj/structure/table/reinforced material_flags = NONE @@ -324,6 +328,9 @@ GLOBAL_LIST_INIT(plasteel_recipes, list ( \ fire = 100 acid = 80 +/obj/item/stack/sheet/plasteel/grind_results() + return list(/datum/reagent/iron = 20, /datum/reagent/toxin/plasma = 20) + /obj/item/stack/sheet/plasteel/get_main_recipes() . = ..() . += GLOB.plasteel_recipes @@ -359,7 +366,10 @@ GLOBAL_LIST_INIT(wood_recipes, list ( \ new/datum/stack_recipe("drying rack", /obj/machinery/smartfridge/drying/rack, 10, time = 1.5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_TOOLS), \ new/datum/stack_recipe("wooden barrel", /obj/structure/fermenting_barrel, 8, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_CONTAINERS), \ new/datum/stack_recipe("dog bed", /obj/structure/bed/dogbed, 10, time = 1 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ + new/datum/stack_recipe("gavel hammer", /obj/item/gavelhammer, 2, time = 3 SECONDS, crafting_flags = NONE, category = CAT_ENTERTAINMENT), \ + new/datum/stack_recipe("gavel block", /obj/item/gavelblock, 1, time = 2 SECONDS, crafting_flags = NONE, category = CAT_ENTERTAINMENT), \ new/datum/stack_recipe("dresser", /obj/structure/dresser, 10, time = 1.5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ + new/datum/stack_recipe("cabinet", /obj/structure/closet/cabinet, 2, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_CONTAINERS), \ new/datum/stack_recipe("picture frame", /obj/item/wallframe/picture, 1, time = 1 SECONDS, crafting_flags = NONE, category = CAT_ENTERTAINMENT),\ new/datum/stack_recipe("painting frame", /obj/item/wallframe/painting, 1, time = 1 SECONDS, crafting_flags = NONE, category = CAT_ENTERTAINMENT),\ new/datum/stack_recipe("display case chassis", /obj/structure/displaycase_chassis, 5, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ @@ -373,7 +383,7 @@ GLOBAL_LIST_INIT(wood_recipes, list ( \ new/datum/stack_recipe("rake", /obj/item/cultivator/rake, 5, time = 1 SECONDS, crafting_flags = NONE, category = CAT_TOOLS),\ new/datum/stack_recipe("ore box", /obj/structure/ore_box, 4, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_CONTAINERS),\ new/datum/stack_recipe("wooden crate", /obj/structure/closet/crate/wooden, 6, time = 5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE),\ - new/datum/stack_recipe("baseball bat", /obj/item/melee/baseball_bat, 5, time = 1.5 SECONDS, crafting_flags = NONE, category = CAT_WEAPON_MELEE),\ + new/datum/stack_recipe("baseball bat", /obj/item/melee/baseball_bat, 5, time = 1.5 SECONDS, crafting_flags = NONE, category = CAT_WEAPON_MELEE, removed_mats = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 1.5)),\ new/datum/stack_recipe("wooden crutch", /obj/item/cane/crutch/wood, 5, time = 1.5 SECONDS, crafting_flags = NONE, category = CAT_WEAPON_MELEE),\ new/datum/stack_recipe("loom", /obj/structure/loom, 10, time = 1.5 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_TOOLS), \ new/datum/stack_recipe("mortar", /obj/item/reagent_containers/cup/mortar, 3, crafting_flags = NONE, category = CAT_CHEMISTRY), \ @@ -411,7 +421,6 @@ GLOBAL_LIST_INIT(wood_recipes, list ( \ resistance_flags = FLAMMABLE merge_type = /obj/item/stack/sheet/mineral/wood material_type = /datum/material/wood - grind_results = list(/datum/reagent/cellulose = 20) //no lignocellulose or lignin reagents yet, walltype = /turf/closed/wall/mineral/wood stairs_type = /obj/structure/stairs/wood pickup_sound = 'sound/items/handling/materials/wood_pick_up.ogg' @@ -420,6 +429,9 @@ GLOBAL_LIST_INIT(wood_recipes, list ( \ /datum/armor/mineral_wood fire = 50 +/obj/item/stack/sheet/mineral/wood/grind_results() + return list(/datum/reagent/cellulose = 20) + /obj/item/stack/sheet/mineral/wood/get_main_recipes() . = ..() . += GLOB.wood_recipes @@ -451,7 +463,7 @@ GLOBAL_LIST_INIT(bamboo_recipes, list ( \ new/datum/stack_recipe("bamboo spear", /obj/item/spear/bamboospear, 25, time = 9 SECONDS, crafting_flags = NONE, category = CAT_WEAPON_MELEE), \ new/datum/stack_recipe("blow gun", /obj/item/gun/syringe/blowgun, 10, time = 7 SECONDS, crafting_flags = NONE, category = CAT_WEAPON_RANGED), \ new/datum/stack_recipe("crude syringe", /obj/item/reagent_containers/syringe/crude, 5, time = 1 SECONDS, crafting_flags = NONE, category = CAT_CHEMISTRY), \ - new/datum/stack_recipe("rice hat", /obj/item/clothing/head/costume/rice_hat, 10, time = 7 SECONDS, crafting_flags = NONE, category = CAT_CLOTHING), \ + new/datum/stack_recipe("rice hat", /obj/item/clothing/head/costume/rice_hat, 10, time = 7 SECONDS, crafting_flags = CRAFT_SKIP_MATERIALS_PARITY, category = CAT_CLOTHING), \ null, \ new/datum/stack_recipe("bamboo stool", /obj/structure/chair/stool/bamboo, 2, time = 1 SECONDS, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_FURNITURE), \ new/datum/stack_recipe("bamboo mat piece", /obj/item/stack/tile/bamboo, 1, 4, 20, crafting_flags = NONE, category = CAT_TILES), \ @@ -477,7 +489,6 @@ GLOBAL_LIST_INIT(bamboo_recipes, list ( \ armor_type = /datum/armor/mineral_bamboo resistance_flags = FLAMMABLE merge_type = /obj/item/stack/sheet/mineral/bamboo - grind_results = list(/datum/reagent/cellulose = 10) material_type = /datum/material/bamboo walltype = /turf/closed/wall/mineral/bamboo drop_sound = null @@ -486,6 +497,9 @@ GLOBAL_LIST_INIT(bamboo_recipes, list ( \ /datum/armor/mineral_bamboo fire = 50 +/obj/item/stack/sheet/mineral/bamboo/grind_results() + return list(/datum/reagent/cellulose = 10) + /obj/item/stack/sheet/mineral/bamboo/get_main_recipes() . = ..() . += GLOB.bamboo_recipes @@ -547,10 +561,12 @@ GLOBAL_LIST_INIT(cloth_recipes, list ( \ merge_type = /obj/item/stack/sheet/cloth drop_sound = 'sound/items/handling/cloth/cloth_drop1.ogg' pickup_sound = 'sound/items/handling/cloth/cloth_pickup1.ogg' - grind_results = list(/datum/reagent/cellulose = 20) pickup_sound = SFX_CLOTH_PICKUP drop_sound = SFX_CLOTH_DROP +/obj/item/stack/sheet/cloth/grind_results() + return list(/datum/reagent/cellulose = 20) + /obj/item/stack/sheet/cloth/get_main_recipes() . = ..() . += GLOB.cloth_recipes @@ -607,23 +623,25 @@ GLOBAL_LIST_INIT(durathread_recipes, list ( \ force = 0 throwforce = 0 merge_type = /obj/item/stack/sheet/cotton - grind_results = list(/datum/reagent/cellulose = 20) - var/loom_result = /obj/item/stack/sheet/cloth - var/loom_time = 1 SECONDS drop_sound = 'sound/items/handling/cloth/cloth_drop1.ogg' pickup_sound = 'sound/items/handling/cloth/cloth_pickup1.ogg' + var/loom_result = /obj/item/stack/sheet/cloth + var/loom_time = 1 SECONDS + /obj/item/stack/sheet/cotton/Initialize(mapload) . = ..() AddElement(/datum/element/loomable, resulting_atom = loom_result, loom_time = loom_time) +/obj/item/stack/sheet/cotton/grind_results() + return list(/datum/reagent/cellulose = 20) + /obj/item/stack/sheet/cotton/durathread name = "raw durathread bundle" desc = "A bundle of raw durathread ready to be spun on the loom." singular_name = "raw durathread ball" icon_state = "sheet-durathreadraw" merge_type = /obj/item/stack/sheet/cotton/durathread - grind_results = list() loom_result = /obj/item/stack/sheet/durathread /obj/item/stack/sheet/cotton/wool @@ -632,7 +650,6 @@ GLOBAL_LIST_INIT(durathread_recipes, list ( \ singular_name = "raw wool ball" icon_state = "sheet-wool" merge_type = /obj/item/stack/sheet/cotton/wool - grind_results = list() loom_result = /obj/item/stack/sheet/cloth /* @@ -643,6 +660,7 @@ GLOBAL_LIST_INIT(cardboard_recipes, list ( \ new/datum/stack_recipe("cardborg suit", /obj/item/clothing/suit/costume/cardborg, 3, crafting_flags = NONE, category = CAT_CLOTHING), \ new/datum/stack_recipe("cardborg helmet", /obj/item/clothing/head/costume/cardborg, crafting_flags = NONE, category = CAT_CLOTHING), \ new/datum/stack_recipe("large box", /obj/structure/closet/cardboard, 4, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_CONTAINERS), \ + new/datum/stack_recipe("medium box", /obj/structure/closet/crate/cardboard, 4, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, category = CAT_CONTAINERS), \ new/datum/stack_recipe("cardboard cutout", /obj/item/cardboard_cutout, 5, crafting_flags = NONE, category = CAT_ENTERTAINMENT), \ null, \ @@ -704,7 +722,7 @@ GLOBAL_LIST_INIT(cardboard_recipes, list ( \ null, \ )) -/obj/item/stack/sheet/cardboard //BubbleWrap //it's cardboard you fuck +/obj/item/stack/sheet/cardboard name = "cardboard" desc = "Large sheets of card, like boxes folded flat." singular_name = "cardboard sheet" @@ -715,7 +733,6 @@ GLOBAL_LIST_INIT(cardboard_recipes, list ( \ force = 0 throwforce = 0 merge_type = /obj/item/stack/sheet/cardboard - grind_results = list(/datum/reagent/cellulose = 10) material_type = /datum/material/cardboard pickup_sound = 'sound/items/handling/materials/cardboard_pick_up.ogg' drop_sound = 'sound/items/handling/materials/cardboard_drop.ogg' @@ -729,6 +746,9 @@ GLOBAL_LIST_INIT(cardboard_recipes, list ( \ slapcraft_recipes = slapcraft_recipe_list,\ ) +/obj/item/stack/sheet/cardboard/grind_results() + return list(/datum/reagent/cellulose = 10) + /obj/item/stack/sheet/cardboard/get_main_recipes() . = ..() . += GLOB.cardboard_recipes @@ -791,22 +811,19 @@ GLOBAL_LIST_INIT(bronze_recipes, list ( \ throw_speed = 1 throw_range = 3 novariants = FALSE - grind_results = list(/datum/reagent/iron = 20, /datum/reagent/copper = 12) //we have no "tin" reagent so this is the closest thing merge_type = /obj/item/stack/sheet/bronze table_type = /obj/structure/table/bronze material_type = /datum/material/bronze walltype = /turf/closed/wall/mineral/bronze has_unique_girder = TRUE +/obj/item/stack/sheet/bronze/grind_results() + return list(/datum/reagent/iron = 20, /datum/reagent/copper = 12) + /obj/item/stack/sheet/bronze/get_main_recipes() . = ..() . += GLOB.bronze_recipes -/obj/item/stack/sheet/paperframes/Initialize(mapload, new_amount, merge = TRUE, list/mat_override=null, mat_amt=1) - . = ..() - pixel_x = 0 - pixel_y = 0 - /obj/item/stack/sheet/bronze/thirty amount = 30 @@ -848,7 +865,6 @@ GLOBAL_LIST_INIT(bronze_recipes, list ( \ w_class = WEIGHT_CLASS_NORMAL throw_speed = 1 throw_range = 3 - grind_results = list(/datum/reagent/carbon = 10) merge_type = /obj/item/stack/sheet/bone material_type = /datum/material/bone drop_sound = null @@ -873,6 +889,10 @@ GLOBAL_LIST_INIT(bronze_recipes, list ( \ /datum/element/slapcrafting,\ slapcraft_recipes = slapcraft_recipe_list,\ ) + +/obj/item/stack/sheet/bone/grind_results() + return list(/datum/reagent/carbon = 10) + GLOBAL_LIST_INIT(plastic_recipes, list( new /datum/stack_recipe("plastic floor tile", /obj/item/stack/tile/plastic, 1, 4, 20, time = 2 SECONDS, crafting_flags = NONE, category = CAT_TILES), \ new /datum/stack_recipe("light tram tile", /obj/item/stack/thermoplastic/light, 1, 4, 20, time = 2 SECONDS, crafting_flags = NONE, category = CAT_TILES), \ @@ -881,7 +901,7 @@ GLOBAL_LIST_INIT(plastic_recipes, list( new /datum/stack_recipe("plastic flaps", /obj/structure/plasticflaps, 5, crafting_flags = CRAFT_CHECK_DENSITY | CRAFT_ONE_PER_TURF | CRAFT_ON_SOLID_GROUND, time = 4 SECONDS, category = CAT_FURNITURE), \ new /datum/stack_recipe("water bottle", /obj/item/reagent_containers/cup/glass/waterbottle/empty, crafting_flags = NONE, category = CAT_CONTAINERS), \ new /datum/stack_recipe("large water bottle", /obj/item/reagent_containers/cup/glass/waterbottle/large/empty, 3, crafting_flags = NONE, category = CAT_CONTAINERS), \ - new /datum/stack_recipe("colo cups", /obj/item/reagent_containers/cup/glass/colocup, 1, crafting_flags = NONE, category = CAT_CONTAINERS), \ + new /datum/stack_recipe("colo cups", /obj/item/reagent_containers/cup/glass/colocup, 1, crafting_flags = NONE, category = CAT_CONTAINERS, removed_mats = list(/datum/material/plastic = HALF_SHEET_MATERIAL_AMOUNT)), \ new /datum/stack_recipe("mannequin", /obj/structure/mannequin/plastic, 25, time = 5 SECONDS, crafting_flags = CRAFT_ONE_PER_TURF, category = CAT_ENTERTAINMENT), \ new /datum/stack_recipe("wet floor sign", /obj/item/clothing/suit/caution, 2, crafting_flags = NONE, category = CAT_EQUIPMENT), \ new /datum/stack_recipe("warning cone", /obj/item/clothing/head/cone, 2, crafting_flags = NONE, category = CAT_EQUIPMENT), \ @@ -928,11 +948,13 @@ GLOBAL_LIST_INIT(paperframe_recipes, list( mats_per_unit = list(/datum/material/paper = SHEET_MATERIAL_AMOUNT) merge_type = /obj/item/stack/sheet/paperframes resistance_flags = FLAMMABLE - grind_results = list(/datum/reagent/cellulose = 20) material_type = /datum/material/paper drop_sound = null pickup_sound = null +/obj/item/stack/sheet/paperframes/grind_results() + return list(/datum/reagent/cellulose = 20) + /obj/item/stack/sheet/paperframes/get_main_recipes() . = ..() . += GLOB.paperframe_recipes @@ -1000,7 +1022,9 @@ GLOBAL_LIST_INIT(pizza_sheet_recipes, list( merge_type = /obj/item/stack/sheet/hauntium material_type = /datum/material/hauntium material_modifier = 1 //None of that wussy stuff - grind_results = list(/datum/reagent/hauntium = 20) + +/obj/item/stack/sheet/hauntium/grind_results() + return list(/datum/reagent/hauntium = 20) /obj/item/stack/sheet/hauntium/fifty amount = 50 diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm index 52a74476fbe57e..b1cb72cba89c97 100644 --- a/code/game/objects/items/stacks/stack.dm +++ b/code/game/objects/items/stacks/stack.dm @@ -58,6 +58,8 @@ // They're here instead of /stack/medical // because sticky tape can be used as a makeshift bandage or splint + /// Verb used when applying this object to someone + var/apply_verb = "applying" /// If set and this used as a splint for a broken bone wound, /// This is used as a multiplier for applicable slowdowns (lower = better) (also for speeding up burn recoveries) var/splint_factor @@ -94,12 +96,11 @@ if(merge) . = INITIALIZE_HINT_LATELOAD - var/materials_mult = amount if(LAZYLEN(mat_override)) - materials_mult *= mat_amt mats_per_unit = mat_override if(LAZYLEN(mats_per_unit)) - initialize_materials(mats_per_unit, materials_mult) + mats_per_unit = SSmaterials.FindOrCreateMaterialCombo(mats_per_unit, mat_amt) + initialize_materials(mats_per_unit, amount) recipes = get_main_recipes().Copy() if(material_type) @@ -120,6 +121,10 @@ /obj/item/stack/LateInitialize() merge_with_loc() +/obj/item/stack/Destroy() + mats_per_unit = null + return ..() + /obj/item/stack/Moved(atom/old_loc, movement_dir, forced, list/old_locs, momentum_change) . = ..() if((!throwing || throwing.target_turf == loc) && old_loc != loc && (flags_1 & INITIALIZED_1)) @@ -160,11 +165,6 @@ other_stack = find_other_stack(already_found, TRUE) return TRUE -/obj/item/stack/apply_material_effects(list/materials) - . = ..() - if(amount) - mats_per_unit = SSmaterials.FindOrCreateMaterialCombo(materials, 1/amount) - /obj/item/stack/blend_requirements() if(is_cyborg) to_chat(usr, span_warning("[src] is too integrated into your chassis and can't be ground up!")) @@ -176,14 +176,16 @@ if(current_amount <= 0 || QDELETED(src)) //just to get rid of this 0 amount/deleted stack we return success return TRUE + var/list/grind_reagents = grind_results() + if(reagents) reagents.trans_to(target_holder, reagents.total_volume, transferred_by = user) var/available_volume = target_holder.maximum_volume - target_holder.total_volume //compute total volume of reagents that will be occupied by grind_results var/total_volume = 0 - for(var/reagent in grind_results) - total_volume += grind_results[reagent] + for(var/reagent in grind_reagents) + total_volume += grind_reagents[reagent] //compute number of pieces(or sheets) from available_volume var/available_amount = min(current_amount, round(available_volume / total_volume)) @@ -191,7 +193,6 @@ return FALSE //Now transfer the grind results scaled by available_amount - var/list/grind_reagents = grind_results.Copy() for(var/reagent in grind_reagents) grind_reagents[reagent] *= available_amount target_holder.add_reagent_list(grind_reagents) @@ -417,7 +418,7 @@ #undef FULL_LIST /// Makes the item with the given recipe. -/obj/item/stack/proc/make_item(mob/builder, datum/stack_recipe/recipe, multiplier) +/obj/item/stack/proc/make_item(mob/builder, datum/stack_recipe/recipe, multiplier = 1) if(get_amount() < 1 && !is_cyborg) //sanity check as this shouldn't happen qdel(src) return @@ -456,8 +457,6 @@ return created = covered_turf.place_on_top(recipe.result_type, flags = CHANGETURF_INHERIT_AIR) builder.balloon_alert(builder, "placed [ispath(recipe.result_type, /turf/open) ? "floor" : "wall"]") - if((recipe.crafting_flags & CRAFT_APPLIES_MATS) && LAZYLEN(mats_per_unit)) - created.set_custom_materials(mats_per_unit, recipe.req_amount / recipe.res_amount) else created = new recipe.result_type(builder.drop_location()) @@ -468,17 +467,30 @@ if(ismovable(created)) created.setDir(builder.dir) created.on_craft_completion(list(used_stack), null, builder) - qdel(used_stack) //you've outlived your purpose builder.investigate_log("crafted [recipe.title]", INVESTIGATE_CRAFTING) // Apply mat datums - if((recipe.crafting_flags & CRAFT_APPLIES_MATS) && LAZYLEN(mats_per_unit)) + if(LAZYLEN(mats_per_unit) && !(recipe.crafting_flags & CRAFT_NO_MATERIALS)) + var/list/result_mats = mats_per_unit.Copy() + for(var/mat in recipe.removed_mats) + var/to_remove = recipe.removed_mats[mat] + var/datum/material/ref_mat = locate(mat) in result_mats + if(!ref_mat) + continue + if(result_mats[ref_mat] < to_remove) + result_mats -= ref_mat + else + result_mats[ref_mat] -= to_remove + if(isstack(created)) var/obj/item/stack/crafted_stack = created - crafted_stack.set_custom_materials(mats_per_unit, (recipe.req_amount / recipe.res_amount) * crafted_stack.amount) + crafted_stack.mats_per_unit = SSmaterials.FindOrCreateMaterialCombo(result_mats) + update_custom_materials() else - created.set_custom_materials(mats_per_unit, recipe.req_amount / recipe.res_amount) + created.set_custom_materials(result_mats, recipe.req_amount * multiplier) + + qdel(used_stack) //you've outlived your purpose // We could be qdeleted - like if it's a stack and has already been merged if(QDELETED(created)) @@ -573,11 +585,10 @@ if (amount < used) return FALSE amount -= used - if(check && is_zero_amount(delete_if_zero = TRUE)) - return TRUE - update_custom_materials() - update_appearance() - update_weight() + if(!is_zero_amount(delete_if_zero = check)) + update_custom_materials() + update_appearance() + update_weight() return TRUE /obj/item/stack/tool_use_check(mob/living/user, amount, heat_required) diff --git a/code/game/objects/items/stacks/stack_recipe.dm b/code/game/objects/items/stacks/stack_recipe.dm index f507e2fc784a3e..3f30d259aa91bd 100644 --- a/code/game/objects/items/stacks/stack_recipe.dm +++ b/code/game/objects/items/stacks/stack_recipe.dm @@ -25,6 +25,8 @@ var/trait_modifier = 1 /// Category for general crafting menu var/category + /// The amount of material to remove from the recipe's result + var/list/removed_mats ///crafting_flags var to hold bool values var/crafting_flags = CRAFT_CHECK_DENSITY @@ -41,6 +43,7 @@ trait_booster, trait_modifier = 1, category, + list/removed_mats, ) src.title = title @@ -55,6 +58,8 @@ src.trait_modifier = trait_modifier src.category = src.category || category || CAT_MISC + src.removed_mats = removed_mats + // We create base64 image only if item have color. Otherwise use icon_ref for TGUI var/obj/item/result = result_type var/paint = result::color diff --git a/code/game/objects/items/stacks/tape.dm b/code/game/objects/items/stacks/tape.dm index 62ac35ec72813f..a83f1627c74260 100644 --- a/code/game/objects/items/stacks/tape.dm +++ b/code/game/objects/items/stacks/tape.dm @@ -12,14 +12,14 @@ amount = 5 max_amount = 5 resistance_flags = FLAMMABLE - grind_results = list(/datum/reagent/cellulose = 5) splint_factor = 0.65 merge_type = /obj/item/stack/sticky_tape + greyscale_config = /datum/greyscale_config/tape + greyscale_colors = "#B2B2B2#BD6A62" + var/conferred_embed = /datum/embedding/sticky_tape ///The tape type you get when ripping off a piece of tape. var/obj/tape_gag = /obj/item/clothing/mask/muzzle/tape - greyscale_config = /datum/greyscale_config/tape - greyscale_colors = "#B2B2B2#BD6A62" /datum/embedding/sticky_tape pain_mult = 0 @@ -27,6 +27,9 @@ ignore_throwspeed_threshold = TRUE immune_traits = null +/obj/item/stack/sticky_tape/grind_results() + return list(/datum/reagent/cellulose = 5) + /obj/item/stack/sticky_tape/attack_hand(mob/user, list/modifiers) if(user.get_inactive_held_item() == src) if(is_zero_amount(delete_if_zero = TRUE)) @@ -166,7 +169,7 @@ if(issilicon(interacting_with)) var/mob/living/silicon/robotic_pal = interacting_with - var/robot_is_damaged = robotic_pal.getBruteLoss() + var/robot_is_damaged = robotic_pal.get_brute_loss() if(!robot_is_damaged) user.balloon_alert(user, "[robotic_pal] is not damaged!") @@ -178,7 +181,7 @@ if(!do_after(user, 3 SECONDS, target = robotic_pal)) return ITEM_INTERACT_BLOCKING - robotic_pal.adjustBruteLoss(-object_repair_value) + robotic_pal.adjust_brute_loss(-object_repair_value) use(1) to_chat(user, span_notice("You finish repairing [interacting_with] with [src].")) return ITEM_INTERACT_SUCCESS diff --git a/code/game/objects/items/stacks/tiles/light.dm b/code/game/objects/items/stacks/tiles/light.dm index 0c4bce3310a28d..651cf36ac1a31a 100644 --- a/code/game/objects/items/stacks/tiles/light.dm +++ b/code/game/objects/items/stacks/tiles/light.dm @@ -8,6 +8,7 @@ attack_verb_simple = list("bash", "batter", "bludgeon", "thrash", "smash") turf_type = /turf/open/floor/light merge_type = /obj/item/stack/tile/light + mats_per_unit = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 1.05, /datum/material/glass = SHEET_MATERIAL_AMOUNT * 1.05) var/state = 0 /obj/item/stack/tile/light/attackby(obj/item/O, mob/user, list/modifiers, list/attack_modifiers) diff --git a/code/game/objects/items/stacks/tiles/tile_mineral.dm b/code/game/objects/items/stacks/tiles/tile_mineral.dm index 4e7c23b51ff539..67a905b4334f46 100644 --- a/code/game/objects/items/stacks/tiles/tile_mineral.dm +++ b/code/game/objects/items/stacks/tiles/tile_mineral.dm @@ -230,3 +230,4 @@ turf_type = /turf/open/floor/fake_snow mineralType = "snow" merge_type = /obj/item/stack/tile/mineral/snow + mats_per_unit = list(/datum/material/snow = HALF_SHEET_MATERIAL_AMOUNT / 2) diff --git a/code/game/objects/items/stacks/tiles/tile_types.dm b/code/game/objects/items/stacks/tiles/tile_types.dm index 31c20817c90603..024142e04c44b9 100644 --- a/code/game/objects/items/stacks/tiles/tile_types.dm +++ b/code/game/objects/items/stacks/tiles/tile_types.dm @@ -137,6 +137,7 @@ /obj/item/stack/tile/wood/tile, /obj/item/stack/tile/wood/parquet, ) + mats_per_unit = list(/datum/material/wood = HALF_SHEET_MATERIAL_AMOUNT / 2) /obj/item/stack/tile/wood/parquet name = "parquet wood floor tile" @@ -175,6 +176,7 @@ /obj/item/stack/tile/bamboo/tatami/purple, /obj/item/stack/tile/bamboo/tatami/black, ) + mats_per_unit = list(/datum/material/bamboo = HALF_SHEET_MATERIAL_AMOUNT / 2) /obj/item/stack/tile/bamboo/tatami name = "Tatami with green rim" @@ -207,6 +209,7 @@ inhand_icon_state = "tile-basalt" turf_type = /turf/open/floor/fakebasalt merge_type = /obj/item/stack/tile/basalt + mats_per_unit = list(/datum/material/sand = SHEET_MATERIAL_AMOUNT * 2) //Carpets /obj/item/stack/tile/carpet @@ -1079,6 +1082,7 @@ /obj/item/stack/tile/circuit/green, /obj/item/stack/tile/circuit/red, ) + mats_per_unit = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 1.05, /datum/material/glass = SHEET_MATERIAL_AMOUNT * 1.05) /obj/item/stack/tile/circuit/green name = "green circuit tile" @@ -1142,7 +1146,7 @@ singular_name = "plastic floor tile" desc = "A tile of cheap, flimsy plastic flooring." icon_state = "tile_plastic" - mats_per_unit = list(/datum/material/plastic=SMALL_MATERIAL_AMOUNT*5) + mats_per_unit = list(/datum/material/plastic = HALF_SHEET_MATERIAL_AMOUNT / 2) turf_type = /turf/open/floor/plastic merge_type = /obj/item/stack/tile/plastic @@ -1191,13 +1195,13 @@ desc = "A clangy tile made of high-quality bronze. Clockwork construction techniques allow the clanging to be minimized." icon_state = "tile_brass" turf_type = /turf/open/floor/bronze - mats_per_unit = list(/datum/material/bronze=SMALL_MATERIAL_AMOUNT*5) + mats_per_unit = list(/datum/material/bronze = HALF_SHEET_MATERIAL_AMOUNT / 2) merge_type = /obj/item/stack/tile/bronze tile_reskin_types = list( /obj/item/stack/tile/bronze, /obj/item/stack/tile/bronze/flat, /obj/item/stack/tile/bronze/filled, - ) + ) /obj/item/stack/tile/bronze/flat name = "flat bronze tile" @@ -1257,7 +1261,7 @@ desc = "Flooring that shows its contents underneath. Engineers love it!" icon_state = "maint_catwalk" inhand_icon_state = "tile-catwalk" - mats_per_unit = list(/datum/material/iron=SMALL_MATERIAL_AMOUNT) + mats_per_unit = list(/datum/material/iron = SMALL_MATERIAL_AMOUNT * 1.2) turf_type = /turf/open/floor/catwalk_floor merge_type = /obj/item/stack/tile/catwalk_tile //Just to be cleaner, these all stack with each other tile_reskin_types = list( @@ -1324,7 +1328,7 @@ inhand_icon_state = "tile-rglass" turf_type = /turf/open/floor/glass/reinforced merge_type = /obj/item/stack/tile/rglass - mats_per_unit = list(/datum/material/iron=SHEET_MATERIAL_AMOUNT * 0.125, /datum/material/glass=SHEET_MATERIAL_AMOUNT * 0.25) // 4 tiles per sheet + mats_per_unit = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 0.125, /datum/material/glass=SHEET_MATERIAL_AMOUNT * 0.25) // 4 tiles per sheet /obj/item/stack/tile/rglass/sixty amount = 60 diff --git a/code/game/objects/items/stacks/wrap.dm b/code/game/objects/items/stacks/wrap.dm index 600c7b3e451be9..0c445cc2986b1a 100644 --- a/code/game/objects/items/stacks/wrap.dm +++ b/code/game/objects/items/stacks/wrap.dm @@ -53,8 +53,8 @@ set_greyscale(colors = list(generated_base_color, generated_ribbon_color)) /obj/item/stack/wrapping_paper/click_alt(mob/user) - var/new_base = input(user, "", "Select a base color", color) as color - var/new_ribbon = input(user, "", "Select a ribbon color", color) as color + var/new_base = tgui_color_picker(user, "", "Select a base color", color) + var/new_ribbon = tgui_color_picker(user, "", "Select a ribbon color", color) if(!new_base || !new_ribbon) return CLICK_ACTION_BLOCKING @@ -93,9 +93,11 @@ amount = 25 max_amount = 25 resistance_flags = FLAMMABLE - grind_results = list(/datum/reagent/cellulose = 5) merge_type = /obj/item/stack/package_wrap +/obj/item/stack/package_wrap/grind_results() + return list(/datum/reagent/cellulose = 5) + /obj/item/stack/package_wrap/suicide_act(mob/living/user) user.visible_message(span_suicide("[user] begins wrapping [user.p_them()]self in \the [src]! It looks like [user.p_theyre()] trying to commit suicide!")) if(use(3)) diff --git a/code/game/objects/items/storage/bags.dm b/code/game/objects/items/storage/bags.dm index 20e9700e07569b..d0292a81f042b4 100644 --- a/code/game/objects/items/storage/bags.dm +++ b/code/game/objects/items/storage/bags.dm @@ -161,6 +161,8 @@ INVOKE_ASYNC(src, PROC_REF(handle_move), user) /obj/item/storage/bag/ore/proc/handle_move(mob/living/user) + if(user.stat != CONSCIOUS) + return var/turf/tile = get_turf(user) var/obj/structure/ore_box/box = null if(istype(user.pulling, /obj/structure/ore_box)) @@ -305,7 +307,7 @@ // "Only 20 uranium 'cause of radiation" /obj/item/storage/bag/sheetsnatcher/debug/PopulateContents() // amount should be null if it should spawn with the type's default amount - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/stack/sheet/iron/fifty = null, /obj/item/stack/sheet/glass/fifty = null, /obj/item/stack/sheet/rglass/fifty = null, @@ -327,6 +329,7 @@ /obj/item/stack/rods/fifty = null, /obj/item/stack/sheet/mineral/plastitanium = 50, /obj/item/stack/sheet/mineral/abductor = 50, + /obj/item/stack/sheet/mineral/sandbags/fifty = null, /obj/item/stack/sheet/cardboard/fifty = null, ) for(var/obj/item/stack/stack_type as anything in items_inside) @@ -513,6 +516,7 @@ slot_flags = ITEM_SLOT_BACK|ITEM_SLOT_SUITSTORE|ITEM_SLOT_NECK resistance_flags = FLAMMABLE storage_type = /datum/storage/bag/rebar_quiver + custom_materials = list(/datum/material/iron = SMALL_MATERIAL_AMOUNT * 6.5, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 1.5) /obj/item/storage/bag/rebar_quiver/syndicate icon_state = "syndie_quiver_0" @@ -582,6 +586,7 @@ /obj/item/storage/bag/quiver/lesser storage_type = /datum/storage/bag/quiver/less + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT) /obj/item/storage/bag/quiver/full/PopulateContents() . = ..() diff --git a/code/game/objects/items/storage/belt.dm b/code/game/objects/items/storage/belt.dm index 91240c6534e6a2..00b49c8913c502 100644 --- a/code/game/objects/items/storage/belt.dm +++ b/code/game/objects/items/storage/belt.dm @@ -343,7 +343,7 @@ /obj/item/storage/belt/champion/Initialize(mapload) . = ..() - AddComponent(/datum/component/adjust_fishing_difficulty, -2) + AddElement(/datum/element/adjust_fishing_difficulty, -2) /obj/item/storage/belt/military name = "chest rig" @@ -454,7 +454,7 @@ /obj/item/grenade/syndieminibomb = 2, /obj/item/multitool = 1, /obj/item/screwdriver = 1, - ),src) + ), src) /obj/item/storage/belt/wands @@ -588,10 +588,19 @@ w_class = WEIGHT_CLASS_BULKY interaction_flags_click = parent_type::interaction_flags_click | NEED_DEXTERITY | NEED_HANDS var/stored_blade + actions_types = list(/datum/action/innate/blade_counter) + action_slots = ITEM_SLOT_BELT + COOLDOWN_DECLARE(resheath_cooldown) + COOLDOWN_DECLARE(full_ability_cooldown) /obj/item/storage/belt/sheath/Initialize(mapload) . = ..() AddElement(/datum/element/update_icon_updates_onmob) + RegisterSignal(src, COMSIG_ATOM_STORED_ITEM, PROC_REF(post_resheath)) + +/obj/item/storage/belt/sheath/Destroy(force) + . = ..() + UnregisterSignal(src, COMSIG_ATOM_STORED_ITEM) /obj/item/storage/belt/sheath/examine(mob/user) . = ..() @@ -623,6 +632,104 @@ new stored_blade(src) update_appearance() +/obj/item/storage/belt/sheath/proc/post_resheath() + SIGNAL_HANDLER + COOLDOWN_START(src, resheath_cooldown, 10 SECONDS) + +/datum/action/innate/blade_counter + name = "Counterattack" + desc = "Anticipate an enemy's attack and strike back with your sheathed blade." + button_icon = 'icons/mob/actions/actions_spells.dmi' + button_icon_state = "declaration" + ranged_mousepointer = 'icons/effects/mouse_pointers/honorbound.dmi' + + enable_text = "You prepare to counterattack a target..." + disable_text = "You relax your stance." + + click_action = TRUE + + var/datum/weakref/eyed_fool + +/datum/action/innate/blade_counter/IsAvailable(feedback = TRUE) + if(!isliving(owner)) + return FALSE + var/obj/item/storage/belt/sheath/owners_sheath = target + if(!COOLDOWN_FINISHED(owners_sheath, full_ability_cooldown)) + if(feedback) + to_chat(owner, span_warning("You failed a counterattack too recently!")) + return FALSE + if(!length(owners_sheath.contents)) + if(feedback) + to_chat(owner, span_warning("Your sheath is empty!")) + return FALSE + if(!COOLDOWN_FINISHED(owners_sheath, resheath_cooldown)) + if(feedback) + to_chat(owner, span_warning("You only just resheathed your blade!")) + return FALSE + return TRUE + +/datum/action/innate/blade_counter/proc/final_checks(atom/cast_on) + if(!isliving(cast_on)) + return FALSE + if(owner == cast_on) + to_chat(owner, span_warning("You can't counterattack yourself!")) + return FALSE + var/mob/living/target = cast_on + if(!target.mind) + to_chat(owner, span_warning("They are too unpredictable to counterattack!")) + return FALSE + var/obj/item/storage/belt/sheath/oursheath = target + if(!length(oursheath.contents)) + return FALSE + return TRUE + +/datum/action/innate/blade_counter/do_ability(mob/living/swordsman, mob/living/cast_on) + if(!final_checks(cast_on)) + return TRUE + var/obj/item/storage/belt/sheath/used_sheath = target + RegisterSignal(swordsman, COMSIG_LIVING_CHECK_BLOCK, PROC_REF(counter_attack)) + swordsman.Immobilize(1 SECONDS) + eyed_fool = WEAKREF(cast_on) + swordsman.visible_message(span_danger("[swordsman] widens [p_their(swordsman)] stance, [p_their(swordsman)] hand hovering over \the [used_sheath]!"), span_notice("You prepare to counterattack [cast_on]!")) + addtimer(CALLBACK(src, PROC_REF(relax), swordsman), 1 SECONDS) + COOLDOWN_START(used_sheath, full_ability_cooldown, 60 SECONDS) + unset_ranged_ability(swordsman) + return TRUE + +#define COUNTERMULTIPLIER 3 + +/datum/action/innate/blade_counter/proc/counter_attack(mob/living/forward_thinker, atom/attackingthing, damage, attack_text, attack_type) + SIGNAL_HANDLER + var/obj/item/storage/belt/sheath/used_sheath = target + if(!used_sheath || !length(used_sheath.contents) || (attack_type != MELEE_ATTACK && attack_type != UNARMED_ATTACK)) + return FAILED_BLOCK + + var/obj/item/justicetool = used_sheath.contents[1] + var/mob/living/fool = isliving(attackingthing) ? attackingthing : attackingthing.loc + if(used_sheath.loc != forward_thinker || fool != eyed_fool.resolve() || !forward_thinker.put_in_active_hand(justicetool)) + return FAILED_BLOCK + var/obj/item/bodypart/offending_hand = fool.get_active_hand() + fool.apply_damage( + damage = justicetool.force * COUNTERMULTIPLIER, + damagetype = justicetool.damtype, + def_zone = offending_hand, + blocked = fool.run_armor_check(offending_hand, MELEE, armour_penetration = justicetool.armour_penetration, silent = TRUE), + wound_bonus = justicetool.wound_bonus * COUNTERMULTIPLIER, + exposed_wound_bonus = justicetool.exposed_wound_bonus * COUNTERMULTIPLIER, + sharpness = justicetool.sharpness, + attack_direction = get_dir(forward_thinker, fool), + attacking_item = justicetool, + ) + playsound(forward_thinker, 'sound/items/unsheath.ogg', 50, TRUE) + forward_thinker.visible_message(span_danger("[forward_thinker] swiftly draws \the [justicetool] and strikes [fool] during [p_their(fool)] attack!"), span_notice("You swiftly draw \the [justicetool] and counter-attack [fool]!")) + COOLDOWN_RESET(used_sheath, full_ability_cooldown) + return SUCCESSFUL_BLOCK + +#undef COUNTERMULTIPLIER + +/datum/action/innate/blade_counter/proc/relax(mob/living/holder) + UnregisterSignal(holder, COMSIG_LIVING_CHECK_BLOCK) + /obj/item/storage/belt/sheath/sabre name = "sabre sheath" desc = "An ornate sheath designed to hold an officer's blade." @@ -640,6 +747,15 @@ worn_icon_state = "grass_sheath" storage_type = /datum/storage/green_sabre_belt +/obj/item/storage/belt/sheath/gladius + name = "gladius scabbard" + desc = "A fun-sized sheath for a fun-sized sword." + icon_state = "gladius_sheath" + inhand_icon_state = "gladius_sheath" + worn_icon_state = "gladius_sheath" + storage_type = /datum/storage/gladius_belt + stored_blade = /obj/item/claymore/gladius + /obj/item/storage/belt/plant name = "botanical belt" desc = "A sturdy leather belt used to hold most hydroponics supplies." diff --git a/code/game/objects/items/storage/boxes/_boxes.dm b/code/game/objects/items/storage/boxes/_boxes.dm index ab29439da506f9..a491ace1eea766 100644 --- a/code/game/objects/items/storage/boxes/_boxes.dm +++ b/code/game/objects/items/storage/boxes/_boxes.dm @@ -19,6 +19,8 @@ /obj/item/storage/box/Initialize(mapload) . = ..() + if(foldable_result == /obj/item/stack/sheet/cardboard) + set_custom_materials(list(/datum/material/cardboard = SHEET_MATERIAL_AMOUNT)) update_appearance() /obj/item/storage/box/suicide_act(mob/living/carbon/user) diff --git a/code/game/objects/items/storage/boxes/cargo_boxes.dm b/code/game/objects/items/storage/boxes/cargo_boxes.dm index ea2fc77ffb13d0..749873b50a06a9 100644 --- a/code/game/objects/items/storage/boxes/cargo_boxes.dm +++ b/code/game/objects/items/storage/boxes/cargo_boxes.dm @@ -6,10 +6,10 @@ illustration = "shipping" /obj/item/storage/box/shipping/PopulateContents() - var/static/items_inside = list( - /obj/item/dest_tagger=1, - /obj/item/universal_scanner=1, - /obj/item/stack/package_wrap/small=2, - /obj/item/stack/wrapping_paper/small=1, - ) + var/list/items_inside = list( + /obj/item/dest_tagger = 1, + /obj/item/universal_scanner = 1, + /obj/item/stack/package_wrap/small = 2, + /obj/item/stack/wrapping_paper/small = 1, + ) generate_items_inside(items_inside,src) diff --git a/code/game/objects/items/storage/boxes/clothes_boxes.dm b/code/game/objects/items/storage/boxes/clothes_boxes.dm index 2ac97ff0313dbc..f692354a689d61 100644 --- a/code/game/objects/items/storage/boxes/clothes_boxes.dm +++ b/code/game/objects/items/storage/boxes/clothes_boxes.dm @@ -232,6 +232,14 @@ new /obj/item/clothing/gloves/divine_archer(src) new /obj/item/clothing/shoes/divine_archer(src) +/obj/item/storage/box/holy/heretic + name = "Occult Practitioner Kit" + typepath_for_preview = /obj/item/clothing/suit/chaplainsuit/armor/heretic + +/obj/item/storage/box/holy/heretic/PopulateContents() + new /obj/item/clothing/suit/chaplainsuit/armor/heretic(src) + new /obj/item/clothing/head/helmet/chaplain/heretic(src) + /obj/item/storage/box/floor_camo name = "floor tile camo box" desc = "Thank you for shopping from Camo-J's, our uniquely designed \ diff --git a/code/game/objects/items/storage/boxes/engineering_boxes.dm b/code/game/objects/items/storage/boxes/engineering_boxes.dm index f2b0fcc97b27a9..f2f0d43d620886 100644 --- a/code/game/objects/items/storage/boxes/engineering_boxes.dm +++ b/code/game/objects/items/storage/boxes/engineering_boxes.dm @@ -24,7 +24,7 @@ storage_type = /datum/storage/box/debug /obj/item/storage/box/debugtools/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/card/emag=1, /obj/item/construction/rcd/combat/admin=1, /obj/item/disk/tech_disk/debug=1, diff --git a/code/game/objects/items/storage/boxes/food_boxes.dm b/code/game/objects/items/storage/boxes/food_boxes.dm index 0c24d5b18f45f7..bd4b3d8e66d461 100644 --- a/code/game/objects/items/storage/boxes/food_boxes.dm +++ b/code/game/objects/items/storage/boxes/food_boxes.dm @@ -48,6 +48,7 @@ desc = "Instructions: DO NOT heat in microwave. Product will remove all hostile threats with cutting edge Donk Co. technology." icon_state = "donkpocketboxshell" donktype = /obj/item/ammo_casing/shotgun/flechette/donk + storage_type = /datum/storage/box/donk_bullets /obj/item/storage/box/papersack name = "paper sack" @@ -58,6 +59,7 @@ illustration = null resistance_flags = FLAMMABLE foldable_result = null + custom_materials = list(/datum/material/paper = SHEET_MATERIAL_AMOUNT * 1.25) /// A list of all available papersack reskins var/list/papersack_designs = list() ///What design from papersack_designs we are currently using. @@ -377,7 +379,6 @@ w_class = WEIGHT_CLASS_TINY resistance_flags = FLAMMABLE item_flags = NOBLUDGEON|SKIP_FANTASY_ON_SPAWN - grind_results = list(/datum/reagent/aluminium = 1) ///The typepath of the type of gum that will spawn in our PopulateContents, ///this is set in Initialize by the gum box if there is one. @@ -392,6 +393,9 @@ atom_storage.display_contents = FALSE update_appearance(UPDATE_OVERLAYS) +/obj/item/storage/bubblegum_wrapper/grind_results() + return list(/datum/reagent/aluminium = 1) + /obj/item/storage/bubblegum_wrapper/PopulateContents() new gum_to_spawn(src) diff --git a/code/game/objects/items/storage/boxes/implant_boxes.dm b/code/game/objects/items/storage/boxes/implant_boxes.dm index b0961f881e31c8..b3f1db2e457218 100644 --- a/code/game/objects/items/storage/boxes/implant_boxes.dm +++ b/code/game/objects/items/storage/boxes/implant_boxes.dm @@ -5,7 +5,7 @@ illustration = "implant" /obj/item/storage/box/trackimp/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/implantcase/tracking = 4, /obj/item/implanter = 1, /obj/item/implantpad = 1, @@ -19,7 +19,7 @@ illustration = "implant" /obj/item/storage/box/minertracker/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/implantcase/tracking = 2, /obj/item/implantcase/beacon = 2, /obj/item/implanter = 1, @@ -34,7 +34,7 @@ illustration = "implant" /obj/item/storage/box/chemimp/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/implantcase/chem = 5, /obj/item/implanter = 1, /obj/item/implantpad = 1, @@ -47,7 +47,7 @@ illustration = "implant" /obj/item/storage/box/exileimp/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/implantcase/exile = 5, /obj/item/implanter = 1, /obj/item/implantpad = 1, @@ -61,7 +61,7 @@ illustration = "implant" /obj/item/storage/box/beaconimp/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/implantcase/beacon = 3, /obj/item/implanter = 1, /obj/item/implantpad = 1, @@ -74,7 +74,7 @@ illustration = "implant" /obj/item/storage/box/teleport_blocker/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/implantcase/teleport_blocker = 2, /obj/item/implanter = 1, /obj/item/implantpad = 1, diff --git a/code/game/objects/items/storage/boxes/job_boxes.dm b/code/game/objects/items/storage/boxes/job_boxes.dm index bfa20617d59524..23e0d2fc33ac21 100644 --- a/code/game/objects/items/storage/boxes/job_boxes.dm +++ b/code/game/objects/items/storage/boxes/job_boxes.dm @@ -195,9 +195,11 @@ return ITEM_INTERACT_BLOCKING qdel(tool) loc.balloon_alert(user, "wheels added, honk!") - var/obj/item/bot_assembly/honkbot/A = new + var/obj/item/bot_assembly/honkbot/assembly = new(drop_location()) + var/held_index = user.is_holding(src) qdel(src) - user.put_in_hands(A) + if (held_index) + user.put_in_hand(assembly, held_index) return ITEM_INTERACT_SUCCESS /obj/item/storage/box/clown/suicide_act(mob/living/user) diff --git a/code/game/objects/items/storage/boxes/medical_boxes.dm b/code/game/objects/items/storage/boxes/medical_boxes.dm index 7d468ff81b1a58..f8563a10024e97 100644 --- a/code/game/objects/items/storage/boxes/medical_boxes.dm +++ b/code/game/objects/items/storage/boxes/medical_boxes.dm @@ -87,7 +87,7 @@ illustration = "dna" /obj/item/storage/box/injectors/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/dnainjector/h2m = 3, /obj/item/dnainjector/m2h = 3, ) @@ -127,7 +127,7 @@ illustration = "beaker" /obj/item/storage/box/evilmeds/PopulateContents() - var/static/list/items_inside = list( + var/list/items_inside = list( /obj/item/reagent_containers/cup/beaker/meta/omnizine = 1, /obj/item/reagent_containers/cup/beaker/meta/sal_acid = 1, /obj/item/reagent_containers/cup/beaker/meta/oxandrolone = 1, diff --git a/code/game/objects/items/storage/boxes/misc.dm b/code/game/objects/items/storage/boxes/misc.dm index 41c958b1398e6c..c9d184feb61981 100644 --- a/code/game/objects/items/storage/boxes/misc.dm +++ b/code/game/objects/items/storage/boxes/misc.dm @@ -63,7 +63,7 @@ icon_state = "blank_package" /obj/item/storage/box/methdealer/PopulateContents() - var/static/list/items_inside = list( + var/list/items_inside = list( /obj/item/food/drug/meth_crystal = 4, /obj/item/cigarette/pipe/crackpipe = 2, ) @@ -75,7 +75,7 @@ icon_state = "blank_package" /obj/item/storage/box/opiumdealer/PopulateContents() - var/static/list/items_inside = list( + var/list/items_inside = list( /obj/item/food/drug/opium = 4, /obj/item/cigarette/pipe/cobpipe = 2, ) @@ -87,7 +87,7 @@ icon_state = "blank_package" /obj/item/storage/box/kronkdealer/PopulateContents() - var/static/list/items_inside = list( + var/list/items_inside = list( /obj/item/food/drug/moon_rock = 4, /obj/item/cigarette/pipe/crackpipe = 2, ) diff --git a/code/game/objects/items/storage/boxes/science_boxes.dm b/code/game/objects/items/storage/boxes/science_boxes.dm index 46d0890ea40974..11eebd8699cf77 100644 --- a/code/game/objects/items/storage/boxes/science_boxes.dm +++ b/code/game/objects/items/storage/boxes/science_boxes.dm @@ -71,7 +71,7 @@ desc = "Contains a variety of basic stock parts." /obj/item/storage/box/stockparts/basic/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/stock_parts/capacitor = 3, /obj/item/stock_parts/servo = 3, /obj/item/stock_parts/matter_bin = 3, @@ -86,7 +86,7 @@ icon_state = "syndiebox" /obj/item/storage/box/stockparts/deluxe/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/stock_parts/capacitor/quadratic = 3, /obj/item/stock_parts/scanning_module/triphasic = 3, /obj/item/stock_parts/servo/femto = 3, @@ -104,7 +104,7 @@ new /obj/item/circuitboard/machine/protolathe/offstation(src) new /obj/item/circuitboard/machine/destructive_analyzer(src) new /obj/item/circuitboard/machine/circuit_imprinter/offstation(src) - new /obj/item/circuitboard/computer/rdconsole(src) + new /obj/item/circuitboard/computer/rdconsole/unlocked(src) /obj/item/storage/box/stabilized //every single stabilized extract from xenobiology name = "box of stabilized extracts" @@ -112,7 +112,7 @@ storage_type = /datum/storage/box/stabilized /obj/item/storage/box/stabilized/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/slimecross/stabilized/adamantine=1, /obj/item/slimecross/stabilized/black=1, /obj/item/slimecross/stabilized/blue=1, diff --git a/code/game/objects/items/storage/boxes/service_boxes.dm b/code/game/objects/items/storage/boxes/service_boxes.dm index b751cfc1e5d7fc..e2b8a1082ec61b 100644 --- a/code/game/objects/items/storage/boxes/service_boxes.dm +++ b/code/game/objects/items/storage/boxes/service_boxes.dm @@ -150,7 +150,7 @@ custom_premium_price = PAYCHECK_CREW * 3 /obj/item/storage/box/dishdrive/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/circuitboard/machine/dish_drive = 1, /obj/item/screwdriver = 1, /obj/item/stack/cable_coil/five = 1, diff --git a/code/game/objects/items/storage/fancy.dm b/code/game/objects/items/storage/fancy.dm index f8b650ec0eed61..8f697d4a6bd5fe 100644 --- a/code/game/objects/items/storage/fancy.dm +++ b/code/game/objects/items/storage/fancy.dm @@ -609,7 +609,7 @@ spawn_count = 10 contents_tag = "pickle" foldable_result = /obj/item/reagent_containers/cup/beaker/large - custom_materials = list(/datum/material/glass = SHEET_MATERIAL_AMOUNT) + custom_materials = list(/datum/material/glass = SHEET_MATERIAL_AMOUNT * 1.25) open_status = FANCY_CONTAINER_ALWAYS_OPEN has_open_closed_states = FALSE storage_type = /datum/storage/pickles_jar diff --git a/code/game/objects/items/storage/garment.dm b/code/game/objects/items/storage/garment.dm index 4fe7ad9c664cf5..507523e1f8dbc3 100644 --- a/code/game/objects/items/storage/garment.dm +++ b/code/game/objects/items/storage/garment.dm @@ -100,7 +100,7 @@ new /obj/item/clothing/suit/armor/vest/warden/alt(src) new /obj/item/clothing/under/rank/security/warden/formal(src) new /obj/item/clothing/under/rank/security/warden/skirt(src) - new /obj/item/clothing/gloves/krav_maga/sec(src) + new /obj/item/clothing/gloves/kaza_ruk/sec(src) new /obj/item/clothing/glasses/hud/security/sunglasses(src) new /obj/item/clothing/mask/gas/sechailer(src) @@ -146,7 +146,7 @@ new /obj/item/clothing/head/utility/hardhat/white(src) new /obj/item/clothing/head/utility/hardhat/welding/white(src) new /obj/item/clothing/neck/cloak/ce(src) - new /obj/item/clothing/shoes/sneakers/brown(src) + new /obj/item/clothing/shoes/workboots(src) /obj/item/storage/bag/garment/quartermaster/PopulateContents() new /obj/item/clothing/under/rank/cargo/qm(src) diff --git a/code/game/objects/items/storage/holsters.dm b/code/game/objects/items/storage/holsters.dm index 5f191ae60f0b7c..a4f9a271c17584 100644 --- a/code/game/objects/items/storage/holsters.dm +++ b/code/game/objects/items/storage/holsters.dm @@ -37,9 +37,13 @@ desc = "A rather plain pair of shoulder holsters with a bit of insulated padding inside. Designed to hold energy weaponry. A production stamp indicates that it was shipped with a disabler." /obj/item/storage/belt/holster/energy/disabler/PopulateContents() - generate_items_inside(list( - /obj/item/gun/energy/disabler = 1, - ),src) + new /obj/item/gun/energy/disabler(src) + +/obj/item/storage/belt/holster/energy/laser_pistol + desc = "A rather plain pair of shoulder holsters with a bit of insulated padding inside. Designed to hold energy weaponry. A production stamp indicates that it was shipped with a Type 5C laser pistol." + +/obj/item/storage/belt/holster/energy/laser_pistol/PopulateContents() + new /obj/item/gun/energy/laser/pistol(src) /obj/item/storage/belt/holster/energy/smoothbore desc = "A rather plain pair of shoulder holsters with a bit of insulated padding inside. Designed to hold energy weaponry. Seems it was meant to fit two smoothbores." diff --git a/code/game/objects/items/storage/medkit.dm b/code/game/objects/items/storage/medkit.dm index 8efce4eefc732b..ab56a92533207e 100644 --- a/code/game/objects/items/storage/medkit.dm +++ b/code/game/objects/items/storage/medkit.dm @@ -42,7 +42,7 @@ /obj/item/storage/medkit/regular/PopulateContents() if(empty) return - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/stack/medical/gauze = 1, /obj/item/stack/medical/suture = 2, /obj/item/stack/medical/mesh = 2, @@ -60,7 +60,7 @@ /obj/item/storage/medkit/emergency/PopulateContents() if(empty) return - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/healthanalyzer/simple = 1, /obj/item/stack/medical/gauze = 1, /obj/item/stack/medical/bandage = 1, @@ -80,7 +80,7 @@ /obj/item/storage/medkit/surgery/PopulateContents() if(empty) return - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/healthanalyzer = 1, /obj/item/stack/medical/gauze/twelve = 1, /obj/item/stack/medical/suture = 2, @@ -104,7 +104,7 @@ /obj/item/storage/medkit/surgery_syndie/PopulateContents() if(empty) return - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/scalpel/advanced = 1, /obj/item/retractor/advanced = 1, /obj/item/cautery/advanced = 1, @@ -130,7 +130,7 @@ /obj/item/storage/medkit/ancient/PopulateContents() if(empty) return - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/stack/medical/gauze = 1, /obj/item/stack/medical/bruise_pack = 3, /obj/item/stack/medical/ointment= 3) @@ -157,7 +157,7 @@ /obj/item/storage/medkit/fire/PopulateContents() if(empty) return - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/reagent_containers/applicator/patch/aiuri = 3, /obj/item/reagent_containers/spray/hercuri = 1, /obj/item/reagent_containers/hypospray/medipen/oxandrolone = 1, @@ -182,7 +182,7 @@ /obj/item/storage/medkit/toxin/PopulateContents() if(empty) return - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/storage/pill_bottle/multiver/less = 1, /obj/item/reagent_containers/syringe/syriniver = 3, /obj/item/storage/pill_bottle/potassiodide = 1, @@ -208,7 +208,7 @@ /obj/item/storage/medkit/o2/PopulateContents() if(empty) return - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/reagent_containers/syringe/convermol = 3, /obj/item/reagent_containers/hypospray/medipen/salbutamol = 1, /obj/item/reagent_containers/hypospray/medipen = 1, @@ -232,7 +232,7 @@ /obj/item/storage/medkit/brute/PopulateContents() if(empty) return - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/reagent_containers/applicator/patch/libital = 3, /obj/item/stack/medical/gauze = 1, /obj/item/storage/pill_bottle/probital = 1, @@ -255,7 +255,7 @@ /obj/item/storage/medkit/advanced/PopulateContents() if(empty) return - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/reagent_containers/applicator/patch/synthflesh = 3, /obj/item/reagent_containers/hypospray/medipen/atropine = 2, /obj/item/stack/medical/gauze = 1, @@ -274,7 +274,7 @@ /obj/item/storage/medkit/tactical_lite/PopulateContents() if(empty) return - var/static/list/items_inside = list( + var/list/items_inside = list( /obj/item/healthanalyzer/advanced = 1, /obj/item/reagent_containers/hypospray/medipen/atropine = 1, /obj/item/stack/medical/gauze = 1, @@ -297,7 +297,7 @@ /obj/item/storage/medkit/tactical/PopulateContents() if(empty) return - var/static/list/items_inside = list( + var/list/items_inside = list( /obj/item/cautery = 1, /obj/item/scalpel = 1, /obj/item/healthanalyzer/advanced = 1, @@ -319,13 +319,15 @@ desc = "May or may not contain traces of lead." icon_state = "medkit_tactical_premium" inhand_icon_state = "medkit-tactical-premium" - grind_results = list(/datum/reagent/lead = 10) storage_type = /datum/storage/medkit/tactical/premium +/obj/item/storage/medkit/tactical/premium/grind_results() + return list(/datum/reagent/lead = 10) + /obj/item/storage/medkit/tactical/premium/PopulateContents() if(empty) return - var/static/list/items_inside = list( + var/list/items_inside = list( /obj/item/stack/medical/suture/medicated = 2, /obj/item/stack/medical/mesh/advanced = 2, /obj/item/reagent_containers/applicator/patch/libital = 3, @@ -356,7 +358,7 @@ /obj/item/storage/medkit/coroner/PopulateContents() if(empty) return - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/reagent_containers/cup/bottle/formaldehyde = 1, /obj/item/reagent_containers/medigel/sterilizine = 1, /obj/item/reagent_containers/blood = 1, @@ -374,14 +376,16 @@ balloon_alert(user, "items inside!") return ITEM_INTERACT_BLOCKING - var/obj/item/bot_assembly/medbot/medbot_assembly = new() + var/obj/item/bot_assembly/medbot/medbot_assembly = new(drop_location()) medbot_assembly.set_skin(get_medbot_skin()) - user.put_in_hands(medbot_assembly) medbot_assembly.balloon_alert(user, "arm added") medbot_assembly.robot_arm = tool.type medbot_assembly.medkit_type = type qdel(tool) + var/held_index = user.is_holding(src) qdel(src) + if (held_index) + user.put_in_hand(medbot_assembly, held_index) return ITEM_INTERACT_SUCCESS /// Gets what skin (icon_state) this medkit uses for a medbot @@ -496,6 +500,7 @@ righthand_file = 'icons/mob/inhands/equipment/medical_righthand.dmi' w_class = WEIGHT_CLASS_SMALL storage_type = /datum/storage/test_tube_rack + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT) /obj/item/storage/test_tube_rack/update_icon_state() icon_state = "[base_icon_state][contents.len > 0 ? contents.len : null]" diff --git a/code/game/objects/items/storage/toolboxes/_toolbox.dm b/code/game/objects/items/storage/toolboxes/_toolbox.dm index 538dc79f373510..7601e326425044 100644 --- a/code/game/objects/items/storage/toolboxes/_toolbox.dm +++ b/code/game/objects/items/storage/toolboxes/_toolbox.dm @@ -149,13 +149,15 @@ /obj/item/storage/toolbox/crafter = "#9D3282", /obj/item/storage/toolbox/syndicate = "#3d3d3d", ) - var/obj/item/bot_assembly/repairbot/repair = new + var/obj/item/bot_assembly/repairbot/repair = new(drop_location()) repair.toolbox = type var/new_color = toolbox_colors[type] || "#445eb3" repair.set_color(new_color) - user.put_in_hands(repair) repair.update_appearance() repair.balloon_alert(user, "sensor added!") qdel(tool) + var/held_index = user.is_holding(src) qdel(src) + if (held_index) + user.put_in_hand(repair, held_index) return ITEM_INTERACT_SUCCESS diff --git a/code/game/objects/items/storage/toolboxes/fishing.dm b/code/game/objects/items/storage/toolboxes/fishing.dm index 884649be939a40..445630647a4615 100644 --- a/code/game/objects/items/storage/toolboxes/fishing.dm +++ b/code/game/objects/items/storage/toolboxes/fishing.dm @@ -13,7 +13,7 @@ /obj/item/storage/toolbox/fishing/Initialize(mapload) . = ..() - AddComponent(/datum/component/adjust_fishing_difficulty, fishing_modifier, ITEM_SLOT_HANDS) + AddElement(/datum/element/adjust_fishing_difficulty, fishing_modifier, ITEM_SLOT_HANDS) /obj/item/storage/toolbox/fishing/PopulateContents() new /obj/item/bait_can/worm(src) diff --git a/code/game/objects/items/storage/toolboxes/weapons.dm b/code/game/objects/items/storage/toolboxes/weapons.dm index b1e13ba58b575f..f7d6384865932a 100644 --- a/code/game/objects/items/storage/toolboxes/weapons.dm +++ b/code/game/objects/items/storage/toolboxes/weapons.dm @@ -122,7 +122,7 @@ var/i_dont_even_think_once_about_blowing_stuff_up = tgui_alert(user, "Would you like to activate the evidence disposal bomb now?", "BYE BYE", list("Yes","No")) - if(i_dont_even_think_once_about_blowing_stuff_up != "Yes" || currently_exploding || QDELETED(user) || QDELETED(src) || user.can_perform_action(src, NEED_DEXTERITY|NEED_HANDS|ALLOW_RESTING)) + if(i_dont_even_think_once_about_blowing_stuff_up != "Yes" || currently_exploding || QDELETED(user) || QDELETED(src) || !user.can_perform_action(src, NEED_DEXTERITY|NEED_HANDS|ALLOW_RESTING)) return explosion_timer = addtimer(CALLBACK(src, PROC_REF(think_fast_chucklenuts)), 5 SECONDS, (TIMER_UNIQUE|TIMER_OVERRIDE)) diff --git a/code/game/objects/items/storage/uplink_kits.dm b/code/game/objects/items/storage/uplink_kits.dm index 53548989384a6b..1e8a9acbba861e 100644 --- a/code/game/objects/items/storage/uplink_kits.dm +++ b/code/game/objects/items/storage/uplink_kits.dm @@ -301,7 +301,7 @@ new /obj/item/clothing/head/helmet/marine/pmc(src) new /obj/item/clothing/mask/gas/sechailer(src) new /obj/item/clothing/glasses/night(src) // 3~ TC - new /obj/item/clothing/gloves/krav_maga/combatglovesplus(src) //5TC + new /obj/item/clothing/gloves/kaza_ruk/combatglovesplus(src) //5TC new /obj/item/clothing/shoes/jackboots(src) new /obj/item/storage/belt/military/assault/fisher(src) //items in this belt easily costs 18 TC @@ -751,7 +751,7 @@ new spess_suit(src) // Above allows me to get the helmet from a variable on the object var/obj/item/clothing/head/helmet/space/syndicate/spess_helmet = GLOB.syndicate_space_suits_to_helmets[spess_suit] new spess_helmet(src) // 4 TC for the space gear - new /obj/item/tank/jetpack/oxygen/harness(src) // They kinda need this to fly to the cruiser. + new /obj/item/tank/jetpack/harness(src) // They kinda need this to fly to the cruiser. // Tacticool gear new /obj/item/clothing/shoes/combat(src) new /obj/item/clothing/under/syndicate(src) @@ -889,9 +889,15 @@ /obj/item/storage/box/syndicate/horse_box/PopulateContents() new /obj/item/food/monkeycube/dangerous_horse(src) - new /obj/item/slimepotion/slime/sentience/nuclear/dangerous_horse(src) + new /obj/item/slimepotion/sentience/nuclear/dangerous_horse(src) new /obj/item/food/grown/apple(src) +/obj/item/storage/box/syndicate/sleeping_carp/PopulateContents() + new /obj/item/book/granter/martial/carp(src) + new /obj/item/clothing/head/costume/snakeeater(src) + new /obj/item/clothing/under/costume/gi(src) + new /obj/item/clothing/shoes/sandal(src) + #undef KIT_RECON #undef KIT_BLOODY_SPAI #undef KIT_STEALTHY diff --git a/code/game/objects/items/surgery_tray.dm b/code/game/objects/items/surgery_tray.dm index e55b7d711865eb..8c0ccdad40fec5 100644 --- a/code/game/objects/items/surgery_tray.dm +++ b/code/game/objects/items/surgery_tray.dm @@ -13,6 +13,7 @@ slowdown = 1 item_flags = SLOWS_WHILE_IN_HAND pass_flags = NONE + custom_materials = list(/datum/material/silver = SHEET_MATERIAL_AMOUNT, /datum/material/iron = SHEET_MATERIAL_AMOUNT) /// If true we're currently portable var/is_portable = TRUE @@ -218,6 +219,7 @@ /obj/item/reagent_containers/medigel/sterilizine, /obj/item/bonesetter, /obj/item/blood_filter, + /obj/item/shears, /obj/item/stack/medical/bone_gel, /obj/item/stack/sticky_tape/surgical, /obj/item/clothing/mask/surgical, diff --git a/code/game/objects/items/tanks/jetpack.dm b/code/game/objects/items/tanks/jetpack.dm index 815631e4cf8d59..ad6c52709bafbc 100644 --- a/code/game/objects/items/tanks/jetpack.dm +++ b/code/game/objects/items/tanks/jetpack.dm @@ -1,5 +1,5 @@ /obj/item/tank/jetpack - name = "jetpack (empty)" + name = "jetpack (oxygen)" desc = "A tank of compressed gas for use as propulsion in zero-gravity areas. Use with caution." icon_state = "jetpack" inhand_icon_state = "jetpack" @@ -189,6 +189,7 @@ full_speed = FALSE drift_force = 1 NEWTONS stabilizer_force = 0.5 NEWTONS + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 4.4, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 3) /obj/item/tank/jetpack/improvised/allow_thrust(num) if(!ismob(loc)) @@ -207,13 +208,7 @@ icon_state = "jetpack-void" inhand_icon_state = "jetpack-void" -/obj/item/tank/jetpack/oxygen - name = "jetpack (oxygen)" - desc = "A tank of compressed oxygen for use as propulsion in zero-gravity areas. Use with caution." - icon_state = "jetpack" - inhand_icon_state = "jetpack" - -/obj/item/tank/jetpack/oxygen/harness +/obj/item/tank/jetpack/harness name = "jet harness (oxygen)" desc = "A lightweight tactical harness, used by those who don't want to be weighed down by traditional jetpacks." icon_state = "jetpack-mini" @@ -222,7 +217,7 @@ throw_range = 7 w_class = WEIGHT_CLASS_NORMAL -/obj/item/tank/jetpack/oxygen/captain +/obj/item/tank/jetpack/captain name = "captain's jetpack" desc = "A compact, lightweight jetpack containing a high amount of compressed oxygen." icon_state = "jetpack-captain" @@ -234,14 +229,12 @@ drift_force = 2 NEWTONS stabilizer_force = 2 NEWTONS -/obj/item/tank/jetpack/oxygen/security +/obj/item/tank/jetpack/security name = "security jetpack (oxygen)" desc = "A tank of compressed oxygen for use as propulsion in zero-gravity areas by security forces." icon_state = "jetpack-sec" inhand_icon_state = "jetpack-sec" - - /obj/item/tank/jetpack/carbondioxide name = "jetpack (carbon dioxide)" desc = "A tank of compressed carbon dioxide for use as propulsion in zero-gravity areas. Painted black to indicate that it should not be used as a source for internals." diff --git a/code/game/objects/items/tcg/tcg.dm b/code/game/objects/items/tcg/tcg.dm index 75544b7ae1b31e..0f22083f67b088 100644 --- a/code/game/objects/items/tcg/tcg.dm +++ b/code/game/objects/items/tcg/tcg.dm @@ -188,6 +188,7 @@ GLOBAL_LIST_EMPTY(tcgcard_radial_choices) icon_state = "deck_up" base_icon_state = "deck" obj_flags = UNIQUE_RENAME + spawn_blacklisted = TRUE var/flipped = FALSE var/static/radial_draw = image(icon = 'icons/hud/radial.dmi', icon_state = "radial_draw") var/static/radial_shuffle = image(icon = 'icons/hud/radial.dmi', icon_state = "radial_shuffle") diff --git a/code/game/objects/items/teleportation.dm b/code/game/objects/items/teleportation.dm index 62bcbbc6d63b96..4858a3413b5b3c 100644 --- a/code/game/objects/items/teleportation.dm +++ b/code/game/objects/items/teleportation.dm @@ -374,7 +374,7 @@ attempt_teleport(user = user, triggered_by_emp = FALSE) return TRUE -/obj/item/syndicate_teleporter/process(seconds_per_tick, times_fired) +/obj/item/syndicate_teleporter/process(seconds_per_tick) if(SPT_PROB(10, seconds_per_tick) && charges < max_charges) charges++ if(ishuman(loc)) diff --git a/code/game/objects/items/tongs.dm b/code/game/objects/items/tongs.dm index 3c85cc8c004cfa..a6be04b604fda4 100644 --- a/code/game/objects/items/tongs.dm +++ b/code/game/objects/items/tongs.dm @@ -81,7 +81,7 @@ if (COOLDOWN_FINISHED(src, clack_cooldown)) click_clack() return ..() - if (!IsEdible(attacked) || attacked.w_class > WEIGHT_CLASS_NORMAL || !isnull(tonged)) + if (!IS_EDIBLE(attacked) || attacked.w_class > WEIGHT_CLASS_NORMAL || !isnull(tonged)) return ..() tonged = attacked attacked.do_pickup_animation(src) diff --git a/code/game/objects/items/tools/crowbar.dm b/code/game/objects/items/tools/crowbar.dm index 73b4c648a2bab7..bd7ccaca3aa053 100644 --- a/code/game/objects/items/tools/crowbar.dm +++ b/code/game/objects/items/tools/crowbar.dm @@ -175,7 +175,7 @@ /obj/item/crowbar/power/examine() . = ..() - . += " It's fitted with a [tool_behaviour == first_tool_behavior ? inactive_text : active_text] head." + . += "It's fitted with a [tool_behaviour == first_tool_behavior ? inactive_text : active_text] head." /* * Signal proc for [COMSIG_TRANSFORMING_ON_TRANSFORM]. @@ -300,6 +300,12 @@ ACCESS_RD, ACCESS_SYNDICATE, ) + custom_materials = list( + /datum/material/iron = SHEET_MATERIAL_AMOUNT * 4.75, + /datum/material/silver = SHEET_MATERIAL_AMOUNT * 2.50, + /datum/material/titanium = SHEET_MATERIAL_AMOUNT * 1.75, + /datum/material/glass = SHEET_MATERIAL_AMOUNT * 1.25, + ) radio_alert = TRUE /obj/item/crowbar/power/paramedic/sound_the_alarms(mob/user, obj/machinery/door/airlock/target) @@ -327,8 +333,9 @@ ) /obj/item/crowbar/power/paramedic/silent - name = "modified jaws of recovery" - desc = "Modified version for jaws of life, made to act like jaws of recovery. This one doesn't announce doors you're prying open and lets you pry any door, acting like regular jaws of life" + desc = "A specialized version of the jaws of life, primarily to be used by paramedics to recover the injured and the recently deceased. Rather than a cutting arm, this tool has a bonesetting apparatus. \ + This one looks upgraded." + w_class = WEIGHT_CLASS_NORMAL // it's a modified, normal jaws limit_jaws_access = FALSE radio_alert = FALSE diff --git a/code/game/objects/items/tools/screwdriver.dm b/code/game/objects/items/tools/screwdriver.dm index e1b644a08cc9c5..c05a5048646872 100644 --- a/code/game/objects/items/tools/screwdriver.dm +++ b/code/game/objects/items/tools/screwdriver.dm @@ -143,7 +143,7 @@ /obj/item/screwdriver/power/examine() . = ..() - . += " It's fitted with a [tool_behaviour == TOOL_SCREWDRIVER ? "screw" : "bolt"] bit." + . += "It's fitted with a [tool_behaviour == TOOL_SCREWDRIVER ? "screw" : "bolt"] bit." /obj/item/screwdriver/power/suicide_act(mob/living/user) if(tool_behaviour == TOOL_SCREWDRIVER) diff --git a/code/game/objects/items/tools/weldingtool.dm b/code/game/objects/items/tools/weldingtool.dm index 2e02dcfb4e6643..142bf0be111f74 100644 --- a/code/game/objects/items/tools/weldingtool.dm +++ b/code/game/objects/items/tools/weldingtool.dm @@ -333,6 +333,7 @@ name = "industrial welding tool" desc = "A slightly larger welder with a larger tank." icon_state = "indwelder" + inhand_icon_state = "indwelder" max_fuel = 40 custom_materials = list(/datum/material/glass=SMALL_MATERIAL_AMOUNT*0.6) @@ -353,6 +354,7 @@ name = "emergency welding tool" desc = "A miniature welder used during emergencies." icon_state = "miniwelder" + inhand_icon_state = "miniwelder" max_fuel = 10 w_class = WEIGHT_CLASS_TINY custom_materials = list(/datum/material/iron=SMALL_MATERIAL_AMOUNT*0.3, /datum/material/glass=SMALL_MATERIAL_AMOUNT*0.1) @@ -369,6 +371,7 @@ desc = "An alien welding tool. Whatever fuel it uses, it never runs out." icon = 'icons/obj/antags/abductor.dmi' icon_state = "welder" + inhand_icon_state = "abductorwelder" toolspeed = 0.1 custom_materials = list(/datum/material/iron =SHEET_MATERIAL_AMOUNT * 2.5, /datum/material/silver = SHEET_MATERIAL_AMOUNT*1.25, /datum/material/plasma =SHEET_MATERIAL_AMOUNT * 2.5, /datum/material/titanium =SHEET_MATERIAL_AMOUNT, /datum/material/diamond =SHEET_MATERIAL_AMOUNT) light_system = NO_LIGHT_SUPPORT diff --git a/code/game/objects/items/tools/wirecutters.dm b/code/game/objects/items/tools/wirecutters.dm index 234f268ace29d7..9879865ac6b87c 100644 --- a/code/game/objects/items/tools/wirecutters.dm +++ b/code/game/objects/items/tools/wirecutters.dm @@ -7,12 +7,12 @@ inhand_icon_state = "cutters" lefthand_file = 'icons/mob/inhands/equipment/tools_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/tools_righthand.dmi' - + flags_1 = IS_PLAYER_COLORABLE_1|NO_NEW_GAGS_PREVIEW_1 greyscale_config = /datum/greyscale_config/wirecutters greyscale_config_belt = /datum/greyscale_config/wirecutters_belt_overlay greyscale_config_inhand_left = /datum/greyscale_config/wirecutter_inhand_left greyscale_config_inhand_right = /datum/greyscale_config/wirecutter_inhand_right - + greyscale_colors = COLOR_RED obj_flags = CONDUCTS_ELECTRICITY slot_flags = ITEM_SLOT_BELT force = 6 @@ -72,6 +72,10 @@ icon_state = "cutters" toolspeed = 0.1 random_color = FALSE + greyscale_config = null + greyscale_config_inhand_left = null + greyscale_config_inhand_right = null + greyscale_colors = null snap_time_strong_handcuffs = 1 SECONDS /obj/item/wirecutters/cyborg @@ -82,3 +86,5 @@ worn_icon_state = "cutters" toolspeed = 0.5 random_color = FALSE + greyscale_config = null + greyscale_colors = null diff --git a/code/game/objects/items/toy_mechs.dm b/code/game/objects/items/toy_mechs.dm index 74dccf416ee628..cf8b1f341289b5 100644 --- a/code/game/objects/items/toy_mechs.dm +++ b/code/game/objects/items/toy_mechs.dm @@ -226,15 +226,15 @@ if(1, 3) SpinAnimation(5, 0) playsound(src, 'sound/vehicles/mecha/mechstep.ogg', 30, TRUE) - user.adjustBruteLoss(25) - user.adjustStaminaLoss(50) + user.adjust_brute_loss(25) + user.adjust_stamina_loss(50) if(2) user.SpinAnimation(5, 0) playsound(user, 'sound/items/weapons/smash.ogg', 20, TRUE) combat_health-- //we scratched it! if(4) say(special_attack_cry + "!!") - user.adjustStaminaLoss(25) + user.adjust_stamina_loss(25) if(!combat_sleep(1 SECONDS, null, user)) say("PATHETIC.") @@ -243,7 +243,7 @@ return SHAME sleep(0.5 SECONDS) - user.adjustBruteLoss(450) + user.adjust_brute_loss(450) in_combat = FALSE say("AN EASY WIN. MY POWER INCREASES.") // steal a soul, become swole diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 55a6ba57957f18..c9f0434868281b 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -459,7 +459,7 @@ return if(!user.is_holding(src)) // Half digestion? Start choking to death user.visible_message(span_suicide("[user] panics and starts choking [user.p_them()]self to death!")) - user.adjustOxyLoss(200) + user.adjust_oxy_loss(200) user.death(FALSE) // unfortunately you have to handle the suiciding yourself with a manual suicide user.ghostize(FALSE) // get the fuck out of our body return @@ -467,13 +467,13 @@ if(CH.cavity_item) // if he's (un)bright enough to have a round and full belly... user.visible_message(span_danger("[user] regurgitates [src]!")) // I swear i dont have a fetish user.vomit(VOMIT_CATEGORY_BLOOD, lost_nutrition = 100, distance = 0) - user.adjustOxyLoss(120) + user.adjust_oxy_loss(120) user.dropItemToGround(src) // incase the crit state doesn't drop the singulo to the floor user.set_suicide(FALSE) return user.transferItemToLoc(src, user, TRUE) CH.cavity_item = src // The mother came inside and found Andy, dead with a HUGE belly full of toys - user.adjustOxyLoss(200) // You know how most small toys in the EU have that 3+ onion head icon and a warning that says "Unsuitable for children under 3 years of age due to small parts - choking hazard"? This is why. + user.adjust_oxy_loss(200) // You know how most small toys in the EU have that 3+ onion head icon and a warning that says "Unsuitable for children under 3 years of age due to small parts - choking hazard"? This is why. user.death(FALSE) user.ghostize(FALSE) @@ -586,6 +586,7 @@ w_class = WEIGHT_CLASS_SMALL attack_verb_continuous = list("attacks", "strikes", "hits") attack_verb_simple = list("attack", "strike", "hit") + custom_materials = list(/datum/material/plastic = SHEET_MATERIAL_AMOUNT * 4, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 1.1, /datum/material/iron = SMALL_MATERIAL_AMOUNT * 0.1) /// Whether our sword has been multitooled to rainbow var/hacked = FALSE /// The color of our fake energy sword @@ -788,7 +789,7 @@ /obj/item/dualsaber/toy/impale(mob/living/user)//Stops Toy Dualsabers from injuring clowns to_chat(user, span_warning("You twirl around a bit before losing your balance and impaling yourself on [src].")) - user.adjustStaminaLoss(25) + user.adjust_stamina_loss(25) /obj/item/toy/katana name = "replica katana" @@ -1081,6 +1082,7 @@ icon_state = "snowball" throwforce = 20 //the same damage as a disabler shot damtype = STAMINA //maybe someday we can add stuffing rocks (or perhaps ore?) into snowballs to make them deal brute damage + custom_materials = list(/datum/material/snow = SHEET_MATERIAL_AMOUNT) /obj/item/toy/snowball/ranged_interact_with_atom(atom/interacting_with, mob/living/user, list/modifiers) user.throw_item(interacting_with) diff --git a/code/game/objects/items/trash.dm b/code/game/objects/items/trash.dm index 9e513a939cffc5..8dc3181464c26e 100644 --- a/code/game/objects/items/trash.dm +++ b/code/game/objects/items/trash.dm @@ -46,7 +46,9 @@ /obj/item/trash/boritos name = "boritos bag" icon_state = "boritos" - grind_results = list(/datum/reagent/aluminium = 1) //from the mylar bag + +/obj/item/trash/boritos/grind_results() + return list(/datum/reagent/aluminium = 1) /obj/item/trash/boritos/green icon_state = "boritosgreen" @@ -130,9 +132,11 @@ name = "crushed can" icon_state = "cola" resistance_flags = NONE - grind_results = list(/datum/reagent/aluminium = 10) custom_materials = list(/datum/material/iron=SMALL_MATERIAL_AMOUNT*2) +/obj/item/trash/can/grind_results() + return list(/datum/reagent/aluminium = 10) + /obj/item/trash/can/food icon = 'icons/obj/food/canned.dmi' icon_state = "peachcan_empty" diff --git a/code/game/objects/items/v8_engine.dm b/code/game/objects/items/v8_engine.dm index 2d2d5e405933c1..5b5e934bb25e31 100644 --- a/code/game/objects/items/v8_engine.dm +++ b/code/game/objects/items/v8_engine.dm @@ -1,8 +1,14 @@ -#define ENGINE_COOLDOWN (5 SECONDS) -#define DASH_COOLDOWN (2.5 SECONDS) +#define ENGINE_COOLDOWN 5 SECONDS +#define SLASH_COOLDOWN 1.2 SECONDS +#define SLASH_WINDUP 1 SECONDS +#define CHARGE_DAMAGE_MOD 10 #define HOUSE_EDGE_ICONS_MAX 3 #define HOUSE_EDGE_ICONS_MIN 0 +/** + * File for the House Edge sword and the V8 Engine, obtained from the black market. + */ + /obj/item/v8_engine name = "ancient engine" desc = "An extremely well-preserved, massive V8 engine from the early 2000s. It seems to be missing the rest of the vehicle. There's a tiny label on the side." @@ -46,8 +52,9 @@ name = "House Edge" desc = "Dangerous. Loud. Sleek. It has a built in roulette wheel. This thing could easily rip your arm off if you're not careful." icon = 'icons/obj/weapons/sword.dmi' - icon_state = "house_edge0" - inhand_icon_state = "house_edge0" + icon_state = "house_edge" + base_icon_state = "house_edge" + inhand_icon_state = "house_edge" icon_angle = -45 lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' @@ -57,7 +64,9 @@ throwforce = 10 throw_range = 5 throw_speed = 1 + armour_penetration = 15 hitsound = 'sound/items/car_engine_start.ogg' + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 14, /datum/material/cardboard = SHEET_MATERIAL_AMOUNT, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.8) /// The number of charges the house edge has accrued through 2-handed hits, to charge a more powerful charge attack. var/fire_charges = 0 ///Sound played when wielded. @@ -74,14 +83,11 @@ /obj/item/house_edge/afterattack(atom/target, mob/user, list/modifiers, list/attack_modifiers) if(!ismob(target)) return - if(HAS_TRAIT(src, TRAIT_WIELDED)) + var/mob/mob_target = target + if(HAS_TRAIT(src, TRAIT_WIELDED) && mob_target.stat != DEAD) //Add a fire charge to a max of 3, updates icon_state. fire_charges = clamp((fire_charges + 1), HOUSE_EDGE_ICONS_MIN, HOUSE_EDGE_ICONS_MAX) COOLDOWN_RESET(src, fire_charge_cooldown) - else - //Lose a fire charge to a min of 0, updates icon_state. - fire_charges = clamp((fire_charges - 1), HOUSE_EDGE_ICONS_MIN, HOUSE_EDGE_ICONS_MAX) - do_sparks(number = 0, cardinal_only = TRUE, source = src) update_appearance(UPDATE_ICON_STATE) /obj/item/house_edge/ranged_interact_with_atom_secondary(atom/interacting_with, mob/living/user, list/modifiers) @@ -90,26 +96,102 @@ if(fire_charges <= 0) balloon_alert(user, "no fire charges!") return ITEM_INTERACT_BLOCKING - user.throw_at(target = get_turf(interacting_with), range = 2 * fire_charges, speed = 5, thrower = user, spin = FALSE, gentle = FALSE, quickstart = TRUE) - COOLDOWN_START(src, fire_charge_cooldown, DASH_COOLDOWN) - reset_charges(on_dash = TRUE) + to_chat(user, span_boldnotice("You take aim at [interacting_with]...")) + user.add_shared_particles(/particles/bonfire) + + if(!do_after(user, SLASH_WINDUP, target = src)) + // Special attack fizzles, no slash and charges lost. + reset_charges() + drop_particles(user) + return ITEM_INTERACT_BLOCKING + + user.add_shared_particles(/particles/bonfire) + new /obj/effect/temp_visual/focus_ring(get_turf(src)) + playsound(src, 'sound/items/car_engine_start.ogg', vol = 35, vary = FALSE, extrarange = 3) + + if(!do_after(user, SLASH_WINDUP * 2, target = src) || fire_charges < 3) + flaming_slash(interacting_with, user, upgraded = FALSE) + return ITEM_INTERACT_SUCCESS + + flaming_slash(interacting_with, user, upgraded = TRUE) //Upgraded slash. return ITEM_INTERACT_SUCCESS /obj/item/house_edge/update_icon_state() - inhand_icon_state = HAS_TRAIT(src, TRAIT_WIELDED) ? "house_edge1" : "house_edge0" - icon_state = "house_edge[fire_charges]" + inhand_icon_state = HAS_TRAIT(src, TRAIT_WIELDED) ? "house_edge1" : "house_edge" + icon_state = "[base_icon_state][fire_charges ? fire_charges : ""]" return ..() -/obj/item/house_edge/proc/reset_charges(on_dash = FALSE) - if(!COOLDOWN_FINISHED(src, fire_charge_cooldown) && !on_dash) +/** + * Proc that handles the house edge's fire_charge mechanic when resetting charges back to zero. + * Updates icon, sets count, and updates icon. + */ +/obj/item/house_edge/proc/reset_charges(on_slash = FALSE) + if(!COOLDOWN_FINISHED(src, fire_charge_cooldown) && !on_slash) return if(fire_charges) balloon_alert_to_viewers("charges lost!") fire_charges = 0 - icon_state = "house_edge[fire_charges]" - update_icon() + update_icon(UPDATE_OVERLAYS|UPDATE_ICON_STATE) + +/// Kills any of the relevant particles off the wielder, as added during special attacks. +/obj/item/house_edge/proc/drop_particles(mob/living/user) + user.remove_shared_particles(/particles/bonfire) + +/** + * Proc that creates and fires the flaming_slash projectile from the house edge special attack. + * Extends off the ranged_interact_with_atom_secondary() behavior. + * * upgraded: when juiced up from the second do_after, applies a light explosion radius to the slash. + */ +/obj/item/house_edge/proc/flaming_slash(atom/interacting_with, mob/living/user, upgraded = FALSE) + // Do the cool slash + var/obj/projectile/flaming_slash/projectile = new /obj/projectile/flaming_slash(get_turf(src)) + + projectile.aim_projectile(interacting_with, src) + projectile.firer = user + projectile.damage += (10 * fire_charges) + if(upgraded) + projectile.explosion_power = 1 + projectile.damage /= 2 // The damage is pretty solid normally, but with the explosion and all the RNG that comes with, it's nearly a 1-shot. This evens a playing field a bit. + projectile.fire(null, interacting_with) + + user.visible_message(span_danger("[user] makes a[upgraded ? " devastating" : "" ] blazing slash at [interacting_with]!"),\ + span_notice("You take a blazing swipe at [interacting_with]!")) + playsound(src, 'sound/items/modsuit/flamethrower.ogg', vol = 75, vary = FALSE, extrarange = 3) + playsound(src, 'sound/items/weapons/slash.ogg', vol = 50, vary = FALSE, extrarange = 3) + + drop_particles(user) + COOLDOWN_START(src, fire_charge_cooldown, SLASH_COOLDOWN) + reset_charges(on_slash = TRUE) + +/// Flaming slash for the special attack at max charges. +/obj/projectile/flaming_slash + name = "flaming slash" + desc = "Someone is about to cash out." + icon_state = "flaming_slash" + damage_type = BURN + armor_flag = MELEE //We're operating off of anime remote slash logic here. As such, we can treat this as a hybrid burn/brute this way. + damage = 10 // Damage amps based on the number of flame_charges it was created off of. + speed = 2 + light_range = 1 + light_power = 1 + light_color = LIGHT_COLOR_FIRE + sharpness = SHARP_EDGED + + ///Applied in on_hit as the light_devastation_range. Defaults to zero unless giving the slash an extra juiced charge. + var/explosion_power = 0 + +/obj/projectile/flaming_slash/on_hit(atom/target, blocked, pierce_hit) + . = ..() + explosion(loc, + light_impact_range = explosion_power, + flame_range = 3, + explosion_cause = "[firer] using \the [fired_from]", + explosion_arc = 120 + ) #undef ENGINE_COOLDOWN -#undef DASH_COOLDOWN +#undef SLASH_COOLDOWN +#undef SLASH_WINDUP +#undef CHARGE_DAMAGE_MOD #undef HOUSE_EDGE_ICONS_MAX #undef HOUSE_EDGE_ICONS_MIN diff --git a/code/game/objects/items/virgin_mary.dm b/code/game/objects/items/virgin_mary.dm index 5ae4d33df2bcf4..cbd63adf7c0088 100644 --- a/code/game/objects/items/virgin_mary.dm +++ b/code/game/objects/items/virgin_mary.dm @@ -56,5 +56,5 @@ return MANUAL_SUICIDE /obj/item/virgin_mary/proc/manual_suicide(mob/living/user) - user.adjustOxyLoss(200) + user.adjust_oxy_loss(200) user.death(FALSE) diff --git a/code/game/objects/items/wall_mounted.dm b/code/game/objects/items/wall_mounted.dm index 1abf80b5a19493..2cd4c4011dad54 100644 --- a/code/game/objects/items/wall_mounted.dm +++ b/code/game/objects/items/wall_mounted.dm @@ -6,66 +6,92 @@ lefthand_file = 'icons/mob/inhands/equipment/medical_lefthand.dmi' righthand_file = 'icons/mob/inhands/equipment/medical_righthand.dmi' w_class = WEIGHT_CLASS_SMALL + ///The final object to construct after mount var/result_path - var/wall_external = FALSE // For frames that are external to the wall they are placed on, like light fixtures and cameras. - var/pixel_shift //The amount of pixels + /// For frames that are external to the wall they are placed on, like light fixtures and cameras. + var/wall_external = FALSE + //The amount of pixels to shift when mounted + var/pixel_shift -/obj/item/wallframe/proc/try_build(turf/on_wall, mob/user) - if(get_dist(on_wall,user) > 1) +/** + * Returns an structure to mount on from the atom passed + * for e.g if its not an closed turf then return an structure on the turf to mount on + * Arguments + * * atom/structure - the atom or something in this atom we are trying to mount on +*/ +/obj/item/wallframe/proc/find_support_structure(atom/structure) + SHOULD_BE_PURE(TRUE) + + return isclosedturf(structure) ? structure : null + +/obj/item/wallframe/interact_with_atom(atom/interacting_with, mob/living/user, list/modifiers) + var/atom/support_structure = find_support_structure(interacting_with) + if(isnull(support_structure)) + return NONE + if(!try_build(support_structure, user)) + return ITEM_INTERACT_FAILURE + + playsound(loc, 'sound/machines/click.ogg', 75, TRUE) + user.visible_message(span_notice("[user.name] attaches [src] to the wall."), + span_notice("You attach [src] to the wall."), + span_hear("You hear clicking.")) + + var/floor_to_support = get_dir(user, support_structure) + var/obj/hanging_object = new result_path(get_turf(user)) + hanging_object.setDir(floor_to_support) + if(pixel_shift) + switch(floor_to_support) + if(NORTH) + hanging_object.pixel_y = pixel_shift + if(SOUTH) + hanging_object.pixel_y = -pixel_shift + if(EAST) + hanging_object.pixel_x = pixel_shift + if(WEST) + hanging_object.pixel_x = -pixel_shift + if(!istype(get_area(user), /area/shuttle)) //due to turf changing issue we don't mount here for now + hanging_object.AddComponent(/datum/component/atom_mounted, support_structure) + after_attach(hanging_object) + qdel(src) + + return ITEM_INTERACT_SUCCESS + +/** + * Check if we can build on this support structure + * + * Arguments + * * atom/support - the atom we are trying to mount on + * * mob/user - the player attempting to do the mount +*/ +/obj/item/wallframe/proc/try_build(atom/support, mob/user) + if(get_dist(support, user) > 1) balloon_alert(user, "you are too far!") - return - var/floor_to_wall = get_dir(user, on_wall) - if(!(floor_to_wall in GLOB.cardinals)) + return FALSE + var/floor_to_support = get_dir(user, support) + if(!(floor_to_support in GLOB.cardinals)) balloon_alert(user, "stand in line with wall!") - return + return FALSE var/turf/T = get_turf(user) - var/area/A = get_area(T) if(!isfloorturf(T)) balloon_alert(user, "cannot place here!") - return - if(A.always_unpowered) - balloon_alert(user, "cannot place in this area!") - return - if(check_wall_item(T, floor_to_wall, wall_external)) + return FALSE + if(check_wall_item(T, floor_to_support, wall_external)) balloon_alert(user, "already something here!") - return + return FALSE return TRUE -/obj/item/wallframe/proc/attach(turf/on_wall, mob/user) - if(result_path) - playsound(src.loc, 'sound/machines/click.ogg', 75, TRUE) - user.visible_message(span_notice("[user.name] attaches [src] to the wall."), - span_notice("You attach [src] to the wall."), - span_hear("You hear clicking.")) - var/floor_to_wall = get_dir(user, on_wall) - - var/obj/hanging_object = new result_path(get_turf(user)) - hanging_object.setDir(floor_to_wall) - if(pixel_shift) - switch(floor_to_wall) - if(NORTH) - hanging_object.pixel_y = pixel_shift - if(SOUTH) - hanging_object.pixel_y = -pixel_shift - if(EAST) - hanging_object.pixel_x = pixel_shift - if(WEST) - hanging_object.pixel_x = -pixel_shift - hanging_object.find_and_hang_on_wall() - after_attach(hanging_object) - - qdel(src) - +/** + * Stuff to do after wallframe attached to support atom + * + * Arguments + * * obj/attached_to - the object that has been created on the atom +*/ /obj/item/wallframe/proc/after_attach(obj/attached_to) transfer_fingerprints_to(attached_to) /obj/item/wallframe/screwdriver_act(mob/living/user, obj/item/tool) - // For camera-building borgs - var/turf/wall_turf = get_step(get_turf(user), user.dir) - if(iswallturf(wall_turf)) - wall_turf.item_interaction(user, src) - return ITEM_INTERACT_SUCCESS + return interact_with_atom(get_step(get_turf(user), user.dir), user) /obj/item/wallframe/wrench_act(mob/living/user, obj/item/tool) var/metal_amt = round(custom_materials[GET_MATERIAL_REF(/datum/material/iron)]/SHEET_MATERIAL_AMOUNT) //Replace this shit later @@ -92,8 +118,10 @@ obj_flags = CONDUCTS_ELECTRICITY w_class = WEIGHT_CLASS_SMALL custom_materials = list(/datum/material/iron= SMALL_MATERIAL_AMOUNT * 0.5, /datum/material/glass= SMALL_MATERIAL_AMOUNT * 0.5) - grind_results = list(/datum/reagent/iron = 10, /datum/reagent/silicon = 10) custom_price = PAYCHECK_CREW * 0.5 sound_vary = TRUE pickup_sound = SFX_GENERIC_DEVICE_PICKUP drop_sound = SFX_GENERIC_DEVICE_DROP + +/obj/item/electronics/grind_results() + return list(/datum/reagent/iron = 10, /datum/reagent/silicon = 10) diff --git a/code/game/objects/items/weaponry.dm b/code/game/objects/items/weaponry.dm index 63ee92212ec34f..5b128b21ab0563 100644 --- a/code/game/objects/items/weaponry.dm +++ b/code/game/objects/items/weaponry.dm @@ -155,7 +155,7 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 return BRUTELOSS /obj/item/claymore/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK, damage_type = BRUTE) - if(attack_type == (PROJECTILE_ATTACK || LEAP_ATTACK || OVERWHELMING_ATTACK)) + if(attack_type == PROJECTILE_ATTACK || attack_type == LEAP_ATTACK || attack_type == OVERWHELMING_ATTACK) final_block_chance = 0 //Don't bring a sword to a gunfight, and also you aren't going to really block someone full body tackling you with a sword. Or a road roller, if one happened to hit you. return ..() @@ -363,6 +363,25 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 /obj/item/claymore/highlander/robot/process() loc.layer = ABOVE_ALL_MOB_LAYER +/obj/item/claymore/gladius + name = "gladius" + desc = "A short but formidable sword, favored by recently-reanimated ancient warriors." + icon = 'icons/obj/weapons/sword.dmi' + icon_state = "gladius" + inhand_icon_state = "gladius" + lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi' + righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi' + sharpness = SHARP_POINTY + attack_verb_continuous = list("stabs", "cuts") + attack_verb_simple = list("stab", "cut") + slot_flags = null + sound_vary = TRUE + block_sound = 'sound/items/weapons/parry.ogg' + hitsound = 'sound/items/weapons/bladeslice.ogg' + pickup_sound = SFX_KNIFE_PICKUP + drop_sound = SFX_KNIFE_DROP + + /obj/item/katana name = "katana" desc = "Woefully underpowered in D20." @@ -396,6 +415,11 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 alt_simple = string_list(alt_simple) AddComponent(/datum/component/alternative_sharpness, SHARP_POINTY, alt_continuous, alt_simple, -15) +/obj/item/katana/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK, damage_type = BRUTE) + if(attack_type == OVERWHELMING_ATTACK) + final_block_chance = 0 //Not a high freuqnecy blade, sorry pal + return ..() + /datum/armor/item_katana fire = 100 acid = 50 @@ -604,6 +628,7 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 icon_angle = -135 lefthand_file = 'icons/mob/inhands/weapons/staves_lefthand.dmi' righthand_file = 'icons/mob/inhands/weapons/staves_righthand.dmi' + custom_materials = list(/datum/material/bamboo = SHEET_MATERIAL_AMOUNT * 4) /obj/item/bambostaff/Initialize(mapload) . = ..() @@ -618,6 +643,11 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 icon_state = inhand_icon_state = "[base_icon_state][HAS_TRAIT(src, TRAIT_WIELDED)]" return ..() +/obj/item/bambostaff/hit_reaction(mob/living/carbon/human/owner, atom/movable/hitby, attack_text = "the attack", final_block_chance = 0, damage = 0, attack_type = MELEE_ATTACK, damage_type = BRUTE) + if(attack_type == PROJECTILE_ATTACK || attack_type == LEAP_ATTACK || attack_type == OVERWHELMING_ATTACK) + final_block_chance = 0 //Don't bring a staff to a gunfight, and also you aren't going to really block someone full body tackling you with a staff. Or a road roller, if one happened to hit you. + return ..() + /obj/item/cane name = "cane" desc = "A cane used by a true gentleman. Or a clown." @@ -716,7 +746,7 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 desc = "A handmade crutch. Also makes a decent bludgeon if you need it." icon_state = "crutch_wood" inhand_icon_state = "crutch_wood" - custom_materials = list(/datum/material/wood = SMALL_MATERIAL_AMOUNT * 0.5) + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 5) /obj/item/cane/white name = "white cane" @@ -819,7 +849,9 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 gender = PLURAL icon = 'icons/effects/magic.dmi' icon_state = "ectoplasm" - grind_results = list(/datum/reagent/hauntium = 25) //can be ground into hauntium + +/obj/item/ectoplasm/grind_results() + return list(/datum/reagent/hauntium = 25) /obj/item/ectoplasm/suicide_act(mob/living/user) user.visible_message(span_suicide("[user] is inhaling [src]! It looks like [user.p_theyre()] trying to visit the astral plane!")) @@ -844,6 +876,7 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 throw_range = 1 attack_verb_continuous = list("clubs", "bludgeons") attack_verb_simple = list("club", "bludgeon") + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT) /obj/item/melee/baseball_bat name = "baseball bat" @@ -1023,10 +1056,6 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 w_class = WEIGHT_CLASS_SMALL /// Things in this list will be instantly splatted. Flyman weakness is handled in the flyman species weakness proc. var/static/list/splattable - /// Things in this list which take a lot more damage from the fly swatter, but not be necessarily killed by it. - var/static/list/strong_against - /// How much extra damage the fly swatter does against mobs it is strong against - var/extra_strength_damage = 24 /obj/item/melee/flyswatter/Initialize(mapload) . = ..() @@ -1041,15 +1070,13 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 /obj/effect/decal/cleanable/ants, /obj/item/queen_bee, )) - if (isnull(strong_against)) - strong_against = typecacheof(list( - /mob/living/basic/spider, - )) - + AddElement(/datum/element/bane, mob_biotypes = MOB_BUG, target_type = /mob/living/basic, damage_multiplier = 0, added_damage = 24, requires_combat_mode = FALSE) /obj/item/melee/flyswatter/afterattack(atom/target, mob/user, list/modifiers, list/attack_modifiers) if(is_type_in_typecache(target, splattable)) to_chat(user, span_warning("You easily splat [target].")) + if(QDELETED(target)) + return if(isliving(target)) new /obj/effect/decal/cleanable/insectguts(target.drop_location()) var/mob/living/bug = target @@ -1057,10 +1084,6 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 bug.gib(DROP_ALL_REMAINS) else qdel(target) - return - if(is_type_in_typecache(target, strong_against) && isliving(target)) - var/mob/living/living_target = target - living_target.adjustBruteLoss(extra_strength_damage) /obj/item/proc/can_trigger_gun(mob/living/user, akimbo_usage) if(!user.can_use_guns(src)) @@ -1191,7 +1214,8 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 playsound(src, SFX_BULLET_MISS, 75, TRUE) return TRUE return FALSE - if(prob(final_block_chance * (HAS_TRAIT(src, TRAIT_WIELDED) ? 2 : 1))) + var/stop_that_blade = (final_block_chance + (attack_type == OVERWHELMING_ATTACK ? 25 : 0)) * (HAS_TRAIT(src, TRAIT_WIELDED) ? 2 : 1) + if(prob(stop_that_blade)) owner.visible_message(span_danger("[owner] parries [attack_text] with [src]!")) return TRUE return FALSE diff --git a/code/game/objects/items/wiki_manuals.dm b/code/game/objects/items/wiki_manuals.dm index 671f408557c616..e3647434e61fff 100644 --- a/code/game/objects/items/wiki_manuals.dm +++ b/code/game/objects/items/wiki_manuals.dm @@ -200,7 +200,7 @@ part.adjustBleedStacks(5) H.gib_animation() sleep(0.3 SECONDS) - H.adjustBruteLoss(1000) //to make the body super-bloody + H.adjust_brute_loss(1000) //to make the body super-bloody // if we use gib() then the body gets deleted H.spawn_gibs() H.spill_organs(DROP_ALL_REMAINS) diff --git a/code/game/objects/items/wind_turbine.dm b/code/game/objects/items/wind_turbine.dm index 74cd1213b698bf..b713c3acd5eef7 100644 --- a/code/game/objects/items/wind_turbine.dm +++ b/code/game/objects/items/wind_turbine.dm @@ -22,12 +22,11 @@ force = 10 throwforce = 6 w_class = WEIGHT_CLASS_BULKY + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 22, /datum/material/plastic = SHEET_MATERIAL_AMOUNT * 5, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.5) ///What item is being charged currently? var/obj/item/charging = null ///Did we put power into "charging" last process()? var/using_power = FALSE - ///Did we finish recharging the currently inserted item? - var/finished_recharging = FALSE ///Current rotor animation frame. (floating point value). var/rotor_tick = 0 @@ -231,7 +230,6 @@ if(is_type_in_typecache(arrived, allowed_devices)) charging = arrived START_PROCESSING(SSmachines, src) - finished_recharging = FALSE using_power = TRUE update_appearance() return ..() @@ -313,18 +311,17 @@ if(charging_cell) var/wanted_power = min(charging_cell.maxcharge - charging_cell.charge, charging_cell.chargerate) if(wanted_power > 0) - using_power = TRUE var/power_to_give = min(available_power, wanted_power) * seconds_per_tick / 2 if (power_to_give > 0) charging_cell.give(power_to_give) available_power -= power_to_give + if(charging_cell.charge == charging_cell.maxcharge) + playsound(src, 'sound/machines/ping.ogg', 30, TRUE) + say("[charging] has finished recharging!") + else + using_power = TRUE update_appearance() - if(!using_power && !finished_recharging) //Inserted thing is at max charge/ammo, notify those around us - finished_recharging = TRUE - playsound(src, 'sound/machines/ping.ogg', 30, TRUE) - say("[charging] has finished recharging!") - /obj/item/portable_wind_turbine/emp_act(severity) . = ..() if (. & EMP_PROTECT_CONTENTS) diff --git a/code/game/objects/items/wizard_weapons.dm b/code/game/objects/items/wizard_weapons.dm index 7179eedb9d58e0..5c8eaf4a818479 100644 --- a/code/game/objects/items/wizard_weapons.dm +++ b/code/game/objects/items/wizard_weapons.dm @@ -64,7 +64,7 @@ return charged = FALSE - if(isliving(target)) + if(isliving(target) && !QDELETED(target)) var/mob/living/smacked = target smacked.take_bodypart_damage(20, 0) playsound(user, 'sound/items/weapons/marauder.ogg', 50, TRUE) diff --git a/code/game/objects/items_reskin.dm b/code/game/objects/items_reskin.dm deleted file mode 100644 index 98a3165b5e2ab2..00000000000000 --- a/code/game/objects/items_reskin.dm +++ /dev/null @@ -1,95 +0,0 @@ -/// Called when alt clicked and the item has unique reskin options -/obj/item/proc/on_click_alt_reskin(datum/source, mob/user) - SIGNAL_HANDLER - - if(!user.can_perform_action(src, NEED_DEXTERITY)) - return NONE - - if(!(obj_flags & INFINITE_RESKIN) && current_skin) - return NONE - - INVOKE_ASYNC(src, PROC_REF(reskin_obj), user) - return CLICK_ACTION_SUCCESS - -/** - * Checks if we should set up reskinning, - * by default if unique_reskin is set. - * - * Called on setup_reskinning(). - * Inheritors should override this to add their own checks. - */ -/obj/item/proc/check_setup_reskinning() - SHOULD_CALL_PARENT(TRUE) - if(unique_reskin) - return TRUE - - return FALSE - -/** - * Registers signals and context for reskinning, - * if check_setup_reskinning() passes. - * - * Called on Initialize(...). - * Inheritors should override this to add their own setup steps, - * or to avoid double calling register_context(). - */ -/obj/item/proc/setup_reskinning() - SHOULD_CALL_PARENT(FALSE) - if(!check_setup_reskinning()) - return - - RegisterSignal(src, COMSIG_CLICK_ALT, PROC_REF(on_click_alt_reskin)) - register_context() - -/** - * Reskins object based on a user's choice - * - * Arguments: - * * user The mob choosing a reskin option - */ -/obj/item/proc/reskin_obj(mob/user) - if(!LAZYLEN(unique_reskin)) - return - - var/list/items = list() - for(var/reskin_option in unique_reskin) - var/image/item_image = image(icon = src.icon, icon_state = unique_reskin[reskin_option]) - items += list("[reskin_option]" = item_image) - sort_list(items) - - var/pick = show_radial_menu(user, src, items, custom_check = CALLBACK(src, PROC_REF(check_reskin_menu), user), radius = 38, require_near = TRUE) - if(!pick) - return - if(!unique_reskin[pick]) - return - current_skin = pick - icon_state = unique_reskin[pick] - - if (unique_reskin_changes_base_icon_state) - base_icon_state = icon_state - - if (unique_reskin_changes_inhand) - inhand_icon_state = icon_state - - update_appearance() - - to_chat(user, "[src] is now skinned as '[pick].'") - SEND_SIGNAL(src, COMSIG_OBJ_RESKIN, user, pick) - - -/** - * Checks if we are allowed to interact with a radial menu for reskins - * - * Arguments: - * * user The mob interacting with the menu - */ -/obj/item/proc/check_reskin_menu(mob/user) - if(QDELETED(src)) - return FALSE - if(!(obj_flags & INFINITE_RESKIN) && current_skin) - return FALSE - if(!istype(user)) - return FALSE - if(user.incapacitated) - return FALSE - return TRUE diff --git a/code/game/objects/objs.dm b/code/game/objects/objs.dm index 10b500824e5ebe..cc7cf0f2ccd821 100644 --- a/code/game/objects/objs.dm +++ b/code/game/objects/objs.dm @@ -64,10 +64,14 @@ GLOBAL_LIST_EMPTY(objects_by_id_tag) if (id_tag) GLOB.objects_by_id_tag[id_tag] = src + if(opacity) + SScameras.update_visibility(src) /obj/Destroy(force) if(!ismachinery(src)) STOP_PROCESSING(SSobj, src) // TODO: Have a processing bitflag to reduce on unnecessary loops through the processing lists + if(opacity) + SScameras.update_visibility(src) SStgui.close_uis(src) GLOB.objects_by_id_tag -= id_tag . = ..() diff --git a/code/game/objects/structures.dm b/code/game/objects/structures.dm index 3e7e13c1df2f7a..9d4442238ac929 100644 --- a/code/game/objects/structures.dm +++ b/code/game/objects/structures.dm @@ -23,10 +23,8 @@ if(smoothing_flags & USES_SMOOTHING) QUEUE_SMOOTH(src) QUEUE_SMOOTH_NEIGHBORS(src) - GLOB.cameranet.updateVisibility(src) /obj/structure/Destroy(force) - GLOB.cameranet.updateVisibility(src) if(smoothing_flags & USES_SMOOTHING) QUEUE_SMOOTH_NEIGHBORS(src) return ..() diff --git a/code/game/objects/structures/ai_core.dm b/code/game/objects/structures/ai_core.dm deleted file mode 100644 index 6eee27ce24ee03..00000000000000 --- a/code/game/objects/structures/ai_core.dm +++ /dev/null @@ -1,484 +0,0 @@ -#define AI_CORE_BRAIN(X) X.braintype == "Android" ? "brain" : "MMI" - -/obj/structure/ai_core - density = TRUE - anchored = FALSE - name = "\improper AI core" - icon = 'icons/mob/silicon/ai.dmi' - icon_state = "0" - desc = "The framework for an artificial intelligence core." - max_integrity = 500 - var/state = EMPTY_CORE - var/datum/ai_laws/laws - var/obj/item/circuitboard/aicore/circuit - var/obj/item/mmi/core_mmi - /// only used in cases of AIs piloting mechs or shunted malf AIs, possible later use cases - var/mob/living/silicon/ai/remote_ai = null - -/obj/structure/ai_core/Initialize(mapload) - . = ..() - laws = new - laws.set_laws_config() - -/obj/structure/ai_core/examine(mob/user) - . = ..() - if(!anchored) - if(state != EMPTY_CORE) - . += span_notice("It has some bolts that could be tightened.") - else - . += span_notice("It has some bolts that could be tightened. The frame can be melted down.") - else - switch(state) - if(EMPTY_CORE) - . += span_notice("There is a slot for a circuit board, its bolts can be loosened.") - if(CIRCUIT_CORE) - . += span_notice("The circuit board can be screwed into place or pried out.") - if(SCREWED_CORE) - . += span_notice("The frame can be wired, the circuit board can be unfastened.") - if(CABLED_CORE) - if(!core_mmi) - . += span_notice("There are wires which could be hooked up to an MMI or positronic brain, or cut.") - else - var/accept_laws = TRUE - if(core_mmi.laws.id != DEFAULT_AI_LAWID || !core_mmi.brainmob || !core_mmi.brainmob?.mind) - accept_laws = FALSE - . += span_notice("There is a slot for a reinforced glass panel, the [AI_CORE_BRAIN(core_mmi)] could be pried out.[accept_laws ? " A law module can be swiped across." : ""]") - if(GLASS_CORE) - . += span_notice("The monitor [core_mmi?.brainmob?.mind && !suicide_check() ? "and neural interface " : ""]can be screwed in, the panel can be pried out.") - if(AI_READY_CORE) - . += span_notice("The monitor's connection can be cut[core_mmi?.brainmob?.mind && !suicide_check() ? " the neural interface can be screwed in." : "."]") - -/obj/structure/ai_core/Exited(atom/movable/gone, direction) - . = ..() - if(gone == circuit) - circuit = null - if((state != GLASS_CORE) && (state != AI_READY_CORE)) - state = EMPTY_CORE - update_appearance() - if(gone == core_mmi) - core_mmi = null - update_appearance() - -/obj/structure/ai_core/Destroy() - if(istype(remote_ai)) - remote_ai = null - QDEL_NULL(circuit) - QDEL_NULL(core_mmi) - QDEL_NULL(laws) - return ..() - -/obj/structure/ai_core/take_damage(damage_amount, damage_type, damage_flag, sound_effect, attack_dir, armour_penetration) - . = ..() - if(. > 0 && istype(remote_ai)) - to_chat(remote_ai, span_danger("Your core is under attack!")) - - -/obj/structure/ai_core/deactivated - icon_state = "ai-empty" - anchored = TRUE - state = AI_READY_CORE - var/mob/living/silicon/ai/attached_ai - -/obj/structure/ai_core/deactivated/Initialize(mapload, skip_mmi_creation = FALSE, posibrain = FALSE, linked_ai) - . = ..() - circuit = new(src) - if(linked_ai) - attached_ai = linked_ai - if(skip_mmi_creation) - return - if(posibrain) - core_mmi = new/obj/item/mmi/posibrain(src, /* autoping = */ FALSE) - else - core_mmi = new(src) - core_mmi.brain = new(core_mmi) - core_mmi.update_appearance() - -/obj/structure/ai_core/deactivated/Destroy() - if(attached_ai) - attached_ai.linked_core = null - attached_ai = null - . = ..() - -/obj/structure/ai_core/deactivated/proc/disable_doomsday(datum/source) - SIGNAL_HANDLER - attached_ai.ShutOffDoomsdayDevice() - -/obj/structure/ai_core/latejoin_inactive - name = "networked AI core" - desc = "This AI core is connected by bluespace transmitters to NTNet, allowing for an AI personality to be downloaded to it on the fly mid-shift." - icon_state = "ai-empty" - anchored = TRUE - state = AI_READY_CORE - var/available = TRUE - var/safety_checks = TRUE - var/active = TRUE - -/obj/structure/ai_core/latejoin_inactive/Initialize(mapload) - . = ..() - circuit = new(src) - core_mmi = new(src) - core_mmi.brain = new(core_mmi) - core_mmi.update_appearance() - GLOB.latejoin_ai_cores += src - -/obj/structure/ai_core/latejoin_inactive/Destroy() - GLOB.latejoin_ai_cores -= src - return ..() - -/obj/structure/ai_core/latejoin_inactive/examine(mob/user) - . = ..() - . += "Its transmitter seems to be [active? "on" : "off"]." - . += span_notice("You could [active? "deactivate" : "activate"] it with a multitool.") - -/obj/structure/ai_core/latejoin_inactive/proc/is_available() //If people still manage to use this feature to spawn-kill AI latejoins ahelp them. - if(!available) - return FALSE - if(!safety_checks) - return TRUE - if(!active) - return FALSE - var/turf/T = get_turf(src) - var/area/A = get_area(src) - if(!(A.area_flags & BLOBS_ALLOWED)) - return FALSE - if(!A.power_equip) - return FALSE - if(!SSmapping.level_trait(T.z,ZTRAIT_STATION)) - return FALSE - if(!isfloorturf(T)) - return FALSE - return TRUE - -/obj/structure/ai_core/latejoin_inactive/attackby(obj/item/tool, mob/user, list/modifiers, list/attack_modifiers) - if(tool.tool_behaviour == TOOL_MULTITOOL) - active = !active - to_chat(user, span_notice("You [active? "activate" : "deactivate"] \the [src]'s transmitters.")) - return - return ..() - -/obj/structure/ai_core/wrench_act(mob/living/user, obj/item/tool) - . = ..() - default_unfasten_wrench(user, tool) - return ITEM_INTERACT_SUCCESS - -/obj/structure/ai_core/screwdriver_act(mob/living/user, obj/item/tool) - . = ..() - if(state == AI_READY_CORE) - if(!core_mmi) - balloon_alert(user, "no brain installed!") - return ITEM_INTERACT_SUCCESS - else if(!core_mmi.brainmob?.mind || suicide_check()) - balloon_alert(user, "brain is inactive!") - return ITEM_INTERACT_SUCCESS - else - balloon_alert(user, "connecting neural network...") - if(!tool.use_tool(src, user, 10 SECONDS)) - return ITEM_INTERACT_SUCCESS - if(!ai_structure_to_mob()) - return ITEM_INTERACT_SUCCESS - balloon_alert(user, "connected neural network") - return ITEM_INTERACT_SUCCESS - -/obj/structure/ai_core/attackby(obj/item/tool, mob/living/user, list/modifiers, list/attack_modifiers) - if(remote_ai) - to_chat(remote_ai, span_danger("CORE TAMPERING DETECTED!")) - if(!anchored) - if(tool.tool_behaviour == TOOL_WELDER) - if(state != EMPTY_CORE) - balloon_alert(user, "core must be empty to deconstruct it!") - return - - if(!tool.tool_start_check(user, amount=1)) - return - - balloon_alert(user, "deconstructing frame...") - if(tool.use_tool(src, user, 20, volume=50) && state == EMPTY_CORE) - balloon_alert(user, "deconstructed frame") - deconstruct(TRUE) - return - else - if(!user.combat_mode) - balloon_alert(user, "bolt it down first!") - return - else - return ..() - else - switch(state) - if(EMPTY_CORE) - if(istype(tool, /obj/item/circuitboard/aicore)) - if(!user.transferItemToLoc(tool, src)) - return - playsound(loc, 'sound/items/deconstruct.ogg', 50, TRUE) - balloon_alert(user, "circuit board inserted") - update_appearance() - state = CIRCUIT_CORE - circuit = tool - return - if(CIRCUIT_CORE) - if(tool.tool_behaviour == TOOL_SCREWDRIVER) - tool.play_tool_sound(src) - balloon_alert(user, "board screwed into place") - state = SCREWED_CORE - update_appearance() - return - if(tool.tool_behaviour == TOOL_CROWBAR) - tool.play_tool_sound(src) - balloon_alert(user, "circuit board removed") - state = EMPTY_CORE - circuit.forceMove(loc) - return - if(SCREWED_CORE) - if(tool.tool_behaviour == TOOL_SCREWDRIVER && circuit) - tool.play_tool_sound(src) - balloon_alert(user, "circuit board unfastened") - state = CIRCUIT_CORE - update_appearance() - return - if(istype(tool, /obj/item/stack/cable_coil)) - var/obj/item/stack/cable_coil/C = tool - if(C.get_amount() >= 5) - playsound(loc, 'sound/items/deconstruct.ogg', 50, TRUE) - balloon_alert(user, "adding cables to frame...") - if(do_after(user, 2 SECONDS, target = src) && state == SCREWED_CORE && C.use(5)) - balloon_alert(user, "added cables to frame.") - state = CABLED_CORE - update_appearance() - else - balloon_alert(user, "need five lengths of cable!") - return - if(CABLED_CORE) - if(tool.tool_behaviour == TOOL_WIRECUTTER) - if(core_mmi) - balloon_alert(user, "remove the [AI_CORE_BRAIN(core_mmi)] first!") - else - tool.play_tool_sound(src) - balloon_alert(user, "cables removed") - state = SCREWED_CORE - update_appearance() - new /obj/item/stack/cable_coil(drop_location(), 5) - return - - if(istype(tool, /obj/item/stack/sheet/rglass)) - if(!core_mmi) - balloon_alert(user, "add a brain first!") - return - var/obj/item/stack/sheet/rglass/G = tool - if(G.get_amount() >= 2) - playsound(loc, 'sound/items/deconstruct.ogg', 50, TRUE) - balloon_alert(user, "adding glass panel...") - if(do_after(user, 2 SECONDS, target = src) && state == CABLED_CORE && G.use(2)) - balloon_alert(user, "added glass panel") - state = GLASS_CORE - update_appearance() - else - balloon_alert(user, "need two sheets of reinforced glass!") - return - - if(istype(tool, /obj/item/ai_module)) - if(!core_mmi) - balloon_alert(user, "no brain installed!") - return - if(!core_mmi.brainmob || !core_mmi.brainmob?.mind || suicide_check()) - balloon_alert(user, "[AI_CORE_BRAIN(core_mmi)] is inactive!") - return - if(core_mmi.laws.id != DEFAULT_AI_LAWID) - balloon_alert(user, "[AI_CORE_BRAIN(core_mmi)] already has set laws!") - return - var/obj/item/ai_module/module = tool - module.install(laws, user) - return - - if(istype(tool, /obj/item/mmi) && !core_mmi) - var/obj/item/mmi/M = tool - if(!M.brain_check(user)) - var/install = tgui_alert(user, "This [AI_CORE_BRAIN(M)] is inactive, would you like to make an inactive AI?", "Installing AI [AI_CORE_BRAIN(M)]", list("Yes", "No")) - if(install != "Yes") - return - if(M.brainmob && HAS_TRAIT(M.brainmob, TRAIT_SUICIDED)) - to_chat(user, span_warning("[M.name] is completely useless!")) - return - if(!user.transferItemToLoc(M, src)) - return - core_mmi = M - balloon_alert(user, "added [AI_CORE_BRAIN(core_mmi)] to frame") - update_appearance() - return - - var/mob/living/brain/B = M.brainmob - if(!CONFIG_GET(flag/allow_ai) || (is_banned_from(B.ckey, JOB_AI) && !QDELETED(src) && !QDELETED(user) && !QDELETED(M) && !QDELETED(user) && Adjacent(user))) - if(!QDELETED(M)) - to_chat(user, span_warning("This [M.name] does not seem to fit!")) - return - if(!user.transferItemToLoc(M,src)) - return - - core_mmi = M - balloon_alert(user, "added [AI_CORE_BRAIN(core_mmi)] to frame") - update_appearance() - return - - if(tool.tool_behaviour == TOOL_CROWBAR && core_mmi) - tool.play_tool_sound(src) - balloon_alert(user, "removed [AI_CORE_BRAIN(core_mmi)]") - if(remote_ai) - var/mob/living/silicon/ai/remoted_ai = remote_ai - remoted_ai.break_core_link() - if(!IS_MALF_AI(remoted_ai)) - //don't pull back shunted malf AIs - remoted_ai.death(gibbed = TRUE, drop_mmi = FALSE) - ///the drop_mmi param determines whether the MMI is dropped at their current location - ///which in this case would be somewhere else, so we drop their MMI at the core instead - remoted_ai.make_mmi_drop_and_transfer(core_mmi, src) - core_mmi.forceMove(loc) //if they're malf, just drops a blank MMI, or if it's an incomplete shell - return //it drops the mmi that was put in before it was finished - - if(GLASS_CORE) - if(tool.tool_behaviour == TOOL_CROWBAR) - tool.play_tool_sound(src) - balloon_alert(user, "removed glass panel") - state = CABLED_CORE - update_appearance() - new /obj/item/stack/sheet/rglass(loc, 2) - return - - if(tool.tool_behaviour == TOOL_SCREWDRIVER) - if(suicide_check()) - to_chat(user, span_warning("The brain installed is completely useless.")) - return - tool.play_tool_sound(src) - - var/atom/alert_source = src - if(core_mmi.brainmob?.mind) - alert_source = ai_structure_to_mob() || alert_source - else - state = AI_READY_CORE - update_appearance() - alert_source.balloon_alert(user, "connected monitor[core_mmi?.brainmob?.mind ? " and neural network" : ""]") - return - - if(AI_READY_CORE) - if(istype(tool, /obj/item/aicard)) - return //handled by /obj/structure/ai_core/transfer_ai() - - if(tool.tool_behaviour == TOOL_WIRECUTTER) - tool.play_tool_sound(src) - balloon_alert(user, "disconnected monitor") - state = GLASS_CORE - update_appearance() - return - return ..() - -/obj/structure/ai_core/proc/ai_structure_to_mob() - var/mob/living/brain/the_brainmob = core_mmi.brainmob - if(!the_brainmob.mind || suicide_check()) - return FALSE - the_brainmob.mind.remove_antags_for_borging() - if(!the_brainmob.mind.has_ever_been_ai) - SSblackbox.record_feedback("amount", "ais_created", 1) - var/mob/living/silicon/ai/ai_mob = null - - if(core_mmi.overrides_aicore_laws) - ai_mob = new /mob/living/silicon/ai(loc, core_mmi.laws, the_brainmob) - core_mmi.laws = null //MMI's law datum is being donated, so we need the MMI to let it go or the GC will eat it - else - ai_mob = new /mob/living/silicon/ai(loc, laws, the_brainmob) - laws = null //we're giving the new AI this datum, so let's not delete it when we qdel(src) 5 lines from now - - var/datum/antagonist/malf_ai/malf_datum = IS_MALF_AI(ai_mob) - if(malf_datum) - malf_datum.add_law_zero() - - if(!isnull(the_brainmob.client)) - ai_mob.set_gender(the_brainmob.client) - if(core_mmi.force_replace_ai_name) - ai_mob.fully_replace_character_name(ai_mob.name, core_mmi.replacement_ai_name()) - ai_mob.posibrain_inside = core_mmi.braintype == "Android" - deadchat_broadcast(" has been brought online at [get_area_name(ai_mob, format_text = TRUE)].", span_name("[ai_mob]"), follow_target = ai_mob, message_type = DEADCHAT_ANNOUNCEMENT) - qdel(src) - return ai_mob - -/obj/structure/ai_core/update_icon_state() - switch(state) - if(EMPTY_CORE) - icon_state = "0" - if(CIRCUIT_CORE) - icon_state = "1" - if(SCREWED_CORE) - icon_state = "2" - if(CABLED_CORE) - if(core_mmi) - icon_state = "3b" - else - icon_state = "3" - if(GLASS_CORE) - icon_state = "4" - if(AI_READY_CORE) - icon_state = "ai-empty" - return ..() - -/obj/structure/ai_core/atom_deconstruct(disassembled = TRUE) - if(state >= GLASS_CORE) - new /obj/item/stack/sheet/rglass(loc, 2) - if(state >= CABLED_CORE) - new /obj/item/stack/cable_coil(loc, 5) - if(circuit) - circuit.forceMove(loc) - circuit = null - new /obj/item/stack/sheet/plasteel(loc, 4) - -/// Quick proc to call to see if the brainmob inside of us has suicided. Returns TRUE if we have, FALSE in any other scenario. -/obj/structure/ai_core/proc/suicide_check() - if(isnull(core_mmi) || isnull(core_mmi.brainmob)) - return FALSE - return HAS_TRAIT(core_mmi.brainmob, TRAIT_SUICIDED) - -/* -This is a good place for AI-related object verbs so I'm sticking it here. -If adding stuff to this, don't forget that an AI need to cancel_camera() whenever it physically moves to a different location. -That prevents a few funky behaviors. -*/ -//The type of interaction, the player performing the operation, the AI itself, and the card object, if any. - - -/atom/proc/transfer_ai(interaction, mob/user, mob/living/silicon/ai/AI, obj/item/aicard/card) - SHOULD_CALL_PARENT(TRUE) - if(istype(card)) - if(card.flush) - to_chat(user, span_alert("ERROR: AI flush is in progress, cannot execute transfer protocol.")) - return FALSE - return TRUE - -/obj/structure/ai_core/transfer_ai(interaction, mob/user, mob/living/silicon/ai/AI, obj/item/aicard/card) - if(state != AI_READY_CORE || !..()) - return - if(core_mmi && core_mmi.brainmob) - if(core_mmi.brainmob.mind) - to_chat(user, span_warning("[src] already contains an active mind!")) - return - else if(suicide_check()) - to_chat(user, span_warning("[AI_CORE_BRAIN(core_mmi)] installed in [src] is completely useless!")) - return - //Transferring a carded AI to a core. - if(interaction == AI_TRANS_FROM_CARD) - AI.set_control_disabled(FALSE) - AI.radio_enabled = TRUE - AI.forceMove(loc) // to replace the terminal. - to_chat(AI, span_notice("You have been uploaded to a stationary terminal. Remote device connection restored.")) - to_chat(user, "[span_boldnotice("Transfer successful")]: [AI.name] ([rand(1000,9999)].exe) installed and executed successfully. Local copy has been removed.") - card.AI = null - AI.battery = circuit.battery - AI.posibrain_inside = isnull(core_mmi) || core_mmi.braintype == "Android" - qdel(src) - else //If for some reason you use an empty card on an empty AI terminal. - to_chat(user, span_alert("There is no AI loaded on this terminal.")) - -/obj/item/circuitboard/aicore - name = "AI core (AI Core Board)" //Well, duh, but best to be consistent - var/battery = 200 //backup battery for when the AI loses power. Copied to/from AI mobs when carding, and placed here to avoid recharge via deconning the core - -/obj/item/circuitboard/aicore/Initialize(mapload) - . = ..() - if(mapload && HAS_TRAIT(SSstation, STATION_TRAIT_HUMAN_AI)) - return INITIALIZE_HINT_QDEL - -#undef AI_CORE_BRAIN diff --git a/code/game/objects/structures/beds_chairs/alien_nest.dm b/code/game/objects/structures/beds_chairs/alien_nest.dm index 1f77227a8bec83..2c0b620dce929c 100644 --- a/code/game/objects/structures/beds_chairs/alien_nest.dm +++ b/code/game/objects/structures/beds_chairs/alien_nest.dm @@ -15,6 +15,10 @@ can_deconstruct = FALSE var/static/mutable_appearance/nest_overlay = mutable_appearance('icons/mob/nonhuman-player/alien.dmi', "nestoverlay", LYING_MOB_LAYER) +/obj/structure/bed/nest/Initialize(mapload) + . = ..() + ADD_TRAIT(src, TRAIT_DANGEROUS_BUCKLE, INNATE_TRAIT) + /obj/structure/bed/nest/add_context(atom/source, list/context, obj/item/held_item, mob/living/user) if(held_item?.tool_behaviour == TOOL_WRENCH) return NONE diff --git a/code/game/objects/structures/beds_chairs/bed.dm b/code/game/objects/structures/beds_chairs/bed.dm index 6b687c8a4b01f5..c6435e1973d779 100644 --- a/code/game/objects/structures/beds_chairs/bed.dm +++ b/code/game/objects/structures/beds_chairs/bed.dm @@ -19,6 +19,7 @@ resistance_flags = FLAMMABLE max_integrity = 100 integrity_failure = 0.35 + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2) /// What material this bed is made of var/build_stack_type = /obj/item/stack/sheet/iron /// How many mats to drop when deconstructed @@ -314,6 +315,7 @@ build_stack_type = /obj/item/stack/sheet/mineral/wood build_stack_amount = 10 elevation = 0 + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 10) var/owned = FALSE /obj/structure/bed/dogbed/ian @@ -381,6 +383,7 @@ icon_state = "bed_double" build_stack_amount = 4 max_buckled_mobs = 2 + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 4) /// The mob who buckled to this bed second, to avoid other mobs getting pixel-shifted before he unbuckles. var/mob/living/goldilocks diff --git a/code/game/objects/structures/beds_chairs/chair.dm b/code/game/objects/structures/beds_chairs/chair.dm index b2432b7f760479..58e3fa5899ee0f 100644 --- a/code/game/objects/structures/beds_chairs/chair.dm +++ b/code/game/objects/structures/beds_chairs/chair.dm @@ -27,7 +27,7 @@ fishing_modifier -= 8 MakeRotate() if(can_buckle && fishing_modifier) - AddComponent(/datum/component/adjust_fishing_difficulty, fishing_modifier) + AddElement(/datum/element/adjust_fishing_difficulty, fishing_modifier) /obj/structure/chair/buckle_feedback(mob/living/being_buckled, mob/buckler) if(HAS_TRAIT(being_buckled, TRAIT_RESTRAINED)) @@ -71,7 +71,7 @@ ///This proc adds the rotate component, overwrite this if you for some reason want to change some specific args. /obj/structure/chair/proc/MakeRotate() - AddComponent(/datum/component/simple_rotation, ROTATION_IGNORE_ANCHORED|ROTATION_GHOSTS_ALLOWED) + AddElement(/datum/element/simple_rotation, ROTATION_IGNORE_ANCHORED|ROTATION_GHOSTS_ALLOWED) /obj/structure/chair/Destroy() SSjob.latejoin_trackers -= src //These may be here due to the arrivals shuttle @@ -188,6 +188,7 @@ buildstackamount = 3 item_chair = /obj/item/chair/wood fishing_modifier = -6 + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 3) /obj/structure/chair/wood/narsie_act() return @@ -207,6 +208,7 @@ item_chair = null fishing_modifier = -7 has_armrest = TRUE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2) /obj/structure/chair/comfy/brown color = rgb(70, 47, 28) @@ -232,7 +234,7 @@ unbuckle_sound = SFX_SEATBELT_UNBUCKLE resistance_flags = FIRE_PROOF max_integrity = 120 - custom_materials = list(/datum/material/titanium = SHEET_MATERIAL_AMOUNT) + custom_materials = list(/datum/material/titanium = SHEET_MATERIAL_AMOUNT * 2) /obj/structure/chair/comfy/shuttle/electrify_self(obj/item/assembly/shock_kit/input_shock_kit, mob/user, list/overlays_from_child_procs) if(!overlays_from_child_procs) @@ -286,6 +288,7 @@ icon_state = "carp_chair" buildstacktype = /obj/item/stack/sheet/animalhide/carp fishing_modifier = -12 + custom_materials = null /obj/structure/chair/office name = "office chair" @@ -294,6 +297,7 @@ item_chair = null fishing_modifier = -6 icon_state = "officechair_dark" + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 5) /obj/structure/chair/office/Initialize(mapload) . = ..() @@ -320,11 +324,17 @@ name = "stool" desc = "Apply butt." icon_state = "stool" - can_buckle = FALSE buildstackamount = 1 item_chair = /obj/item/chair/stool max_integrity = 300 +/obj/structure/chair/stool/post_buckle_mob(mob/living/Mob) + Mob.add_offsets(type, z_add = 4) + . = ..() + +/obj/structure/chair/stool/post_unbuckle_mob(mob/living/Mob) + Mob.remove_offsets(type) + MAPPING_DIRECTIONAL_HELPERS(/obj/structure/chair/stool, 0) /obj/structure/chair/stool/narsie_act() @@ -359,13 +369,10 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/chair/stool, 0) desc = "It has some unsavory stains on it..." icon_state = "bar" item_chair = /obj/item/chair/stool/bar - can_buckle = TRUE -/obj/structure/chair/stool/bar/post_buckle_mob(mob/living/M) - M.pixel_y += 4 - -/obj/structure/chair/stool/bar/post_unbuckle_mob(mob/living/M) - M.pixel_y -= 4 +/obj/structure/chair/stool/bar/post_buckle_mob(mob/living/Mob) + . = ..() + Mob.add_offsets(type, z_add = 7) MAPPING_DIRECTIONAL_HELPERS(/obj/structure/chair/stool/bar, 0) @@ -378,6 +385,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/chair/stool/bar, 0) buildstacktype = /obj/item/stack/sheet/mineral/bamboo buildstackamount = 2 item_chair = /obj/item/chair/stool/bamboo + custom_materials = list(/datum/material/bamboo = SHEET_MATERIAL_AMOUNT * 2) /obj/item/chair name = "chair" @@ -396,7 +404,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/chair/stool/bar, 0) max_integrity = 100 hitsound = 'sound/items/trayhit/trayhit1.ogg' hit_reaction_chance = 50 - custom_materials = list(/datum/material/iron =SHEET_MATERIAL_AMOUNT) + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT) item_flags = SKIP_FANTASY_ON_SPAWN // Duration of daze inflicted when the chair is smashed against someone from behind. @@ -530,6 +538,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/chair/stool/bar, 0) origin_type = /obj/structure/chair/stool/bamboo max_integrity = 40 //Submissive and breakable unlike the chad iron stool daze_amount = 0 //Not hard enough to cause them to become dazed + custom_materials = list(/datum/material/bamboo = SHEET_MATERIAL_AMOUNT * 2) /obj/item/chair/stool/narsie_act() return //sturdy enough to ignore a god @@ -544,6 +553,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/chair/stool/bar, 0) origin_type = /obj/structure/chair/wood custom_materials = null daze_amount = 0 + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 3) /obj/item/chair/wood/narsie_act() return @@ -569,6 +579,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/chair/stool/bar, 0) item_chair = null fishing_modifier = -13 //the pinnacle of Ratvarian technology. has_armrest = TRUE + custom_materials = list(/datum/material/bronze = SHEET_MATERIAL_AMOUNT) /// Total rotations made var/turns = 0 @@ -612,6 +623,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/chair/stool/bar, 0) obj_flags = parent_type::obj_flags | NO_DEBRIS_AFTER_DECONSTRUCTION alpha = 0 fishing_modifier = -21 //it only lives for 25 seconds, so we make them worth it. + custom_materials = null /obj/structure/chair/mime/wrench_act_secondary(mob/living/user, obj/item/weapon) return NONE @@ -628,7 +640,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/chair/stool/bar, 0) desc = "No matter how much you squirm, it'll still be uncomfortable." resistance_flags = FLAMMABLE max_integrity = 70 - custom_materials = list(/datum/material/plastic =SHEET_MATERIAL_AMOUNT) + custom_materials = list(/datum/material/plastic = SHEET_MATERIAL_AMOUNT * 2) buildstacktype = /obj/item/stack/sheet/plastic buildstackamount = 2 item_chair = /obj/item/chair/plastic @@ -662,7 +674,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/chair/stool/bar, 0) w_class = WEIGHT_CLASS_NORMAL force = 7 throw_range = 5 //Lighter Weight --> Flies Farther. - custom_materials = list(/datum/material/plastic =SHEET_MATERIAL_AMOUNT) + custom_materials = list(/datum/material/plastic = SHEET_MATERIAL_AMOUNT * 2) max_integrity = 70 daze_amount = 0 origin_type = /obj/structure/chair/plastic diff --git a/code/game/objects/structures/beds_chairs/pew.dm b/code/game/objects/structures/beds_chairs/pew.dm index e6c64d9f36f03c..22faec36e70b02 100644 --- a/code/game/objects/structures/beds_chairs/pew.dm +++ b/code/game/objects/structures/beds_chairs/pew.dm @@ -8,10 +8,11 @@ buildstacktype = /obj/item/stack/sheet/mineral/wood buildstackamount = 3 item_chair = null + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 3) ///This proc adds the rotate component, overwrite this if you for some reason want to change some specific args. /obj/structure/chair/pew/MakeRotate() - AddComponent(/datum/component/simple_rotation, ROTATION_REQUIRE_WRENCH|ROTATION_IGNORE_ANCHORED) + AddElement(/datum/element/simple_rotation, ROTATION_REQUIRE_WRENCH|ROTATION_IGNORE_ANCHORED) /obj/structure/chair/pew/left name = "left wooden pew end" diff --git a/code/game/objects/structures/beds_chairs/sofa.dm b/code/game/objects/structures/beds_chairs/sofa.dm index 986bbcd99a0766..75c2deb8d6d080 100644 --- a/code/game/objects/structures/beds_chairs/sofa.dm +++ b/code/game/objects/structures/beds_chairs/sofa.dm @@ -51,6 +51,27 @@ path/corner/color_name {\ COLORED_SOFA(/obj/structure/chair/sofa, brown, SOFA_BROWN) COLORED_SOFA(/obj/structure/chair/sofa, maroon, SOFA_MAROON) +// Make crafted brown sofas use the "retro sofa" display name without changing map-spawned ones. +/obj/structure/chair/sofa/middle/brown/Initialize(mapload) + . = ..() + if(!mapload) + name = "retro sofa" + +/obj/structure/chair/sofa/left/brown/Initialize(mapload) + . = ..() + if(!mapload) + name = "retro sofa" + +/obj/structure/chair/sofa/right/brown/Initialize(mapload) + . = ..() + if(!mapload) + name = "retro sofa" + +/obj/structure/chair/sofa/corner/brown/Initialize(mapload) + . = ..() + if(!mapload) + name = "retro sofa" + // Original icon ported from Eris(?) and updated to work here. /obj/structure/chair/sofa/corp name = "sofa" @@ -111,6 +132,7 @@ COLORED_SOFA(/obj/structure/chair/sofa, maroon, SOFA_MAROON) buildstacktype = /obj/item/stack/sheet/mineral/bamboo buildstackamount = 3 has_armrest = FALSE + custom_materials = list(/datum/material/bamboo = SHEET_MATERIAL_AMOUNT * 3) /obj/structure/chair/sofa/bamboo/left icon_state = "bamboo_sofaend_left" diff --git a/code/game/objects/structures/bedsheet_bin.dm b/code/game/objects/structures/bedsheet_bin.dm index 256ffbd8296782..f869a1203ebd5d 100644 --- a/code/game/objects/structures/bedsheet_bin.dm +++ b/code/game/objects/structures/bedsheet_bin.dm @@ -37,7 +37,7 @@ LINEN BINS /obj/item/bedsheet/Initialize(mapload) . = ..() - AddComponent(/datum/component/surgery_initiator) + AddElement(/datum/element/surgery_aid, "bedsheet") AddElement(/datum/element/bed_tuckable, mapload, 0, 0, 0) if(bedsheet_type == BEDSHEET_DOUBLE) stack_amount *= 2 @@ -581,6 +581,7 @@ LINEN BINS resistance_flags = FLAMMABLE max_integrity = 70 anchored_tabletop_offset = 6 + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT) /// The number of bedsheets in the bin var/amount = 10 /// A list of actual sheets within the bin diff --git a/code/game/objects/structures/bonfire.dm b/code/game/objects/structures/bonfire.dm index 2336208cf5b5b8..1b57b479140f05 100644 --- a/code/game/objects/structures/bonfire.dm +++ b/code/game/objects/structures/bonfire.dm @@ -17,6 +17,7 @@ anchored = TRUE buckle_lying = 0 pass_flags_self = PASSTABLE | LETPASSTHROW + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 10) /// is the bonfire lit? var/burning = FALSE /// icon for the bonfire while on. for a softer more burning embers icon, use "bonfire_warm" diff --git a/code/game/objects/structures/cannons/cannon.dm b/code/game/objects/structures/cannons/cannon.dm index 4c44ae646a8626..383e3517209349 100644 --- a/code/game/objects/structures/cannons/cannon.dm +++ b/code/game/objects/structures/cannons/cannon.dm @@ -15,14 +15,14 @@ var/anchorable_cannon = TRUE var/obj/item/stack/cannonball/loaded_cannonball = null var/charge_ignited = FALSE - var/fire_delay = 15 + var/fire_delay = 1.5 SECONDS var/charge_size = 15 var/fire_sound = 'sound/items/weapons/gun/general/cannon.ogg' /obj/structure/cannon/Initialize(mapload) . = ..() create_reagents(charge_size) - AddComponent(/datum/component/simple_rotation) + AddElement(/datum/element/simple_rotation) /obj/structure/cannon/examine(mob/user) . = ..() @@ -117,6 +117,7 @@ icon_state = "garbagegun" anchored = FALSE anchorable_cannon = FALSE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 11.15, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 1.5) var/fires_before_deconstruction = 5 /obj/structure/cannon/trash/fire() diff --git a/code/game/objects/structures/cannons/cannonballs.dm b/code/game/objects/structures/cannons/cannonballs.dm index 855292e8521a77..fca8eb7e901d57 100644 --- a/code/game/objects/structures/cannons/cannonballs.dm +++ b/code/game/objects/structures/cannons/cannonballs.dm @@ -71,6 +71,7 @@ base_icon_state = "trashballs" merge_type = /obj/item/stack/cannonball/trashball projectile_type = /obj/projectile/bullet/cannonball/trashball + custom_materials = list(/datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT) /obj/item/stack/cannonball/trashball/four amount = 4 diff --git a/code/game/objects/structures/cannons/mounted_guns/mounted_gun.dm b/code/game/objects/structures/cannons/mounted_guns/mounted_gun.dm index 3a7a027acb5812..5bf2e20a64e52a 100644 --- a/code/game/objects/structures/cannons/mounted_guns/mounted_gun.dm +++ b/code/game/objects/structures/cannons/mounted_guns/mounted_gun.dm @@ -9,34 +9,51 @@ icon = 'icons/obj/weapons/cannons.dmi' icon_state = "falconet_patina" var/icon_state_base = "falconet_patina" + var/icon_state_loaded = "falconet_patina" var/icon_state_fire = "falconet_patina_fire" max_integrity = 300 ///whether the cannon can be unwrenched from the ground. Anchorable_cannon equivalent. var/anchorable_gun = TRUE + /// does this thing need ammo at all or does it just make ammo? + var/uses_ammo = TRUE ///Max shots per firing of the gun. var/max_shots_per_fire = 1 + ///Delay it takes to load the gun. Set to 0 if none. + var/load_delay = 0 + ///Message displayed when loading gun + var/loading_message = "gun loaded" ///Shots currently loaded. Should never be more than max_shots_per_fire. var/shots_in_gun = 1 ///shots added to gun, per piece of ammo loaded. var/shots_per_load = 1 + ///Does it have an alternative ammo type it can uses + var/has_alt_ammo = FALSE + //Is it loaded with said alternative ammo? + var/use_alt_ammo = FALSE ///Accepted "ammo" type var/obj/item/ammo_type = /obj/item/ammo_casing/strilka310 + ///Alternative ammo types, for extra effects! + var/obj/item/alt_ammo_type = /obj/item/ammo_casing/strilka310 ///Projectile from said gun. Doesnt automatically inherit said ammo's projectile in case you wanted to make a gun that shoots floor tiles or something. var/obj/projectile/projectile_type = /obj/projectile/bullet/strilka310 + ///Projectile from said gun. Doesnt automatically inherit said ammo's projectile in case you wanted to make a gun that shoots floor tiles or something. + var/obj/projectile/alt_projectile_type = /obj/projectile/bullet/strilka310 ///If the gun has anything in it. var/loaded_gun = TRUE ///If the gun is currently loaded with its maximum capacity. var/fully_loaded_gun = TRUE ///delay in firing the gun after lighting - var/fire_delay = 5 + var/fire_delay = 5 DECISECONDS ///Delay between shots - var/shot_delay = 3 + var/shot_delay = 3 DECISECONDS ///If the gun shakes the camera when firing var/firing_shakes_camera = TRUE ///sound of firing for all but last shot var/fire_sound = 'sound/items/weapons/gun/general/mountedgun.ogg' ///sound of firing for last shot var/last_fire_sound = 'sound/items/weapons/gun/general/mountedgunend.ogg' + ///So you can't reload it mid-firing + var/is_firing = FALSE /obj/structure/mounted_gun/wrench_act(mob/living/user, obj/item/tool) . = ..() @@ -46,37 +63,45 @@ return ITEM_INTERACT_SUCCESS ///Covers Reloading and lighting of the gun -/obj/structure/mounted_gun/attackby(obj/item/ammo_casing/used_item, mob/user, list/modifiers, list/attack_modifiers) - var/ignition_message = used_item.ignition_effect(src, user) // Checks if item used can ignite stuff. - if(istype(used_item, ammo_type)) +/obj/structure/mounted_gun/attackby(obj/item/ammo_casing/used_item, mob/user, params) + if(is_firing) + balloon_alert(user, "gun is firing!") + return + if(istype(used_item, ammo_type) && (uses_ammo == TRUE)) //see if the gun needs to be loaded in some way. if(fully_loaded_gun) balloon_alert(user, "already fully loaded!") return - else - shots_in_gun = shots_in_gun + shots_per_load //Add one to the shots in the gun - - loaded_gun = TRUE // Make sure it registers theres ammo in there, so it can fire. - QDEL_NULL(used_item) - if(shots_in_gun >= max_shots_per_fire) - shots_in_gun = max_shots_per_fire // in case of somehow firing only some of a guns shots, and reloading, you still cant get above the maximum ammo size. - fully_loaded_gun = TRUE //So you cant load extra. + + if(load_delay > 0 && !do_after(user, load_delay, target = src)) return - else if(ignition_message) // if item the player used ignites, light the gun! - visible_message(ignition_message) - user.log_message("fired a cannon", LOG_ATTACK) - log_game("[key_name(user)] fired a cannon in [AREACOORD(src)]") - addtimer(CALLBACK(src, PROC_REF(fire)), fire_delay) //uses fire proc as shown below to shoot the gun + shots_in_gun = shots_in_gun + shots_per_load //Add one to the shots in the gun + balloon_alert(user, loading_message) + loaded_gun = TRUE // Make sure it registers theres ammo in there, so it can fire. + QDEL_NULL(used_item) + if(shots_in_gun >= max_shots_per_fire) + shots_in_gun = max_shots_per_fire // in case of somehow firing only some of a guns shots, and reloading, you still cant get above the maximum ammo size. + fully_loaded_gun = TRUE //So you cant load extra. + icon_state = icon_state_loaded + return + +/obj/structure/mounted_gun/attack_hand(mob/living/user, list/modifiers) + if(is_firing) + balloon_alert(user, "gun is firing!") return - ..() + user.log_message("fired a mounted gun", LOG_ATTACK) + log_game("[key_name(user)] fired a mounted gun in [AREACOORD(src)]") + addtimer(CALLBACK(src, PROC_REF(fire)), fire_delay) //uses fire proc as shown below to shoot the gun + return /obj/structure/mounted_gun/proc/fire() if (!loaded_gun) balloon_alert_to_viewers("gun is not loaded!","",2) return + is_firing = TRUE for(var/times_fired = 1, times_fired <= shots_in_gun, times_fired++) //The normal DM for loop structure since the times it has fired is changing in the loop itself. for(var/mob/shaken_mob in urange(10, src)) - if(shaken_mob.stat == CONSCIOUS && firing_shakes_camera == TRUE) + if(shaken_mob.stat == CONSCIOUS && firing_shakes_camera == TRUE) //is the mob awake to feel the shaking? shake_camera(shaken_mob, 3, 1) icon_state = icon_state_fire if(loaded_gun) @@ -84,23 +109,29 @@ if (times_fired < shots_in_gun) playsound(src, fire_sound, 50, FALSE, 5) else - playsound(src, last_fire_sound, 50, TRUE, 5) - var/obj/projectile/fired_projectile = new projectile_type(get_turf(src)) + playsound(src, last_fire_sound, 50, TRUE, 5) //for the empty fire sound + + var/obj/projectile/fired_projectile = (use_alt_ammo) ? new alt_projectile_type(get_turf(src)) : new projectile_type(get_turf(src)) fired_projectile.firer = src fired_projectile.fired_from = src fired_projectile.fire(dir2angle(dir)) sleep(shot_delay) - loaded_gun = FALSE - shots_in_gun = 0 - fully_loaded_gun = FALSE + + if(uses_ammo == TRUE) + loaded_gun = FALSE + use_alt_ammo = FALSE + shots_in_gun = 0 + fully_loaded_gun = FALSE + is_firing = FALSE icon_state = icon_state_base -/obj/structure/mounted_gun/pipe +/obj/structure/mounted_gun/organ_gun name = "Pipe Organ Gun" desc = "To become master over one who has killed, one must become a better killer. This engine of destruction is one of many things made to that end." icon_state = "pipeorgangun" icon_state_base = "pipeorgangun" + icon_state_loaded = "pipeorgangun" icon_state_fire = "pipeorgangun_fire" anchored = FALSE anchorable_gun = TRUE @@ -111,11 +142,12 @@ projectile_type = /obj/projectile/bullet/junk loaded_gun = TRUE fully_loaded_gun = TRUE - fire_delay = 3 - shot_delay = 2 + fire_delay = 3 DECISECONDS + shot_delay = 2 DECISECONDS firing_shakes_camera = FALSE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 24.5, /datum/material/wood = SHEET_MATERIAL_AMOUNT * 15, /datum/material/glass = SMALL_MATERIAL_AMOUNT) -/obj/structure/mounted_gun/pipe/examine_more(mob/user) +/obj/structure/mounted_gun/organ_gun/examine_more(mob/user) . = ..() . += span_notice("Looking down at \the [src], you recall a tale told to you in some distant memory...") @@ -125,7 +157,7 @@ . += span_info("As such, the man who ended another's life with a stone, was in turn smote himself by another wielding a spear. After spears, bows. Swords. Guns. Tanks. Missiles. And on and on Vengeance fed. Growing stronger. Growing Worse.") . += span_info("Vengeance persists to this day. It sometimes may slumber, seemingly content with having gorged itself, but in the end, its ceaseless hunger can be neither numbed nor sated.") -/obj/structure/mounted_gun/pipe/fire() +/obj/structure/mounted_gun/organ_gun/fire() if (!loaded_gun) balloon_alert_to_viewers("Gun is not loaded!","",2) return @@ -164,6 +196,7 @@ desc = "''Quantity has a quality of its own.''" icon_state = "canister_gatling" icon_state_base = "canister_gatling" + icon_state_loaded = "canister_gatling" icon_state_fire = "canister_gatling_fire" anchored = FALSE anchorable_gun = TRUE @@ -174,8 +207,8 @@ projectile_type = /obj/projectile/bullet/shrapnel loaded_gun = TRUE fully_loaded_gun = TRUE - fire_delay = 3 - shot_delay = 1 + fire_delay = 3 DECISECONDS + shot_delay = 1 DECISECONDS firing_shakes_camera = FALSE /obj/item/ammo_casing/canister_shot @@ -186,3 +219,136 @@ throwforce = 0 w_class = WEIGHT_CLASS_BULKY projectile_type = /obj/projectile/bullet/shrapnel + +/obj/structure/mounted_gun/ratvarian_repeater + name = "Ratvarian Repeater" + desc = "''Brains? Bronze? Why not both?''" + icon_state = "ratvarian_repeater" + icon_state_base = "ratvarian_repeater" + icon_state_fire = "ratvarian_repeater_fire" + loading_message = "gun charged" + anchored = FALSE + anchorable_gun = TRUE + uses_ammo = FALSE + load_delay = 30 + max_shots_per_fire = 12 + shots_per_load = 12 + shots_in_gun = 12 + fire_sound = 'sound/items/weapons/thermalpistol.ogg' + last_fire_sound = 'sound/items/weapons/thermalpistol.ogg' + projectile_type = /obj/projectile/beam/laser/repeater + loaded_gun = TRUE + fully_loaded_gun = TRUE + fire_delay = 1 + shot_delay = 2 + firing_shakes_camera = FALSE + custom_materials = list( + /datum/material/iron = SHEET_MATERIAL_AMOUNT * 5.25, + /datum/material/bronze = SHEET_MATERIAL_AMOUNT * 5, + /datum/material/glass = SHEET_MATERIAL_AMOUNT * 1.29 + ) + +/obj/structure/mounted_gun/ratvarian_repeater/dump_contents() + return // Stub because we don't want to do anything here + +/obj/structure/mounted_gun/ratvarian_repeater/attack_hand(mob/user, params) //the repeater is weird so has to have its own code since it takes no ammo. + + if(is_firing) + balloon_alert(user, "gun is firing!") + return + + if(!fully_loaded_gun) + if(!do_after(user, load_delay, target = src)) + return + shots_in_gun = shots_per_load //Add one to the shots in the gun + balloon_alert(user, "mechanism wound.") + playsound(src, 'sound/effects/magic/clockwork/fellowship_armory.ogg', 50, FALSE, 5) + loaded_gun = TRUE // Make sure it registers theres ammo in there, so it can fire. + if(shots_in_gun >= max_shots_per_fire) + shots_in_gun = max_shots_per_fire // in case of somehow firing only some of a guns shots, and reloading, you still cant get above the maximum ammo size. + fully_loaded_gun = TRUE //So you cant load extra. + return + + user.log_message("fired a ratvatian repeater", LOG_ATTACK) + log_game("[key_name(user)] fired a ratvatian repeater in [AREACOORD(src)]") + addtimer(CALLBACK(src, PROC_REF(fire)), fire_delay) //uses fire proc as shown below to shoot the gun + +/obj/structure/mounted_gun/ratvarian_repeater/fire() + if (!loaded_gun) + balloon_alert_to_viewers("needs winding!", vision_distance = 2) + return + is_firing = TRUE + for(var/times_fired = 1, times_fired <= shots_in_gun, times_fired++) //The normal DM for loop structure since the times it has fired is changing in the loop itself. + if(loaded_gun) + icon_state = icon_state_fire + if (times_fired < shots_in_gun) + playsound(src, fire_sound, 50, FALSE, 5) + else + playsound(src, last_fire_sound, 50, TRUE, 5) //for the empty fire sound + var/obj/projectile/fired_projectile = new projectile_type(get_turf(src)) + fired_projectile.firer = src + fired_projectile.fired_from = src + fired_projectile.fire(dir2angle(dir)) + if(times_fired % 2 != 1)//Burst Fire. + sleep(shot_delay) + sleep(shot_delay) + loaded_gun = FALSE + shots_in_gun = 0 + fully_loaded_gun = FALSE + is_firing = FALSE + icon_state = icon_state_base + +/obj/structure/mounted_gun/ballista + name = "Improvised Ballista" + desc = "''Engineers like to solve problems. If there are no problems handily available, they will create their own problems.''" + icon_state = "Improvised_Ballista" + icon_state_base = "Improvised_Ballista" + icon_state_loaded = "Improvised_Ballista_Loaded" + icon_state_fire = "Improvised_Ballista" + anchored = FALSE + anchorable_gun = TRUE + uses_ammo = TRUE + load_delay = 60 + max_shots_per_fire = 1 + shots_per_load = 1 + shots_in_gun = 1 + fire_sound = 'sound/items/xbow_lock.ogg' + last_fire_sound = 'sound/items/xbow_lock.ogg' + has_alt_ammo = TRUE + ammo_type = /obj/item/spear + projectile_type = /obj/projectile/bullet/ballista_spear + alt_ammo_type = /obj/item/spear/dragonator + alt_projectile_type = /obj/projectile/bullet/ballista_spear_dragon + loaded_gun = FALSE + fully_loaded_gun = FALSE + fire_delay = 1 + shot_delay = 1 + firing_shakes_camera = FALSE + custom_materials = list( + /datum/material/iron = SHEET_MATERIAL_AMOUNT * 15.15, + /datum/material/glass = SMALL_MATERIAL_AMOUNT * 1.5 + ) + +/obj/structure/mounted_gun/ballista/attackby(obj/item/ammo_casing/used_item, mob/user, params) //again its single shot so its kinda weird. + if(is_firing) + balloon_alert(user, "gun is firing") + return + + if(!istype(used_item, ammo_type)) + return + + if(fully_loaded_gun) + balloon_alert(user, "already fully loaded!") + return + + if(istype(used_item, alt_ammo_type)) + use_alt_ammo = TRUE + + playsound(src, 'sound/items/weapons/draw_bow.ogg', 50, FALSE, 5) + do_after(user, load_delay, target = src) + shots_in_gun = 1 //MAX OF ONE SHOT. + balloon_alert(user, loading_message) + loaded_gun = TRUE + QDEL_NULL(used_item) + fully_loaded_gun = TRUE + icon_state = icon_state_loaded diff --git a/code/game/objects/structures/cat_house.dm b/code/game/objects/structures/cat_house.dm index ea016e00d67785..746c67f0b1ec03 100644 --- a/code/game/objects/structures/cat_house.dm +++ b/code/game/objects/structures/cat_house.dm @@ -5,6 +5,7 @@ icon_state = "cat_house" density = TRUE anchored = TRUE + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 5) ///cat residing in this house var/mob/living/resident_cat diff --git a/code/game/objects/structures/chess.dm b/code/game/objects/structures/chess.dm index 04410e29980943..a8d45ccbf8fc7b 100644 --- a/code/game/objects/structures/chess.dm +++ b/code/game/objects/structures/chess.dm @@ -6,6 +6,7 @@ name = "\improper Probably a White Pawn" desc = "This is weird. Please inform administration on how you managed to get the parent chess piece. Thanks!" max_integrity = 100 + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2) /obj/structure/chess/wrench_act(mob/user, obj/item/tool) if(flags_1 & HOLOGRAM_1) diff --git a/code/game/objects/structures/construction_console/construction_actions.dm b/code/game/objects/structures/construction_console/construction_actions.dm index cce7d2ee516281..398e97954e7188 100644 --- a/code/game/objects/structures/construction_console/construction_actions.dm +++ b/code/game/objects/structures/construction_console/construction_actions.dm @@ -32,10 +32,10 @@ if (!area_constraint) return TRUE if(!istype(build_area, area_constraint)) - to_chat(owner, span_warning("You can only build within [area_constraint]!")) + to_chat(owner, span_warning("You can only build within [area_constraint::name]!")) return FALSE if(only_station_z && !is_station_level(build_target.z)) - to_chat(owner, span_warning("[area_constraint] has launched and can no longer be modified.")) + to_chat(owner, span_warning("[area_constraint::name] has launched and can no longer be modified.")) return FALSE return TRUE diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index 7a776378165fe1..ff5e41f2c36ab9 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -20,6 +20,7 @@ GLOBAL_LIST_EMPTY(roundstart_station_closets) /// How insulated the thing is, for the purposes of calculating body temperature. Must be between 0 and 1! contents_thermal_insulation = 0 pass_flags_self = PASSSTRUCTURE | LETPASSCLICKS + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2) /// The overlay for the closet's door var/obj/effect/overlay/closet_door/door_obj /// Whether or not this door is being animated @@ -392,10 +393,20 @@ GLOBAL_LIST_EMPTY(roundstart_station_closets) var/screentip_change = FALSE if(isnull(held_item)) - if(secure && !broken) - context[SCREENTIP_CONTEXT_RMB] = opened ? "Lock" : "Unlock" if(!welded) context[SCREENTIP_CONTEXT_LMB] = opened ? "Close" : "Open" + context[SCREENTIP_CONTEXT_RMB] = opened ? "Close" : "Open" + if(secure && !broken) + if (opened) + context[SCREENTIP_CONTEXT_RMB] = "Close" + else + context[SCREENTIP_CONTEXT_RMB] = !locked ? "Lock" : "Unlock" + if (locked) + context[SCREENTIP_CONTEXT_LMB] = "Unlock" + screentip_change = TRUE + if(secure && !opened && istype(held_item, /obj/item/card/id)) + context[SCREENTIP_CONTEXT_LMB] = !locked ? "Lock" : "Unlock" + context[SCREENTIP_CONTEXT_RMB] = !locked ? "Lock" : "Unlock" screentip_change = TRUE if(istype(held_item, cutting_tool)) @@ -678,6 +689,11 @@ GLOBAL_LIST_EMPTY(roundstart_station_closets) else return ..() +/obj/structure/closet/item_interaction_secondary(mob/living/user, obj/item/tool, list/modifiers) + if (attack_hand(user, modifiers)) + return ITEM_INTERACT_SUCCESS + return NONE + /// check if we can install airlock electronics in this closet /obj/structure/closet/proc/can_install_airlock_electronics(mob/user) if(secure || !can_install_electronics || opened) @@ -969,14 +985,15 @@ GLOBAL_LIST_EMPTY(roundstart_station_closets) . = ..() if(.) return + if(user.body_position == LYING_DOWN && get_dist(src, user) > 0) return if(toggle(user)) - return + return TRUE if(!opened) - togglelock(user) + return togglelock(user) /obj/structure/closet/attack_paw(mob/user, list/modifiers) return attack_hand(user, modifiers) diff --git a/code/game/objects/structures/crates_lockers/closets/bodybag.dm b/code/game/objects/structures/crates_lockers/closets/bodybag.dm index 6c1990258deef3..12d9b7a3794361 100644 --- a/code/game/objects/structures/crates_lockers/closets/bodybag.dm +++ b/code/game/objects/structures/crates_lockers/closets/bodybag.dm @@ -19,6 +19,7 @@ can_install_electronics = FALSE paint_jobs = null can_weld_shut = FALSE + door_anim_time = 0 var/foldedbag_path = /obj/item/bodybag var/obj/item/bodybag/foldedbag_instance = null diff --git a/code/game/objects/structures/crates_lockers/closets/cardboardbox.dm b/code/game/objects/structures/crates_lockers/closets/cardboardbox.dm index 7773d54e3e4c2e..66f7e2780e5651 100644 --- a/code/game/objects/structures/crates_lockers/closets/cardboardbox.dm +++ b/code/game/objects/structures/crates_lockers/closets/cardboardbox.dm @@ -9,6 +9,8 @@ can_weld_shut = 0 cutting_tool = /obj/item/wirecutters material_drop = /obj/item/stack/sheet/cardboard + material_drop_amount = 4 + custom_materials = list(/datum/material/cardboard = SHEET_MATERIAL_AMOUNT * 4) delivery_icon = "deliverybox" anchorable = FALSE open_sound = 'sound/machines/cardboard_box.ogg' @@ -118,4 +120,5 @@ close_sound = 'sound/machines/crate/crate_close.ogg' open_sound_volume = 35 close_sound_volume = 50 + custom_materials = list(/datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT * 4) material_drop = /obj/item/stack/sheet/plasteel diff --git a/code/game/objects/structures/crates_lockers/closets/fitness.dm b/code/game/objects/structures/crates_lockers/closets/fitness.dm index 4e43ea2ce10bf1..407fea71c316ab 100644 --- a/code/game/objects/structures/crates_lockers/closets/fitness.dm +++ b/code/game/objects/structures/crates_lockers/closets/fitness.dm @@ -13,7 +13,6 @@ new /obj/item/clothing/under/shorts/green(src) new /obj/item/clothing/under/costume/jabroni(src) - /obj/structure/closet/boxinggloves name = "boxing gloves closet" desc = "It's a storage unit for gloves for use in the boxing ring." @@ -26,7 +25,6 @@ new /obj/item/clothing/gloves/boxing/yellow(src) new /obj/item/clothing/gloves/boxing(src) - /obj/structure/closet/masks name = "mask closet" desc = "IT'S A STORAGE UNIT FOR FIGHTER MASKS OLE!" @@ -37,7 +35,6 @@ new /obj/item/clothing/mask/luchador/rudos(src) new /obj/item/clothing/mask/luchador/tecnicos(src) - /obj/structure/closet/lasertag/red name = "red laser tag equipment" desc = "It's a storage unit for laser tag equipment." diff --git a/code/game/objects/structures/crates_lockers/closets/gimmick.dm b/code/game/objects/structures/crates_lockers/closets/gimmick.dm index 24e9c93bdb97c9..d0d8689bc971d7 100644 --- a/code/game/objects/structures/crates_lockers/closets/gimmick.dm +++ b/code/game/objects/structures/crates_lockers/closets/gimmick.dm @@ -9,12 +9,15 @@ close_sound_volume = 50 max_integrity = 70 door_anim_time = 0 // no animation + material_drop = /obj/item/stack/sheet/mineral/wood + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 2) /obj/structure/closet/acloset name = "strange closet" desc = "It looks alien!" icon_state = "alien" material_drop = /obj/item/stack/sheet/mineral/abductor + custom_materials = list(/datum/material/alloy/alien = SHEET_MATERIAL_AMOUNT * 2) /obj/structure/closet/gimmick name = "administrative supply closet" diff --git a/code/game/objects/structures/crates_lockers/closets/job_closets.dm b/code/game/objects/structures/crates_lockers/closets/job_closets.dm index 39ec2eebcc094e..cdbc7f8856a241 100644 --- a/code/game/objects/structures/crates_lockers/closets/job_closets.dm +++ b/code/game/objects/structures/crates_lockers/closets/job_closets.dm @@ -7,7 +7,7 @@ /obj/structure/closet/gmcloset/PopulateContents() ..() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/clothing/head/hats/tophat = 2, /obj/item/radio/headset/headset_srv = 2, /obj/item/clothing/under/costume/buttondown/slacks/service = 2, @@ -30,7 +30,7 @@ /obj/structure/closet/chefcloset/PopulateContents() ..() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/clothing/under/suit/waiter = 2, /obj/item/radio/headset/headset_srv = 2, /obj/item/clothing/accessory/waistcoat = 2, @@ -119,7 +119,7 @@ icon_door = "sec_wardrobe" /obj/structure/closet/wardrobe/red/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/clothing/suit/hooded/wintercoat/security = 1, /obj/item/storage/backpack/security = 1, /obj/item/storage/backpack/satchel/sec = 1, @@ -139,7 +139,7 @@ icon_door = "cargo_wardrobe" /obj/structure/closet/wardrobe/cargotech/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/clothing/suit/hooded/wintercoat/cargo = 1, /obj/item/clothing/under/rank/cargo/tech = 3, /obj/item/clothing/shoes/sneakers/black = 3, @@ -153,7 +153,7 @@ icon_door = "atmos_wardrobe" /obj/structure/closet/wardrobe/atmospherics_yellow/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/clothing/accessory/pocketprotector = 1, /obj/item/storage/backpack/duffelbag/engineering = 1, /obj/item/storage/backpack/satchel/eng = 1, @@ -171,7 +171,7 @@ icon_door = "engi_wardrobe" /obj/structure/closet/wardrobe/engineering_yellow/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/clothing/accessory/pocketprotector = 1, /obj/item/storage/backpack/duffelbag/engineering = 1, /obj/item/storage/backpack/industrial = 1, @@ -190,7 +190,7 @@ icon_door = "med_wardrobe" /obj/structure/closet/wardrobe/white/medical/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/clothing/accessory/pocketprotector = 1, /obj/item/storage/backpack/duffelbag/med = 1, /obj/item/storage/backpack/medic = 1, @@ -213,7 +213,7 @@ icon_door = "robo_wardrobe" /obj/structure/closet/wardrobe/robotics_black/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/clothing/glasses/hud/diagnostic = 2, /obj/item/clothing/under/rank/rnd/roboticist = 2, /obj/item/clothing/suit/toggle/labcoat = 2, @@ -233,7 +233,7 @@ icon_door = "chem_wardrobe" /obj/structure/closet/wardrobe/chemistry_white/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/clothing/under/rank/medical/chemist = 2, /obj/item/clothing/shoes/sneakers/white = 2, /obj/item/clothing/suit/toggle/labcoat/chemist = 2, @@ -251,7 +251,7 @@ icon_door = "gen_wardrobe" /obj/structure/closet/wardrobe/genetics_white/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/clothing/under/rank/rnd/geneticist = 2, /obj/item/clothing/shoes/sneakers/white = 2, /obj/item/clothing/suit/toggle/labcoat/genetics = 2, @@ -268,7 +268,7 @@ icon_door = "viro_wardrobe" /obj/structure/closet/wardrobe/virology_white/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/clothing/under/rank/medical/virologist = 2, /obj/item/clothing/shoes/sneakers/white = 2, /obj/item/clothing/suit/toggle/labcoat/virologist = 2, @@ -285,7 +285,7 @@ icon_door = "sci_wardrobe" /obj/structure/closet/wardrobe/science_white/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/clothing/accessory/pocketprotector = 1, /obj/item/storage/backpack/science = 2, /obj/item/storage/backpack/satchel/science = 2, @@ -304,7 +304,7 @@ icon_door = "botany_wardrobe" /obj/structure/closet/wardrobe/botanist/PopulateContents() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/storage/backpack/botany = 2, /obj/item/storage/backpack/satchel/hyd = 2, /obj/item/storage/backpack/messenger/hyd = 2, diff --git a/code/game/objects/structures/crates_lockers/closets/secure/engineering.dm b/code/game/objects/structures/crates_lockers/closets/secure/engineering.dm index 22dd2bec4b2bb5..e448c3d553de39 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/engineering.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/engineering.dm @@ -35,7 +35,7 @@ /obj/structure/closet/secure_closet/engineering_electrical/PopulateContents() ..() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/inducer = 2, /obj/item/storage/toolbox/electrical = 3, /obj/item/electronics/apc = 3, diff --git a/code/game/objects/structures/crates_lockers/closets/secure/freezer.dm b/code/game/objects/structures/crates_lockers/closets/secure/freezer.dm index 1e19671a455460..9f6acb67817fc4 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/freezer.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/freezer.dm @@ -5,6 +5,7 @@ door_anim_squish = 0.22 door_anim_angle = 123 door_anim_time = 4 + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 5.3, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 3.5) /// If FALSE, we will protect the first person in the freezer from an explosion / nuclear blast. var/jones = FALSE paint_jobs = null diff --git a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm index e4ba63df947971..82a02d08c898df 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm @@ -6,7 +6,7 @@ /obj/structure/closet/secure_closet/medical1/PopulateContents() ..() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/reagent_containers/cup/beaker = 2, /obj/item/reagent_containers/dropper = 2, /obj/item/storage/belt/medical = 1, @@ -83,8 +83,6 @@ new /obj/item/computer_disk/command/cmo(src) new /obj/item/radio/headset/heads/cmo(src) new /obj/item/megaphone/command(src) - new /obj/item/defibrillator/compact/loaded(src) - new /obj/item/healthanalyzer/advanced(src) new /obj/item/assembly/flash/handheld(src) new /obj/item/autosurgeon/medical_hud(src) new /obj/item/door_remote/chief_medical_officer(src) @@ -99,6 +97,7 @@ // Traitor steal objective //new /obj/item/reagent_containers/hypospray/cmo(src) /// DOPPLER SHIFT REMOVAL + new /obj/item/defibrillator/compact/loaded/cmo(src) /obj/structure/closet/secure_closet/animal name = "animal control locker" @@ -147,7 +146,7 @@ /obj/structure/closet/secure_closet/paramedic/PopulateContents() ..() - var/static/items_inside = list( + var/list/items_inside = list( /obj/item/storage/medkit/emergency = 1, /obj/item/storage/box/bandages = 1, /obj/item/pinpointer/crew = 1, diff --git a/code/game/objects/structures/crates_lockers/closets/secure/personal.dm b/code/game/objects/structures/crates_lockers/closets/secure/personal.dm index f639df5f128660..01eb0550d57f57 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/personal.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/personal.dm @@ -45,6 +45,8 @@ open_sound_volume = 25 close_sound_volume = 50 door_anim_time = 0 // no animation + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 2) + material_drop = /obj/item/stack/sheet/mineral/wood /obj/structure/closet/secure_closet/personal/cabinet/PopulateContents() new /obj/item/storage/backpack/satchel/leather/withwallet( src ) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/secure_closets.dm b/code/game/objects/structures/crates_lockers/closets/secure/secure_closets.dm index 1fad4a1c9025b2..1d798b567a3cd2 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/secure_closets.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/secure_closets.dm @@ -8,6 +8,7 @@ secure = TRUE damage_deflection = 20 material_drop_amount = 5 + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 5, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.5) /datum/armor/closet_secure_closet melee = 30 diff --git a/code/game/objects/structures/crates_lockers/closets/secure/security.dm b/code/game/objects/structures/crates_lockers/closets/secure/security.dm index 703c2647cba3dd..6d2420c5904772 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm @@ -13,6 +13,7 @@ new /obj/item/radio/headset/heads/captain(src) new /obj/item/door_remote/captain(src) new /obj/item/storage/photo_album/captain(src) + new /obj/item/megaphone/command(src) /obj/structure/closet/secure_closet/captains/populate_contents_immediate() new /obj/item/gun/energy/e_gun(src) @@ -90,6 +91,7 @@ new /obj/item/storage/belt/secsword/full(src) // DOPPLER EDIT - new /obj/item/storage/belt/security/full(src) new /obj/item/flashlight/seclite(src) new /obj/item/door_remote/head_of_security(src) + new /obj/item/storage/belt/bandolier(src) /obj/structure/closet/secure_closet/warden/populate_contents_immediate() @@ -175,7 +177,7 @@ /obj/structure/closet/secure_closet/injection name = "lethal injections locker" - req_access = list(ACCESS_HOS) + req_access = list(ACCESS_ARMORY) /obj/structure/closet/secure_closet/injection/PopulateContents() ..() @@ -309,7 +311,7 @@ new /obj/item/storage/box/firingpins(src) new /obj/item/gun/energy/ionrifle(src) for(var/i in 1 to 3) - new /obj/item/gun/energy/laser/thermal(src) + new /obj/item/gun/energy/laser/pistol(src) /obj/structure/closet/secure_closet/armory3/populate_contents_immediate() for(var/i in 1 to 3) diff --git a/code/game/objects/structures/crates_lockers/closets/syndicate.dm b/code/game/objects/structures/crates_lockers/closets/syndicate.dm index fc2c2fe56d109d..f07fd7dca1df7f 100644 --- a/code/game/objects/structures/crates_lockers/closets/syndicate.dm +++ b/code/game/objects/structures/crates_lockers/closets/syndicate.dm @@ -30,6 +30,8 @@ new /obj/item/clothing/shoes/sneakers/black(src) new /obj/item/mod/module/plasma_stabilizer(src) new /obj/item/climbing_hook/syndicate(src) + new /obj/item/mod/module/thermal_regulator(src) + new /obj/item/mod/module/plasma_stabilizer(src) /obj/structure/closet/syndicate/nuclear desc = "It's a storage unit for a Syndicate boarding party." diff --git a/code/game/objects/structures/crates_lockers/closets/wardrobe.dm b/code/game/objects/structures/crates_lockers/closets/wardrobe.dm index 6ee649ebb65883..c8f2ed625012df 100644 --- a/code/game/objects/structures/crates_lockers/closets/wardrobe.dm +++ b/code/game/objects/structures/crates_lockers/closets/wardrobe.dm @@ -51,7 +51,6 @@ new /obj/item/clothing/mask/bandana/skull/black(src) return - /obj/structure/closet/wardrobe/green name = "green wardrobe" icon_door = "green" @@ -67,7 +66,6 @@ new /obj/item/clothing/mask/bandana/green(src) return - /obj/structure/closet/wardrobe/orange name = "prison wardrobe" desc = "It's a storage unit for Nanotrasen-regulation prisoner attire." @@ -82,7 +80,6 @@ new /obj/item/clothing/shoes/sneakers/orange(src) return - /obj/structure/closet/wardrobe/yellow name = "yellow wardrobe" icon_door = "yellow" @@ -98,7 +95,6 @@ new /obj/item/clothing/mask/bandana/gold(src) return - /obj/structure/closet/wardrobe/white name = "white wardrobe" icon_door = "white" @@ -133,7 +129,6 @@ new /obj/item/clothing/shoes/sneakers/white(src) return - /obj/structure/closet/wardrobe/grey name = "grey wardrobe" icon_door = "grey" @@ -163,7 +158,6 @@ new /obj/item/clothing/accessory/pocketprotector(src) return - /obj/structure/closet/wardrobe/mixed name = "mixed wardrobe" icon_door = "mixed" diff --git a/code/game/objects/structures/crates_lockers/crates.dm b/code/game/objects/structures/crates_lockers/crates.dm index 018ad3d7c37c22..85ccb7d77ca2c8 100644 --- a/code/game/objects/structures/crates_lockers/crates.dm +++ b/code/game/objects/structures/crates_lockers/crates.dm @@ -41,7 +41,7 @@ /obj/structure/closet/crate/Initialize(mapload) AddElement(/datum/element/climbable, climb_time = crate_climb_time, climb_stun = 0) //add element in closed state before parent init opens it(if it does) if(elevation) - AddComponent(/datum/component/climb_walkable) + AddElement(/datum/element/climb_walkable) AddElement(/datum/element/elevation, pixel_shift = elevation) . = ..() @@ -184,6 +184,7 @@ paint_jobs = null elevation_open = 0 can_weld_shut = FALSE + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 5) /obj/structure/closet/crate/trashcart //please make this a generic cart path later after things calm down a little desc = "A heavy, metal trashcart with wheels." diff --git a/code/game/objects/structures/crates_lockers/crates/abandoned_crates/abandoned_crates.dm b/code/game/objects/structures/crates_lockers/crates/abandoned_crates/abandoned_crates.dm index 9301a93a3f50e7..009a8c6a843acc 100644 --- a/code/game/objects/structures/crates_lockers/crates/abandoned_crates/abandoned_crates.dm +++ b/code/game/objects/structures/crates_lockers/crates/abandoned_crates/abandoned_crates.dm @@ -7,12 +7,14 @@ base_icon_state = "securecrate" integrity_failure = 0 //no breaking open the crate var/code = null - var/last_attempt = null + /// Associated list of previous attempts w/ bulls & cows + var/list/previous_attempts = list() var/attempts = 10 var/code_length = 4 var/qdel_on_open = FALSE var/spawned_loot = FALSE tamperproof = 90 + interaction_flags_atom = INTERACT_ATOM_ATTACK_HAND divable = FALSE // Stop people from "diving into" the crate accidentally, and then detonating it. @@ -127,6 +129,7 @@ spawn_loot() tamperproof = 0 // set explosion chance to zero, so we dont accidently hit it with a multitool and instantly die togglelock(user) + SStgui.close_user_uis(user, src) return if(!validate_input(input)) @@ -134,7 +137,7 @@ return to_chat(user, span_warning("A red light flashes.")) - last_attempt = input + previous_attempts += list(bulls_and_cows(input)) attempts-- if(attempts <= 0) @@ -160,16 +163,28 @@ attack_hand(user) //this helps you not blow up so easily by overriding unlocking which results in an immediate boom. return CLICK_ACTION_SUCCESS +/obj/structure/closet/crate/secure/loot/ui_interact(mob/user, datum/tgui/ui) + . = ..() + + // Attempt to update tgui ui, open and update if needed. + ui = SStgui.try_update_ui(user, src, ui) + if(!ui) + ui = new(user, src, "AbandonedCrate", name) + ui.open() + +/obj/structure/closet/crate/secure/loot/ui_data(mob/user) + var/list/data = list() + + data["previous_attempts"] = previous_attempts + data["attempts_left"] = attempts + + return data + /obj/structure/closet/crate/secure/loot/multitool_act(mob/living/user, obj/item/tool) if(!locked) return - - to_chat(user, span_boldnotice("DECA-CODE LOCK REPORT:")) - to_chat(user, span_warning("* Anti-Tamper Bomb will activate [attempts == 1 ? span_boldwarning("on next failed access attempt") : "after [span_boldwarning("[attempts]")] failed access attempts"].")) - - if(last_attempt) - var/list/bulls_cows = bulls_and_cows(last_attempt) - to_chat(user, span_notice("Last code attempt, [last_attempt], had [bulls_cows[1]] correct digits at correct positions and [bulls_cows[2]] correct digits at incorrect positions.")) + if(Adjacent(user)) + ui_interact(user) return ITEM_INTERACT_SUCCESS @@ -187,7 +202,7 @@ else if(findtext(code, guess_char)) cows++ - return list(bulls, cows) + return list("attempt" = guess, "bulls" = bulls, "cows" = cows) /obj/structure/closet/crate/secure/loot/emag_act(mob/user, obj/item/card/emag/emag_card) . = ..() @@ -204,7 +219,7 @@ //reset the anti-tampering, number of attempts and last attempt when the lock is re-enabled. tamperproof = initial(tamperproof) attempts = initial(attempts) - last_attempt = null + previous_attempts = list() return if(tamperproof) return diff --git a/code/game/objects/structures/crates_lockers/crates/cardboard.dm b/code/game/objects/structures/crates_lockers/crates/cardboard.dm index 1544bb2e0a40f1..55a843f9edf8f9 100644 --- a/code/game/objects/structures/crates_lockers/crates/cardboard.dm +++ b/code/game/objects/structures/crates_lockers/crates/cardboard.dm @@ -1,9 +1,9 @@ /obj/structure/closet/crate/cardboard name = "cardboard box" desc = "A box, in which you can place things. Revolutionary, I know." - pass_flags_self = PASSSTRUCTURE material_drop = /obj/item/stack/sheet/cardboard material_drop_amount = 4 + custom_materials = list(/datum/material/cardboard = SHEET_MATERIAL_AMOUNT * 4) icon_state = "cardboard" base_icon_state = "cardboard" open_sound = 'sound/items/poster/poster_ripped.ogg' diff --git a/code/game/objects/structures/crates_lockers/crates/wooden.dm b/code/game/objects/structures/crates_lockers/crates/wooden.dm index 5703cb6ddcb392..284bea5243d3d4 100644 --- a/code/game/objects/structures/crates_lockers/crates/wooden.dm +++ b/code/game/objects/structures/crates_lockers/crates/wooden.dm @@ -1,6 +1,7 @@ /obj/structure/closet/crate/wooden name = "wooden crate" desc = "Works just as well as a metal one." + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 6) material_drop = /obj/item/stack/sheet/mineral/wood material_drop_amount = 6 icon_state = "wooden" @@ -11,6 +12,7 @@ close_sound_volume = 50 paint_jobs = null cutting_tool = /obj/item/crowbar + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 6) /obj/structure/closet/crate/wooden/toy name = "toy box" diff --git a/code/game/objects/structures/curtains.dm b/code/game/objects/structures/curtains.dm index cde4f4da174e8c..ec864ca5a86f42 100644 --- a/code/game/objects/structures/curtains.dm +++ b/code/game/objects/structures/curtains.dm @@ -12,6 +12,7 @@ anchored = TRUE opacity = FALSE density = FALSE + custom_materials = list(/datum/material/plastic = SHEET_MATERIAL_AMOUNT * 2, /datum/material/iron = HALF_SHEET_MATERIAL_AMOUNT) /// used in making the icon state var/icon_type = "bathroom" var/open = TRUE @@ -43,7 +44,7 @@ /obj/structure/curtain/attackby(obj/item/W, mob/user) if (istype(W, /obj/item/toy/crayon)) - color = input(user,"","Choose Color",color) as color + color = tgui_color_picker(user, "", "Choose Color", color) else return ..() @@ -107,6 +108,7 @@ color = null alpha = 255 opaque_closed = TRUE + custom_materials = list(/datum/material/iron = HALF_SHEET_MATERIAL_AMOUNT) /obj/structure/curtain/cloth/atom_deconstruct(disassembled = TRUE) new /obj/item/stack/sheet/cloth (loc, 4) diff --git a/code/game/objects/structures/detectiveboard.dm b/code/game/objects/structures/detectiveboard.dm index ee03c07f8ab4a8..91df15cc4436bd 100644 --- a/code/game/objects/structures/detectiveboard.dm +++ b/code/game/objects/structures/detectiveboard.dm @@ -34,7 +34,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/detectiveboard, 32) if(istype(item, /obj/item/paper) || istype(item, /obj/item/photo)) item.forceMove(src) cases[current_case].notices++ - find_and_hang_on_wall() + find_and_mount_on_atom() register_context() diff --git a/code/game/objects/structures/displaycase.dm b/code/game/objects/structures/displaycase.dm index fb6347791dc304..3f3d06534a0192 100644 --- a/code/game/objects/structures/displaycase.dm +++ b/code/game/objects/structures/displaycase.dm @@ -227,6 +227,7 @@ resistance_flags = FLAMMABLE anchored = TRUE density = FALSE + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 5) ///The airlock electronics inserted into the chassis, to be moved to the finished product. var/obj/item/electronics/airlock/electronics @@ -562,7 +563,7 @@ if(payments_acc) payments_acc.adjust_money(sale_price, "Display Case: [capitalize(showpiece.name)]") usr.put_in_hands(showpiece) - to_chat(usr, span_notice("You purchase [showpiece] for [sale_price] credits.")) + to_chat(usr, span_notice("You purchase [showpiece] for [sale_price] [MONEY_NAME].")) playsound(src, 'sound/effects/cashregister.ogg', 40, TRUE) flick("[initial(icon_state)]_vend", src) showpiece = null @@ -665,7 +666,7 @@ /obj/structure/displaycase/forsale/examine(mob/user) . = ..() if(showpiece && !open) - . += span_notice("[showpiece] is for sale for [sale_price] credits.") + . += span_notice("[showpiece] is for sale for [sale_price] [MONEY_NAME].") if(broken) . += span_notice("[src] is sparking and the hover field generator seems to be overloaded. Use a multitool to fix it.") diff --git a/code/game/objects/structures/door_assembly.dm b/code/game/objects/structures/door_assembly.dm index a58dfd8abf400b..90a97bd7d10e42 100644 --- a/code/game/objects/structures/door_assembly.dm +++ b/code/game/objects/structures/door_assembly.dm @@ -6,6 +6,7 @@ anchored = FALSE density = TRUE max_integrity = 200 + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 4) /// Airlock's current construction state var/state = AIRLOCK_ASSEMBLY_NEEDS_WIRES var/base_name = "Airlock" @@ -308,7 +309,7 @@ door.closeOtherId = electronics.passed_cycle_id door.update_other_id() if(door.unres_sides) - door.unres_sensor = TRUE + door.unres_latch = TRUE door.previous_airlock = previous_assembly electronics.forceMove(door) door.autoclose = TRUE @@ -377,7 +378,7 @@ return FALSE /obj/structure/door_assembly/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - if(rcd_data["[RCD_DESIGN_MODE]"] == RCD_DECONSTRUCT) + if(rcd_data[RCD_DESIGN_MODE] == RCD_DECONSTRUCT) qdel(src) return TRUE return FALSE diff --git a/code/game/objects/structures/door_assembly_types.dm b/code/game/objects/structures/door_assembly_types.dm index d62fb1bec76763..203039779d6ec6 100644 --- a/code/game/objects/structures/door_assembly_types.dm +++ b/code/game/objects/structures/door_assembly_types.dm @@ -122,6 +122,7 @@ noglass = TRUE material_type = /obj/item/stack/sheet/plasteel material_amt = 4 + custom_materials = list(/datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT * 4) /obj/structure/door_assembly/door_assembly_vault name = "vault door assembly" @@ -132,6 +133,7 @@ noglass = TRUE material_type = /obj/item/stack/sheet/plasteel material_amt = 6 + custom_materials = list(/datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT * 6) /obj/structure/door_assembly/door_assembly_shuttle name = "shuttle airlock assembly" @@ -255,6 +257,7 @@ airlock_type = /obj/machinery/door/airlock/bronze noglass = TRUE material_type = /obj/item/stack/sheet/bronze + custom_materials = list(/datum/material/bronze = SHEET_MATERIAL_AMOUNT * 4) /obj/structure/door_assembly/door_assembly_bronze/seethru airlock_type = /obj/machinery/door/airlock/bronze/seethru @@ -282,6 +285,7 @@ noglass = TRUE mineral = "titanium" material_type = /obj/item/stack/sheet/mineral/titanium + custom_materials = list(/datum/material/titanium = SHEET_MATERIAL_AMOUNT * 8) /obj/structure/door_assembly/door_assembly_material/atom_deconstruct(disassembled = TRUE) var/turf/target_turf = get_turf(src) diff --git a/code/game/objects/structures/dresser.dm b/code/game/objects/structures/dresser.dm index aaa1e52b3ccc0b..63faa9537508c7 100644 --- a/code/game/objects/structures/dresser.dm +++ b/code/game/objects/structures/dresser.dm @@ -6,6 +6,7 @@ resistance_flags = FLAMMABLE density = TRUE anchored = TRUE + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 10) /obj/structure/dresser/attackby(obj/item/I, mob/user, list/modifiers, list/attack_modifiers) if(I.tool_behaviour == TOOL_WRENCH) @@ -44,7 +45,7 @@ if(new_undies) dressing_human.underwear = new_undies if("Underwear Color") - var/new_underwear_color = input(dressing_human, "Choose your underwear color", "Underwear Color", dressing_human.underwear_color) as color|null + var/new_underwear_color = tgui_color_picker(dressing_human, "Choose your underwear color", "Underwear Color", dressing_human.underwear_color) if(new_underwear_color) dressing_human.underwear_color = sanitize_hexcolor(new_underwear_color) if("Undershirt") diff --git a/code/game/objects/structures/extinguisher.dm b/code/game/objects/structures/extinguisher.dm index 496bc850aa97f8..c807bc53df8118 100644 --- a/code/game/objects/structures/extinguisher.dm +++ b/code/game/objects/structures/extinguisher.dm @@ -18,7 +18,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/extinguisher_cabinet, 29) opened = TRUE else stored_extinguisher = new /obj/item/extinguisher(src) - find_and_hang_on_wall() + find_and_mount_on_atom() update_appearance(UPDATE_ICON) register_context() diff --git a/code/game/objects/structures/fireaxe.dm b/code/game/objects/structures/fireaxe.dm index 39f0b506671bbf..44aa56d6088fdf 100644 --- a/code/game/objects/structures/fireaxe.dm +++ b/code/game/objects/structures/fireaxe.dm @@ -8,6 +8,7 @@ armor_type = /datum/armor/structure_fireaxecabinet max_integrity = 150 integrity_failure = 0.33 + custom_materials = /obj/item/wallframe/fireaxecabinet::custom_materials /// Do we need to be unlocked to be opened. var/locked = TRUE /// Are we opened, can someone take the held item out. @@ -39,7 +40,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/fireaxecabinet, 32) held_item = new item_path(src) update_appearance() if(mapload) - find_and_hang_on_wall() + find_and_mount_on_atom() /obj/structure/fireaxecabinet/Destroy() if(held_item) @@ -221,6 +222,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/fireaxecabinet/empty, 32) icon_state = "fireaxe" result_path = /obj/structure/fireaxecabinet/empty pixel_shift = 32 + custom_materials = list(/datum/material/glass = SHEET_MATERIAL_AMOUNT * 5.1, /datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT * 5, /datum/material/iron = SMALL_MATERIAL_AMOUNT) /obj/structure/fireaxecabinet/mechremoval name = "mech removal tool cabinet" diff --git a/code/game/objects/structures/flora.dm b/code/game/objects/structures/flora.dm index 4565cd1b09a406..a836886da62767 100644 --- a/code/game/objects/structures/flora.dm +++ b/code/game/objects/structures/flora.dm @@ -11,9 +11,6 @@ /// If set, the flora will have this as its description after being harvested. When the flora becomes harvestable again, it regerts to its initial(desc) var/harvested_desc - /// A lazylist of products that could be created when harvesting this flora, syntax is (type = weight) - /// Because of how this works, it can spawn in anomalies if you want it to. Or wall girders - var/product_types /// If the user is able to harvest this with their hands var/harvest_with_hands = FALSE /// The "verb" to use when the user harvests the flora @@ -27,9 +24,9 @@ /// If false, the flora won't be able to be harvested at all. If it's true, go through checks normally to determine if the flora is able to be harvested var/harvestable = TRUE - /// The low end of how many product_type items you get + /// The low end of how many harvested items you get var/harvest_amount_low = 1 - /// The high end of how many product_type items you get + /// The high end of how many harvested items you get var/harvest_amount_high = 3 //Messages to show to the user depending on how many items they get when harvesting the flora @@ -133,24 +130,34 @@ if(use_default_sound) return ..() -/* +/** + * A helper proc for getting the products that could be created when harvesting this flora, list syntax is (type = weight) + * Because of how this works, it can spawn in anomalies if you want it to. Or wall girders + * Returns: An assoc list of obj typepaths and their weights e.g. list(/obj/item/food/grass = 1), or null + */ +/obj/structure/flora/proc/get_potential_products() + return null + +/** * A helper proc for getting a random amount of products, associated with the flora's product list. - * Returns: A list where each value is (product_type = amount_of_products) + * Returns: A list where each value is (harvested_item_typepath = amount_of_products) */ /obj/structure/flora/proc/get_products_list() - if(!LAZYLEN(product_types)) - return list() + var/list/potential_product_list = get_potential_products() + if(isnull(potential_product_list)) + return + var/list/product_list = list() var/harvest_amount = rand(harvest_amount_low, harvest_amount_high) for(var/iteration in 1 to harvest_amount) - var/chosen_product = pick_weight(product_types) + var/chosen_product = pick_weight(potential_product_list) if(!product_list[chosen_product]) product_list[chosen_product] = 0 product_list[chosen_product]++ return product_list -/* +/** * A helper proc that determines if a user can currently harvest this flora with whatever tool they're trying to use. * Returns: TRUE if they can harvest, FALSE if not. Null if it's not harvestable at all. */ @@ -177,7 +184,7 @@ return FALSE -/* +/** * This gets called after a mob tries to harvest this flora with the correct tool. * It displays a flavor message to whoever's harvesting this flora, then creates new products depending on the flora's product list. * Also renames the flora if harvested_name or harvested_desc is set in the variables @@ -185,11 +192,11 @@ */ /obj/structure/flora/proc/harvest(user, product_amount_multiplier = 1) . = FALSE - if(harvested && !LAZYLEN(product_types)) + if(harvested) return FALSE var/list/products_to_create = get_products_list() - if(!products_to_create.len) + if(!LAZYLEN(products_to_create)) return FALSE var/products_created = 0 @@ -250,7 +257,7 @@ desc = initial(desc) harvested = FALSE -/* +/** * Called after the user uproots the flora with a shovel. */ /obj/structure/flora/proc/uproot(mob/living/user) @@ -260,7 +267,7 @@ previous_rotation = pick(-90, 90) transform = M.Turn(previous_rotation) -/* +/** * Called after the user plants the flora back into the ground after uprooted */ /obj/structure/flora/proc/replant(mob/living/user) @@ -289,7 +296,6 @@ layer = FLY_LAYER plane = ABOVE_GAME_PLANE drag_slowdown = 1.5 - product_types = list(/obj/item/grown/log/tree = 1) harvest_amount_low = 6 harvest_amount_high = 10 harvest_message_low = "You manage to gather a few logs from the tree." @@ -304,6 +310,9 @@ . = ..() AddComponent(/datum/component/seethrough, get_seethrough_map()) +/obj/structure/flora/tree/get_potential_products() + return list(/obj/item/grown/log/tree = 1) + ///Return a see_through_map, examples in seethrough.dm /obj/structure/flora/tree/proc/get_seethrough_map() return SEE_THROUGH_MAP_DEFAULT @@ -536,7 +545,6 @@ desc = "A patch of overgrown grass." icon = 'icons/obj/fluff/flora/snowflora.dmi' gender = PLURAL //"this is grass" not "this is a grass" - product_types = list(/obj/item/food/grown/grass = 10, /obj/item/seeds/grass = 1) harvest_with_hands = TRUE harvest_amount_low = 0 harvest_amount_high = 2 @@ -546,6 +554,9 @@ can_uproot = TRUE flora_flags = FLORA_HERBAL +/obj/structure/flora/grass/get_potential_products() + return list(/obj/item/food/grown/grass = 10, /obj/item/seeds/grass = 1) + /obj/structure/flora/grass/brown icon_state = "snowgrass1bb" @@ -1006,7 +1017,6 @@ icon = 'icons/obj/fluff/flora/rocks.dmi' density = TRUE resistance_flags = FIRE_PROOF - product_types = list(/obj/item/stack/ore/glass/basalt = 1) harvest_amount_low = 10 harvest_amount_high = 20 harvest_message_med = "You finish mining the rock." @@ -1015,6 +1025,9 @@ can_uproot = FALSE delete_on_harvest = TRUE +/obj/structure/flora/rock/get_potential_products() + return list(/obj/item/stack/ore/glass/basalt = 1) + /obj/structure/flora/rock/style_2 icon_state = "basalt2" diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm index 046b81838ef45f..d7545b9a63b245 100644 --- a/code/game/objects/structures/girders.dm +++ b/code/game/objects/structures/girders.dm @@ -11,6 +11,7 @@ smoothing_flags = SMOOTH_BITMASK smoothing_groups = SMOOTH_GROUP_GIRDER canSmoothWith = SMOOTH_GROUP_GIRDER + SMOOTH_GROUP_WALLS + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2) var/state = GIRDER_NORMAL var/girderpasschance = 20 // percentage chance that a projectile passes through the girder. var/can_displace = TRUE //If the girder can be moved around by wrenching it @@ -138,7 +139,7 @@ qdel(src) return - if(istype(stack, /obj/item/stack/sheet/iron)) + else if(istype(stack, /obj/item/stack/sheet/iron)) var/amount = construction_cost[/obj/item/stack/sheet/iron] if(state == GIRDER_DISPLACED) if(stack.get_amount() < amount) @@ -184,7 +185,7 @@ qdel(src) return - if(istype(stack, /obj/item/stack/sheet/titaniumglass) && state == GIRDER_TRAM) + else if(istype(stack, /obj/item/stack/sheet/titaniumglass) && state == GIRDER_TRAM) var/amount = construction_cost[/obj/item/stack/sheet/titaniumglass] if(stack.get_amount() < amount) balloon_alert(user, "need [amount] sheets!") @@ -199,7 +200,7 @@ qdel(src) return - if(istype(stack, /obj/item/stack/sheet/plasteel)) + else if(istype(stack, /obj/item/stack/sheet/plasteel)) var/amount = construction_cost[/obj/item/stack/sheet/plasteel] if(state == GIRDER_DISPLACED) if(stack.get_amount() < amount) @@ -242,7 +243,7 @@ qdel(src) return - if(istype(stack, /obj/item/stack/sheet/mineral/plastitanium)) + else if(istype(stack, /obj/item/stack/sheet/mineral/plastitanium)) if(state == GIRDER_REINF) if(stack.get_amount() < 1) return @@ -258,7 +259,7 @@ return // No return here because generic material construction handles making normal plastitanium walls - if(!stack.has_unique_girder && stack.material_type) + else if(!stack.has_unique_girder && stack.material_type) if(istype(src, /obj/structure/girder/reinforced)) balloon_alert(user, "need plasteel or plastitanium!") return @@ -476,6 +477,7 @@ smoothing_flags = NONE smoothing_groups = null canSmoothWith = null + custom_materials = list(/datum/material/runedmetal = SHEET_MATERIAL_AMOUNT) /obj/structure/girder/cult/attackby(obj/item/W, mob/user, list/modifiers, list/attack_modifiers) add_fingerprint(user) @@ -528,7 +530,7 @@ return FALSE /obj/structure/girder/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - switch(rcd_data["[RCD_DESIGN_MODE]"]) + switch(rcd_data[RCD_DESIGN_MODE]) if(RCD_TURF) if(the_rcd.rcd_design_path != /turf/open/floor/plating/rcd) return FALSE @@ -551,6 +553,7 @@ smoothing_flags = NONE smoothing_groups = null canSmoothWith = null + custom_materials = list(/datum/material/bronze = SHEET_MATERIAL_AMOUNT * 2) /obj/structure/girder/bronze/attackby(obj/item/W, mob/living/user, list/modifiers, list/attack_modifiers) add_fingerprint(user) diff --git a/code/game/objects/structures/grille.dm b/code/game/objects/structures/grille.dm index d21f7d457ab1db..ed3aa733d66284 100644 --- a/code/game/objects/structures/grille.dm +++ b/code/game/objects/structures/grille.dm @@ -15,6 +15,7 @@ armor_type = /datum/armor/structure_grille max_integrity = 50 integrity_failure = 0.4 + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT) var/rods_type = /obj/item/stack/rods var/rods_amount = 2 /// Whether or not we're disappearing but dramatically @@ -92,7 +93,7 @@ return FALSE /obj/structure/grille/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - switch(rcd_data["[RCD_DESIGN_MODE]"]) + switch(rcd_data[RCD_DESIGN_MODE]) if(RCD_DECONSTRUCT) qdel(src) return TRUE @@ -106,7 +107,7 @@ if(!clear_tile(user)) return FALSE - var/obj/structure/window/window_path = rcd_data["[RCD_DESIGN_PATH]"] + var/obj/structure/window/window_path = rcd_data[RCD_DESIGN_PATH] if(!ispath(window_path)) CRASH("Invalid window path type in RCD: [window_path]") diff --git a/code/game/objects/structures/guillotine.dm b/code/game/objects/structures/guillotine.dm index 73af3fff09671c..917ae511928d6e 100644 --- a/code/game/objects/structures/guillotine.dm +++ b/code/game/objects/structures/guillotine.dm @@ -42,6 +42,12 @@ buckle_lying = 0 buckle_prevents_pull = TRUE layer = ABOVE_MOB_LAYER + custom_materials = list( + /datum/material/wood = SHEET_MATERIAL_AMOUNT * 20, + /datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT * 3, + /datum/material/iron = SMALL_MATERIAL_AMOUNT, + /datum/material/glass = SMALL_MATERIAL_AMOUNT, + ) /// The sound the guillotine makes when it successfully cuts off a head var/drop_sound = 'sound/items/weapons/guillotine.ogg' /// The current state of the blade diff --git a/code/game/objects/structures/gym/punching_bag.dm b/code/game/objects/structures/gym/punching_bag.dm index bea51bc1d8c6cd..f767f77c912b24 100644 --- a/code/game/objects/structures/gym/punching_bag.dm +++ b/code/game/objects/structures/gym/punching_bag.dm @@ -5,6 +5,7 @@ icon_state = "punchingbag" anchored = TRUE layer = ABOVE_MOB_LAYER + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2.5) ///List of sounds that can be played when punched. var/static/list/hit_sounds = list( 'sound/items/weapons/genhit1.ogg', @@ -65,7 +66,7 @@ if(HAS_TRAIT(user, TRAIT_STRENGTH)) //The strong get reductions to stamina damage taken while exercising stamina_exhaustion *= 0.5 - user.adjustStaminaLoss(stamina_exhaustion) + user.adjust_stamina_loss(stamina_exhaustion) user.mind?.adjust_experience(/datum/skill/athletics, is_heavy_gravity ? 0.6 : 0.3) user.apply_status_effect(/datum/status_effect/exercised) diff --git a/code/game/objects/structures/gym/weight_machine.dm b/code/game/objects/structures/gym/weight_machine.dm index c9b59efd89f08f..c3ba59cead6b19 100644 --- a/code/game/objects/structures/gym/weight_machine.dm +++ b/code/game/objects/structures/gym/weight_machine.dm @@ -12,6 +12,7 @@ density = TRUE anchored = TRUE blocks_emissive = EMISSIVE_BLOCK_UNIQUE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 7) ///How much we shift the user's pixel y when using the weight machine. var/pixel_shift_z = -3 @@ -214,7 +215,7 @@ if(HAS_TRAIT(user, TRAIT_STRENGTH)) //The strong get reductions to stamina damage taken while exercising stamina_exhaustion *= 0.5 - user.adjustStaminaLoss(stamina_exhaustion * seconds_per_tick) + user.adjust_stamina_loss(stamina_exhaustion * seconds_per_tick) return TRUE diff --git a/code/game/objects/structures/headpike.dm b/code/game/objects/structures/headpike.dm index c9b9562ce731f1..5dcfac5f77ea12 100644 --- a/code/game/objects/structures/headpike.dm +++ b/code/game/objects/structures/headpike.dm @@ -5,6 +5,7 @@ icon_state = "headpike" density = FALSE anchored = TRUE + custom_materials = list(/datum/material/glass = SHEET_MATERIAL_AMOUNT * 1.15, /datum/material/iron = SHEET_MATERIAL_AMOUNT * 0.65) var/obj/item/spear/spear var/obj/item/spear/speartype = /obj/item/spear var/obj/item/bodypart/head/victim @@ -12,10 +13,12 @@ /obj/structure/headpike/bone //for bone spears icon_state = "headpike-bone" speartype = /obj/item/spear/bonespear + custom_materials = list(/datum/material/bone = SHEET_MATERIAL_AMOUNT * 4) /obj/structure/headpike/bamboo //for bamboo spears icon_state = "headpike-bamboo" speartype = /obj/item/spear/bamboospear + custom_materials = list(/datum/material/bamboo = SHEET_MATERIAL_AMOUNT * 25) /obj/structure/headpike/military //for military spears icon_state = "headpike-military" diff --git a/code/game/objects/structures/kitchen_spike.dm b/code/game/objects/structures/kitchen_spike.dm index fa17389ceb8b09..5948bf463235fd 100644 --- a/code/game/objects/structures/kitchen_spike.dm +++ b/code/game/objects/structures/kitchen_spike.dm @@ -8,6 +8,7 @@ density = TRUE anchored = FALSE max_integrity = 200 + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 5) /obj/structure/kitchenspike_frame/Initialize(mapload) . = ..() @@ -71,13 +72,17 @@ desc = "A spike for collecting meat from animals." density = TRUE anchored = TRUE - buckle_lying = FALSE + buckle_lying = 180 + buckle_dir = SOUTH can_buckle = TRUE max_integrity = 250 + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 7) + buckle_delay = 10 SECONDS /obj/structure/kitchenspike/Initialize(mapload) . = ..() register_context() + ADD_TRAIT(src, TRAIT_DANGEROUS_BUCKLE, INNATE_TRAIT) /obj/structure/kitchenspike/examine(mob/user) . = ..() @@ -111,21 +116,24 @@ /obj/structure/kitchenspike/user_buckle_mob(mob/living/target, mob/user, check_loc = TRUE) if(!iscarbon(target) && !isanimal_or_basicmob(target)) return + if(target != user || target.loc == loc) + return ..() if(!do_after(user, 10 SECONDS, target)) return + if(!is_user_buckle_possible(target, user, check_loc)) + return FALSE return ..() /obj/structure/kitchenspike/post_buckle_mob(mob/living/target) playsound(src.loc, 'sound/effects/splat.ogg', 25, TRUE) target.painful_scream() // DOPPLER EDIT: check for painkilling before screaming target.add_splatter_floor() - target.adjustBruteLoss(30) - target.setDir(2) - var/matrix/m180 = matrix(target.transform) - m180.Turn(180) - animate(target, transform = m180, time = 3) - target.add_offsets(type, y_add = -6, animate = FALSE) + target.adjust_brute_loss(30) + target.add_offsets(type, x_add = -1) + target.set_lying_angle(buckle_lying) ADD_TRAIT(target, TRAIT_MOVE_UPSIDE_DOWN, REF(src)) + // So you can butcher people too + target.AddComponentFrom(REF(src), /datum/component/free_operation) /obj/structure/kitchenspike/user_unbuckle_mob(mob/living/buckled_mob, mob/user) if(buckled_mob != user) @@ -142,7 +150,7 @@ buckled_mob.visible_message(span_warning("[buckled_mob] struggles to break free from [src]!"),\ span_notice("You struggle to break free from [src], exacerbating your wounds! (Stay still for two minutes.)"),\ span_hear("You hear a wet squishing noise..")) - buckled_mob.adjustBruteLoss(30) + buckled_mob.adjust_brute_loss(30) if(!do_after(buckled_mob, 2 MINUTES, target = src, hidden = TRUE)) if(buckled_mob?.buckled) to_chat(buckled_mob, span_warning("You fail to free yourself!")) @@ -150,14 +158,12 @@ return ..() /obj/structure/kitchenspike/post_unbuckle_mob(mob/living/buckled_mob) - buckled_mob.adjustBruteLoss(30) + buckled_mob.adjust_brute_loss(30) INVOKE_ASYNC(buckled_mob, TYPE_PROC_REF(/mob, emote), "scream") buckled_mob.AdjustParalyzed(20) - var/matrix/m180 = matrix(buckled_mob.transform) - m180.Turn(180) - animate(buckled_mob, transform = m180, time = 3) - buckled_mob.remove_offsets(type, animate = FALSE) + buckled_mob.remove_offsets(type) REMOVE_TRAIT(buckled_mob, TRAIT_MOVE_UPSIDE_DOWN, REF(src)) + buckled_mob.RemoveComponentSource(REF(src), /datum/component/free_operation) /obj/structure/kitchenspike/atom_deconstruct(disassembled = TRUE) if(disassembled) diff --git a/code/game/objects/structures/ladders.dm b/code/game/objects/structures/ladders.dm index 6a60c80f92df2b..5d15c1af89f0fe 100644 --- a/code/game/objects/structures/ladders.dm +++ b/code/game/objects/structures/ladders.dm @@ -7,6 +7,7 @@ base_icon_state = "ladder" anchored = TRUE obj_flags = CAN_BE_HIT | BLOCK_Z_OUT_DOWN + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 7.5) ///the ladder below this one VAR_FINAL/obj/structure/ladder/down ///the ladder above this one diff --git a/code/game/objects/structures/lattice.dm b/code/game/objects/structures/lattice.dm index 4791a50f6fe07e..e9322232650d0d 100644 --- a/code/game/objects/structures/lattice.dm +++ b/code/game/objects/structures/lattice.dm @@ -16,7 +16,7 @@ canSmoothWith = SMOOTH_GROUP_LATTICE + SMOOTH_GROUP_WALLS + SMOOTH_GROUP_OPEN_FLOOR var/number_of_mats = 1 var/build_material = /obj/item/stack/rods - var/list/give_turf_traits = list(TRAIT_CHASM_STOPPED, TRAIT_HYPERSPACE_STOPPED) + var/list/give_turf_traits = list(TRAIT_CHASM_STOPPED, TRAIT_HYPERSPACE_STOPPED, TRAIT_TURF_IGNORE_SLOWDOWN, TRAIT_IMMERSE_STOPPED) /obj/structure/lattice/Initialize(mapload) . = ..() @@ -48,6 +48,10 @@ for(var/thing_that_falls in turfloc) turfloc.zFall(thing_that_falls) + var/area/turf_area = get_area(turfloc) + if(isspaceturf(turfloc) && istype(turf_area, /area/space/nearstation)) + set_turf_to_area(turfloc, GLOB.areas_by_type[/area/space]) + /obj/structure/lattice/proc/deconstruction_hints(mob/user) return span_notice("The rods look like they could be cut. There's space for more rods or a tile.") @@ -82,8 +86,8 @@ return FALSE /obj/structure/lattice/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - if(rcd_data["[RCD_DESIGN_MODE]"] == RCD_TURF) - var/design_structure = rcd_data["[RCD_DESIGN_PATH]"] + if(rcd_data[RCD_DESIGN_MODE] == RCD_TURF) + var/design_structure = rcd_data[RCD_DESIGN_PATH] if(design_structure == /turf/open/floor/plating/rcd) var/turf/T = src.loc if(isgroundlessturf(T)) diff --git a/code/game/objects/structures/loom.dm b/code/game/objects/structures/loom.dm index 2d10df50a747d6..c60bae1af3f661 100644 --- a/code/game/objects/structures/loom.dm +++ b/code/game/objects/structures/loom.dm @@ -6,6 +6,7 @@ icon_state = "loom" density = TRUE anchored = TRUE + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 10) /obj/structure/loom/Initialize(mapload) . = ..() diff --git a/code/game/objects/structures/maintenance.dm b/code/game/objects/structures/maintenance.dm index 273a446eb854a4..0ee8e1b2bcb811 100644 --- a/code/game/objects/structures/maintenance.dm +++ b/code/game/objects/structures/maintenance.dm @@ -148,7 +148,7 @@ at the cost of risking a vicious bite.**/ var/altar_result = show_radial_menu(user, src, altar_options, custom_check = CALLBACK(src, PROC_REF(check_menu), user), require_near = TRUE, tooltips = TRUE) switch(altar_result) if("Change Color") - var/chosen_color = input(user, "", "Choose Color", pants_color) as color|null + var/chosen_color = tgui_color_picker(user, "", "Choose Color", pants_color) if(!isnull(chosen_color) && user.can_perform_action(src)) pants_color = chosen_color if("Create Artefact") @@ -250,6 +250,7 @@ at the cost of risking a vicious bite.**/ icon_state = "steam_vent" anchored = TRUE density = FALSE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2.3, /datum/material/plastic = SMALL_MATERIAL_AMOUNT * 2) /// How often does the vent reset the blow_steam cooldown. var/steam_speed = 20 SECONDS /// Is the steam vent active? diff --git a/code/game/objects/structures/mannequin.dm b/code/game/objects/structures/mannequin.dm index f390e9616fec50..f59ad4763724fe 100644 --- a/code/game/objects/structures/mannequin.dm +++ b/code/game/objects/structures/mannequin.dm @@ -63,7 +63,7 @@ material = pick(MANNEQUIN_WOOD, MANNEQUIN_PLASTIC) icon_state = "mannequin_[material]_[body_type == FEMALE ? "female" : "male"]" AddElement(/datum/element/strippable, GLOB.strippable_mannequin_items) - AddComponent(/datum/component/simple_rotation, ROTATION_IGNORE_ANCHORED) + AddElement(/datum/element/simple_rotation, ROTATION_IGNORE_ANCHORED) AddComponent(/datum/component/marionette) update_appearance() @@ -158,9 +158,11 @@ /obj/structure/mannequin/wood material = MANNEQUIN_WOOD + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 25) /obj/structure/mannequin/plastic material = MANNEQUIN_PLASTIC + custom_materials = list(/datum/material/plastic = SHEET_MATERIAL_AMOUNT * 25) /obj/structure/mannequin/skeleton name = "skeleton model" diff --git a/code/game/objects/structures/mirror.dm b/code/game/objects/structures/mirror.dm index 9d92831567cb6e..0bddf5575d2821 100644 --- a/code/game/objects/structures/mirror.dm +++ b/code/game/objects/structures/mirror.dm @@ -25,6 +25,7 @@ anchored = TRUE integrity_failure = 0.5 max_integrity = 200 + custom_materials = /obj/item/wallframe/mirror::custom_materials ///Can this mirror be removed from walls with tools? var/deconstructable = TRUE var/list/mirror_options = INERT_MIRROR_OPTIONS @@ -55,7 +56,7 @@ check_reflect_signals = list(SIGNAL_ADDTRAIT(TRAIT_NO_MIRROR_REFLECTION), SIGNAL_REMOVETRAIT(TRAIT_NO_MIRROR_REFLECTION)), \ ) if(mapload) - find_and_hang_on_wall() + find_and_mount_on_atom() update_choices() register_context() @@ -80,14 +81,11 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/mirror/broken, 28) /obj/structure/mirror/attack_hand(mob/living/carbon/human/user) . = ..() - if(. || !ishuman(user) || broken) return TRUE - if(!istype(src, /obj/structure/mirror/magic) && !user.can_perform_action(src, FORBID_TELEKINESIS_REACH)) - return TRUE //no tele-grooming (if nonmagical) - - return display_radial_menu(user) + display_radial_menu(user) + return TRUE /obj/structure/mirror/wrench_act_secondary(mob/living/user, obj/item/tool) if(!deconstructable) @@ -106,9 +104,12 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/mirror/broken, 28) new /obj/item/wallframe/mirror(loc, 1) /obj/structure/mirror/proc/display_radial_menu(mob/living/carbon/human/user) + if(!can_use_mirror(user)) + return + var/pick = show_radial_menu(user, src, mirror_options, user, radius = 36, require_near = TRUE, tooltips = TRUE) - if(!pick) - return TRUE //get out + if(!pick || !can_use_mirror(user) || !pre_change(user, pick)) + return switch(pick) if(CHANGE_HAIR) @@ -124,45 +125,53 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/mirror/broken, 28) if(CHANGE_EYES) change_eyes(user) - return display_radial_menu(user) + display_radial_menu(user) + +/// Ran before we dive into any changes, can be used to block changes by returning FALSE +/obj/structure/mirror/proc/pre_change(mob/living/carbon/human/user, picked) + return TRUE + +/// Checks if the mob can continue to use the mirror +/obj/structure/mirror/proc/can_use_mirror(mob/living/carbon/human/user) + return !QDELETED(src) && !QDELETED(user) && user.can_perform_action(src, FORBID_TELEKINESIS_REACH) /obj/structure/mirror/proc/change_beard(mob/living/carbon/human/beard_dresser) if(beard_dresser.physique == FEMALE) if(beard_dresser.facial_hairstyle == "Shaved") balloon_alert(beard_dresser, "nothing to shave!") - return TRUE + return var/shave_beard = tgui_alert(beard_dresser, "Shave your beard?", "Grooming", list("Yes", "No")) - if(shave_beard == "Yes") + if(shave_beard == "Yes" && can_use_mirror(beard_dresser)) beard_dresser.set_facial_hairstyle("Shaved", update = TRUE) - return TRUE + return var/new_style = tgui_input_list(beard_dresser, "Select a facial hairstyle", "Grooming", SSaccessories.facial_hairstyles_list) - if(isnull(new_style)) - return TRUE + if(isnull(new_style) || !can_use_mirror(beard_dresser)) + return if(HAS_TRAIT(beard_dresser, TRAIT_SHAVED)) to_chat(beard_dresser, span_notice("If only growing back facial hair were that easy for you... The reminder makes you feel terrible.")) beard_dresser.add_mood_event("bald_hair_day", /datum/mood_event/bald_reminder) - return TRUE + return beard_dresser.set_facial_hairstyle(new_style, update = TRUE) /obj/structure/mirror/proc/change_hair(mob/living/carbon/human/hairdresser) var/new_style = tgui_input_list(hairdresser, "Select a hairstyle", "Grooming", SSaccessories.hairstyles_list) - if(isnull(new_style)) - return TRUE + if(isnull(new_style) || !can_use_mirror(hairdresser)) + return if(HAS_TRAIT(hairdresser, TRAIT_BALD)) to_chat(hairdresser, span_notice("If only growing back hair were that easy for you... The reminder makes you feel terrible.")) hairdresser.add_mood_event("bald_hair_day", /datum/mood_event/bald_reminder) - return TRUE + return hairdresser.set_hairstyle(new_style, update = TRUE) /obj/structure/mirror/proc/change_name(mob/living/carbon/human/user) var/newname = sanitize_name(tgui_input_text(user, "Who are we again?", "Name change", user.name, MAX_NAME_LEN), allow_numbers = TRUE) //It's magic so whatever. - if(!newname) - return TRUE + if(!newname || !can_use_mirror(user)) + return user.real_name = newname user.name = newname if(user.dna) @@ -173,49 +182,55 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/mirror/broken, 28) // Erm ackshually the proper term is species. Get it right?? /obj/structure/mirror/proc/change_race(mob/living/carbon/human/race_changer) var/racechoice = tgui_input_list(race_changer, "What are we again?", "Race change", selectable_races) - if(isnull(racechoice)) - return TRUE + if(isnull(racechoice) || !can_use_mirror(race_changer)) + return var/new_race_path = selectable_races[racechoice] if(!ispath(new_race_path, /datum/species)) - return TRUE + return - var/datum/species/newrace = new new_race_path() + var/datum/species/newrace = GLOB.species_prototypes[new_race_path] var/attributes_desc = newrace.get_physical_attributes() var/answer = tgui_alert(race_changer, attributes_desc, "Become a [newrace]?", list("Yes", "No")) + if(!answer || !can_use_mirror(race_changer)) + return if(answer != "Yes") - qdel(newrace) change_race(race_changer) // try again return - race_changer.set_species(newrace, icon_update = FALSE) + on_species_change(race_changer, newrace) + race_changer.set_species(new_race_path, icon_update = FALSE) if(HAS_TRAIT(race_changer, TRAIT_USES_SKINTONES)) var/new_s_tone = tgui_input_list(race_changer, "Choose your skin tone", "Race change", GLOB.skin_tones) - if(new_s_tone) + if(new_s_tone && can_use_mirror(race_changer)) race_changer.skin_tone = new_s_tone race_changer.dna.update_ui_block(/datum/dna_block/identity/skin_tone) else if(HAS_TRAIT(race_changer, TRAIT_MUTANT_COLORS) && !HAS_TRAIT(race_changer, TRAIT_FIXED_MUTANT_COLORS)) - var/new_mutantcolor = input(race_changer, "Choose your skin color:", "Race change", race_changer.dna.features[FEATURE_MUTANT_COLOR]) as color|null - if(new_mutantcolor) + var/new_mutantcolor = tgui_color_picker(race_changer, "Choose your skin color:", "Race change", race_changer.dna.features[FEATURE_MUTANT_COLOR]) + if(new_mutantcolor && can_use_mirror(race_changer)) var/list/mutant_hsv = rgb2hsv(new_mutantcolor) - if(mutant_hsv[3] >= 50) // mutantcolors must be bright race_changer.dna.features[FEATURE_MUTANT_COLOR] = sanitize_hexcolor(new_mutantcolor) race_changer.dna.update_uf_block(/datum/dna_block/feature/mutant_color) else to_chat(race_changer, span_notice("Invalid color. Your color is not bright enough.")) - return TRUE race_changer.update_body(is_creating = TRUE) race_changer.update_mutations_overlay() // no hulk lizard +/// Hook for mirrors to do stuff on species change +/obj/structure/mirror/proc/on_species_change(mob/living/carbon/human/race_changer, datum/species/newrace) + return + // possible Genders: MALE, FEMALE, PLURAL, NEUTER // possible Physique: MALE, FEMALE // saved you a click (many) /obj/structure/mirror/proc/change_sex(mob/living/carbon/human/sexy) var/chosen_sex = tgui_input_list(sexy, "Become a..", "Confirmation", list("Warlock", "Witch", "Wizard", "Itzard")) // YOU try coming up with the 'it' version of wizard + if(!chosen_sex || !can_use_mirror(sexy)) + return switch(chosen_sex) if("Warlock") @@ -233,7 +248,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/mirror/broken, 28) var/chosen_physique = tgui_input_list(sexy, "Alter your physique as well?", "Confirmation", list("Warlock Physique", "Witch Physique", "Wizards Don't Need Gender")) - if(chosen_physique && chosen_physique != "Wizards Don't Need Gender") + if(chosen_physique && chosen_physique != "Wizards Don't Need Gender" && can_use_mirror(sexy)) sexy.physique = (chosen_physique == "Warlock Physique") ? MALE : FEMALE sexy.dna.update_ui_block(/datum/dna_block/identity/gender) @@ -242,9 +257,9 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/mirror/broken, 28) sexy.update_clothing(ITEM_SLOT_ICLOTHING) // update gender shaped clothing /obj/structure/mirror/proc/change_eyes(mob/living/carbon/human/user) - var/new_eye_color = input(user, "Choose your eye color", "Eye Color", user.eye_color_left) as color|null - if(isnull(new_eye_color)) - return TRUE + var/new_eye_color = tgui_color_picker(user, "Choose your eye color", "Eye Color", user.eye_color_left) + if(isnull(new_eye_color) || !can_use_mirror(user)) + return user.set_eye_color(sanitize_hexcolor(new_eye_color)) user.dna.update_ui_block(/datum/dna_block/identity/eye_colors) user.update_body() @@ -336,10 +351,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/mirror/broken, 28) desc = "An unmounted mirror. Attach it to a wall to use." icon = 'icons/obj/watercloset.dmi' icon_state = "mirror" - custom_materials = list( - /datum/material/glass = SHEET_MATERIAL_AMOUNT, - /datum/material/silver = SHEET_MATERIAL_AMOUNT, - ) + custom_materials = list(/datum/material/glass = SHEET_MATERIAL_AMOUNT * 5, /datum/material/silver = SHEET_MATERIAL_AMOUNT * 2) result_path = /obj/structure/mirror pixel_shift = 28 @@ -362,41 +374,42 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/mirror/broken, 28) /obj/structure/mirror/magic/change_beard(mob/living/carbon/human/beard_dresser) // magical mirrors do nothing but give you the damn beard var/new_style = tgui_input_list(beard_dresser, "Select a facial hairstyle", "Grooming", SSaccessories.facial_hairstyles_list) - if(isnull(new_style)) - return TRUE + if(isnull(new_style) || !can_use_mirror(beard_dresser)) + return + beard_dresser.set_facial_hairstyle(new_style, update = TRUE) - return TRUE //Magic mirrors can change hair color as well /obj/structure/mirror/magic/change_hair(mob/living/carbon/human/user) var/hairchoice = tgui_alert(user, "Hairstyle or hair color?", "Change Hair", list("Style", "Color")) + if(!can_use_mirror(user)) + return if(hairchoice == "Style") //So you just want to use a mirror then? return ..() - var/new_hair_color = input(user, "Choose your hair color", "Hair Color", user.hair_color) as color|null - + var/new_hair_color = tgui_color_picker(user, "Choose your hair color", "Hair Color", user.hair_color) + if(!new_hair_color || !can_use_mirror(user)) + return if(new_hair_color) user.set_haircolor(sanitize_hexcolor(new_hair_color)) user.dna.update_ui_block(/datum/dna_block/identity/hair_color) if(user.physique == MALE) - var/new_face_color = input(user, "Choose your facial hair color", "Hair Color", user.facial_hair_color) as color|null - if(new_face_color) + var/new_face_color = tgui_color_picker(user, "Choose your facial hair color", "Hair Color", user.facial_hair_color) + if(new_face_color && can_use_mirror(user)) user.set_facial_haircolor(sanitize_hexcolor(new_face_color)) user.dna.update_ui_block(/datum/dna_block/identity/facial_color) -/obj/structure/mirror/magic/attack_hand(mob/living/carbon/human/user) - . = ..() - if(.) - return TRUE - - if(HAS_TRAIT(user, TRAIT_ADVANCEDTOOLUSER) && HAS_TRAIT(user, TRAIT_LITERATE)) - return TRUE +/// Hook for mirrors to do stuff on species change +/obj/structure/mirror/magic/on_species_change(mob/living/carbon/human/race_changer, datum/species/newrace) + if(HAS_TRAIT(race_changer, TRAIT_ADVANCEDTOOLUSER) && HAS_TRAIT(race_changer, TRAIT_LITERATE)) + return - to_chat(user, span_alert("You feel quite intelligent.")) + to_chat(race_changer, span_alert("You feel quite intelligent.")) // Prevents wizards from being soft locked out of everything // If this stays after the species was changed once more, well, the magic mirror did it. It's magic i aint gotta explain shit - user.add_traits(list(TRAIT_LITERATE, TRAIT_ADVANCEDTOOLUSER), SPECIES_TRAIT) - return TRUE + race_changer.add_traits(list(TRAIT_LITERATE, TRAIT_ADVANCEDTOOLUSER), SPECIES_TRAIT) + +/obj/structure/mirror/magic/lesser /obj/structure/mirror/magic/lesser/Initialize(mapload) // Roundstart species don't have a flag, so it has to be set on Initialize. @@ -414,32 +427,14 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/mirror/broken, 28) /// If the last user has altered anything about themselves var/changed = FALSE -/obj/structure/mirror/magic/pride/display_radial_menu(mob/living/carbon/human/user) - var/pick = show_radial_menu(user, src, mirror_options, user, radius = 36, require_near = TRUE, tooltips = TRUE) - if(!pick) - return TRUE //get out - +/obj/structure/mirror/magic/pride/pre_change(mob/living/carbon/human/user, picked) + . = ..() changed = TRUE - switch(pick) - if(CHANGE_HAIR) - change_hair(user) - if(CHANGE_BEARD) - change_beard(user) - if(CHANGE_RACE) - change_race(user) - if(CHANGE_SEX) // sex: yes - change_sex(user) - if(CHANGE_NAME) - change_name(user) - if(CHANGE_EYES) - change_eyes(user) - - return display_radial_menu(user) /obj/structure/mirror/magic/pride/attack_hand(mob/living/carbon/human/user) changed = FALSE . = ..() - if (!changed) + if (!changed || QDELETED(user) || !IN_GIVEN_RANGE(user, src, 3)) // 3 range gives a tiny bit of leeway if you try to run away after using it return user.visible_message( span_bolddanger("The ground splits beneath [user] as [user.p_their()] hand leaves the mirror!"), diff --git a/code/game/objects/structures/mystery_box.dm b/code/game/objects/structures/mystery_box.dm index 3b3a4d9a9d9a67..7b71200fb47efa 100644 --- a/code/game/objects/structures/mystery_box.dm +++ b/code/game/objects/structures/mystery_box.dm @@ -23,6 +23,9 @@ GLOBAL_LIST_INIT(mystery_box_guns, list( /obj/item/gun/energy/e_gun, /obj/item/gun/energy/e_gun/nuclear, /obj/item/gun/energy/laser, + /obj/item/gun/energy/laser/soul, + /obj/item/gun/energy/laser/pistol, + /obj/item/gun/energy/laser/assault, /obj/item/gun/energy/laser/hellgun, /obj/item/gun/energy/laser/captain, /obj/item/gun/energy/laser/scatter, diff --git a/code/game/objects/structures/noticeboard.dm b/code/game/objects/structures/noticeboard.dm index 20da9190d0b6c6..ed7ef50f383ce0 100644 --- a/code/game/objects/structures/noticeboard.dm +++ b/code/game/objects/structures/noticeboard.dm @@ -36,7 +36,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/noticeboard, 32) notices++ update_appearance(UPDATE_ICON) if(mapload) - find_and_hang_on_wall() + find_and_mount_on_atom() //attaching papers!! /obj/structure/noticeboard/attackby(obj/item/O, mob/user, list/modifiers, list/attack_modifiers) diff --git a/code/game/objects/structures/plaques/_plaques.dm b/code/game/objects/structures/plaques/_plaques.dm index 5baf25200fdd15..de143b17f9f30b 100644 --- a/code/game/objects/structures/plaques/_plaques.dm +++ b/code/game/objects/structures/plaques/_plaques.dm @@ -20,6 +20,8 @@ /obj/structure/plaque/Initialize(mapload) . = ..() + if(mapload) + find_and_mount_on_atom() register_context() /obj/structure/plaque/add_context(atom/source, list/context, obj/item/held_item, mob/user) diff --git a/code/game/objects/structures/plaques/static_plaques.dm b/code/game/objects/structures/plaques/static_plaques.dm index 6dcd9fe57bcb5c..6aed496b6f4196 100644 --- a/code/game/objects/structures/plaques/static_plaques.dm +++ b/code/game/objects/structures/plaques/static_plaques.dm @@ -9,6 +9,13 @@ SET_PLANE_IMPLICIT(src, FLOOR_PLANE) layer = HIGH_TURF_LAYER +/obj/structure/plaque/static_plaque/get_moutable_objects() + return list() + +/obj/structure/plaque/static_plaque/find_and_mount_on_atom(mark_for_late_init, late_init) + if(isProbablyWallMounted(src)) + return ..() + /obj/structure/plaque/static_plaque/atmos name = "\improper FEA Atmospherics Division plaque" desc = "This plaque commemorates the fall of the Atmos FEA division. For all the charred, dizzy, and brittle men who have died in its hands." diff --git a/code/game/objects/structures/plasticflaps.dm b/code/game/objects/structures/plasticflaps.dm index 4837627daccdac..0c153c59128e0b 100644 --- a/code/game/objects/structures/plasticflaps.dm +++ b/code/game/objects/structures/plasticflaps.dm @@ -12,6 +12,7 @@ integrity_failure = 0.75 // This layer only matters for determining when you click it vs other objects layer = BELOW_OPEN_DOOR_LAYER + custom_materials = list(/datum/material/plastic = SHEET_MATERIAL_AMOUNT * 5) /// If TRUE, we can't pass through unless the mob is resting (or fulfills more specific requirements) var/require_resting = TRUE /// Layer the flaps render on diff --git a/code/game/objects/structures/platform.dm b/code/game/objects/structures/platform.dm index 6adfcf310aa53a..af788a50b69be4 100644 --- a/code/game/objects/structures/platform.dm +++ b/code/game/objects/structures/platform.dm @@ -18,6 +18,7 @@ anchored = TRUE armor_type = /datum/armor/half_wall material_flags = MATERIAL_EFFECTS | MATERIAL_AFFECT_STATISTICS + custom_materials = list(/datum/material/iron = PLATFORM_BASE_MATERIAL_AMOUNT) /// Icon used for the frame var/frame_icon = 'icons/obj/smooth_structures/platform/frame_faces/window_frame_normal.dmi' /// Material used in our construction @@ -44,12 +45,12 @@ register_context() update_appearance(UPDATE_OVERLAYS) - AddComponent(/datum/component/climb_walkable) + AddElement(/datum/element/climb_walkable) AddElement(/datum/element/climbable) AddElement(/datum/element/elevation, pixel_shift = 12) AddElement(/datum/element/give_turf_traits, string_list(turf_traits)) AddElement(/datum/element/footstep_override, footstep = footstep, priority = STEP_SOUND_TABLE_PRIORITY) - AddComponent(/datum/component/table_smash) + AddElement(/datum/element/table_smash) /obj/structure/platform/add_context(atom/source, list/context, obj/item/held_item, mob/living/user) . = ..() diff --git a/code/game/objects/structures/railings.dm b/code/game/objects/structures/railings.dm index 5beb43a31bcd9f..7fa9a6ccb18d40 100644 --- a/code/game/objects/structures/railings.dm +++ b/code/game/objects/structures/railings.dm @@ -13,7 +13,7 @@ /// armor is a little bit less than a grille. max_integrity about half that of a grille. armor_type = /datum/armor/structure_railing max_integrity = 25 - + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT) var/climbable = TRUE ///item released when deconstructed var/item_deconstruct = /obj/item/stack/rods @@ -32,6 +32,7 @@ icon_state = "railing_corner" density = FALSE climbable = FALSE + custom_materials = list(/datum/material/iron = HALF_SHEET_MATERIAL_AMOUNT) /obj/structure/railing/corner/unbreakable resistance_flags = INDESTRUCTIBLE @@ -72,7 +73,7 @@ ) AddElement(/datum/element/contextual_screentip_tools, tool_behaviors) - AddComponent(/datum/component/simple_rotation, ROTATION_NEEDS_ROOM) + AddElement(/datum/element/simple_rotation, ROTATION_NEEDS_ROOM) /obj/structure/railing/examine(mob/user) . = ..() @@ -172,6 +173,7 @@ item_deconstruct = /obj/item/stack/sheet/mineral/wood layer = ABOVE_MOB_LAYER plane = GAME_PLANE + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 2) /obj/structure/railing/wooden_fence/Initialize(mapload) . = ..() diff --git a/code/game/objects/structures/reflector.dm b/code/game/objects/structures/reflector.dm index ada47e65bc0ae1..082a140d699381 100644 --- a/code/game/objects/structures/reflector.dm +++ b/code/game/objects/structures/reflector.dm @@ -5,6 +5,7 @@ desc = "A base for reflector assemblies." anchored = FALSE density = FALSE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 5) var/deflector_icon_state var/mutable_appearance/deflector_overlay var/finished = FALSE @@ -36,9 +37,7 @@ if(admin) can_rotate = FALSE - AddComponent(/datum/component/usb_port, list( - /obj/item/circuit_component/reflector, - )) + AddComponent(/datum/component/usb_port, typecacheof(list(/obj/item/circuit_component/reflector), only_root_path = TRUE)) /obj/structure/reflector/examine(mob/user) . = ..() @@ -209,6 +208,7 @@ finished = TRUE buildstacktype = /obj/item/stack/sheet/rglass buildstackamount = 10 + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 10, /datum/material/glass = SHEET_MATERIAL_AMOUNT * 10) /obj/structure/reflector/double/anchored anchored = TRUE @@ -234,6 +234,7 @@ finished = TRUE buildstacktype = /obj/item/stack/sheet/mineral/diamond buildstackamount = 1 + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 10, /datum/material/diamond = SHEET_MATERIAL_AMOUNT) /obj/structure/reflector/box/anchored anchored = TRUE diff --git a/code/game/objects/structures/safe.dm b/code/game/objects/structures/safe.dm index 825c609f4a7797..0822d1db77c78a 100644 --- a/code/game/objects/structures/safe.dm +++ b/code/game/objects/structures/safe.dm @@ -21,11 +21,13 @@ FLOOR SAFES obj_flags = CONDUCTS_ELECTRICITY interaction_flags_atom = INTERACT_ATOM_ATTACK_HAND | INTERACT_ATOM_UI_INTERACT custom_materials = list( - /datum/material/metalhydrogen = SHEET_MATERIAL_AMOUNT*10, - /datum/material/alloy/plastitanium = SHEET_MATERIAL_AMOUNT*5, + /datum/material/metalhydrogen = SHEET_MATERIAL_AMOUNT * 15, + /datum/material/alloy/plastitanium = SHEET_MATERIAL_AMOUNT * 8, + /datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT * 6, + /datum/material/titanium = SHEET_MATERIAL_AMOUNT * 3, + /datum/material/iron = SHEET_MATERIAL_AMOUNT * 3, ) material_flags = MATERIAL_EFFECTS - /// The maximum combined w_class of stuff in the safe var/maxspace = 24 /// The amount of tumblers that will be generated @@ -302,6 +304,11 @@ FLOOR SAFES icon_state = "floorsafe" density = FALSE layer = LOW_OBJ_LAYER + custom_materials = list( + /datum/material/metalhydrogen = SHEET_MATERIAL_AMOUNT * 15, + /datum/material/alloy/plastitanium = SHEET_MATERIAL_AMOUNT * 8, + /datum/material/iron = SHEET_MATERIAL_AMOUNT * 1.55, + ) /obj/structure/safe/floor/Initialize(mapload) . = ..() diff --git a/code/game/objects/structures/secure_safe.dm b/code/game/objects/structures/secure_safe.dm index 43af43268e86f3..71c3d0bb481a36 100644 --- a/code/game/objects/structures/secure_safe.dm +++ b/code/game/objects/structures/secure_safe.dm @@ -10,8 +10,9 @@ obj_flags = CONDUCTS_ELECTRICITY resistance_flags = FIRE_PROOF custom_materials = list( - /datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT*5, - /datum/material/titanium = SHEET_MATERIAL_AMOUNT*3, + /datum/material/alloy/plasteel = SHEET_MATERIAL_AMOUNT * 8, + /datum/material/titanium = SHEET_MATERIAL_AMOUNT * 4, + /datum/material/iron = SHEET_MATERIAL_AMOUNT * 2, ) material_flags = MATERIAL_EFFECTS /// The lock code transferred from the structure @@ -104,13 +105,13 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/secure_safe, 32) /obj/structure/secure_safe/Initialize(mapload) . = ..() //this will create the storage for us. - AddComponent(/datum/component/lockable_storage, , stored_lock_code) + AddComponent(/datum/component/lockable_storage, stored_lock_code) if(mapload) PopulateContents() - find_and_hang_on_wall() + find_and_mount_on_atom() RegisterSignal(src, COMSIG_LOCKABLE_STORAGE_SET_CODE, PROC_REF(update_lock_code)) -/obj/structure/secure_safe/find_and_hang_on_wall() +/obj/structure/secure_safe/find_and_mount_on_atom(mark_for_late_init, late_init) if(!density) return ..() @@ -163,7 +164,6 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/secure_safe, 32) It is made out of the same material as the station's Black Box and is designed to resist all conventional weaponry. \ There appears to be a small amount of surface corrosion. It doesn't look like it could withstand much of an explosion.\ Due to the expensive material, it was made incredibly small to cut corners, leaving only enough room to fit something as slim as an ID card." - icon = 'icons/obj/structures.dmi' icon_state = "spare_safe" base_icon_state = "spare_safe" armor_type = /datum/armor/safe_caps_spare diff --git a/code/game/objects/structures/shower.dm b/code/game/objects/structures/shower.dm index 88ee92fa4d81e6..09a48edbbbbe3a 100644 --- a/code/game/objects/structures/shower.dm +++ b/code/game/objects/structures/shower.dm @@ -87,7 +87,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/shower, (-16)) if(src.has_water_reclaimer) reagents.add_reagent(reagent_id, reagent_capacity) soundloop = new(src, FALSE) - AddComponent(/datum/component/plumbing/simple_demand, extend_pipe_to_edge = TRUE) + AddComponent(/datum/component/plumbing/simple_demand/extended) var/static/list/loc_connections = list( COMSIG_ATOM_ENTERED = PROC_REF(on_entered), COMSIG_ATOM_EXITED = PROC_REF(on_exited), @@ -374,7 +374,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/shower, (-16)) to_chat(living, span_warning("[src] is freezing!")) else if(current_temperature == SHOWER_BOILING) living.adjust_bodytemperature(35, 0, 500) - living.adjustFireLoss(5) + living.adjust_fire_loss(5) to_chat(living, span_danger("[src] is searing!")) @@ -384,10 +384,11 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/shower, (-16)) icon_state = "shower_frame" desc = "A shower frame, that needs a water recycler to finish construction." anchored = FALSE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2) /obj/structure/showerframe/Initialize(mapload) . = ..() - AddComponent(/datum/component/simple_rotation) + AddElement(/datum/element/simple_rotation) /obj/structure/showerframe/attackby(obj/item/tool, mob/living/user, list/modifiers, list/attack_modifiers) if(istype(tool, /obj/item/stock_parts/water_recycler)) diff --git a/code/game/objects/structures/signs/_signs.dm b/code/game/objects/structures/signs/_signs.dm index 905d709b273454..e1debb4aab1ff9 100644 --- a/code/game/objects/structures/signs/_signs.dm +++ b/code/game/objects/structures/signs/_signs.dm @@ -23,8 +23,11 @@ /obj/structure/sign/Initialize(mapload) . = ..() register_context() - if(mapload) - find_and_hang_on_wall() + if(mapload && !find_and_mount_on_atom(mark_for_late_init = TRUE)) + return INITIALIZE_HINT_LATELOAD + +/obj/structure/sign/LateInitialize() + find_and_mount_on_atom(late_init = TRUE) /obj/structure/sign/add_context(atom/source, list/context, obj/item/held_item, mob/user) . = ..() @@ -48,17 +51,17 @@ /obj/structure/sign/wrench_act(mob/living/user, obj/item/wrench/I) . = ..() if(!buildable_sign) - return TRUE + return ITEM_INTERACT_FAILURE user.visible_message(span_notice("[user] starts removing [src]..."), \ span_notice("You start unfastening [src].")) I.play_tool_sound(src) if(!I.use_tool(src, user, 4 SECONDS)) - return TRUE + return ITEM_INTERACT_FAILURE playsound(src, 'sound/items/deconstruct.ogg', 50, TRUE) user.visible_message(span_notice("[user] unfastens [src]."), \ span_notice("You unfasten [src].")) deconstruct(TRUE) - return TRUE + return ITEM_INTERACT_SUCCESS /obj/structure/sign/welder_act(mob/living/user, obj/item/I) . = ..() @@ -126,19 +129,6 @@ is_editable = TRUE sign_change_name = "Blank Sign" -/obj/structure/sign/nanotrasen - name = "\improper Nanotrasen logo sign" - sign_change_name = "Corporate Logo - Nanotrasen" - desc = "A sign with the Nanotrasen logo on it. Glory to Nanotrasen!" - icon_state = "nanotrasen" - is_editable = TRUE - -/obj/structure/sign/logo - name = "\improper Nanotrasen logo sign" - desc = "The Nanotrasen corporate logo." - icon_state = "nanotrasen_sign1" - buildable_sign = FALSE - /obj/item/sign name = "sign backing" desc = "A plastic sign backing, use a pen to change the decal. It can be placed on a wall." @@ -175,35 +165,35 @@ context[SCREENTIP_CONTEXT_LMB] = "Change design" return CONTEXTUAL_SCREENTIP_SET -/obj/item/sign/attackby(obj/item/I, mob/user, list/modifiers, list/attack_modifiers) - if(is_editable && IS_WRITING_UTENSIL(I)) - if(!length(GLOB.editable_sign_types)) - CRASH("GLOB.editable_sign_types failed to populate") - var/choice = tgui_input_list(user, "Select a sign type", "Sign Customization", GLOB.editable_sign_types) - if(isnull(choice)) - return - if(!Adjacent(user)) //Make sure user is adjacent still. - to_chat(user, span_warning("You need to stand next to the sign to change it!")) - return - user.visible_message(span_notice("You begin changing [src].")) - if(!do_after(user, 4 SECONDS, target = src)) - return - set_sign_type(GLOB.editable_sign_types[choice]) - user.visible_message(span_notice("You finish changing the sign.")) - return - return ..() +/obj/item/sign/item_interaction(mob/living/user, obj/item/tool, list/modifiers) + if(!is_editable || !IS_WRITING_UTENSIL(tool)) + return ..() + if(!length(GLOB.editable_sign_types)) + CRASH("GLOB.editable_sign_types failed to populate") + var/choice = tgui_input_list(user, "Select a sign type", "Sign Customization", GLOB.editable_sign_types) + if(isnull(choice)) + return ITEM_INTERACT_BLOCKING + if(!Adjacent(user)) //Make sure user is adjacent still. + to_chat(user, span_warning("You need to stand next to the sign to change it!")) + return ITEM_INTERACT_BLOCKING + user.visible_message(span_notice("You begin changing [src].")) + if(!do_after(user, 4 SECONDS, target = src)) + return ITEM_INTERACT_BLOCKING + set_sign_type(GLOB.editable_sign_types[choice]) + user.visible_message(span_notice("You finish changing the sign.")) + return ITEM_INTERACT_SUCCESS /obj/item/sign/interact_with_atom(atom/interacting_with, mob/living/user, list/modifiers) if(!iswallturf(interacting_with) && !istype(interacting_with, /obj/structure/tram)) return NONE var/turf/target_turf = interacting_with var/turf/user_turf = get_turf(user) - var/obj/structure/sign/placed_sign = new sign_path(user_turf) //We place the sign on the turf the user is standing, and pixel shift it to the target wall, as below. - //This is to mimic how signs and other wall objects are usually placed by mappers, and so they're only visible from one side of a wall. var/dir = get_dir(user_turf, target_turf) if(!(dir in GLOB.cardinals)) balloon_alert(user, "stand in line with wall!") - return + return ITEM_INTERACT_BLOCKING + var/obj/structure/sign/placed_sign = new sign_path(user_turf) //We place the sign on the turf the user is standing, and pixel shift it to the target wall, as below. + //This is to mimic how signs and other wall objects are usually placed by mappers, and so they're only visible from one side of a wall. if(dir & NORTH) placed_sign.pixel_y = 32 else if(dir & SOUTH) @@ -217,7 +207,7 @@ playsound(target_turf, 'sound/items/deconstruct.ogg', 50, TRUE) placed_sign.update_integrity(get_integrity()) placed_sign.setDir(dir) - placed_sign.find_and_hang_on_wall() + placed_sign.AddComponent(/datum/component/atom_mounted, target_turf) qdel(src) return ITEM_INTERACT_SUCCESS @@ -239,6 +229,9 @@ atom_integrity = max_integrity return TRUE +/obj/item/sign/screwdriver_act(mob/living/user, obj/item/tool) + return interact_with_atom(get_step(get_turf(user), user.dir), user) + /obj/item/sign/proc/set_sign_type(obj/structure/sign/fake_type) name = initial(fake_type.name) if(fake_type != /obj/structure/sign/blank) diff --git a/code/game/objects/structures/signs/signs_maps.dm b/code/game/objects/structures/signs/signs_maps.dm index a6701ed7e909cb..8bfd2aebbd0746 100644 --- a/code/game/objects/structures/signs/signs_maps.dm +++ b/code/game/objects/structures/signs/signs_maps.dm @@ -23,6 +23,9 @@ /obj/structure/sign/map/meta/right icon_state = "map-right-MS" +/obj/structure/sign/map/pubby + icon_state = "map-pubby" + /obj/structure/sign/directions/science name = "science department sign" desc = "A direction sign, pointing out which way the Science department is." diff --git a/code/game/objects/structures/signs/signs_misc.dm b/code/game/objects/structures/signs/signs_misc.dm index 8cf802fc939ba4..b167f62ec9d1f2 100644 --- a/code/game/objects/structures/signs/signs_misc.dm +++ b/code/game/objects/structures/signs/signs_misc.dm @@ -109,3 +109,18 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sign/xenobio_guide, 32) return data MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sign/tram_plate, 32) + +/obj/structure/sign/nanotrasen + name = "\improper Nanotrasen logo sign" + sign_change_name = "Corporate Logo - Nanotrasen" + desc = "A sign with the Nanotrasen logo on it. Glory to Nanotrasen!" + icon_state = "nanotrasen" + is_editable = TRUE + +MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sign/nanotrasen, 32) + +/obj/structure/sign/logo + name = "\improper Nanotrasen logo sign" + desc = "The Nanotrasen corporate logo." + icon_state = "nanotrasen_sign1" + buildable_sign = FALSE diff --git a/code/game/objects/structures/signs/signs_warning.dm b/code/game/objects/structures/signs/signs_warning.dm index db44c75669d8a4..7f92f111f237fd 100644 --- a/code/game/objects/structures/signs/signs_warning.dm +++ b/code/game/objects/structures/signs/signs_warning.dm @@ -11,6 +11,7 @@ is_editable = TRUE MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sign/warning, 32) +MAPPING_DIAGONAL_HELPERS(/obj/structure/sign/warning, 32) /obj/structure/sign/warning/secure_area name = "\improper SECURE AREA sign" @@ -18,6 +19,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sign/warning, 32) desc = "A warning sign which reads 'SECURE AREA'." MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sign/warning/secure_area, 32) +MAPPING_DIAGONAL_HELPERS(/obj/structure/sign/warning/secure_area, 32) /obj/structure/sign/warning/docking name = "\improper KEEP CLEAR: DOCKING AREA sign" diff --git a/code/game/objects/structures/spawner.dm b/code/game/objects/structures/spawner.dm index a98871a95b523b..e91c77e5a4cf61 100644 --- a/code/game/objects/structures/spawner.dm +++ b/code/game/objects/structures/spawner.dm @@ -221,7 +221,7 @@ /obj/structure/spawner/nether/process(seconds_per_tick) for(var/mob/living/living_mob in contents) playsound(src, 'sound/effects/magic/demon_consume.ogg', 50, TRUE) - living_mob.adjustBruteLoss(60 * seconds_per_tick) + living_mob.adjust_brute_loss(60 * seconds_per_tick) new /obj/effect/gibspawner/generic(get_turf(living_mob), living_mob) if(living_mob.stat == DEAD) var/mob/living/basic/blankbody/newmob = new(loc) @@ -280,7 +280,7 @@ . = ..() if(!IS_CULTIST(user) && isliving(user)) var/mob/living/living_user = user - living_user.adjustOrganLoss(ORGAN_SLOT_BRAIN, 15) + living_user.adjust_organ_loss(ORGAN_SLOT_BRAIN, 15) . += span_danger("The voices of the damned echo relentlessly in your mind, continously rebounding on the walls of your self the more you focus on [src]. Your head pounds, better keep away...") else . += span_cult("The gateway will create one weak proteon construct every [spawn_time * 0.1] seconds, up to a total of [max_mobs], that may be controlled by the spirits of the dead.") diff --git a/code/game/objects/structures/stairs.dm b/code/game/objects/structures/stairs.dm index cc13ce6a25a2a7..8d7e1fc84e121f 100644 --- a/code/game/objects/structures/stairs.dm +++ b/code/game/objects/structures/stairs.dm @@ -2,6 +2,9 @@ #define STAIR_TERMINATOR_NO 1 #define STAIR_TERMINATOR_YES 2 +/// Range within which stair indicators will appear for approaching mobs +#define STAIR_INDICATOR_RANGE 3 + // dir determines the direction of travel to go upwards // stairs require /turf/open/openspace as the tile above them to work, unless your stairs have 'force_open_above' set to TRUE // multiple stair objects can be chained together; the Z level transition will happen on the final stair object in the chain @@ -10,12 +13,22 @@ name = "stairs" icon = 'icons/obj/stairs.dmi' icon_state = "stairs" + base_icon_state = "stairs" anchored = TRUE move_resist = INFINITY - - var/force_open_above = FALSE // replaces the turf above this stair obj with /turf/open/openspace - var/terminator_mode = STAIR_TERMINATOR_AUTOMATIC - var/turf/listeningTo + plane = FLOOR_PLANE + layer = ABOVE_OPEN_TURF_LAYER + + /// If TRUE replaces the turf above this stair obj with /turf/open/openspace + var/force_open_above = FALSE + /// Determines if this stair is the last in a "chain" of stairs, ie next step is upstairs + VAR_FINAL/terminator_mode = STAIR_TERMINATOR_AUTOMATIC + /// Upstairs turf. Is observed for changes if force_open_above is TRUE (to re-open if necessary) + VAR_FINAL/turf/directly_above + /// If TRUE, we have left/middle/right sprites. + var/has_merged_sprites = TRUE + /// Lazyassoc list of weakef to mob viewing stair indicators to their images + VAR_PRIVATE/list/mob_to_image /obj/structure/stairs/north dir = NORTH @@ -31,49 +44,94 @@ /obj/structure/stairs/wood icon_state = "stairs_wood" + has_merged_sprites = FALSE /obj/structure/stairs/stone icon_state = "stairs_stone" + has_merged_sprites = FALSE /obj/structure/stairs/material icon_state = "stairs_material" material_flags = MATERIAL_EFFECTS | MATERIAL_ADD_PREFIX | MATERIAL_COLOR | MATERIAL_AFFECT_STATISTICS + has_merged_sprites = FALSE /obj/structure/stairs/Initialize(mapload) + . = ..() + GLOB.stairs += src if(force_open_above) force_open_above() build_signal_listener() update_surrounding() - var/static/list/loc_connections = list( - COMSIG_ATOM_EXIT = PROC_REF(on_exit), + var/static/list/exit_connections = list( + COMSIG_ATOM_EXIT = PROC_REF(on_exit_stairs), ) - AddElement(/datum/element/connect_loc, loc_connections) + AddElement(/datum/element/connect_loc, exit_connections) + + var/static/list/range_connections = list( + COMSIG_ATOM_ENTERED = PROC_REF(on_enter_range), + COMSIG_ATOM_EXITED = PROC_REF(on_exit_range), + ) + AddComponent(/datum/component/connect_range, tracked = src, connections = range_connections, range = STAIR_INDICATOR_RANGE) - return ..() /obj/structure/stairs/Destroy() - listeningTo = null + if(directly_above) + UnregisterSignal(directly_above, COMSIG_TURF_MULTIZ_NEW) + directly_above = null + for(var/climber_ref in mob_to_image) + clear_climber_image(climber_ref, instant = TRUE) GLOB.stairs -= src return ..() -/obj/structure/stairs/Move() //Look this should never happen but... +/obj/structure/stairs/Moved(atom/old_loc, movement_dir, forced, list/old_locs, momentum_change) //Look this should never happen but... . = ..() if(force_open_above) build_signal_listener() update_surrounding() +/// Updates the sprite and the sprites of neighboring stairs to reflect merged sprites /obj/structure/stairs/proc/update_surrounding() + if(!has_merged_sprites) + return + update_appearance() - for(var/i in GLOB.cardinals) - var/turf/T = get_step(get_turf(src), i) - var/obj/structure/stairs/S = locate() in T - if(S) - S.update_appearance() -/obj/structure/stairs/proc/on_exit(datum/source, atom/movable/leaving, direction) + for(var/obj/structure/stairs/stair in get_step(src, turn(dir, 90))) + stair.update_appearance() + + for(var/obj/structure/stairs/stair in get_step(src, turn(dir, -90))) + stair.update_appearance() + +/obj/structure/stairs/update_icon_state() + . = ..() + if(!has_merged_sprites) + return + + var/has_left_stairs = FALSE + var/has_right_stairs = FALSE + for(var/obj/structure/stairs/stair in get_step(src, turn(dir, 90))) + if(stair.dir == dir) + has_left_stairs = TRUE + break + + for(var/obj/structure/stairs/stair in get_step(src, turn(dir, -90))) + if(stair.dir == dir) + has_right_stairs = TRUE + break + + if(has_left_stairs && has_right_stairs) + icon_state = "[base_icon_state]-m" + else if(has_left_stairs) + icon_state = "[base_icon_state]-r" + else if(has_right_stairs) + icon_state = "[base_icon_state]-l" + else + icon_state = base_icon_state + +/obj/structure/stairs/proc/on_exit_stairs(datum/source, atom/movable/leaving, direction) SIGNAL_HANDLER if(leaving == src) @@ -85,19 +143,95 @@ leaving.Bump(src) return COMPONENT_ATOM_BLOCK_EXIT +#define POINT_X_COMPONENT(pdir) ((pdir & EAST) ? 2 : ((pdir & WEST) ? -2 : 0)) +#define POINT_Y_COMPONENT(pdir) ((pdir & SOUTH) ? 2 : ((pdir & NORTH) ? -2 : 0)) + +/obj/structure/stairs/proc/on_enter_range(datum/source, atom/movable/entered) + SIGNAL_HANDLER + + if(!isliving(entered)) + return + + var/mob/living/climber = entered + var/datum/weakref/climber_ref = WEAKREF(climber) + if(!climber.client || !climber.client.prefs.read_preference(/datum/preference/toggle/stair_indicator)) + return + if(climber.dir == REVERSE_DIR(dir)) + return // walking away + if(LAZYACCESS(mob_to_image, climber_ref)) + return // already see it + if(!(climber in viewers(STAIR_INDICATOR_RANGE + 1, src))) + return // can't see the staircase (+1 tile for some leeway) + if(!isopenturf(get_step_multiz(src, UP))) + return // no place to go up to + + var/image/pointing_image = get_pointing_image() + climber.client.images += pointing_image + pointing_image.alpha = 0 + animate(pointing_image, pixel_x = POINT_X_COMPONENT(dir), pixel_y = POINT_Y_COMPONENT(dir), time = 0.5 SECONDS, easing = SINE_EASING|EASE_OUT, loop = -1, tag = "point_xy") + animate(pixel_x = 0, pixel_y = 0, time = 0.5 SECONDS, easing = SINE_EASING|EASE_IN) + animate(pointing_image, alpha = 180, time = 0.75 SECONDS, tag = "point_fadein") + LAZYSET(mob_to_image, climber_ref, pointing_image) + +/obj/structure/stairs/proc/on_exit_range(datum/source, atom/movable/exited) + SIGNAL_HANDLER + + if(!isliving(exited)) + return + + var/datum/weakref/climber_ref = WEAKREF(exited) + if(!LAZYACCESS(mob_to_image, climber_ref)) + return // not seeing anything + if(exited in viewers(STAIR_INDICATOR_RANGE, src)) + return // still in range and can see the staircase + + clear_climber_image(climber_ref) + +/obj/structure/stairs/proc/clear_climber_image(datum/weakref/climber_ref, instant = FALSE) + var/image/pointing_image = LAZYACCESS(mob_to_image, climber_ref) + if(!pointing_image) + LAZYREMOVE(mob_to_image, climber_ref) // just in case + return + if(instant) + clear_climber_image_callback(climber_ref, pointing_image) + return + + animate(pointing_image, alpha = 0, time = 0.75 SECONDS, tag = "point_fadeout") + // note: the player won't see a new indicator until the image is fully a removed, so this timer also serves as a cooldown + addtimer(CALLBACK(src, PROC_REF(clear_climber_image_callback), climber_ref, pointing_image), 1.5 SECONDS, TIMER_UNIQUE) + +/obj/structure/stairs/proc/clear_climber_image_callback(datum/weakref/climber_ref, image/pointing_image) + PRIVATE_PROC(TRUE) + var/mob/living/climber = climber_ref?.resolve() + climber?.client?.images -= pointing_image + LAZYREMOVE(mob_to_image, climber_ref) + +/obj/structure/stairs/proc/get_pointing_image() + PROTECTED_PROC(TRUE) + var/image/point_image = image('icons/hud/screen_gen.dmi', src, "arrow_large_white_still") + point_image.color = COLOR_DARK_MODERATE_LIME_GREEN + point_image.appearance_flags |= KEEP_APART + point_image.transform = matrix().Turn(dir2angle(REVERSE_DIR(dir))) + point_image.layer = BELOW_MOB_LAYER + SET_PLANE(point_image, GAME_PLANE, src) + return point_image + +#undef POINT_X_COMPONENT +#undef POINT_Y_COMPONENT + /obj/structure/stairs/Cross(atom/movable/AM) if(isTerminator() && (get_dir(src, AM) == dir)) return FALSE return ..() /obj/structure/stairs/proc/stair_ascend(atom/movable/climber) - var/turf/checking = get_step_multiz(get_turf(src), UP) + var/turf/checking = get_step_multiz(src, UP) if(!istype(checking)) return // I'm only interested in if the pass is unobstructed, not if the mob will actually make it if(!climber.can_z_move(UP, get_turf(src), checking, z_move_flags = ZMOVE_ALLOW_BUCKLED)) return - var/turf/target = get_step_multiz(get_turf(src), (dir|UP)) + var/turf/target = get_step_multiz(src, dir|UP) if(istype(target) && !climber.can_z_move(DOWN, target, z_move_flags = ZMOVE_FALL_FLAGS)) //Don't throw them into a tile that will just dump them back down. climber.zMove(target = target, z_move_flags = ZMOVE_STAIRS_FLAGS) /// Moves anything that's being dragged by src or anything buckled to it to the stairs turf. @@ -113,22 +247,22 @@ if(var_name != NAMEOF(src, force_open_above)) return if(!var_value) - if(listeningTo) - UnregisterSignal(listeningTo, COMSIG_TURF_MULTIZ_NEW) - listeningTo = null + if(directly_above) + UnregisterSignal(directly_above, COMSIG_TURF_MULTIZ_NEW) + directly_above = null else build_signal_listener() force_open_above() /obj/structure/stairs/proc/build_signal_listener() - if(listeningTo) - UnregisterSignal(listeningTo, COMSIG_TURF_MULTIZ_NEW) - var/turf/open/openspace/T = get_step_multiz(get_turf(src), UP) + if(directly_above) + UnregisterSignal(directly_above, COMSIG_TURF_MULTIZ_NEW) + var/turf/open/openspace/T = get_step_multiz(src, UP) RegisterSignal(T, COMSIG_TURF_MULTIZ_NEW, PROC_REF(on_multiz_new)) - listeningTo = T + directly_above = T /obj/structure/stairs/proc/force_open_above() - var/turf/open/openspace/T = get_step_multiz(get_turf(src), UP) + var/turf/open/openspace/T = get_step_multiz(src, UP) if(T && !istype(T)) T.ChangeTurf(/turf/open/openspace, flags = CHANGETURF_INHERIT_AIR) @@ -136,7 +270,7 @@ SIGNAL_HANDLER if(dir == UP) - var/turf/open/openspace/T = get_step_multiz(get_turf(src), UP) + var/turf/open/openspace/T = get_step_multiz(src, UP) if(T && !istype(T)) T.ChangeTurf(/turf/open/openspace, flags = CHANGETURF_INHERIT_AIR) @@ -192,6 +326,7 @@ icon_state = "stairs_frame" density = FALSE anchored = FALSE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 5) /// What type of stack will this drop on deconstruction? var/frame_stack = /obj/item/stack/rods /// How much of frame_stack should this drop on deconstruction? @@ -199,12 +334,13 @@ /obj/structure/stairs_frame/wood name = "wooden stairs frame" - desc = "Everything you need to build a staircase, minus the actual stairs, this one is made of wood." + desc = "Everything you need to build a staircase, minus the actual stairs. This one is made of wood." frame_stack = /obj/item/stack/sheet/mineral/wood + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 10) /obj/structure/stairs_frame/Initialize(mapload) . = ..() - AddComponent(/datum/component/simple_rotation) + AddElement(/datum/element/simple_rotation) /obj/structure/stairs_frame/examine(mob/living/carbon/human/user) . = ..() @@ -282,3 +418,5 @@ #undef STAIR_TERMINATOR_AUTOMATIC #undef STAIR_TERMINATOR_NO #undef STAIR_TERMINATOR_YES + +#undef STAIR_INDICATOR_RANGE diff --git a/code/game/objects/structures/steps.dm b/code/game/objects/structures/steps.dm index a8e27e0b21a626..2940392a15d75a 100644 --- a/code/game/objects/structures/steps.dm +++ b/code/game/objects/structures/steps.dm @@ -6,6 +6,7 @@ icon_state = "iron" anchored = TRUE move_resist = INFINITY + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2) /obj/structure/steps/Initialize(mapload) . = ..() @@ -15,8 +16,8 @@ ) AddElement(/datum/element/connect_loc, loc_connections) - AddComponent(/datum/component/climb_walkable) - AddComponent(/datum/component/simple_rotation) + AddElement(/datum/element/climb_walkable) + AddElement(/datum/element/simple_rotation) register_context() /obj/structure/steps/add_context(atom/source, list/context, obj/item/held_item, mob/user) diff --git a/code/game/objects/structures/table_frames.dm b/code/game/objects/structures/table_frames.dm index 36ae8e5fb70433..f5df2da0fa5718 100644 --- a/code/game/objects/structures/table_frames.dm +++ b/code/game/objects/structures/table_frames.dm @@ -17,6 +17,7 @@ density = FALSE anchored = FALSE layer = PROJECTILE_HIT_THRESHHOLD_LAYER + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT) max_integrity = 100 var/framestack = /obj/item/stack/rods var/framestackamount = 2 @@ -97,6 +98,7 @@ framestack = /obj/item/stack/sheet/mineral/wood framestackamount = 2 resistance_flags = FLAMMABLE + custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT * 2) /obj/structure/table_frame/wood/get_table_type(obj/item/stack/our_stack) if(istype(our_stack, /obj/item/stack/sheet/mineral/wood)) diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index bdd5919c1d425b..90277c0c1004f2 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -91,11 +91,7 @@ make_climbable() AddElement(/datum/element/give_turf_traits, string_list(turf_traits)) AddElement(/datum/element/footstep_override, priority = STEP_SOUND_TABLE_PRIORITY) - AddComponent(/datum/component/table_smash, gentle_push = slam_gently, after_smash = CALLBACK(src, PROC_REF(after_smash))) - -/// Called after someone is harmfully smashed into us -/obj/structure/table/proc/after_smash(mob/living/smashed) - return // This is mostly for our children + AddElement(/datum/element/table_smash, gentle_push = slam_gently, after_smash_proccall = PROC_REF(after_smash)) /// Applies additional properties based on the frame used to construct this table. /obj/structure/table/proc/apply_frame_properties(obj/structure/table_frame/frame_used) @@ -109,7 +105,7 @@ ///Adds the element used to make the object climbable, and also the one that shift the mob buckled to it up. /obj/structure/table/proc/make_climbable() - AddComponent(/datum/component/climb_walkable) + AddElement(/datum/element/climb_walkable) AddElement(/datum/element/climbable) AddElement(/datum/element/elevation, pixel_shift = 12) @@ -136,7 +132,7 @@ //proc that removes elements present in now-flipped tables /obj/structure/table/proc/flip_table(new_dir = SOUTH) playsound(src, flipped_table_sound, 100) - qdel(GetComponent(/datum/component/climb_walkable)) + RemoveElement(/datum/element/climb_walkable) RemoveElement(/datum/element/climbable) RemoveElement(/datum/element/footstep_override, priority = STEP_SOUND_TABLE_PRIORITY) RemoveElement(/datum/element/give_turf_traits, turf_traits) @@ -427,7 +423,7 @@ return FALSE /obj/structure/table/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - if(rcd_data["[RCD_DESIGN_MODE]"] == RCD_DECONSTRUCT) + if(rcd_data[RCD_DESIGN_MODE] == RCD_DECONSTRUCT) qdel(src) return TRUE return FALSE @@ -552,6 +548,7 @@ COMSIG_ATOM_ENTERED = PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) + AddElement(/datum/element/give_turf_traits, string_list(list(TRAIT_AI_AVOID_TURF))) /obj/structure/table/glass/proc/on_entered(datum/source, atom/movable/AM) SIGNAL_HANDLER @@ -636,7 +633,7 @@ canSmoothWith = SMOOTH_GROUP_WOOD_TABLES custom_materials = list(/datum/material/wood = SHEET_MATERIAL_AMOUNT) -/obj/structure/table/wood/after_smash(mob/living/smashed) +/obj/structure/table/wood/after_smash(mob/living/smashed_onto) if(QDELETED(src) || prob(66)) return visible_message( @@ -645,9 +642,9 @@ ) playsound(src, 'sound/effects/wounds/crack2.ogg', 50, TRUE) - smashed.Knockdown(10 SECONDS) - smashed.Paralyze(2 SECONDS) - smashed.apply_damage(20, BRUTE) + smashed_onto.Knockdown(10 SECONDS) + smashed_onto.Paralyze(2 SECONDS) + smashed_onto.apply_damage(20, BRUTE) deconstruct(FALSE) /obj/structure/table/wood/narsie_act(total_override = TRUE) @@ -858,7 +855,7 @@ canSmoothWith = SMOOTH_GROUP_BRONZE_TABLES can_flip = FALSE -/obj/structure/table/bronze/after_smash(mob/living/pushed_mob) +/obj/structure/table/bronze/after_smash(mob/living/smashed_onto) playsound(src, 'sound/effects/magic/clockwork/fellowship_armory.ogg', 50, TRUE) /obj/structure/table/reinforced/rglass @@ -937,6 +934,7 @@ var/static/list/loc_connections = list( COMSIG_ATOM_ENTERED = PROC_REF(mark_patient), + COMSIG_ATOM_AFTER_SUCCESSFUL_INITIALIZED_ON = PROC_REF(mark_patient), COMSIG_ATOM_EXITED = PROC_REF(unmark_patient), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -1045,15 +1043,15 @@ buckled.remove_offsets(type) /// Any mob that enters our tile will be marked as a potential patient. They will be turned into a patient if they lie down. -/obj/structure/table/optable/proc/mark_patient(datum/source, mob/living/carbon/potential_patient) +/obj/structure/table/optable/proc/mark_patient(datum/source, mob/living/potential_patient) SIGNAL_HANDLER if(!istype(potential_patient)) return - RegisterSignal(potential_patient, COMSIG_LIVING_SET_BODY_POSITION, PROC_REF(recheck_patient)) + RegisterSignal(potential_patient, COMSIG_LIVING_SET_BODY_POSITION, PROC_REF(recheck_patient), TRUE) recheck_patient(potential_patient) // In case the mob is already lying down before they entered. /// Unmark the potential patient. -/obj/structure/table/optable/proc/unmark_patient(datum/source, mob/living/carbon/potential_patient) +/obj/structure/table/optable/proc/unmark_patient(datum/source, mob/living/potential_patient) SIGNAL_HANDLER if(!istype(potential_patient)) return @@ -1070,34 +1068,60 @@ if(patient && patient != potential_patient) return - if(potential_patient.body_position == LYING_DOWN && potential_patient.loc == loc) + if(IS_LYING_OR_CANNOT_LIE(potential_patient) && potential_patient.loc == loc) set_patient(potential_patient) return // Find another lying mob as a replacement. - for (var/mob/living/carbon/replacement_patient in loc.contents) - if(replacement_patient.body_position == LYING_DOWN) - set_patient(replacement_patient) - return + var/found_replacement + for (var/mob/living/replacement_patient in loc) + if(!IS_LYING_OR_CANNOT_LIE(replacement_patient)) + continue + if(iscarbon(found_replacement)) + break + else if(isliving(found_replacement) && !iscarbon(replacement_patient)) + continue // Prefer carbons over non-carbons. + found_replacement = replacement_patient - set_patient(null) + set_patient(found_replacement) /obj/structure/table/optable/proc/set_patient(mob/living/carbon/new_patient) if (patient) - UnregisterSignal(patient, list(COMSIG_MOB_SURGERY_STARTED, COMSIG_MOB_SURGERY_FINISHED)) + UnregisterSignal(patient, list( + SIGNAL_ADDTRAIT(TRAIT_READY_TO_OPERATE), + SIGNAL_REMOVETRAIT(TRAIT_READY_TO_OPERATE), + COMSIG_ATOM_BEING_OPERATED_ON, + COMSIG_ATOM_SURGERY_FINISHED, + COMSIG_LIVING_UPDATING_SURGERY_STATE, + )) if (patient.external && patient.external == air_tank) patient.close_externals() patient = new_patient update_appearance() + computer?.update_static_data_for_all_viewers() if (!patient) return - RegisterSignal(patient, COMSIG_MOB_SURGERY_STARTED, PROC_REF(on_surgery_change)) - RegisterSignal(patient, COMSIG_MOB_SURGERY_FINISHED, PROC_REF(on_surgery_change)) + RegisterSignals(patient, list( + SIGNAL_ADDTRAIT(TRAIT_READY_TO_OPERATE), + SIGNAL_REMOVETRAIT(TRAIT_READY_TO_OPERATE), + COMSIG_ATOM_SURGERY_FINISHED, + COMSIG_LIVING_UPDATING_SURGERY_STATE, + ), PROC_REF(on_surgery_change)) + RegisterSignal(patient, COMSIG_ATOM_BEING_OPERATED_ON, PROC_REF(get_surgeries)) /obj/structure/table/optable/proc/on_surgery_change(datum/source) SIGNAL_HANDLER update_appearance() + computer?.update_static_data_batched() + +/obj/structure/table/optable/proc/get_surgeries(datum/source, mob/living/surgeon, list/operations) + SIGNAL_HANDLER + + if(isnull(computer)) + return + + operations |= computer.advanced_surgeries /obj/structure/table/optable/item_interaction(mob/living/user, obj/item/tool, list/modifiers) if (istype(tool, /obj/item/clothing/mask/breath)) @@ -1278,7 +1302,7 @@ . += mutable_appearance(icon, air_tank.tank_holder_icon_state) if (breath_mask?.loc == src) . += mutable_appearance(icon, "mask_[breath_mask.icon_state]") - if (!length(patient?.surgeries)) + if (!patient || !HAS_TRAIT(patient, TRAIT_READY_TO_OPERATE)) return . += mutable_appearance(icon, "[icon_state]_[computer ? "" : "un"]linked") if (computer) @@ -1436,4 +1460,3 @@ R.add_fingerprint(user) qdel(src) building = FALSE - diff --git a/code/game/objects/structures/toiletbong.dm b/code/game/objects/structures/toiletbong.dm index c45e58d584523c..4ff8aabe6a7c4d 100644 --- a/code/game/objects/structures/toiletbong.dm +++ b/code/game/objects/structures/toiletbong.dm @@ -6,12 +6,13 @@ base_icon_state = "toiletbong" density = FALSE anchored = TRUE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 2.05, /datum/material/glass = SMALL_MATERIAL_AMOUNT * 0.8) var/smokeradius = 1 var/mutable_appearance/weed_overlay /obj/structure/toiletbong/Initialize(mapload) . = ..() - AddComponent(/datum/component/simple_rotation, post_rotation = CALLBACK(src, PROC_REF(post_rotation))) + AddElement(/datum/element/simple_rotation, post_rotation_proccall = PROC_REF(post_rotation)) create_storage(storage_type = /datum/storage/toiletbong) weed_overlay = mutable_appearance('icons/obj/watercloset.dmi', "[base_icon_state]_overlay") @@ -93,9 +94,9 @@ if (!do_after(user, 10 SECONDS, target = src)) return FALSE new /obj/item/flamethrower(get_turf(src)) - new /obj/item/stack/sheet/iron(get_turf(src)) var/obj/item/tank/internals/plasma/ptank = new /obj/item/tank/internals/plasma(get_turf(src)) ptank.air_contents.gases[/datum/gas/plasma][MOLES] = (0) + drop_costum_materials() qdel(src) return TRUE diff --git a/code/game/objects/structures/transit_tubes/transit_tube_construction.dm b/code/game/objects/structures/transit_tubes/transit_tube_construction.dm index 420e39f627d577..34db3f53a45518 100644 --- a/code/game/objects/structures/transit_tubes/transit_tube_construction.dm +++ b/code/game/objects/structures/transit_tubes/transit_tube_construction.dm @@ -15,7 +15,7 @@ /obj/structure/c_transit_tube/Initialize(mapload) . = ..() - AddComponent(/datum/component/simple_rotation, post_rotation = CALLBACK(src, PROC_REF(post_rotation))) + AddElement(/datum/element/simple_rotation) /obj/structure/c_transit_tube/proc/can_wrench_in_loc(mob/user) var/turf/source_turf = get_turf(loc) diff --git a/code/game/objects/structures/traps.dm b/code/game/objects/structures/traps.dm index 11f4817b94cf79..a14a5137b02046 100644 --- a/code/game/objects/structures/traps.dm +++ b/code/game/objects/structures/traps.dm @@ -217,7 +217,7 @@ /obj/structure/trap/damage/trap_effect(mob/living/victim) to_chat(victim, span_bolddanger("The ground quakes beneath your feet!")) victim.Paralyze(10 SECONDS) - victim.adjustBruteLoss(35) + victim.adjust_brute_loss(35) var/obj/structure/flora/rock/style_random/giant_rock = new(get_turf(src)) QDEL_IN(giant_rock, 20 SECONDS) diff --git a/code/game/objects/structures/votingbox.dm b/code/game/objects/structures/votingbox.dm index f31c8510d31a75..8ab34de74ba501 100644 --- a/code/game/objects/structures/votingbox.dm +++ b/code/game/objects/structures/votingbox.dm @@ -9,7 +9,7 @@ icon_state = "votebox_maint" anchored = TRUE - + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT * 15) var/obj/item/card/id/owner //Slapping the box with this ID starts/ends the vote. var/voting_active = FALSE //Voting or Maintenance Mode diff --git a/code/game/objects/structures/water_structures/sink.dm b/code/game/objects/structures/water_structures/sink.dm index 7922f332653190..d140cf41e7e4f2 100644 --- a/code/game/objects/structures/water_structures/sink.dm +++ b/code/game/objects/structures/water_structures/sink.dm @@ -8,6 +8,8 @@ pixel_z = 1 ///Something's being washed at the moment var/busy = FALSE + ///Capacity of this sink + var/capacity = 100 ///What kind of reagent is produced by this sink by default? (We now have actual plumbing, Arcane, August 2020) var/dispensedreagent = /datum/reagent/water ///Material to drop when broken or deconstructed. @@ -46,10 +48,10 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sink, (-14)) pixel_x = pixel_shift pixel_y = 0 - create_reagents(100, NO_REACT) + create_reagents(capacity, NO_REACT) if(src.has_water_reclaimer) - reagents.add_reagent(dispensedreagent, 100) - AddComponent(/datum/component/plumbing/simple_demand, extend_pipe_to_edge = TRUE) + reagents.add_reagent(dispensedreagent, capacity) + AddComponent(/datum/component/plumbing/simple_demand/extended) /obj/structure/sink/examine(mob/user) . = ..() @@ -105,13 +107,13 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sink, (-14)) user.visible_message(span_notice("[user] washes [user.p_their()] [washing_face ? "face" : "hands"] using [src]."), \ span_notice("You wash your [washing_face ? "face" : "hands"] using [src].")) -/obj/structure/sink/attackby(obj/item/O, mob/living/user, list/modifiers, list/attack_modifiers) +/obj/structure/sink/attackby(obj/item/attacking_item, mob/living/user, list/modifiers, list/attack_modifiers) if(busy) to_chat(user, span_warning("Someone's already washing here!")) return - if(is_reagent_container(O)) - var/obj/item/reagent_containers/RG = O + if(is_reagent_container(attacking_item)) + var/obj/item/reagent_containers/RG = attacking_item if(reagents.total_volume <= 0) to_chat(user, span_notice("\The [src] is dry.")) return FALSE @@ -124,8 +126,8 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sink, (-14)) to_chat(user, span_notice("\The [RG] is full.")) return FALSE - if(istype(O, /obj/item/melee/baton/security)) - var/obj/item/melee/baton/security/baton = O + if(istype(attacking_item, /obj/item/melee/baton/security)) + var/obj/item/melee/baton/security/baton = attacking_item if(baton.cell?.charge && baton.active) flick("baton_active", src) user.Paralyze(baton.knockdown_time) @@ -136,69 +138,69 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sink, (-14)) playsound(src, baton.on_stun_sound, 50, TRUE) return - if(istype(O, /obj/item/mop)) + if(istype(attacking_item, /obj/item/mop) || astype(attacking_item, /obj/item/rag)?.blood_level == 0) if(reagents.total_volume <= 0) to_chat(user, span_notice("\The [src] is dry.")) return FALSE - reagents.trans_to(O, 5, transferred_by = user) + reagents.trans_to(attacking_item, 5, transferred_by = user) begin_reclamation() - to_chat(user, span_notice("You wet [O] in [src].")) + to_chat(user, span_notice("You wet [attacking_item] in [src].")) playsound(loc, 'sound/effects/slosh.ogg', 25, TRUE) return - if(O.tool_behaviour == TOOL_WRENCH) - O.play_tool_sound(src) + if(attacking_item.tool_behaviour == TOOL_WRENCH) + attacking_item.play_tool_sound(src) deconstruct() return - if(O.tool_behaviour == TOOL_CROWBAR) + if(attacking_item.tool_behaviour == TOOL_CROWBAR) if(!has_water_reclaimer) to_chat(user, span_warning("There isn't a water recycler to remove.")) return - O.play_tool_sound(src) + attacking_item.play_tool_sound(src) has_water_reclaimer = FALSE new/obj/item/stock_parts/water_recycler(get_turf(loc)) to_chat(user, span_notice("You remove the water reclaimer from [src].")) return - if(istype(O, /obj/item/stock_parts/water_recycler)) + if(istype(attacking_item, /obj/item/stock_parts/water_recycler)) if(has_water_reclaimer) to_chat(user, span_warning("There is already has a water recycler installed.")) return playsound(src, 'sound/machines/click.ogg', 20, TRUE) - qdel(O) + qdel(attacking_item) has_water_reclaimer = TRUE begin_reclamation() return - if(istype(O, /obj/item/storage/fancy/pickles_jar)) - if(O.contents.len) + if(istype(attacking_item, /obj/item/storage/fancy/pickles_jar)) + if(attacking_item.contents.len) to_chat(user, span_notice("Looks like there's something left in the jar")) return - new /obj/item/reagent_containers/cup/beaker/large(loc) + qdel(attacking_item) to_chat(user, span_notice("You washed the jar, ridding it of the brine.")) - qdel(O) + user.put_in_active_hand(new /obj/item/reagent_containers/cup/beaker/large(loc)) return - if(!istype(O)) + if(!istype(attacking_item)) return - if(O.item_flags & ABSTRACT) //Abstract items like grabs won't wash. No-drop items will though because it's still technically an item in your hand. + if(attacking_item.item_flags & ABSTRACT) //Abstract items like grabs won't wash. No-drop items will though because it's still technically an item in your hand. return - if(!user.combat_mode || (O.item_flags & NOBLUDGEON)) - to_chat(user, span_notice("You start washing [O]...")) + if(!user.combat_mode || (attacking_item.item_flags & NOBLUDGEON)) + to_chat(user, span_notice("You start washing [attacking_item]...")) playsound(src, 'sound/machines/sink-faucet.ogg', 50) busy = TRUE if(!do_after(user, 4 SECONDS, target = src)) busy = FALSE return 1 busy = FALSE - O.wash(CLEAN_WASH) - reagents.expose(O, TOUCH, 5 / max(reagents.total_volume, 5)) - user.visible_message(span_notice("[user] washes [O] using [src]."), \ - span_notice("You wash [O] using [src].")) + attacking_item.wash(CLEAN_WASH) + reagents.expose(attacking_item, TOUCH, 5 / max(reagents.total_volume, 5)) + user.visible_message(span_notice("[user] washes [attacking_item] using [src]."), \ + span_notice("You wash [attacking_item] using [src].")) return 1 else return ..() @@ -224,7 +226,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sink, (-14)) new M.sheet_type(loc, FLOOR(custom_materials[M] / SHEET_MATERIAL_AMOUNT, 1)) /obj/structure/sink/proc/begin_reclamation() - START_PROCESSING(SSplumbing, src) + START_PROCESSING(SSobj, src) /obj/structure/sink/kitchen name = "kitchen sink" @@ -256,7 +258,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/sink/kitchen, (-16)) /obj/structure/sinkframe/Initialize(mapload) . = ..() - AddComponent(/datum/component/simple_rotation) + AddElement(/datum/element/simple_rotation) /obj/structure/sinkframe/attackby(obj/item/tool, mob/living/user, list/modifiers, list/attack_modifiers) if(istype(tool, /obj/item/stock_parts/water_recycler)) diff --git a/code/game/objects/structures/water_structures/toilet.dm b/code/game/objects/structures/water_structures/toilet.dm index cd9fcfe6604708..5b7dd6068aed17 100644 --- a/code/game/objects/structures/water_structures/toilet.dm +++ b/code/game/objects/structures/water_structures/toilet.dm @@ -6,6 +6,7 @@ base_icon_state = "toilet" density = FALSE anchored = TRUE + custom_materials = list(/datum/material/iron = SHEET_MATERIAL_AMOUNT) /// Boolean if whether the toilet is currently flushing. var/flushing = FALSE @@ -17,10 +18,6 @@ var/w_items = 0 /// Reference to the mob being given a swirlie. var/mob/living/swirlie - /// The type of material used to build the toilet. - var/buildstacktype = /obj/item/stack/sheet/iron - /// How much of the buildstacktype is needed to construct the toilet. - var/buildstackamount = 1 /// Lazylist of items in the cistern. var/list/cistern_items /// Lazylist of fish in the toilet, not to be mixed with the items in the cistern. Max of 3 @@ -49,7 +46,7 @@ create_reagents(reagent_capacity) if(src.has_water_reclaimer) reagents.add_reagent(reagent_id, reagent_capacity) - AddComponent(/datum/component/plumbing/simple_demand, extend_pipe_to_edge = TRUE) + AddComponent(/datum/component/plumbing/simple_demand/extended) /obj/structure/toilet/add_context(atom/source, list/context, obj/item/held_item, mob/user) . = ..() @@ -104,6 +101,9 @@ . = ..() if(gone in cistern_items) LAZYREMOVE(cistern_items, gone) + if (isitem(gone)) + var/obj/item/removed_item = gone + w_items -= removed_item.w_class return if(gone in fishes) LAZYREMOVE(fishes, gone) @@ -119,7 +119,7 @@ playsound(src.loc, SFX_SWING_HIT, 25, TRUE) swirlie.visible_message(span_danger("[user] slams the toilet seat onto [swirlie]'s head!"), span_userdanger("[user] slams the toilet seat onto your head!"), span_hear("You hear reverberating porcelain.")) log_combat(user, swirlie, "swirlied (brute)") - swirlie.adjustBruteLoss(5) + swirlie.adjust_brute_loss(5) return if(user.pulling && isliving(user.pulling)) @@ -151,10 +151,10 @@ var/mob/living/carbon/carbon_grabbed = grabbed_mob if(!carbon_grabbed.internal) log_combat(user, carbon_grabbed, "swirlied (oxy)") - carbon_grabbed.adjustOxyLoss(5) + carbon_grabbed.adjust_oxy_loss(5) else log_combat(user, grabbed_mob, "swirlied (oxy)") - grabbed_mob.adjustOxyLoss(5) + grabbed_mob.adjust_oxy_loss(5) if(was_alive && swirlie.stat == DEAD && swirlie.client) swirlie.client.give_award(/datum/award/achievement/misc/swirlie, swirlie) // just like space high school all over again! swirlie = null @@ -162,7 +162,7 @@ playsound(src.loc, 'sound/effects/bang.ogg', 25, TRUE) grabbed_mob.visible_message(span_danger("[user] slams [grabbed_mob.name] into [src]!"), span_userdanger("[user] slams you into [src]!")) log_combat(user, grabbed_mob, "toilet slammed") - grabbed_mob.adjustBruteLoss(5) + grabbed_mob.adjust_brute_loss(5) return if(cistern_open && !cover_open && IsReachableBy(user)) @@ -175,7 +175,6 @@ else random_cistern_item.forceMove(drop_location()) to_chat(user, span_notice("You find [random_cistern_item] in the cistern.")) - w_items -= random_cistern_item.w_class return if(!flushing && LAZYLEN(fishes) && cover_open) @@ -238,11 +237,7 @@ /obj/structure/toilet/atom_deconstruct(dissambled = TRUE) dump_contents() - if(buildstacktype) - new buildstacktype(loc,buildstackamount) - else - for(var/datum/material/M as anything in custom_materials) - new M.sheet_type(loc, FLOOR(custom_materials[M] / SHEET_MATERIAL_AMOUNT, 1)) + drop_costum_materials() if(has_water_reclaimer) new /obj/item/stock_parts/water_recycler(drop_location()) @@ -252,7 +247,7 @@ add_fingerprint(user) if(cover_open && istype(tool, /obj/item/fish)) - if(fishes >= 3) + if(LAZYLEN(fishes) >= 3) to_chat(user, span_warning("There's too many fishes, flush them down first.")) return ITEM_INTERACT_BLOCKING if(!user.transferItemToLoc(tool, src)) @@ -287,8 +282,7 @@ if(!user.transferItemToLoc(tool, src)) to_chat(user, span_warning("\The [tool] is stuck to your hand, you cannot put it in the cistern!")) return ITEM_INTERACT_BLOCKING - LAZYADD(cistern_items, tool) - w_items += tool.w_class + add_cistern_item(tool) to_chat(user, span_notice("You carefully place [tool] into the cistern.")) return ITEM_INTERACT_SUCCESS @@ -333,6 +327,12 @@ to_chat(user, span_notice("You fill [container] from [src]. Gross.")) return ITEM_INTERACT_SUCCESS +/// Hides an item inside the toilet for later retrievalk +/obj/structure/toilet/proc/add_cistern_item(obj/item/thing) + if (isitem(thing)) + w_items += thing.w_class + LAZYADD(cistern_items, thing) + /obj/structure/toilet/crowbar_act(mob/living/user, obj/item/tool) to_chat(user, span_notice("You start to [cistern_open ? "replace the lid on" : "lift the lid off"] the cistern...")) playsound(loc, 'sound/effects/stonedoor_openclose.ogg', 50, TRUE) @@ -386,7 +386,7 @@ QDEL_LAZYLIST(fishes) /obj/structure/toilet/proc/begin_reclamation() - START_PROCESSING(SSplumbing, src) + START_PROCESSING(SSobj, src) /obj/structure/toilet/process(seconds_per_tick) // Water reclamation complete? @@ -396,7 +396,7 @@ /obj/structure/toilet/greyscale material_flags = MATERIAL_EFFECTS | MATERIAL_ADD_PREFIX | MATERIAL_COLOR | MATERIAL_AFFECT_STATISTICS - buildstacktype = null + custom_materials = null has_water_reclaimer = FALSE /obj/structure/toilet/secret @@ -404,8 +404,37 @@ /obj/structure/toilet/secret/Initialize(mapload) . = ..() - if(secret_type) - var/obj/item/secret = new secret_type(src) - secret.desc += " It's a secret!" - w_items += secret.w_class - LAZYADD(cistern_items, secret) + if(!secret_type) + return + var/obj/item/secret = new secret_type(src) + secret.desc += " It's a secret!" + add_cistern_item(secret) + +///A toilet made of meat that only drops remains when deconstructed, often unleashed unto this cursed plane of existence by hopeless people off'ing themselves with experi-scanners. +/obj/structure/toilet/greyscale/flesh + desc = "A horrendous mass of fused flesh resembling a standard-issue HT-451 model toilet. How it manages to function as one is beyond you. \ + This one seems to be made out of the flesh of a devoted employee of the RnD department." + +/obj/structure/toilet/greyscale/flesh/Initialize(mapload, mob/living/carbon/suicide) + . = ..() + ///The suicide victim's brain that will be placed inside the toilet's cistern + var/obj/item/organ/brain/toilet_brain + if(suicide) + toilet_brain = suicide.get_organ_slot(ORGAN_SLOT_BRAIN) + for(var/obj/item/thing in suicide) + if (suicide.transferItemToLoc(thing, newloc = src, silent = TRUE)) + add_cistern_item(thing) + suicide.gib(DROP_BRAIN) //we delete everything but the brain, as it's going to be moved to the cistern + set_custom_materials(list(GET_MATERIAL_REF(/datum/material/meat/mob_meat, suicide) = SHEET_MATERIAL_AMOUNT)) + else + toilet_brain = new(drop_location()) + set_custom_materials(list(/datum/material/meat = SHEET_MATERIAL_AMOUNT)) + + toilet_brain.forceMove(src) + add_cistern_item(toilet_brain) + +//this also prevents the toilet from dropping meat sheets. if you want to cheese the meat exepriments, sacrifice more people +/obj/structure/toilet/greyscale/flesh/atom_deconstruct(dissambled = TRUE) + for(var/obj/toilet_item in cistern_items) + toilet_item.forceMove(drop_location()) + new /obj/effect/decal/remains/human(loc) diff --git a/code/game/objects/structures/water_structures/urinal.dm b/code/game/objects/structures/water_structures/urinal.dm index 5a8fc4af277f5e..abd94d14bae60c 100644 --- a/code/game/objects/structures/water_structures/urinal.dm +++ b/code/game/objects/structures/water_structures/urinal.dm @@ -16,7 +16,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/urinal, 32) . = ..() if(mapload) hidden_item = new /obj/item/food/urinalcake(src) - find_and_hang_on_wall() + find_and_mount_on_atom() /obj/structure/urinal/Exited(atom/movable/gone, direction) . = ..() @@ -36,8 +36,8 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/urinal, 32) return user.changeNext_move(CLICK_CD_MELEE) user.visible_message(span_danger("[user] slams [grabbed_mob] into [src]!"), span_danger("You slam [grabbed_mob] into [src]!")) - grabbed_mob.painful_scream() // DOPPLER EDIT: check for painkilling before screaming - grabbed_mob.adjustBruteLoss(8) + grabbed_mob.painful_scream() // DOPPLER EDIT - Check painkiller for screaming - ORIGINAL: grabbed_mob.emote("scream") + grabbed_mob.adjust_brute_loss(8) else to_chat(user, span_warning("You need a tighter grip!")) return diff --git a/code/game/objects/structures/windoor_assembly.dm b/code/game/objects/structures/windoor_assembly.dm index 84073ddb317602..9107d6180c0f0a 100644 --- a/code/game/objects/structures/windoor_assembly.dm +++ b/code/game/objects/structures/windoor_assembly.dm @@ -11,6 +11,7 @@ obj_flags = CAN_BE_HIT | BLOCKS_CONSTRUCTION_DIR | UNIQUE_RENAME | RENAME_NO_DESC set_dir_on_move = FALSE can_atmos_pass = ATMOS_PASS_PROC + custom_materials = list(/datum/material/glass = SHEET_MATERIAL_AMOUNT * 5, /datum/material/iron = SHEET_MATERIAL_AMOUNT * 2.5) /// Reference to the airlock electronics inside for determining window access. var/obj/item/electronics/airlock/electronics = null @@ -46,7 +47,7 @@ ) AddElement(/datum/element/connect_loc, loc_connections) - AddComponent(/datum/component/simple_rotation, ROTATION_NEEDS_ROOM) + AddElement(/datum/element/simple_rotation, ROTATION_NEEDS_ROOM) /obj/structure/windoor_assembly/Destroy() set_density(FALSE) @@ -324,7 +325,7 @@ if(EAST,WEST) windoor.unres_sides &= ~NORTH windoor.unres_sides &= ~SOUTH - windoor.unres_sensor = TRUE + windoor.unres_latch = TRUE electronics.forceMove(windoor) windoor.electronics = electronics windoor.autoclose = TRUE diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index a0bd2032f05e55..9caca0a817459a 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -17,6 +17,7 @@ set_dir_on_move = FALSE flags_ricochet = RICOCHET_HARD receive_ricochet_chance_mod = 0.5 + custom_materials = list(/datum/material/glass = SHEET_MATERIAL_AMOUNT) var/state = WINDOW_OUT_OF_FRAME var/reinf = FALSE var/heat_resistance = 800 @@ -68,7 +69,7 @@ flags_1 |= ALLOW_DARK_PAINTS_1 RegisterSignal(src, COMSIG_OBJ_PAINTED, PROC_REF(on_painted)) AddElement(/datum/element/atmos_sensitive, mapload) - AddComponent(/datum/component/simple_rotation, ROTATION_NEEDS_ROOM, post_rotation = CALLBACK(src, PROC_REF(post_rotation))) + AddElement(/datum/element/simple_rotation, ROTATION_NEEDS_ROOM, post_rotation_proccall = PROC_REF(post_rotation)) var/static/list/loc_connections = list( COMSIG_ATOM_EXIT = PROC_REF(on_exit), @@ -105,7 +106,7 @@ return FALSE /obj/structure/window/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - if(rcd_data["[RCD_DESIGN_MODE]"] == RCD_DECONSTRUCT) + if(rcd_data[RCD_DESIGN_MODE] == RCD_DECONSTRUCT) qdel(src) return TRUE return FALSE @@ -495,6 +496,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/unanchored/spawner, 0) glass_type = /obj/item/stack/sheet/rglass rad_insulation = RAD_LIGHT_INSULATION receive_ricochet_chance_mod = 1.1 + custom_materials = list(/datum/material/glass = SHEET_MATERIAL_AMOUNT, /datum/material/iron = HALF_SHEET_MATERIAL_AMOUNT) //this is shitcode but all of construction is shitcode and needs a refactor, it works for now //If you find this like 4 years later and construction still hasn't been refactored, I'm so sorry for this @@ -630,6 +632,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/reinforced/unanchored/spawner, glass_type = /obj/item/stack/sheet/plasmaglass rad_insulation = RAD_MEDIUM_INSULATION glass_material_datum = /datum/material/alloy/plasmaglass + custom_materials = list(/datum/material/alloy/plasmaglass = SHEET_MATERIAL_AMOUNT) /datum/armor/window_plasma melee = 80 @@ -660,6 +663,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/plasma/spawner, 0) glass_type = /obj/item/stack/sheet/plasmarglass rad_insulation = RAD_HEAVY_INSULATION glass_material_datum = /datum/material/alloy/plasmaglass + custom_materials = list(/datum/material/alloy/plasmaglass = SHEET_MATERIAL_AMOUNT, /datum/material/iron = HALF_SHEET_MATERIAL_AMOUNT) /datum/armor/reinforced_plasma melee = 80 @@ -705,6 +709,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/reinforced/tinted/frosted/spaw smoothing_groups = SMOOTH_GROUP_WINDOW_FULLTILE canSmoothWith = SMOOTH_GROUP_WINDOW_FULLTILE glass_amount = 2 + custom_materials = list(/datum/material/glass = SHEET_MATERIAL_AMOUNT * 2) /obj/structure/window/fulltile/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd) if(the_rcd.mode == RCD_DECONSTRUCT) @@ -726,6 +731,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/reinforced/tinted/frosted/spaw smoothing_groups = SMOOTH_GROUP_WINDOW_FULLTILE canSmoothWith = SMOOTH_GROUP_WINDOW_FULLTILE glass_amount = 2 + custom_materials = list(/datum/material/alloy/plasmaglass = SHEET_MATERIAL_AMOUNT * 2) /obj/structure/window/plasma/fulltile/unanchored anchored = FALSE @@ -743,6 +749,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/reinforced/tinted/frosted/spaw smoothing_groups = SMOOTH_GROUP_WINDOW_FULLTILE canSmoothWith = SMOOTH_GROUP_WINDOW_FULLTILE glass_amount = 2 + custom_materials = list(/datum/material/alloy/plasmaglass = SHEET_MATERIAL_AMOUNT * 2, /datum/material/iron = SHEET_MATERIAL_AMOUNT) /obj/structure/window/reinforced/plasma/fulltile/unanchored anchored = FALSE @@ -763,6 +770,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/reinforced/tinted/frosted/spaw smoothing_groups = SMOOTH_GROUP_WINDOW_FULLTILE canSmoothWith = SMOOTH_GROUP_WINDOW_FULLTILE glass_amount = 2 + custom_materials = list(/datum/material/glass = SHEET_MATERIAL_AMOUNT * 2, /datum/material/iron = SHEET_MATERIAL_AMOUNT) /obj/structure/window/reinforced/fulltile/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd) if(the_rcd.mode == RCD_DECONSTRUCT) @@ -1000,6 +1008,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/reinforced/tinted/frosted/spaw icon = 'icons/obj/smooth_structures/structure_variations.dmi' icon_state = "clockwork_window-single" glass_type = /obj/item/stack/sheet/bronze + custom_materials = list(/datum/material/bronze = SHEET_MATERIAL_AMOUNT * 1) MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/bronze/spawner, 0) @@ -1018,6 +1027,7 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/structure/window/bronze/spawner, 0) obj_flags = CAN_BE_HIT max_integrity = 50 glass_amount = 2 + custom_materials = list(/datum/material/bronze = SHEET_MATERIAL_AMOUNT * 2) /obj/structure/window/bronze/fulltile/unanchored anchored = FALSE diff --git a/code/game/shuttle_engines.dm b/code/game/shuttle_engines.dm index feb8f6c3dce582..d8af0f533fbf90 100644 --- a/code/game/shuttle_engines.dm +++ b/code/game/shuttle_engines.dm @@ -37,7 +37,7 @@ /obj/machinery/power/shuttle_engine/Initialize(mapload) . = ..() - AddComponent(/datum/component/simple_rotation) + AddElement(/datum/element/simple_rotation) register_context() if(!mapload) engine_state = ENGINE_UNWRENCHED diff --git a/code/game/sound/sound.dm b/code/game/sound/sound.dm index d68c1794e08de8..a3d086eac3ac60 100644 --- a/code/game/sound/sound.dm +++ b/code/game/sound/sound.dm @@ -39,6 +39,9 @@ var/maxdistance = SOUND_RANGE + extrarange var/source_z = turf_source.z + if (falloff_distance >= maxdistance) + CRASH("playsound(): falloff_distance is equal to or higher than maxdistance! Bump up extrarange or reduce the falloff_distance.") + if(vary && !frequency) frequency = get_rand_frequency() // skips us having to do it per-sound later. should just make this a macro tbh @@ -179,13 +182,13 @@ SEND_SOUND(src, sound_to_use) -/proc/sound_to_playing_players(soundin, volume = 100, vary = FALSE, frequency = 0, channel = 0, pressure_affected = FALSE, sound/S) +/proc/sound_to_playing_players(soundin, volume = 100, vary = FALSE, frequency = 0, channel = 0, pressure_affected = FALSE, sound/S, datum/preference/numeric/volume/volume_preference = null) if(!S) S = sound(get_sfx(soundin)) for(var/m in GLOB.player_list) if(ismob(m) && !isnewplayer(m)) var/mob/M = m - M.playsound_local(M, null, volume, vary, frequency, null, channel, pressure_affected, S) + M.playsound_local(M, null, volume, vary, frequency, null, channel, pressure_affected, S, volume_preference = volume_preference) /mob/proc/stop_sound_channel(chan) SEND_SOUND(src, sound(null, repeat = 0, wait = 0, channel = chan)) diff --git a/code/game/turfs/baseturf_skipover.dm b/code/game/turfs/baseturf_skipover.dm index 9bef78a15ea155..16d4f124c25736 100644 --- a/code/game/turfs/baseturf_skipover.dm +++ b/code/game/turfs/baseturf_skipover.dm @@ -12,6 +12,10 @@ name = "Shuttle baseturf skipover" desc = "Acts as the bottom of the shuttle, if this isn't here the shuttle floor is broken through." +/turf/baseturf_skipover/trapdoor + name = "Trapdoor baseturf skipover" + desc = "Acts as the bottom of a stack of baseturfs affected by a trapdoor." + /turf/baseturf_bottom name = "Z-level baseturf placeholder" desc = "Marker for z-level baseturf, usually resolves to space." diff --git a/code/game/turfs/baseturfs.dm b/code/game/turfs/baseturfs.dm index 09ca2b81c5ef14..0ceda1dba1b747 100644 --- a/code/game/turfs/baseturfs.dm +++ b/code/game/turfs/baseturfs.dm @@ -100,6 +100,13 @@ return null return baseturfs.len - index + 1 +/// Similar to depth_to_find_baseturf, but directly returns the index of the found baseturf. +/// This number can be passed into insert_baseturf to insert a baseturf before the found baseturf. +/turf/proc/level_to_find_baseturf(baseturf_type) + if(!islist(baseturfs)) + return baseturfs == baseturf_type ? 1 : null + return baseturfs.Find(baseturf_type) || null + /// Returns the baseturf at the given depth. /// For example, baseturf_at_depth(1) will give the baseturf that would show up when scraping once. /turf/proc/baseturf_at_depth(index) @@ -181,3 +188,8 @@ insert_baseturf(search_position, stack_type) else if(type == search_type) insert_baseturf(turf_type = stack_type) + +/// Gets a copy of the baseturfs up to the specified depth +/turf/proc/get_baseturfs_to_depth(depth) + var/list/baseturf_list = islist(baseturfs) ? baseturfs : list(baseturfs) + return baseturf_list.Copy(baseturf_list.len - depth + 1) diff --git a/code/game/turfs/change_turf.dm b/code/game/turfs/change_turf.dm index 347a3574769a1d..49ebdb577a92dc 100644 --- a/code/game/turfs/change_turf.dm +++ b/code/game/turfs/change_turf.dm @@ -193,7 +193,7 @@ GLOBAL_LIST_INIT(blacklisted_automated_baseturfs, typecacheof(list( space_tile.enable_starlight() if(old_opacity != opacity && SSticker) - GLOB.cameranet.bareMajorChunkChange(src) + SScameras.bare_major_chunk_change(src) // We will only run this logic if the tile is not on the prime z layer, since we use area overlays to cover that if(SSmapping.z_level_to_plane_offset[z]) diff --git a/code/game/turfs/closed/indestructible.dm b/code/game/turfs/closed/indestructible.dm index 82a0cca5305d0a..fc123d9f41de96 100644 --- a/code/game/turfs/closed/indestructible.dm +++ b/code/game/turfs/closed/indestructible.dm @@ -18,12 +18,6 @@ /turf/closed/indestructible/singularity_act() return -/turf/closed/indestructible/attackby(obj/item/attacking_item, mob/user, list/modifiers) - if(istype(attacking_item, /obj/item/poster) && Adjacent(user)) - return place_poster(attacking_item, user) - - return ..() - /turf/closed/indestructible/oldshuttle name = "strange shuttle wall" icon = 'icons/turf/shuttleold.dmi' diff --git a/code/game/turfs/closed/wall/misc_walls.dm b/code/game/turfs/closed/wall/misc_walls.dm index 6bb8520189ec59..861533c4b175c8 100644 --- a/code/game/turfs/closed/wall/misc_walls.dm +++ b/code/game/turfs/closed/wall/misc_walls.dm @@ -44,15 +44,14 @@ /turf/closed/wall/rust //SDMM supports colors, this is simply for easier mapping - //and should be removed on initialize - color = MAP_SWITCH(null, COLOR_ORANGE_BROWN) + WHEN_MAP(color = COLOR_ORANGE_BROWN) /turf/closed/wall/rust/Initialize(mapload) . = ..() AddElement(/datum/element/rust) /turf/closed/wall/heretic_rust - color = MAP_SWITCH(null, COLOR_GREEN_GRAY) + WHEN_MAP(color = COLOR_GREEN_GRAY) /turf/closed/wall/heretic_rust/Initialize(mapload) . = ..() @@ -60,8 +59,7 @@ /turf/closed/wall/r_wall/rust //SDMM supports colors, this is simply for easier mapping - //and should be removed on initialize - color = MAP_SWITCH(null, COLOR_ORANGE_BROWN) + WHEN_MAP(color = COLOR_ORANGE_BROWN) base_decon_state = "rusty_r_wall" /turf/closed/wall/r_wall/rust/Initialize(mapload) @@ -69,7 +67,7 @@ AddElement(/datum/element/rust) /turf/closed/wall/r_wall/heretic_rust - color = MAP_SWITCH(null, COLOR_GREEN_GRAY) + WHEN_MAP(color = COLOR_GREEN_GRAY) /turf/closed/wall/r_wall/heretic_rust/Initialize(mapload) . = ..() diff --git a/code/game/turfs/closed/wall/reinf_walls.dm b/code/game/turfs/closed/wall/reinf_walls.dm index a9cc169db26378..4a20f88d60a810 100644 --- a/code/game/turfs/closed/wall/reinf_walls.dm +++ b/code/game/turfs/closed/wall/reinf_walls.dm @@ -224,7 +224,7 @@ .["delay"] *= RCD_RWALL_DELAY_MULT /turf/closed/wall/r_wall/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - if(the_rcd.canRturf || rcd_data["[RCD_DESIGN_MODE]"] == RCD_WALLFRAME) + if(the_rcd.canRturf || rcd_data[RCD_DESIGN_MODE] == RCD_WALLFRAME) return ..() /turf/closed/wall/r_wall/rust_turf() diff --git a/code/game/turfs/closed/walls.dm b/code/game/turfs/closed/walls.dm index b7eb985bee55a4..1df2ea0251bd09 100644 --- a/code/game/turfs/closed/walls.dm +++ b/code/game/turfs/closed/walls.dm @@ -92,10 +92,6 @@ if(newgirder) //maybe we don't /want/ a girder! transfer_fingerprints_to(newgirder) - for(var/obj/O in src.contents) //Eject contents! - if(istype(O, /obj/structure/sign/poster)) - var/obj/structure/sign/poster/P = O - INVOKE_ASYNC(P, TYPE_PROC_REF(/obj/structure/sign/poster, roll_and_drop), src) if(decon_type) ChangeTurf(decon_type, flags = CHANGETURF_INHERIT_AIR) else @@ -199,7 +195,7 @@ add_fingerprint(user) //the istype cascade has been spread among various procs for easy overriding - if(try_clean(tool, user) || try_wallmount(tool, user) || try_decon(tool, user)) + if(try_clean(tool, user) || try_decon(tool, user)) return ITEM_INTERACT_SUCCESS return NONE @@ -222,20 +218,6 @@ return FALSE -/turf/closed/wall/proc/try_wallmount(obj/item/W, mob/user) - //check for wall mounted frames - if(istype(W, /obj/item/wallframe)) - var/obj/item/wallframe/F = W - if(F.try_build(src, user)) - F.attach(src, user) - return TRUE - return FALSE - //Poster stuff - else if(istype(W, /obj/item/poster) && Adjacent(user)) //no tk memes. - return place_poster(W,user) - - return FALSE - /turf/closed/wall/proc/try_decon(obj/item/I, mob/user) if(I.tool_behaviour == TOOL_WELDER) if(!I.tool_start_check(user, amount=round(slicing_duration / 50), heat_required = HIGH_TEMPERATURE_REQUIRED)) @@ -283,11 +265,12 @@ return FALSE /turf/closed/wall/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - switch(rcd_data["[RCD_DESIGN_MODE]"]) + switch(rcd_data[RCD_DESIGN_MODE]) if(RCD_WALLFRAME) - var/obj/item/wallframe/wallmount = rcd_data["[RCD_DESIGN_PATH]"] + var/obj/item/wallframe/wallmount = rcd_data[RCD_DESIGN_PATH] var/obj/item/wallframe/new_wallmount = new wallmount(user.drop_location()) - return try_wallmount(new_wallmount, user, src) + if(new_wallmount.interact_with_atom(src, user) == ITEM_INTERACT_SUCCESS) + return TRUE if(RCD_DECONSTRUCT) ScrapeAway() return TRUE diff --git a/code/game/turfs/open/_open.dm b/code/game/turfs/open/_open.dm index ac55ed3b27516f..4fa24bd38419ca 100644 --- a/code/game/turfs/open/_open.dm +++ b/code/game/turfs/open/_open.dm @@ -188,7 +188,7 @@ barefootstep = FOOTSTEP_HARD_BAREFOOT clawfootstep = FOOTSTEP_HARD_CLAW heavyfootstep = FOOTSTEP_GENERIC_HEAVY - tiled_dirt = TRUE + tiled_turf = TRUE /turf/open/indestructible/Melt() to_be_destroyed = FALSE @@ -264,7 +264,7 @@ barefootstep = FOOTSTEP_LAVA clawfootstep = FOOTSTEP_LAVA heavyfootstep = FOOTSTEP_LAVA - tiled_dirt = FALSE + tiled_turf = FALSE /turf/open/indestructible/necropolis/Initialize(mapload) . = ..() @@ -327,7 +327,7 @@ barefootstep = null clawfootstep = null heavyfootstep = null - tiled_dirt = FALSE + tiled_turf = FALSE /turf/open/indestructible/binary name = "tear in the fabric of reality" diff --git a/code/game/turfs/open/ashplanet.dm b/code/game/turfs/open/ashplanet.dm index e6703c04eb5590..35c7ec5b1cd17d 100644 --- a/code/game/turfs/open/ashplanet.dm +++ b/code/game/turfs/open/ashplanet.dm @@ -14,7 +14,7 @@ barefootstep = FOOTSTEP_SAND clawfootstep = FOOTSTEP_SAND heavyfootstep = FOOTSTEP_GENERIC_HEAVY - tiled_dirt = FALSE + tiled_turf = FALSE rust_resistance = RUST_RESISTANCE_ORGANIC var/smooth_icon = 'icons/turf/floors/ash.dmi' diff --git a/code/game/turfs/open/chasm.dm b/code/game/turfs/open/chasm.dm index e490abceda74b3..df1278b29d4fc2 100644 --- a/code/game/turfs/open/chasm.dm +++ b/code/game/turfs/open/chasm.dm @@ -42,7 +42,7 @@ return FALSE /turf/open/chasm/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - if(rcd_data["[RCD_DESIGN_MODE]"] == RCD_TURF && rcd_data["[RCD_DESIGN_PATH]"] == /turf/open/floor/plating/rcd) + if(rcd_data[RCD_DESIGN_MODE] == RCD_TURF && rcd_data[RCD_DESIGN_PATH] == /turf/open/floor/plating/rcd) place_on_top(/turf/open/floor/plating, flags = CHANGETURF_INHERIT_AIR) return TRUE return FALSE diff --git a/code/game/turfs/open/dirtystation.dm b/code/game/turfs/open/dirtystation.dm index 3808622982daaa..7e9c72e30ee2a3 100644 --- a/code/game/turfs/open/dirtystation.dm +++ b/code/game/turfs/open/dirtystation.dm @@ -95,7 +95,7 @@ //Areas where gibs will be present. Robusting probably happened some time ago. var/static/list/gib_covered_areas = typecacheof(list( - /area/station/ai_monitored/turret_protected, + /area/station/ai/satellite, /area/station/security, /area/station/command/heads_quarters/hos, )) diff --git a/code/game/turfs/open/floor.dm b/code/game/turfs/open/floor.dm index ec4b5ca50ada87..268af20d19e2a5 100644 --- a/code/game/turfs/open/floor.dm +++ b/code/game/turfs/open/floor.dm @@ -16,7 +16,7 @@ thermal_conductivity = 0.02 heat_capacity = 20000 - tiled_dirt = TRUE + tiled_turf = TRUE overfloor_placed = TRUE @@ -208,9 +208,6 @@ /turf/open/floor/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd) switch(the_rcd.mode) if(RCD_TURF) - if(the_rcd.rcd_design_path != /turf/open/floor/plating/rcd) - return FALSE - var/obj/structure/girder/girder = locate() in src if(girder) return girder.rcd_vals(user, the_rcd) @@ -220,6 +217,10 @@ src, RCD_MEMORY_WALL, ) if(RCD_WINDOWGRILLE) + var/obj/structure/grille/grille = locate() in src + if(grille) + return grille.rcd_vals(user, the_rcd) + //default cost for building a grill for fulltile windows var/cost = 4 var/delay = 1 SECONDS @@ -266,13 +267,9 @@ return FALSE -/// if you are updating this make to to update /turf/open/misc/rcd_act() too /turf/open/floor/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - switch(rcd_data["[RCD_DESIGN_MODE]"]) + switch(rcd_data[RCD_DESIGN_MODE]) if(RCD_TURF) - if(rcd_data["[RCD_DESIGN_PATH]"] != /turf/open/floor/plating/rcd) - return FALSE - var/obj/structure/girder/girder = locate() in src if(girder) return girder.rcd_act(user, the_rcd, rcd_data) @@ -280,12 +277,12 @@ place_on_top(/turf/closed/wall) return TRUE if(RCD_WINDOWGRILLE) - //check if we are building a window - var/obj/structure/window/window_path = rcd_data["[RCD_DESIGN_PATH]"] - if(!ispath(window_path)) - CRASH("Invalid window path type in RCD: [window_path]") + var/obj/structure/grille/grille = locate() in src + if(grille) + return grille.rcd_act(user, the_rcd, rcd_data) //allow directional windows to be built without grills + var/obj/structure/window/window_path = rcd_data[RCD_DESIGN_PATH] if(!initial(window_path.fulltile)) if(!valid_build_direction(src, user.dir, is_fulltile = FALSE)) balloon_alert(user, "window already here!") @@ -295,13 +292,11 @@ return TRUE //build grills to deal with full tile windows - if(locate(/obj/structure/grille) in src) - return FALSE - var/obj/structure/grille/new_grille = new(src) - new_grille.set_anchored(TRUE) + grille = new(src) + grille.set_anchored(TRUE) return TRUE if(RCD_AIRLOCK) - var/obj/machinery/door/airlock_type = rcd_data["[RCD_DESIGN_PATH]"] + var/obj/machinery/door/airlock_type = rcd_data[RCD_DESIGN_PATH] if(ispath(airlock_type, /obj/machinery/door/window)) if(!valid_build_direction(src, user.dir, is_fulltile = FALSE)) @@ -335,7 +330,7 @@ assembly.finish_door() return TRUE if(RCD_STRUCTURE) - var/atom/movable/design_type = rcd_data["[RCD_DESIGN_PATH]"] + var/atom/movable/design_type = rcd_data[RCD_DESIGN_PATH] //map absolute types to basic subtypes var/atom/movable/locate_type = design_type diff --git a/code/game/turfs/open/floor/fancy_floor.dm b/code/game/turfs/open/floor/fancy_floor.dm index eea5232aa062d4..3be12306bab9e6 100644 --- a/code/game/turfs/open/floor/fancy_floor.dm +++ b/code/game/turfs/open/floor/fancy_floor.dm @@ -16,7 +16,7 @@ barefootstep = FOOTSTEP_WOOD_BAREFOOT clawfootstep = FOOTSTEP_WOOD_CLAW heavyfootstep = FOOTSTEP_GENERIC_HEAVY - tiled_dirt = FALSE + tiled_turf = FALSE rust_resistance = RUST_RESISTANCE_BASIC /turf/open/floor/wood/broken_states() @@ -148,7 +148,7 @@ barefootstep = FOOTSTEP_GRASS clawfootstep = FOOTSTEP_GRASS heavyfootstep = FOOTSTEP_GENERIC_HEAVY - tiled_dirt = FALSE + tiled_turf = FALSE rust_resistance = RUST_RESISTANCE_ORGANIC /turf/open/floor/grass/broken_states() @@ -202,7 +202,7 @@ barefootstep = FOOTSTEP_GRASS clawfootstep = FOOTSTEP_GRASS heavyfootstep = FOOTSTEP_GENERIC_HEAVY - tiled_dirt = FALSE + tiled_turf = FALSE rust_resistance = RUST_RESISTANCE_ORGANIC /turf/open/floor/fake_snow @@ -216,7 +216,7 @@ floor_tile = null initial_gas_mix = FROZEN_ATMOS bullet_bounce_sound = null - tiled_dirt = FALSE + tiled_turf = FALSE rust_resistance = RUST_RESISTANCE_ORGANIC slowdown = 1.5 bullet_sizzle = TRUE @@ -251,7 +251,7 @@ barefootstep = FOOTSTEP_SAND clawfootstep = FOOTSTEP_SAND heavyfootstep = FOOTSTEP_GENERIC_HEAVY - tiled_dirt = FALSE + tiled_turf = FALSE /turf/open/floor/fakebasalt/Initialize(mapload) . = ..() @@ -280,7 +280,7 @@ barefootstep = FOOTSTEP_CARPET_BAREFOOT clawfootstep = FOOTSTEP_CARPET_BAREFOOT heavyfootstep = FOOTSTEP_GENERIC_HEAVY - tiled_dirt = FALSE + tiled_turf = FALSE rust_resistance = RUST_RESISTANCE_BASIC /turf/open/floor/carpet/examine(mob/user) @@ -867,7 +867,7 @@ smoothing_flags = SMOOTH_BITMASK | SMOOTH_BORDER smoothing_groups = SMOOTH_GROUP_TURF_OPEN + SMOOTH_GROUP_TURF_CHASM canSmoothWith = SMOOTH_GROUP_TURF_CHASM - tiled_dirt = FALSE + tiled_turf = FALSE /turf/open/floor/fakepit/get_smooth_underlay_icon(mutable_appearance/underlay_appearance, turf/asking_turf, adjacency_dir) underlay_appearance.icon = 'icons/turf/floors.dmi' @@ -893,7 +893,7 @@ floor_tile = /obj/item/stack/tile/fakespace layer = SPACE_LAYER plane = PLANE_SPACE - tiled_dirt = FALSE + tiled_turf = FALSE damaged_dmi = 'icons/turf/space.dmi' /turf/open/floor/fakespace/broken_states() diff --git a/code/game/turfs/open/floor/iron_floor.dm b/code/game/turfs/open/floor/iron_floor.dm index 978a9ab0fdf502..6f0489acea5e51 100644 --- a/code/game/turfs/open/floor/iron_floor.dm +++ b/code/game/turfs/open/floor/iron_floor.dm @@ -472,7 +472,7 @@ /turf/open/floor/iron/grimy icon_state = "grimy" base_icon_state = "grimy" - tiled_dirt = FALSE + tiled_turf = FALSE floor_tile = /obj/item/stack/tile/iron/grimy /turf/open/floor/iron/vaporwave @@ -485,13 +485,13 @@ desc = "\"This is a plaque in honour of our comrades on the G4407 Stations. Hopefully TG4407 model can live up to your fame and fortune.\" Scratched in beneath that is a crude image of a meteor and a spaceman. The spaceman is laughing. The meteor is exploding." icon_state = "plaque" base_icon_state = "plaque" - tiled_dirt = FALSE + tiled_turf = FALSE floor_tile = /obj/item/stack/tile/iron/goonplaque /turf/open/floor/iron/stairs icon_state = "stairs" base_icon_state = "stairs" - tiled_dirt = FALSE + tiled_turf = FALSE /turf/open/floor/iron/stairs/airless initial_gas_mix = AIRLESS_ATMOS diff --git a/code/game/turfs/open/floor/light_floor.dm b/code/game/turfs/open/floor/light_floor.dm index eaccba29aaaa46..93ae88597ad15e 100644 --- a/code/game/turfs/open/floor/light_floor.dm +++ b/code/game/turfs/open/floor/light_floor.dm @@ -19,7 +19,7 @@ var/currentcolor = LIGHT_COLOR_CYAN ///var to prevent changing color on certain admin spawn only tiles var/can_modify_colour = TRUE - tiled_dirt = FALSE + tiled_turf = FALSE ///icons for radial menu var/static/list/lighttile_designs ///used for light floors that cycle colours diff --git a/code/game/turfs/open/floor/mineral_floor.dm b/code/game/turfs/open/floor/mineral_floor.dm index 8ca8b45c101e36..8456afc084b75b 100644 --- a/code/game/turfs/open/floor/mineral_floor.dm +++ b/code/game/turfs/open/floor/mineral_floor.dm @@ -15,7 +15,7 @@ material_flags = MATERIAL_EFFECTS rust_resistance = RUST_RESISTANCE_BASIC var/list/icons - tiled_dirt = FALSE + tiled_turf = FALSE diff --git a/code/game/turfs/open/floor/plating.dm b/code/game/turfs/open/floor/plating.dm index 8aa5c2ed3935a1..2a440db7c74243 100644 --- a/code/game/turfs/open/floor/plating.dm +++ b/code/game/turfs/open/floor/plating.dm @@ -187,7 +187,7 @@ return list("delay" = 0, "cost" = 1) /turf/open/floor/plating/foam/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - if(rcd_data["[RCD_DESIGN_MODE]"] == RCD_TURF && rcd_data["[RCD_DESIGN_PATH]"] == /turf/open/floor/plating/rcd) + if(rcd_data[RCD_DESIGN_MODE] == RCD_TURF && rcd_data[RCD_DESIGN_PATH] == /turf/open/floor/plating/rcd) ChangeTurf(/turf/open/floor/plating, flags = CHANGETURF_INHERIT_AIR) return TRUE return FALSE diff --git a/code/game/turfs/open/floor/plating/misc_plating.dm b/code/game/turfs/open/floor/plating/misc_plating.dm index 40fd7055524639..2b6fe12a158c32 100644 --- a/code/game/turfs/open/floor/plating/misc_plating.dm +++ b/code/game/turfs/open/floor/plating/misc_plating.dm @@ -18,7 +18,7 @@ name = "alien floor" icon_state = "alienpod1" base_icon_state = "alienpod1" - tiled_dirt = FALSE + tiled_turf = FALSE rust_resistance = RUST_RESISTANCE_ORGANIC // Not actually broken, just should never break...yeah. broken = TRUE @@ -32,7 +32,7 @@ name = "alien plating" icon_state = "alienplating" base_icon_state = "alienplating" - tiled_dirt = FALSE + tiled_turf = FALSE rust_resistance = RUST_RESISTANCE_ORGANIC damaged_dmi = null diff --git a/code/game/turfs/open/floor/reinforced_floor.dm b/code/game/turfs/open/floor/reinforced_floor.dm index 219e284db364b7..bc8f70655759bd 100644 --- a/code/game/turfs/open/floor/reinforced_floor.dm +++ b/code/game/turfs/open/floor/reinforced_floor.dm @@ -10,7 +10,7 @@ barefootstep = FOOTSTEP_HARD_BAREFOOT clawfootstep = FOOTSTEP_HARD_CLAW heavyfootstep = FOOTSTEP_GENERIC_HEAVY - tiled_dirt = FALSE + tiled_turf = FALSE rcd_proof = TRUE rust_resistance = RUST_RESISTANCE_REINFORCED floor_tile = /obj/item/stack/rods @@ -93,12 +93,6 @@ /turf/open/floor/engine/attack_paw(mob/user, list/modifiers) return attack_hand(user, modifiers) -/turf/open/floor/engine/attack_hand(mob/user, list/modifiers) - . = ..() - if(.) - return - user.Move_Pulled(src) - //air filled floors; used in atmos pressure chambers /turf/open/floor/engine/n2o diff --git a/code/game/turfs/open/lava.dm b/code/game/turfs/open/lava.dm index 2ed333ed73cde4..f318624bbcccdf 100644 --- a/code/game/turfs/open/lava.dm +++ b/code/game/turfs/open/lava.dm @@ -190,7 +190,7 @@ return FALSE /turf/open/lava/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - if(rcd_data["[RCD_DESIGN_MODE]"] == RCD_TURF && rcd_data["[RCD_DESIGN_PATH]"] == /turf/open/floor/plating/rcd) + if(rcd_data[RCD_DESIGN_MODE] == RCD_TURF && rcd_data[RCD_DESIGN_PATH] == /turf/open/floor/plating/rcd) place_on_top(/turf/open/floor/plating, flags = CHANGETURF_INHERIT_AIR) return TRUE return FALSE @@ -342,7 +342,7 @@ ADD_TRAIT(burn_living, TRAIT_NO_EXTINGUISH, TURF_TRAIT) burn_living.adjust_fire_stacks(lava_firestacks * seconds_per_tick) burn_living.ignite_mob() - burn_living.adjustFireLoss(lava_damage * seconds_per_tick) + burn_living.adjust_fire_loss(lava_damage * seconds_per_tick) return TRUE return FALSE @@ -406,17 +406,9 @@ immunity_resistance_flags = FREEZE_PROOF lava_temperature = 100 -/turf/open/lava/plasma/examine(mob/user) +/turf/open/lava/plasma/Initialize(mapload) . = ..() - . += span_info("Some liquid plasma could probably be scooped up with a container.") - -/turf/open/lava/plasma/attackby(obj/item/I, mob/user, list/modifiers) - if(!I.is_open_container()) - return ..() - if(!I.reagents.add_reagent(/datum/reagent/toxin/plasma, rand(5, 10))) - to_chat(user, span_warning("[I] is full.")) - return - user.visible_message(span_notice("[user] scoops some plasma from the [src] with [I]."), span_notice("You scoop out some plasma from the [src] using [I].")) + AddElement(/datum/element/reagent_scoopable_atom, /datum/reagent/toxin/plasma) /turf/open/lava/plasma/do_burn(atom/movable/burn_target, seconds_per_tick = 1) . = TRUE @@ -426,8 +418,8 @@ var/mob/living/burn_living = burn_target var/need_mob_update // This is from plasma, so it should obey plasma biotype requirements - need_mob_update += burn_living.adjustToxLoss(15, updating_health = FALSE, required_biotype = MOB_ORGANIC) - need_mob_update += burn_living.adjustFireLoss(25, updating_health = FALSE) + need_mob_update += burn_living.adjust_tox_loss(15, updating_health = FALSE, required_biotype = MOB_ORGANIC) + need_mob_update += burn_living.adjust_fire_loss(25, updating_health = FALSE) if(need_mob_update) burn_living.updatehealth() diff --git a/code/game/turfs/open/misc.dm b/code/game/turfs/open/misc.dm index b9c27e3faf2639..666ad1aef8547d 100644 --- a/code/game/turfs/open/misc.dm +++ b/code/game/turfs/open/misc.dm @@ -19,7 +19,7 @@ thermal_conductivity = 0.02 heat_capacity = 20000 - tiled_dirt = TRUE + tiled_turf = TRUE /turf/open/misc/attackby(obj/item/attacking_item, mob/user, list/modifiers) . = ..() @@ -89,8 +89,8 @@ return FALSE /turf/open/misc/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - if(rcd_data["[RCD_DESIGN_MODE]"] == RCD_TURF) - if(rcd_data["[RCD_DESIGN_PATH]"] != /turf/open/floor/plating/rcd) + if(rcd_data[RCD_DESIGN_MODE] == RCD_TURF) + if(rcd_data[RCD_DESIGN_PATH] != /turf/open/floor/plating/rcd) return FALSE place_on_top(/turf/open/floor/plating, flags = CHANGETURF_INHERIT_AIR) diff --git a/code/game/turfs/open/openspace.dm b/code/game/turfs/open/openspace.dm index d2149766faa1db..6724cb74d2379f 100644 --- a/code/game/turfs/open/openspace.dm +++ b/code/game/turfs/open/openspace.dm @@ -25,8 +25,8 @@ // I am so sorry /turf/open/openspace/Initialize(mapload) // handle plane and layer here so that they don't cover other obs/turfs in Dream Maker . = ..() - if(PERFORM_ALL_TESTS(focus_only/openspace_clear) && !GET_TURF_BELOW(src)) - stack_trace("[src] was inited as openspace with nothing below it at ([x], [y], [z])") + if(PERFORM_ALL_TESTS(maptest_log_mapping) && !GET_TURF_BELOW(src)) + log_mapping("[src] was inited as openspace with nothing below it at ([x], [y], [z])") RegisterSignal(src, COMSIG_ATOM_AFTER_SUCCESSFUL_INITIALIZED_ON, PROC_REF(on_atom_created)) var/area/our_area = loc if(istype(our_area, /area/space)) @@ -142,7 +142,7 @@ return FALSE /turf/open/openspace/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) - if(rcd_data["[RCD_DESIGN_MODE]"] == RCD_TURF && rcd_data["[RCD_DESIGN_PATH]"] == /turf/open/floor/plating/rcd) + if(rcd_data[RCD_DESIGN_MODE] == RCD_TURF && rcd_data[RCD_DESIGN_PATH] == /turf/open/floor/plating/rcd) place_on_top(/turf/open/floor/plating, flags = CHANGETURF_INHERIT_AIR) return TRUE return FALSE diff --git a/code/game/turfs/open/planet.dm b/code/game/turfs/open/planet.dm index e0fe7e842b941d..55963e2cf68424 100644 --- a/code/game/turfs/open/planet.dm +++ b/code/game/turfs/open/planet.dm @@ -12,7 +12,7 @@ barefootstep = FOOTSTEP_SAND clawfootstep = FOOTSTEP_SAND heavyfootstep = FOOTSTEP_GENERIC_HEAVY - tiled_dirt = FALSE + tiled_turf = FALSE rust_resistance = RUST_RESISTANCE_ORGANIC /turf/open/misc/dirt/station diff --git a/code/game/turfs/open/sand.dm b/code/game/turfs/open/sand.dm index faccf7db1043be..71ffa6be613115 100644 --- a/code/game/turfs/open/sand.dm +++ b/code/game/turfs/open/sand.dm @@ -72,7 +72,7 @@ barefootstep = FOOTSTEP_SAND clawfootstep = FOOTSTEP_SAND heavyfootstep = FOOTSTEP_GENERIC_HEAVY - tiled_dirt = FALSE + tiled_turf = FALSE rust_resistance = RUST_RESISTANCE_ORGANIC /turf/open/misc/sandy_dirt/break_tile() diff --git a/code/game/turfs/open/space/space.dm b/code/game/turfs/open/space/space.dm index d81f0b01ca4d4a..74ee7b6a879d1d 100644 --- a/code/game/turfs/open/space/space.dm +++ b/code/game/turfs/open/space/space.dm @@ -44,7 +44,7 @@ GLOBAL_LIST_EMPTY(starlight) /turf/open/space icon = 'icons/turf/space.dmi' - MAP_SWITCH(icon_state = "space", icon_state = "space_map") + icon_state = MAP_SWITCH("space", "space_map") name = "\proper space" overfloor_placed = FALSE underfloor_accessibility = UNDERFLOOR_INTERACTABLE @@ -72,7 +72,7 @@ GLOBAL_LIST_EMPTY(starlight) force_no_gravity = TRUE /turf/open/space/basic - MAP_SWITCH(icon_state = "space", icon_state = "space_basic_map") + icon_state = MAP_SWITCH("space", "space_basic_map") /turf/open/space/basic/New() //Do not convert to Initialize SHOULD_CALL_PARENT(FALSE) @@ -174,10 +174,10 @@ GLOBAL_LIST_EMPTY(starlight) /turf/open/space/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, list/rcd_data) if(the_rcd.mode == RCD_TURF) - if(rcd_data["[RCD_DESIGN_PATH]"] == /turf/open/floor/plating/rcd) + if(rcd_data[RCD_DESIGN_PATH] == /turf/open/floor/plating/rcd) place_on_top(/turf/open/floor/plating, flags = CHANGETURF_INHERIT_AIR) return TRUE - else if(rcd_data["[RCD_DESIGN_PATH]"] == /obj/structure/lattice/catwalk) + else if(rcd_data[RCD_DESIGN_PATH] == /obj/structure/lattice/catwalk) var/obj/structure/lattice/lattice = locate(/obj/structure/lattice, src) if(lattice) qdel(lattice) @@ -219,8 +219,8 @@ GLOBAL_LIST_EMPTY(starlight) /turf/open/space/openspace/Initialize(mapload) // handle plane and layer here so that they don't cover other obs/turfs in Dream Maker . = ..() - if(PERFORM_ALL_TESTS(focus_only/openspace_clear) && !GET_TURF_BELOW(src)) - stack_trace("[src] was inited as openspace with nothing below it at ([x], [y], [z])") + if(PERFORM_ALL_TESTS(maptest_log_mapping) && !GET_TURF_BELOW(src)) + log_mapping("[src] was inited as openspace with nothing below it at ([x], [y], [z])") icon_state = "pure_white" // We make the assumption that the space plane will never be blacklisted, as an optimization if(SSmapping.max_plane_offset) diff --git a/code/game/turfs/open/water.dm b/code/game/turfs/open/water.dm index 7dde7cb70b1f71..35678cc45ad3af 100644 --- a/code/game/turfs/open/water.dm +++ b/code/game/turfs/open/water.dm @@ -40,6 +40,8 @@ var/ticking_oxy_damage = 2 var/exhaust_swimmer_prob = 30 + var/datum/reagent/reagent_to_extract = /datum/reagent/water + /turf/open/water/Initialize(mapload) . = ..() RegisterSignal(src, COMSIG_ATOM_AFTER_SUCCESSFUL_INITIALIZED_ON, PROC_REF(on_atom_inited)) @@ -47,6 +49,8 @@ if(!isnull(fishing_datum)) add_lazy_fishing(fishing_datum) ADD_TRAIT(src, TRAIT_CATCH_AND_RELEASE, INNATE_TRAIT) + if(reagent_to_extract) + AddElement(/datum/element/reagent_scoopable_atom, reagent_to_extract) ///We lazily add the immerse element when something is spawned or crosses this turf and not before. /turf/open/water/proc/on_atom_inited(datum/source, atom/movable/movable) @@ -109,6 +113,7 @@ base_icon_state = "water" baseturfs = /turf/open/water/beach fishing_datum = /datum/fish_source/ocean/beach + reagent_to_extract = /datum/reagent/water/salt /turf/open/water/beach/Initialize(mapload) . = ..() @@ -154,6 +159,7 @@ planetary_atmos = FALSE immerse_overlay_alpha = 190 fishing_datum = /datum/fish_source/hot_spring + reagent_to_extract = /datum/reagent/water/mineral /turf/open/water/hot_spring/Initialize(mapload) . = ..() diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index 0243b866d82ebc..3a17329e878100 100644 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -52,7 +52,7 @@ GLOBAL_LIST_EMPTY(station_turfs) var/bullet_sizzle = FALSE //used by ammo_casing/bounce_away() to determine if the shell casing should make a sizzle sound when it's ejected over the turf //IE if the turf is supposed to be water, set TRUE. - var/tiled_dirt = FALSE // use smooth tiled dirt decal + var/tiled_turf = FALSE // use tiled water and dirt decals ///Icon-smoothing variable to map a diagonal wall corner with a fixed underlay. var/list/fixed_underlay = null @@ -553,9 +553,6 @@ GLOBAL_LIST_EMPTY(station_turfs) /turf/proc/can_lay_cable() return can_have_cabling() && underfloor_accessibility >= UNDERFLOOR_INTERACTABLE -/turf/proc/visibilityChanged() - GLOB.cameranet.updateVisibility(src) - /turf/proc/burn_tile() return @@ -807,7 +804,7 @@ GLOBAL_LIST_EMPTY(station_turfs) /// Returns whether it is safe for an atom to move across this turf /turf/proc/can_cross_safely(atom/movable/crossing) - return TRUE + return !HAS_TRAIT(src, TRAIT_AI_AVOID_TURF) /** * the following are some fishing-related optimizations to shave off as much diff --git a/code/game/world.dm b/code/game/world.dm index e2dd3726c35ecf..b687b25256db48 100644 --- a/code/game/world.dm +++ b/code/game/world.dm @@ -186,6 +186,10 @@ GLOBAL_VAR(restart_counter) setup_autowiki() #endif + #ifdef PERFORMANCE_TESTS + queue_performance_tests() + #endif + /world/proc/HandleTestRun() //trigger things to run the whole process Master.sleep_offline_after_initializations = FALSE @@ -199,6 +203,25 @@ GLOBAL_VAR(restart_counter) #endif SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(_addtimer), cb, 10 SECONDS)) +/world/proc/queue_performance_tests() + //trigger things to run the whole process + Master.sleep_offline_after_initializations = FALSE + SSticker.start_immediately = TRUE + var/datum/callback/cb = CALLBACK(src, PROC_REF(run_performance_tests)) + SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(_addtimer), cb, 10 SECONDS)) + +/// Stub proc intended to be filled with code that does some test, profiles it, and logs that test. +/// Intended to be used with line by line macros, but you should live your truth +/world/proc/run_performance_tests() + // In case we do somethin that could otherwise end the round + SSticker.delay_end = TRUE + // Your code goes here + + // Logging goes here + // (sample line by line) stat_tracking_export_to_csv_later("file_name.csv", GLOB.cost_list, GLOB.count_list) + SSticker.delay_end = FALSE + shutdown() + /// Returns a list of data about the world state, don't clutter /world/proc/get_world_state_for_logging() var/data = list() diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index e1159d40503288..e13afc05d769de 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -35,29 +35,44 @@ ////////////////////////////////////////////////////////////////////////////////////////////////ADMIN HELPER PROCS -ADMIN_VERB(spawn_atom, R_SPAWN, "Spawn", "Spawn an atom.", ADMIN_CATEGORY_DEBUG, object as text) - if(!object) - return - var/list/preparsed = splittext(object,":") - var/path = preparsed[1] - var/amount = 1 - if(preparsed.len > 1) - amount = clamp(text2num(preparsed[2]),1,ADMIN_SPAWN_CAP) +ADMIN_VERB(spawn_atom, R_SPAWN, "Spawn", "Spawn an atom.", ADMIN_CATEGORY_DEBUG, object as text|null) + var/static/list/atom_types + if (isnull(atom_types)) + atom_types = subtypesof(/atom) + + var/chosen_path = null + var/list/preparsed = null + if (object) + preparsed = splittext(object, ":") + var/list/matches = filter_fancy_list(atom_types, preparsed[1]) + if (length(matches) == 1) + chosen_path = matches[1] + + if(!chosen_path) + var/datum/spawn_menu/menu = user.holder.spawn_menu + if (!menu) + menu = new() + user.holder.spawn_menu = menu + menu.init_value = object + menu.ui_interact(user.mob) + BLACKBOX_LOG_ADMIN_VERB("Spawn Atom") + return TRUE - var/chosen = pick_closest_path(path) - if(!chosen) - return - var/turf/T = get_turf(user.mob) + var/amount = 1 + if (length(preparsed) > 1) + amount = clamp(text2num(preparsed[2]), 1, ADMIN_SPAWN_CAP) - if(ispath(chosen, /turf)) - T.ChangeTurf(chosen) + var/turf/target_turf = get_turf(user.mob) + if (ispath(chosen_path, /turf)) + target_turf.ChangeTurf(chosen_path) else - for(var/i in 1 to amount) - var/atom/A = new chosen(T) - A.flags_1 |= ADMIN_SPAWNED_1 + for (var/i in 1 to amount) + var/atom/spawned = new chosen_path(target_turf) + spawned.flags_1 |= ADMIN_SPAWNED_1 - log_admin("[key_name(user)] spawned [amount] x [chosen] at [AREACOORD(user.mob)]") + log_admin("[key_name(user.mob)] spawned [amount] x [chosen_path] at [AREACOORD(user.mob)]") BLACKBOX_LOG_ADMIN_VERB("Spawn Atom") + return TRUE ADMIN_VERB(spawn_atom_pod, R_SPAWN, "PodSpawn", "Spawn an atom via supply drop.", ADMIN_CATEGORY_DEBUG, object as text) var/chosen = pick_closest_path(object) @@ -84,7 +99,7 @@ ADMIN_VERB(spawn_cargo, R_SPAWN, "Spawn Cargo", "Spawn a cargo crate.", ADMIN_CA if(!chosen) return var/datum/supply_pack/S = new chosen - S.admin_spawned = TRUE + S.order_flags |= ORDER_ADMIN_SPAWNED S.generate(get_turf(user.mob)) log_admin("[key_name(user)] spawned cargo pack [chosen] at [AREACOORD(user.mob)]") diff --git a/code/modules/admin/admin_fax_panel.dm b/code/modules/admin/admin_fax_panel.dm index 3a9744ee3e4864..d426c48b14ddcb 100644 --- a/code/modules/admin/admin_fax_panel.dm +++ b/code/modules/admin/admin_fax_panel.dm @@ -25,7 +25,7 @@ ADMIN_VERB(fax_panel, R_ADMIN, "Fax Panel", "View and respond to faxes sent to C available_faxes += WEAKREF(fax) //Get all stamps - for(var/stamp in subtypesof(/obj/item/stamp)) + for(var/stamp in valid_subtypesof(/obj/item/stamp)) var/obj/item/stamp/real_stamp = new stamp() if(!istype(real_stamp, /obj/item/stamp/chameleon) && !istype(real_stamp, /obj/item/stamp/mod)) var/stamp_detail = real_stamp.get_writing_implement_details() diff --git a/code/modules/admin/callproc/callproc.dm b/code/modules/admin/callproc/callproc.dm index 823a4a9e64bf04..0bf18468906314 100644 --- a/code/modules/admin/callproc/callproc.dm +++ b/code/modules/admin/callproc/callproc.dm @@ -159,7 +159,10 @@ ADMIN_VERB(advanced_proc_call, R_DEBUG, "Advanced ProcCall", "Call a proc on any returnval = WrapAdminProcCall(GLOBAL_PROC, procname, lst) // Pass the lst as an argument list to the proc BLACKBOX_LOG_ADMIN_VERB("Advanced ProcCall") if(get_retval) - get_retval += returnval + if (islist(returnval)) + get_retval += list(returnval) // Wrap to stop BYOND from concat-ing the lists + else + get_retval += returnval . = get_callproc_returnval(returnval, procname) if(.) to_chat(usr, ., confidential = TRUE) diff --git a/code/modules/admin/fun_balloon.dm b/code/modules/admin/fun_balloon.dm index 3e8d212d0713ec..fdde0aa1cb23a6 100644 --- a/code/modules/admin/fun_balloon.dm +++ b/code/modules/admin/fun_balloon.dm @@ -135,11 +135,11 @@ var/effect_range = 5 /obj/effect/fun_balloon/scatter/effect() - for(var/mob/living/M in range(effect_range, get_turf(src))) - var/turf/T = find_safe_turf(zlevel = src.z) - new /obj/effect/temp_visual/gravpush(get_turf(M)) - M.forceMove(T) - to_chat(M, span_notice("Pop!"), confidential = TRUE) + for(var/mob/living/dispersed_mob in range(effect_range, get_turf(src))) + var/turf/drop_off = find_safe_turf(z) + new /obj/effect/temp_visual/gravpush(get_turf(dispersed_mob)) + dispersed_mob.forceMove(drop_off) + dispersed_mob.balloon_alert(dispersed_mob, "pop!") // ----------- Station Crash // Can't think of anywhere better to put it right now diff --git a/code/modules/admin/greyscale_modify_menu.dm b/code/modules/admin/greyscale_modify_menu.dm index c87c424661fd2b..7d3710ffb08f4b 100644 --- a/code/modules/admin/greyscale_modify_menu.dm +++ b/code/modules/admin/greyscale_modify_menu.dm @@ -166,12 +166,12 @@ if("pick_color") var/group = params["color_index"] - var/new_color = input( + var/new_color = tgui_color_picker( usr, "Choose color for greyscale color group [group]:", "Greyscale Modification Menu", split_colors[group] - ) as color|null + ) if(new_color) split_colors[group] = new_color queue_refresh() diff --git a/code/modules/admin/holder2.dm b/code/modules/admin/holder2.dm index 6be76b4df87b69..18b96318f06796 100644 --- a/code/modules/admin/holder2.dm +++ b/code/modules/admin/holder2.dm @@ -32,12 +32,14 @@ GLOBAL_PROTECT(href_token) var/deadmined - var/datum/filter_editor/filteriffic + var/datum/filter_editor/filterrific var/datum/particle_editor/particle_test var/datum/colorblind_tester/color_test var/datum/plane_master_debug/plane_debug var/obj/machinery/computer/libraryconsole/admin_only_do_not_map_in_you_fucker/library_manager var/datum/pathfind_debug/path_debug + var/datum/spawn_menu/spawn_menu + var/datum/spawnpanel/spawn_panel /// Whether or not the user tried to connect, but was blocked by 2FA var/blocked_by_2fa = FALSE diff --git a/code/modules/admin/poll_management.dm b/code/modules/admin/poll_management.dm index 88a38c90166b45..80ba5ec56a0380 100644 --- a/code/modules/admin/poll_management.dm +++ b/code/modules/admin/poll_management.dm @@ -229,8 +229,7 @@ output += "
" var/datum/browser/panel = new(usr, "pmpanel", "Poll Management Panel", 780, 640) panel.add_stylesheet("admin_panelscss", 'html/admin/admin_panels.css') - if(usr.client.prefs.read_preference(/datum/preference/toggle/tgui_fancy)) //some browsers (IE8) have trouble with unsupported css3 elements that break the panel's functionality, so we won't load those if a user is in no frills tgui mode since that's for similar compatability support - panel.add_stylesheet("admin_panelscss3", 'html/admin/admin_panels_css3.css') + panel.add_stylesheet("admin_panelscss3", 'html/admin/admin_panels_css3.css') panel.set_content(jointext(output, "")) panel.open() @@ -527,8 +526,7 @@ panel_height = 320 var/datum/browser/panel = new(usr, "popanel", "Poll Option Panel", 370, panel_height) panel.add_stylesheet("admin_panelscss", 'html/admin/admin_panels.css') - if(usr.client.prefs.read_preference(/datum/preference/toggle/tgui_fancy)) //some browsers (IE8) have trouble with unsupported css3 elements that break the panel's functionality, so we won't load those if a user is in no frills tgui mode since that's for similar compatability support - panel.add_stylesheet("admin_panelscss3", 'html/admin/admin_panels_css3.css') + panel.add_stylesheet("admin_panelscss3", 'html/admin/admin_panels_css3.css') panel.set_content(jointext(output, "")) panel.open() diff --git a/code/modules/admin/smites/boneless.dm b/code/modules/admin/smites/boneless.dm index a3031ce13ffc7a..3fd1a1121f4baa 100644 --- a/code/modules/admin/smites/boneless.dm +++ b/code/modules/admin/smites/boneless.dm @@ -11,7 +11,7 @@ var/mob/living/carbon/carbon_target = target for(var/obj/item/bodypart/limb as anything in carbon_target.bodyparts) - var/severity = pick_weight(list( + var/severity = pick_weight(alist( WOUND_SEVERITY_MODERATE = 1, WOUND_SEVERITY_SEVERE = 2, WOUND_SEVERITY_CRITICAL = 2, diff --git a/code/modules/admin/smites/brain_damage.dm b/code/modules/admin/smites/brain_damage.dm index ceafc49df24ca3..1d70bc60f6cd0c 100644 --- a/code/modules/admin/smites/brain_damage.dm +++ b/code/modules/admin/smites/brain_damage.dm @@ -4,4 +4,4 @@ /datum/smite/brain_damage/effect(client/user, mob/living/target) . = ..() - target.adjustOrganLoss(ORGAN_SLOT_BRAIN, BRAIN_DAMAGE_DEATH - 1, BRAIN_DAMAGE_DEATH - 1) + target.adjust_organ_loss(ORGAN_SLOT_BRAIN, BRAIN_DAMAGE_DEATH - 1, BRAIN_DAMAGE_DEATH - 1) diff --git a/code/modules/admin/smites/bsa.dm b/code/modules/admin/smites/bsa.dm index 806de64429386e..b833af12a3a8aa 100644 --- a/code/modules/admin/smites/bsa.dm +++ b/code/modules/admin/smites/bsa.dm @@ -22,7 +22,7 @@ if (target.health <= 1) target.gib(DROP_BODYPARTS) else - target.adjustBruteLoss(min(BSA_MAX_DAMAGE, target.health - 1)) + target.adjust_brute_loss(min(BSA_MAX_DAMAGE, target.health - 1)) target.Paralyze(BSA_PARALYZE_TIME) target.set_stutter(BSA_STUTTER_TIME) diff --git a/code/modules/admin/smites/dock_pay.dm b/code/modules/admin/smites/dock_pay.dm index a3828feb828dc2..6eaa7b53792f2f 100644 --- a/code/modules/admin/smites/dock_pay.dm +++ b/code/modules/admin/smites/dock_pay.dm @@ -18,14 +18,14 @@ if (card.registered_account.account_balance == 0) to_chat(user, span_warning("ID Card lacks any funds. No pay to dock.")) return - var/new_cost = input("How much pay are we docking? Current balance: [card.registered_account.account_balance] credits.", "BUDGET CUTS") as num|null + var/new_cost = input("How much pay are we docking? Current balance: [card.registered_account.account_balance] [MONEY_NAME].", "BUDGET CUTS") as num|null if (!new_cost) return if (!(card.registered_account.has_money(new_cost))) to_chat(user, span_warning("ID Card lacked funds. Emptying account.")) - card.registered_account.bank_card_talk("[new_cost] credits deducted from your account based on performance review.") + card.registered_account.bank_card_talk("[new_cost] [MONEY_NAME] deducted from your account based on performance review.") card.registered_account.account_balance = 0 else card.registered_account.account_balance = card.registered_account.account_balance - new_cost - card.registered_account.bank_card_talk("[new_cost] credits deducted from your account based on performance review.") + card.registered_account.bank_card_talk("[new_cost] [MONEY_NAME] deducted from your account based on performance review.") SEND_SOUND(target, 'sound/machines/buzz/buzz-sigh.ogg') diff --git a/code/modules/admin/smites/lightning.dm b/code/modules/admin/smites/lightning.dm index 99cb46bdaace3a..be015a8a1c15eb 100644 --- a/code/modules/admin/smites/lightning.dm +++ b/code/modules/admin/smites/lightning.dm @@ -11,7 +11,7 @@ /proc/lightningbolt(mob/living/user) var/turf/lightning_source = get_step(get_step(user, NORTH), NORTH) lightning_source.Beam(user, icon_state="lightning[rand(1,12)]", time = 5) - user.adjustFireLoss(LIGHTNING_BOLT_DAMAGE) + user.adjust_fire_loss(LIGHTNING_BOLT_DAMAGE) playsound(get_turf(user), 'sound/effects/magic/lightningbolt.ogg', 50, TRUE) if(ishuman(user)) var/mob/living/carbon/human/human_target = user diff --git a/code/modules/admin/spawn_menu.dm b/code/modules/admin/spawn_menu.dm new file mode 100644 index 00000000000000..07e461e3957336 --- /dev/null +++ b/code/modules/admin/spawn_menu.dm @@ -0,0 +1,92 @@ +/datum/spawn_menu + /// Does the menu default to a regex prefix? + var/regex_search = FALSE + /// Does the search include atom names? + var/name_search = TRUE + /// Should we display full typepaths or the condensed versions? + var/fancy_types = TRUE + /// Should abstract types be included in the search? + var/include_abstracts = FALSE + /// Initial search value from the latest command + var/init_value = null + +/datum/spawn_menu/ui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) + if (!ui) + ui = new(user, src, "SpawnSearch") + ui.open() + +/datum/spawn_menu/ui_state(mob/user) + return ADMIN_STATE(R_SPAWN) + +/datum/spawn_menu/ui_act(action, params, datum/tgui/ui) + if (..() || !check_rights_for(ui.user.client, R_SPAWN)) + return FALSE + + switch (action) + if ("setRegexSearch") + regex_search = params["regexSearch"] + return TRUE + + if ("setNameSearch") + name_search = params["searchNames"] + return TRUE + + if ("setFancyTypes") + fancy_types = params["fancyTypes"] + return TRUE + + if ("setIncludeAbstracts") + include_abstracts = params["includeAbstracts"] + return TRUE + + if ("spawn") + var/path = text2path(params["type"]) + if (!path) + return TRUE + var/amount = clamp(text2num(params["amount"]) || 1, 1, ADMIN_SPAWN_CAP) + var/turf/target_turf = get_turf(ui.user) + if(ispath(path, /turf)) + target_turf.ChangeTurf(path) + else + for(var/i in 1 to amount) + var/atom/spawned = new path(target_turf) + spawned.flags_1 |= ADMIN_SPAWNED_1 + + log_admin("[key_name(ui.user)] spawned [amount] x [path] at [AREACOORD(ui.user)]") + SStgui.close_uis(src) + return TRUE + + if ("cancel") + SStgui.close_uis(src) + return TRUE + +/datum/spawn_menu/ui_data(mob/user) + var/list/data = list() + data["initValue"] = init_value + data["searchNames"] = name_search + data["regexSearch"] = regex_search + data["fancyTypes"] = fancy_types + data["includeAbstracts"] = include_abstracts + return data + +/datum/spawn_menu/ui_assets(mob/user) + return list( + get_asset_datum(/datum/asset/json/spawn_menu), + ) + +/datum/asset/json/spawn_menu + name = "spawn_menu_atom_data" + +/datum/asset/json/spawn_menu/generate() + var/list/data = list() + var/static/list/types_list + if (isnull(types_list)) + var/list/local_types = list() + for (var/atom/atom_type as anything in subtypesof(/atom)) + local_types[atom_type] = atom_type::name || "" + types_list = local_types + data["types"] = types_list + data["abstractTypes"] = get_abstract_types() + data["fancyTypes"] = GLOB.fancy_type_replacements + return data diff --git a/code/modules/admin/spawn_panel/spawn_panel.dm b/code/modules/admin/spawn_panel/spawn_panel.dm index 95097d6badea4d..a5cc42a43919f2 100644 --- a/code/modules/admin/spawn_panel/spawn_panel.dm +++ b/code/modules/admin/spawn_panel/spawn_panel.dm @@ -15,14 +15,10 @@ #define OFFSET_ABSOLUTE "Absolute offset" #define OFFSET_RELATIVE "Relative offset" -GLOBAL_LIST_INIT(spawnpanels_by_ckey, list()) - /* An instance of a /tg/UI™ Spawn Panel. Stores preferences, spawns things, controls the UI. Unique for each user (their ckey). */ /datum/spawnpanel - /// Who this instance of spawn panel belongs to. The instances are unique to correctly keep modified values between multiple admins. - var/owner_ckey /// Where and how the atom should be spawned. var/where_target_type = WHERE_FLOOR_BELOW_MOB /// The atom selected from the panel. @@ -57,45 +53,21 @@ GLOBAL_LIST_INIT(spawnpanels_by_ckey, list()) offset = list("X" = 0, "Y" = 0, "Z" = 0) /datum/spawnpanel/ui_interact(mob/user, datum/tgui/ui) - if(user.client.ckey != owner_ckey) - return - ui = SStgui.try_update_ui(user, src, ui) if(!ui) ui = new(user, src, "SpawnPanel") ui.open() -/// Returns a `spawnpanel` instance belonging to this `user`, or creates and registers a new one -/proc/get_spawnpanel_for_admin(mob/user) - if(!user?.client?.ckey) - return null - - var/ckey = user.client.ckey - - if(GLOB.spawnpanels_by_ckey[ckey]) - return GLOB.spawnpanels_by_ckey[ckey] - - var/datum/spawnpanel/new_panel = new() - new_panel.owner_ckey = ckey - GLOB.spawnpanels_by_ckey[ckey] = new_panel - - return new_panel - /datum/spawnpanel/ui_close(mob/user) . = ..() if (precise_mode && precise_mode != PRECISE_MODE_OFF) toggle_precise_mode(PRECISE_MODE_OFF) /datum/spawnpanel/ui_state(mob/user) - if(user.client.ckey != owner_ckey) - return GLOB.never_state - return ADMIN_STATE(R_ADMIN) + return ADMIN_STATE(R_SPAWN) -/datum/spawnpanel/ui_act(action, params) - if(..()) - return FALSE - - if(usr.client.ckey != owner_ckey) +/datum/spawnpanel/ui_act(action, params, datum/tgui/ui) + if(..() || !check_rights_for(ui.user.client, R_SPAWN)) return FALSE switch(action) @@ -106,12 +78,10 @@ GLOBAL_LIST_INIT(spawnpanels_by_ckey, list()) available_icon_states = icon_states(selected_atom_icon) if(!(selected_atom_icon_state in available_icon_states)) selected_atom_icon_state = available_icon_states[1] - SStgui.update_uis(src) return TRUE if("set-apply-icon-override") apply_icon_override = !!params["value"] - SStgui.update_uis(src) return TRUE if("reset-DMI-icon") @@ -123,35 +93,28 @@ GLOBAL_LIST_INIT(spawnpanels_by_ckey, list()) available_icon_states = icon_states(selected_atom_icon) else available_icon_states = list() - - SStgui.update_uis(src) return TRUE if("select-new-icon-state") selected_atom_icon_state = params["new_state"] - SStgui.update_uis(src) return TRUE if("reset-icon-state") selected_atom_icon_state = null if(selected_atom) selected_atom_icon_state = initial(selected_atom.icon_state) - SStgui.update_uis(src) return TRUE if("set-icon-size") atom_icon_size = params["size"] - SStgui.update_uis(src) return TRUE if("reset-icon-size") atom_icon_size = 100 - SStgui.update_uis(src) return TRUE if("get-icon-states") available_icon_states = icon_states(selected_atom_icon) - SStgui.update_uis(src) return TRUE if("selected-atom-changed") diff --git a/code/modules/admin/sql_ban_system.dm b/code/modules/admin/sql_ban_system.dm index 36fa271ab80607..5aa728e376f1db 100644 --- a/code/modules/admin/sql_ban_system.dm +++ b/code/modules/admin/sql_ban_system.dm @@ -194,10 +194,8 @@ var/datum/browser/panel = new(usr, "banpanel", "Banning Panel", 910, panel_height) panel.add_stylesheet("admin_panelscss", 'html/admin/admin_panels.css') panel.add_stylesheet("banpanelcss", 'html/admin/banpanel.css') - var/tgui_fancy = usr.client.prefs.read_preference(/datum/preference/toggle/tgui_fancy) - if(tgui_fancy) //some browsers (IE8) have trouble with unsupported css3 elements and DOM methods that break the panel's functionality, so we won't load those if a user is in no frills tgui mode since that's for similar compatability support - panel.add_stylesheet("admin_panelscss3", 'html/admin/admin_panels_css3.css') - panel.add_script("banpaneljs", 'html/admin/banpanel.js') + panel.add_stylesheet("admin_panelscss3", 'html/admin/admin_panels_css3.css') + panel.add_script("banpaneljs", 'html/admin/banpanel.js') var/list/output = list("
[HrefTokenFormField()]") output += {"
↳ Physical trauma: Dismembered
[capitalize(limb.name)]:
↳ Physical trauma: [conditional_tooltip("Dismembered", "Reattach or replace surgically.", tochat)]